El sistema propuesto utiliza los clasificadores de Hopfield para categorizar a las oraciones de acuerdo a su significado. Un clasificador de Hopfield es una red neuronal que trabaja de manera recursiva busca situar su salida en uno de los puntos dados. La arquitectura general se muestra en la siguiente figura:
El primer módulo es encargado de extraer las oraciones que serán utilizadas en el sistema. Las oraciones y por tanto la base de datos son específicas de un dominio y deben ser relevantes para la clasificación.
Las oraciones son enviadas al segundo módulo en el que son separadas en palabras y son codificadas en una matriz. Se emplea una codificación binaria (1 y -1). La matriz tiene en cuenta la letra que ocupa cada posición dentro de la palabra. Las columnas representan cada letra dentro del alfabeto mientras que las filas representan la posición en la que se encuentra. La siguiente figura es el ejemplo de la representación de la palabra “web”.
Siendo la red de Hopfield una red recurrente por lo que la salida de cada nodo repercute en los pesos de las otras neuronas. Se crea la red dando como entrada una serie de vectores que corresponden a las diversas clases. El número de dimensiones debe corresponder al número de componentes binarios.
El módulo de reconocimiento de palabra, es una red neuronal entrenada con ciertas palabras de la base de datos y tiene como objetivo arrojar la palabra conocida (de las empleadas en el entrenamiento) más apegada a la palabra que se dio como entrada.
Las palabras obtenidas se juntan para obtener un patrón que describe a la oración y que requiere el módulo de codificación de oraciones. El módulo consta de otra red neuronal entrenada con las oraciones de la base de datos. Al final se obtiene una oración que debe tener el mismo significado. La siguiente figura muestra el patrón utilizado como entrada:
La base de datos empleada para las pruebas consta de 500 oraciones. Para el entrenamiento se hizo uso de 50 oraciones. Se emplearon las palabras dentro de las 50 oraciones y se agregaron otras 100. Los detalles de las redes empleadas se muestran a continuación:
Empleando los parámetros descritos, lograron clasificar correctamente el 92.2% de las oraciones de entrada según su significado. Los resultados se muestran a continuación:
Se trabaja con un diccionario finito y se propone como trabajo a futuro la extensión de este modelo a sistemas expertos (se propone uno médico como ejemplo).
Pandey, B., Ranjan, S., Shukla, A., & Tiwari, R. (2010). Sentence Recognition Using Hopfield Neural Network. IJCSI - International Journal of Computer Science Issues, 7(4). Retrieved from http://www.ijcsi.org/papers/IJCSI-Vol-7-Issue-4-No-6.pdf#page=26
No comments:
Post a Comment