El apareamiento de los enunciados sapienciales breves es una tarea compleja y reservada en última instancia a la experiencia de los paremiólogos y especialistas de los textos.
La herramienta que proponemos aquí debe de considerarse como motor de sugerencias destinada a los especialistas. Sin interpretación y validación de las sugerencias de los eruditos, los resultados del motor no tienen ningún valor.
La hipótesis semántica distribucional
Las técnicas utilizadas aquí se basan en la hipótesis semántica distribucional, que podríamos resumir por este principio general:
« Una palabra viene caracterizada por la companía que mantiene » [Firth 1957]
Dicho de otra manera, se considera que dos palabras tienen un sentido cercano si se utilizan en los mismos contextos idénticos.
Espacio vectorial semántico
Un espacio vectorial semántico permite representar las palabras mediante vectores, para permitir su comparación utilizando simples operaciones vectoriales.
La base de un espacio vectorial semántico es típicamente una matriz de co-ocurrencia:
- Una línea por término distinto del corpus de aprendizaje.
- Una columna por concepto (por ejemplo, cada párrafo o artículo de un corpus).
- El valor de una célula representa la frecuencia ponderada del término en el concepto.
Por consiguiente, dos términos semánticamente cercanos tendrán vectores cercanos en el espacio de los conceptos. Dicho de otra manera, como menor sea la distancia entre dos vectores, más cercanos semánticamente los términos asociados.
En este sistema, una oración/frase puede verse como la suma ponderada de los vectores de los términos que la componen.
La similaridad inter-frase se calcula entonces a partir de la distancia entre los dos vectores que representan cada frase.
Las anotaciones de los enunciados se han realizados en tres lenguas (francés, inglés y castellanos).
Modelos vectoriales multilingües para Aliento
Dos modelos diferentes han sido entrenados, y a continuación los resultados serán combinados para ofrecer un resultado único en los cálculos de similaridades:
WikiRI [Hai Hieu Vu] es una implementación de esta técnica que utiliza la organización intrínseca de Wikipedia. Los conceptos son representados primero por vectores aleatorios de pequeña dimensión, luego los vectores representativos de las palabras se calculan por la suma de los vectores de los conceptos asociados a ellos. Utilizamos en nuestro trabajo una versión Random Indexing (RI) propuesta por Niladri Chatterjee y una variante ponderada del Random Indexing utilizado por Wikipedia como recurso lingüístico. La función de WikiRI consiste en expresar el contexto a nivel de cada término.
Word2Vec [Mikolov] es un modelo predictivo que utiliza las redes neuronales para aprender las representaciones vectoriales de las palabras a partir de unos corpus de aprendizaje. Los vectores inducidos son densos, de pequeña dimensión, y cada dirección representa una característica latente de la palabra, cuyo propósito es capturar propiedades sintácticas y semánticas. Se trata de un modelo simple y rápido, implementado en la herramienta word2vec, introducido recientemente por Mikolov et al. Mikolov et al. utilizan dos modelos predictivos basados en redes neuronales de simple capa: skip-gram y Continuous Bag Of Words (CBOW). Dada una ventana de n palabras en torno a una palabra w, el modelo skip-gram predice las palabras parecidas en la ventana fijada. El modelo CBOW permite luego predecir la palabra w, dada la compañía que mantiene en la ventana. La función de Word2Vec es expresar el contexto a nivel de la frase para cada término.
Representación vectorial de un enunciado sapiencial breve
Un enunciado es representado por tres vectores que representan sus anotaciones semánticas: sentido literal, sentido figurado, lección.
Existe una representación de cada vector para los dos modelos y para cada lengua.
Cálculo de similitud
El resultado inter-enunciado representa un valor absoluto de similaridad entre dos enunciados. Este resultado se calcula como la suma ponderada de los resultados de similaridad entre cada componente de cada vector del mismo tipo.
El sistema permite también comparar una oración libre con diferentes componentes de los enunciados sapienciales. El resultado de la comparación de una oración libre con un enunciado se obtiene comparando el vector con la oración y con cada uno de los tres vectores del enunciado.
Es posible también escoger las anotaciones sobre las cuales se quiere realizar la comparación. Si se quiere, también se puede comparar una oración o frase entrada con las anotaciones de tipo sentido literal de los enunciados únicamente.
Este cálculo se realiza para los dos modelos (WikiRI y Word2Vec) y se obtiene un resultado final, combinando sus resultados, como esta fórmula p*WikRI + (1-p)*Word2Vec. Hemos estimado p = 0.7 para la experimentación sobre nuestros datasets anotados.