Llevo unos días trabajando en una idea que tenía en mente desde que estudié en la universidad. En su momento estuve trasteando con algunos chatbots, que desde el principio me parecieron mucho más realistas que cualquier otro intento de generación de lenguaje natural, a pesar de que se basaban en la simple recombinación aleatoria de palabras. Actualmente hay alguno en funcionamiento, creo que el más famoso es Anna de ikea.
Sin embargo mi ideas es explorar una idea que no sé si está demostrada científicamente: por mucho que lo intentemos, es difícil expresar una misma idea con las mismas palabras, rara vez coincidimos en la mismas mismas palabras y expresiones. El objetivo es hacer un programa que modele este comportamiento y que partiendo de una idea o mensaje genere un texto diferente cada vez. Si la cosa funciona bien, el sistema sería capaz de generar ideas diferentes y de expresarlas cada vez con una combinación de palabras distinta.
Hay un par de asignaturas del posgrado de inteligencia artificial relacionadas con este experimento, «Procesamiento del lenguaje natural» y «Métodos probabilísticos». Así que intentaré usar herramientas de estas dos asignaturas: analizadores sintácticos-semánticos y redes bayesianas, aunque no estoy del todo seguro de que sea lo más apropiado.
Para facilitarme la vida, no voy a hacer un chatbot, sino que intentaré generar un mensaje unidireccional, sin conversación. Una aplicación muy tonta es la de predecir el futuro (un generador de horóscopos) ó la generación artística de textos (¿textos para inspiración?). Si funciona lo suficientemente bien podría usarse en otros contextos dónde se pueda extraer conocimiento (por ejemplo, a través de minería de datos) y generar mensaje aleatorio. En cualquier caso por ahora no es más que un juguete experimental, del que ya tengo algunas pruebas que iré comentando.
8 respuestas a “generación automática de lenguaje”
[…] la parte linguistica del proyecto de generación automática de lenguaje, he encontrado dos paquetes interesantes en ruby: ruby linguistics y ruby […]
Querido Nuño, he accedido a tu blog a traves de nuestro estimado amigo y artista sonoro Miguel Alvarez. Lo cierto es que encuentro muy interesantes algunos de los planteamientos que nos brindas en el, en parte, porque como matematico y filologo he tenido que trabajar en ellos (sobre todo desde las posibilidades que hoy plantea
el aprendizaje estadistico -bayes, HMM, redes, etc.-).
De hecho, la «imperfeccion» propia de la naturalidad de un gesto comunicativo es hoy uno de los retos que se estan
abordando, no solo en lo puramente linguistico, sino tambien en lo que a la expresion facial -y entonacion- de avatares se refiere, de forma que no solo se esta trabajando dentro del ambito de la correccion linguistica, tambien se esta comenzando a estudiar -con aspiraciones tecnologicas- el interesante fenomeno de la «incorreccion».
Hola Fernando,
De momento es sólo un planteamiento. Si consigo sacar algo de tiempo espero que se convierta en algo interesante.
Saludos y gracias por el comentario,
Nuño.
[…] segundo elemento que tengo pensado utilizar en mi nuevo proyecto se trata de sbn una librería ruby que permite trabajar con redes bayesianas. Aunque la inferencia […]
[…] sé si llegará al 1%, pero si consigo acertar con el futuro de alguien, estará convencido de que mi experimento es capaz de adivinar el futuro. Y si consigues acertar 2 […]
[…] del futuro. El algoritmo de google de análisis de textos ha detectado que algunas de mis últimas entradas está relacionadas con el tarot y el futuro. Sin embargo estas entradas no tratan sobre el tarot o […]
[…] se pueden transformar en aplicaciones sencillas para fomentar la creatividad y la inspiración, con herramientas de generación automática de textos. Cuando tenga tiempo posiblemente transforme algunas de las ideas del libro en aplicaciones. […]
[…] el tema de la generación de textos, me he encontrado con algunos conceptos sobre literatura digital explicados en la wikipedia: […]