Introducción
La resolución de entidades (ER) es el proceso de desambiguación de una entidad. Se consigue asignando una mención textual al nombre más apropiado del mundo real presente en una base de conocimientos (KB) de búsqueda. Por ejemplo, resolviendo “madrid fc” a “Real Madrid Club de Fútbol”, donde el primero es una de las paráfrasis del segundo. La resolución de entidades suele recibir otros nombres, como correspondencia de entidades, vinculación de entidades, vinculación de registros o deduplicación de registros. La resolución de entidades está disponible como parte del proceso NLP de MindMeld y se utiliza para desambiguar las entidades identificadas en la entrada del usuario comparándolas con una KB previamente completada. Consulte la documentación oficial para aprender a crear una KB para el solucionador de entidades y trabajar con él mientras crea una aplicación MindMeld. Hasta hace poco, MindMeld ofrecía dos opciones para la resolución de entidades: una basada en el motor de búsqueda y análisis de texto completo Elasticsearch y otra basada en un simple algoritmo de coincidencia exacta como opción alternativa. Con la creciente diversidad en las aplicaciones de MindMeld, es posible que estas opciones no siempre sean factibles. Para ofrecer un soporte extendido, ahora MindMeld proporciona dos opciones adicionales para la resolución de entidades: una basada en TF-IDF y otra basada en representaciones de modelos neuronales previamente entrenados (BERT, GloVe, fastText, etc.). En particular, estas nuevas opciones no tienen ninguna dependencia de Elasticsearch (y sus servicios). Antes de entrar en más detalles sobre estas nuevas opciones, hagamos un resumen rápido de cómo se estructura una base de conocimiento de entidades en MindMeld. A continuación, se muestra un ejemplo del plan de pedido de alimentos con la base de conocimientos creada para desambiguar los nombres de los alimentos: Como se observa, el campo “cname” (nombre canónico) junto con el campo “whitelist” ejemplifican algunos usos populares para cada alimento junto con el campo “id” que se refiere a un registro único y oficialmente reconocido en la base de conocimientos. Estos tres campos constituyen principalmente un objeto de entidad en la KB. El texto del campo “cname” se utiliza generalmente en las respuestas conversacionales, y los del campo “whitelist”, junto con el nombre canónico, sirven como alias al desambiguar. A menudo, los mejores resultados de un solucionador de entidades se obtienen cuando el campo “whitelist” se completa de forma exhaustiva (por ejemplo, incluyendo usos alternativos, errores ortográficos, formas cortas, etc.). Este tipo de selección puede convertirse en un proceso tedioso en algunas aplicaciones, pero es inevitable cuando se trata de entidades en un dominio muy especializado.Obtenga más información sobre los solucionadores recién añadidos
En los solucionadores que no son de coincidencia exacta, el primer paso es obtener una representación vectorial para el texto de entrada que hay que desambiguar y para todas las entradas de la KB (cnames más listas blancas) que sirven de alias para la desambiguación. Luego, mediante el uso de alguna forma de comparación de similitudes vectoriales (por ejemplo, la similitud del coseno), se puntúan y clasifican los alias. En las opciones de resolución de entidades recién añadidas, el solucionador basado en TF-IDF selecciona diversas características de n-gramas (es decir, características de texto a nivel de superficie) antes de calcular las similitudes del coseno en los vectores dispersos. Asimismo, un solucionador basado en un incrustador previamente entrenado hace coincidencias utilizando la similitud del coseno en representaciones vectoriales densas de texto. Aprovechar los incrustadores previamente entrenados para la resolución de entidades tiene algunas ventajas sobre otros enfoques. Por ejemplo, ofrecen una comprensión semántica del texto sin tener que completar extensamente las listas blancas (por ejemplo, “rendimiento por debajo de las expectativas” equivale a “rendimiento deficiente”) y proporcionan una fácil transición a la coincidencia de entidades multilingües (por ejemplo, inferir que “tercio” en español es lo mismo que “tercero” en inglés). Sin embargo, las discrepancias entre el entrenamiento previo y la inferencia, como la diferencia en la longitud de los textos de entrada, ponen en desventaja a los incrustadores previamente entrenados. Además, los tiempos de inferencia de los modelos de incrustación pueden ser mayores que los de otras opciones de resolución debido a los cálculos de vectores densos subyacentes. No obstante, si se ajustan adecuadamente, los modelos de incrustación pueden superar a otras opciones de resolución basadas principalmente en características de texto a nivel de superficie. En el análisis que se realiza a continuación, se comparan los solucionadores basados en incrustadores previamente entrenados con los solucionadores de entidades de Elasticsearch y TF-IDF. Los conjuntos de datos seleccionados para esta comparación involucran tanto la coincidencia de texto a nivel de superficie como la semántica.Rendimiento de los diferentes solucionadores
Tras experimentar con varios conjuntos de datos seleccionados internamente, a continuación, se muestra el rendimiento promedio de los distintos solucionadores de entidades para la coincidencia de entidades de texto corto. La puntuación de recuperación Top-1 se informa aquí como la medida de precisión: Las variantes de BERT previamente entrenadas están disponibles como parte de los transformadores de oraciones de Huggingface, y el gráfico presenta las puntuaciones de solo las cinco variantes de mejor rendimiento. Los modelos de incrustación de palabras previamente entrenados, como fastText, generalmente funcionan peor que los modelos de incrustación BERT o los solucionadores basados en TF-IDF. Estos bajos rendimientos podrían atribuirse al cambio de dominio y a la falta de ajuste. Un análisis más detallado utilizando diferentes configuraciones de la variante de BERT con mejor rendimiento (‘distilbert-base-nli-stsb-mean-tokens’) arroja los siguientes resultados:
Rendimiento de diferentes configuraciones mientras se utiliza la variante de BERT de mejor rendimiento
