Bots Inteligentes

Bots Inteligentes con Cero Declaraciones

Cómo crear un chatbot inteligente, sin utilizar sets de datos de entrenamiento.

1/5

La IA ha visto un gran avance en los últimos 4 años, gracias al desarrollo del Aprendizaje de Máquina, siendo el Aprendizaje Profundo y el Flujo de Tensión los más aclamados.

Esta serie de 5 artículos originales del CEO de Inbenta Jordi Torras, tienen como intención comunicar cómo crear un chatbot inteligente sin la necesidad de utilizar sets de datos de entrenamiento, llamados también “Declaraciones” en el argot del Procesamiento del Lenguaje Natural.

CÓMO TRABAJA EL APRENDIZAJE DE MÁQUINA.

La Inteligencia Artificial no puede ser aplicada de manera indiscriminada a cualquier problema o simplemente desplegando un algoritmo de Aprendizaje de Máquina, para esto existen una serie de componentes que son necesarios que veremos a continuación:

1) Información de entrenamiento.

Se requiere un gran almacén de datos en formato digital, y cada elemento de los datos en el conjunto debe contar con algún tipo de etiqueta que lo identifique.

Algunos ejemplos de este tipo de entrenamiento de datos con etiquetas son:

a) Fotografías de animales con etiquetas tales como “Venado”, “León de Montaña”, “Ninguno”, mencionando si un animal se puede ver en la fotografía y que tipo de animal es.

b)  Currículum Vitae en formato PDF, indicando si un candidato está calificado para una determinada posición

c) Formas de aplicación de préstamos, con etiquetas Verdadero / Falso, indicando si la persona que solicita el crédito es sujeta del mismo.

d) Revisiones de una película o producto, indicando las etiquetas si la revisión es positiva, negativa o neutral.

Se utilizará la información de datos de entrenamiento para habituar el algoritmo de Aprendizaje de Máquina, pero teniendo parte de los datos desconocidos para el modelo de entrenamiento, de tal forma que nos sirva como Dato de Validación.

2) Modelo de Aprendizaje de Máquina.

Inspirado en cómo opera nuestro cerebro biológico, las redes neuronales artificiales son capaces de procesar todos los datos que contenga, y entregar una etiqueta de salida.

Los algoritmos de Aprendizaje de Máquina utilizarán los datos de entrenamiento de manera incremental y repetida para calibrar las redes neuronales que predicen los elementos de salida utilizando algoritmos matemáticos y propagación interna.

Saber exactamente cuántas neuronas, cuántas capas por neurona y cuantas repeticiones se necesitan para que una red neuronal entienda la “lógica” de los datos, es generalmente difícil de determinar y aún hoy, es más arte que ciencia.

Una vez que la red neuronal ha terminado su proceso de aprendizaje, es tiempo de utilizar los “Datos de Validación”. Vamos a recurrir a un modelo con los datos de validación para verificar que las etiquetas productivas coinciden con las etiquetas actuales con las cuales contamos. Si los datos productivos son suficientemente buenos (entre un 80 a 90% dependiendo de nuestros requerimientos) podemos utilizar la red neuronal como una herramienta productiva y de clasificación; conforme haya nuevos datos se producirán más etiquetas predictivas.

Si el modelo del proceso de validación no es lo suficientemente preciso, se debe tratar con distintas configuraciones de la red neuronal, agregando o removiendo neuronas, capas y cambiando distintos parámetros de los algoritmos de aprendizaje.

Uno podría pensar que más neuronas y más capas de la red neuronal producen mayor inteligencia, pero no es el caso; un número excesivo de neuronas, capas e incluso repeticiones de entrenamientos pueden producir un escenario que perjudique nuestra aplicación.

También es cierto que algunos problemas son muy difíciles de resolver con este tipo de aproximación y que las redes neuronales no serán capaces de comprender la lógica que hay atrás de estos datos de entrenamiento. Como ejemplo de ellos, solo consideremos el problema de determinar si un número es o no primo utilizando las redes neuronales, se ha comprobado que no ha sido posible determinarlos partiendo sólo de redes neuronales.

Click aquí para continuar leyendo el siguiente artículo de nuestra serie.

Visita nuestro glosario con términos de apoyo que te serán de utilidad para la fácil lectura de este artículo.

SOLICITA UNA DEMO