Aprendiendo chatbot
 

Aprendiendo chatbot  

  RSS
pedro2
(@pedro2)
New Member

Mis amigos y yo estamos haciendo un chatbot como parte de un proyecto de verano de 40 días en nuestro instituto. Diez de esos días quedan ahora. Hasta ahora, hemos realizado un curso en línea sobre Aprendizaje automático y también hemos leído partes importantes del libro sobre el kit de herramientas de lenguaje natural (NLTK) en Python. El chatbot actual funciona de esta manera:

Cuando recibe información, verifica en una base de datos SQL de oraciones si ha encontrado una coincidencia exacta antes. En caso afirmativo, responde según la respuesta registrada. Si no, etiqueta las palabras de la oración de acuerdo con parte del la pregunta y las agrupa en otra tabla SQL. Ahora, hemos asignado pesos a cada palabra tomando un recíproco del número de sus ocurrencias en muchos cuerpos NLTK, multiplicados por los valores de peso decididos según la parte de la pregunta que es la palabra. Luego, encuentra la mejor coincidencia con este enfoque, entre las entradas encontradas anteriormente, e imprime la salida correspondiente.

Sin embargo, esto no nos está dando un buen resultado. Uno de nuestros compañeros sugirió que deberíamos centrarnos en hacer que el chatbot aprendiera de una gran base de datos, el tipo de oraciones que pueden aparecer como entradas y cómo responder a ellas. No tenemos ni idea de cómo hacer que eso suceda. ¿Cómo aprenderá el chatbot automáticamente esto? ¿Alguna sugerencia sobre esto?

Citar
Respondido : 22/01/2019 4:40 pm
David
(@david)
Trusted Member

Parece que te has centrado en encontrar coincidencias casi exactas con un conjunto limitado de entradas. Creo que necesitarás una forma más amplia y menos estricta de hacer coincidir un conjunto limitado de entradas, o mantener tu algoritmo de coincidencia estricto y solo tener en tus manos una gran cantidad de entradas.

Puede mejorar sus algoritmos un poco al usar N-grams para obtener coincidencias de palabras más altas que las que se encuentran principalmente en las partes del habla. Sin embargo, me concentraría en reunir más entradas.

Aquí se explica lo que es N-grams  https://es.wikipedia.org/wiki/N-grama

ResponderCitar
Respondido : 22/01/2019 8:05 pm
tacorlius
(@tacorlius)
Eminent Member

Uff yo habría usado Dialogflow, abrías avanzado mucho mas rápido y tendrías la potencia de Dialogflow como interprete y procesador NLP que funciona mucho mejor que solo reconocer frases, pues incluye contextos, variables, entidades, eventos y mucho mas. a y es gratis!

Cristián

ResponderCitar
Respondido : 09/04/2019 8:45 pm
Share:
  
Trabajando

Por favor Iniciar Sesión o Registro