El análisis semántico latente ( LSA ) es una técnica en el procesamiento del lenguaje natural , en particular la semántica distributiva , para analizar las relaciones entre un conjunto de documentos y los términos que contienen mediante la producción de un conjunto de conceptos relacionados con los documentos y términos. LSA asume que las palabras que tienen un significado cercano aparecerán en fragmentos de texto similares (la hipótesis de distribución ). Una matriz que contiene recuentos de palabras por documento (las filas representan palabras únicas y las columnas representan cada documento) se construye a partir de una gran parte de texto y una técnica matemática llamada descomposición de valores singulares.(SVD) se utiliza para reducir el número de filas conservando la estructura de similitud entre columnas. Luego, los documentos se comparan tomando el coseno del ángulo entre los dos vectores (o el producto escalar entre las normalizaciones de los dos vectores) formado por dos columnas cualesquiera. Los valores cercanos a 1 representan documentos muy similares, mientras que los valores cercanos a 0 representan documentos muy diferentes. [1]
En 1988 , Scott Deerwester , Susan Dumais , George Furnas , Richard Harshman , Thomas Landauer , Karen Lochbaum y Lynn Streeter patentaron una técnica de recuperación de información que utiliza una estructura semántica latente ( patente estadounidense 4.839.853 , ahora vencida) . En el contexto de su aplicación a la recuperación de información , a veces se le llama indexación semántica latente ( LSI ). [2]
Descripción general
Matriz de ocurrencia
LSA puede utilizar una matriz de términos de documento que describe la aparición de términos en los documentos; es una matriz dispersa cuyas filas corresponden a términos y cuyas columnas corresponden a documentos. Un ejemplo típico de la ponderación de los elementos de la matriz es tf-idf (frecuencia del término - frecuencia inversa del documento): el peso de un elemento de la matriz es proporcional al número de veces que los términos aparecen en cada documento, donde los términos raros se ponderan al alza para reflejar su importancia relativa.
Esta matriz también es común a los modelos semánticos estándar, aunque no necesariamente se expresa explícitamente como una matriz, ya que no siempre se utilizan las propiedades matemáticas de las matrices.
Bajada de rango
Después de la construcción de la matriz de ocurrencia, LSA encuentra una aproximación de rango bajo [4] a la matriz término-documento . Puede haber varias razones para estas aproximaciones:
- Se presume que la matriz de documento-término original es demasiado grande para los recursos informáticos; en este caso, la matriz aproximada de rango bajo se interpreta como una aproximación (un "mal mínimo y necesario").
- Se presume que la matriz original de documentos de términos es ruidosa : por ejemplo, deben eliminarse las instancias anecdóticas de términos. Desde este punto de vista, la matriz aproximada se interpreta como una matriz sin ruido (una matriz mejor que la original).
- Se presume que la matriz de documento-término original es demasiado escasa en relación con la matriz de documento-término "verdadera". Es decir, la matriz original enumera solo las palabras de cada documento, mientras que podríamos estar interesados en todas las palabras relacionadas con cada documento, generalmente un conjunto mucho mayor debido a la sinonimia .
La consecuencia del descenso de rango es que algunas dimensiones se combinan y dependen de más de un término:
- {(automóvil), (camión), (flor)} -> {(1.3452 * automóvil + 0.2828 * camión), (flor)}
Esto mitiga el problema de identificar la sinonimia, ya que se espera que el descenso de rango fusione las dimensiones asociadas con términos que tienen significados similares. También mitiga parcialmente el problema de la polisemia , ya que los componentes de las palabras polisémicas que apuntan en la dirección "correcta" se agregan a los componentes de las palabras que comparten un significado similar. A la inversa, los componentes que apuntan en otras direcciones tienden a anularse simplemente o, en el peor de los casos, a ser más pequeños que los componentes en las direcciones correspondientes al sentido pretendido.
Derivación
Dejar ser una matriz donde el elemento describe la ocurrencia del término en documento (esto puede ser, por ejemplo, la frecuencia). se verá así:
Ahora una fila en esta matriz será un vector correspondiente a un término, dando su relación con cada documento:
Asimismo, una columna de esta matriz será un vector correspondiente a un documento, dando su relación con cada término:
Ahora el producto escalar entre dos vectores de términos da la correlación entre los términos sobre el conjunto de documentos. El producto de la matriz contiene todos estos productos punto. Elemento (que es igual al elemento ) contiene el producto escalar (). Asimismo, la matriz contiene los productos escalares entre todos los vectores del documento, dando su correlación sobre los términos: .
Ahora, a partir de la teoría del álgebra lineal, existe una descomposición de tal que y son matrices ortogonales yes una matriz diagonal . Esto se llama descomposición de valor singular (SVD):
Los productos matriciales que nos dan las correlaciones de términos y documentos se convierten en
Desde y son diagonales vemos que debe contener los autovectores de, tiempo deben ser los autovectores de . Ambos productos tienen los mismos valores propios distintos de cero, dados por las entradas distintas de cero de, o igualmente, por las entradas distintas de cero de . Ahora la descomposición se ve así:
Los valores se llaman valores singulares, y y los vectores singulares izquierdo y derecho. Note la única parte de que contribuye a es el fila. Dejemos que este vector de fila se llame. Asimismo, la única parte de que contribuye a es el columna, . Estos no son los autovectores, sino que dependen de todos los autovectores.
Resulta que cuando seleccionas el valores singulares más grandes, y sus correspondientes vectores singulares de y , obtienes el rango aproximación a con el menor error ( norma Frobenius ). Esta aproximación tiene un error mínimo. Pero lo que es más importante, ahora podemos tratar el término y los vectores de documento como un "espacio semántico". El vector de fila "término" entonces tiene entradas mapeándolo a las dimensiones de un espacio de menor dimensión. Estas nuevas dimensiones no se relacionan con ningún concepto comprensible. Son una aproximación de dimensiones inferiores al espacio de dimensiones superiores. Asimismo, el vector "documento"es una aproximación en este espacio de dimensiones inferiores. Escribimos esta aproximación como
Ahora puede hacer lo siguiente:
- Vea cómo documentos relacionados y están en el espacio de baja dimensión comparando los vectores y (típicamente por similitud de coseno ).
- Comparación de términos y comparando los vectores y . Tenga en cuenta que ahora es un vector de columna.
- Los documentos y las representaciones de vectores de términos se pueden agrupar utilizando algoritmos de agrupación tradicionales como k-means utilizando medidas de similitud como el coseno.
- Dada una consulta, visualícela como un mini documento y compárelo con sus documentos en el espacio de dimensiones reducidas.
Para hacer esto último, primero debe traducir su consulta al espacio de baja dimensión. Entonces es intuitivo que debe usar la misma transformación que usa en sus documentos:
Tenga en cuenta aquí que la inversa de la matriz diagonal se puede encontrar invirtiendo cada valor distinto de cero dentro de la matriz.
Esto significa que si tiene un vector de consulta , debes hacer la traducción antes de compararlo con los vectores del documento en el espacio de baja dimensión. Puede hacer lo mismo con los vectores de pseudo término:
Aplicaciones
El nuevo espacio de baja dimensión normalmente se puede utilizar para:
- Compare los documentos en el espacio de baja dimensión ( agrupación de datos , clasificación de documentos ).
- Encuentre documentos similares en todos los idiomas, después de analizar un conjunto básico de documentos traducidos ( recuperación de información entre idiomas ).
- Encuentra relaciones entre términos ( sinonimia y polisemia ).
- Dada una consulta de términos, traducirla al espacio de baja dimensión y encontrar documentos coincidentes ( recuperación de información ).
- Encontrar la mejor similitud entre pequeños grupos de términos, de forma semántica (es decir, en un contexto de un corpus de conocimiento), como por ejemplo en el modelo de respuesta de preguntas de opción múltiple MCQ . [5]
- Amplíe el espacio de funciones de los sistemas de minería de texto / aprendizaje automático [6]
- Analizar la asociación de palabras en el corpus de texto [7]
La sinonimia y la polisemia son problemas fundamentales en el procesamiento del lenguaje natural :
- La sinonimia es el fenómeno en el que diferentes palabras describen la misma idea. Por lo tanto, una consulta en un motor de búsqueda puede no recuperar un documento relevante que no contenga las palabras que aparecieron en la consulta. Por ejemplo, es posible que una búsqueda de "médicos" no devuelva un documento que contenga la palabra " médicos ", aunque las palabras tengan el mismo significado.
- La polisemia es el fenómeno en el que una misma palabra tiene múltiples significados. Por lo tanto, una búsqueda puede recuperar documentos irrelevantes que contienen las palabras deseadas con un significado incorrecto. Por ejemplo, un botánico y un informático que buscan la palabra "árbol" probablemente deseen diferentes conjuntos de documentos.
Aplicaciones comerciales
LSA se ha utilizado para ayudar a realizar búsquedas de patentes en el estado de la técnica . [8]
Aplicaciones en la memoria humana
El uso del análisis semántico latente ha prevalecido en el estudio de la memoria humana, especialmente en áreas de memoria libre y búsqueda de memoria. Existe una correlación positiva entre la similitud semántica de dos palabras (medida por LSA) y la probabilidad de que las palabras se recuerden una tras otra en tareas de memoria libre utilizando listas de estudio de sustantivos comunes aleatorios. También notaron que en estas situaciones, el tiempo de respuesta entre palabras similares era mucho más rápido que entre palabras diferentes. Estos hallazgos se conocen como efecto de proximidad semántica . [9]
Cuando los participantes cometían errores al recordar los elementos estudiados, estos errores tendían a ser elementos que estaban más relacionados semánticamente con el elemento deseado y se encontraban en una lista previamente estudiada. Estas intrusiones en la lista anterior, como se les ha llegado a llamar, parecen competir con los elementos de la lista actual para recuperarlos. [10]
Otro modelo, denominado Word Association Spaces (WAS) también se utiliza en estudios de memoria mediante la recopilación de datos de asociación libre de una serie de experimentos y que incluye medidas de relación de palabras para más de 72.000 pares de palabras distintos. [11]
Implementación
La SVD generalmente se calcula utilizando métodos de matriz grande (por ejemplo, métodos de Lanczos ), pero también se puede calcular de forma incremental y con recursos muy reducidos a través de un enfoque similar a una red neuronal , que no requiere que la matriz grande de rango completo se mantenga en memoria. [12] Recientemente se ha desarrollado un algoritmo de SVD rápido, incremental, de baja memoria y de matriz grande. [13] Están disponibles implementaciones de MATLAB y Python de estos rápidos algoritmos. A diferencia de la aproximación estocástica de Gorrell y Webb (2005), el algoritmo de Brand (2003) proporciona una solución exacta. En los últimos años se han realizado avances para reducir la complejidad computacional de la enfermedad vesicular porcina; por ejemplo, mediante el uso de un algoritmo ARPACK paralelo para realizar la descomposición de valores propios en paralelo, es posible acelerar el costo de cálculo de la SVD al tiempo que se proporciona una calidad de predicción comparable. [14]
Limitaciones
Algunos de los inconvenientes de LSA incluyen:
- Las dimensiones resultantes pueden ser difíciles de interpretar. Por ejemplo, en
- {(automóvil), (camión), (flor)} ↦ {(1.3452 * automóvil + 0.2828 * camión), (flor)}
- el componente (1.3452 * automóvil + 0.2828 * camión) podría interpretarse como "vehículo". Sin embargo, es muy probable que los casos cercanos a
- {(coche), (botella), (flor)} ↦ {(1,3452 * coche + 0,2828 * botella ), (flor)}
- ocurrira. Esto conduce a resultados que pueden justificarse a nivel matemático, pero que no tienen un significado interpretable en lenguaje natural.
- LSA solo puede capturar parcialmente la polisemia (es decir, múltiples significados de una palabra) porque cada aparición de una palabra se trata como si tuviera el mismo significado debido a que la palabra se representa como un solo punto en el espacio. Por ejemplo, la aparición de "presidente" en un documento que contiene "El presidente de la Junta" y en un documento separado que contiene "el creador de la silla" se considera lo mismo. El comportamiento da como resultado que la representación vectorial sea un promedio de todos los diferentes significados de la palabra en el corpus, lo que puede dificultar la comparación. [15] Sin embargo, el efecto suele disminuir debido a que las palabras tienen un sentido predominante en todo el corpus (es decir, no todos los significados son igualmente probables).
- Limitaciones del modelo de bolsa de palabras (BOW), donde un texto se representa como una colección desordenada de palabras. Para abordar algunas de las limitaciones del modelo de bolsa de palabras (BOW, por sus siglas en inglés), se puede usar un diccionario de varios gramos para encontrar asociaciones directas e indirectas, así como co-ocurrencias de orden superior entre términos. [dieciséis]
- El modelo probabilístico de LSA no coincide con los datos observados: LSA supone que las palabras y los documentos forman un modelo gaussiano conjunto ( hipótesis ergódica ), mientras que se ha observado una distribución de Poisson . Por lo tanto, una alternativa más nueva es el análisis semántico latente probabilístico , basado en un modelo multinomial , que se informa que da mejores resultados que el LSA estándar. [17]
Metodos alternativos
Hash semántico
En el hash semántico [18], los documentos se asignan a direcciones de memoria por medio de una red neuronal de tal manera que los documentos semánticamente similares se ubican en direcciones cercanas. La red neuronal profunda esencialmente construye un modelo gráfico de los vectores de recuento de palabras obtenidos de un gran conjunto de documentos. Los documentos similares a un documento de consulta se pueden encontrar simplemente accediendo a todas las direcciones que difieren solo unos pocos bits de la dirección del documento de consulta. Esta forma de extender la eficiencia de la codificación hash para aproximar la coincidencia es mucho más rápida que el hash sensible a la localidad , que es el método actual más rápido. [ aclaración necesaria ]
Indexación semántica latente
La indexación semántica latente ( LSI ) es un método de indexación y recuperación que utiliza una técnica matemática llamada descomposición de valor singular (SVD) para identificar patrones en las relaciones entre los términos y conceptos contenidos en una colección de texto no estructurada. LSI se basa en el principio de que las palabras que se utilizan en los mismos contextos tienden a tener significados similares. Una característica clave de LSI es su capacidad para extraer el contenido conceptual de un cuerpo de texto mediante el establecimiento de asociaciones entre los términos que ocurren en contextos similares . [19]
LSI es también una aplicación del análisis de correspondencia , una técnica estadística multivariante desarrollada por Jean-Paul Benzécri [20] a principios de la década de 1970, a una tabla de contingencia construida a partir de recuentos de palabras en documentos.
Llamada " indexación semántica latente " debido a su capacidad para correlacionar términos relacionados semánticamente que están latentes en una colección de texto, se aplicó por primera vez al texto en Bellcore a fines de la década de 1980. El método, también llamado análisis semántico latente (LSA), descubre la estructura semántica latente subyacente en el uso de palabras en un cuerpo de texto y cómo se puede utilizar para extraer el significado del texto en respuesta a las consultas de los usuarios, comúnmente conocido como como búsquedas de conceptos. Las consultas, o búsquedas de conceptos, en un conjunto de documentos que se han sometido a LSI devolverán resultados que son conceptualmente similares en significado a los criterios de búsqueda, incluso si los resultados no comparten una palabra o palabras específicas con los criterios de búsqueda.
Beneficios de LSI
LSI ayuda a superar la sinonimia aumentando la memoria , una de las limitaciones más problemáticas de las consultas de palabras clave booleanas y los modelos de espacio vectorial. [15] La sinonimia es a menudo la causa de desajustes en el vocabulario utilizado por los autores de documentos y los usuarios de los sistemas de recuperación de información . [21] Como resultado, las consultas booleanas o de palabras clave a menudo devuelven resultados irrelevantes y pierden información relevante.
LSI también se utiliza para realizar la categorización automatizada de documentos . De hecho, varios experimentos han demostrado que existe una serie de correlaciones entre la forma en que LSI y los humanos procesan y clasifican el texto. [22] La categorización de documentos es la asignación de documentos a una o más categorías predefinidas en función de su similitud con el contenido conceptual de las categorías. [23] LSI utiliza documentos de ejemplo para establecer la base conceptual de cada categoría. Durante el proceso de categorización, los conceptos contenidos en los documentos que se categorizan se comparan con los conceptos contenidos en los elementos de ejemplo, y se asigna una categoría (o categorías) a los documentos en función de las similitudes entre los conceptos que contienen y los conceptos que están contenidos. en los documentos de ejemplo.
La agrupación dinámica en clúster basada en el contenido conceptual de los documentos también se puede lograr mediante LSI. La agrupación en clústeres es una forma de agrupar documentos en función de su similitud conceptual entre sí sin utilizar documentos de ejemplo para establecer la base conceptual de cada grupo. Esto es muy útil cuando se trata de una colección desconocida de texto no estructurado.
Debido a que utiliza un enfoque estrictamente matemático, LSI es inherentemente independiente del lenguaje. Esto permite a LSI obtener el contenido semántico de la información escrita en cualquier idioma sin requerir el uso de estructuras auxiliares, como diccionarios y tesauros. LSI también puede realizar búsquedas de conceptos en varios idiomas y categorización basada en ejemplos. Por ejemplo, las consultas se pueden realizar en un idioma, como el inglés, y se devolverán resultados conceptualmente similares incluso si están compuestos de un idioma completamente diferente o de varios idiomas. [ cita requerida ]
LSI no se limita a trabajar solo con palabras. También puede procesar cadenas de caracteres arbitrarias. Cualquier objeto que pueda expresarse como texto se puede representar en un espacio vectorial LSI. Por ejemplo, las pruebas con resúmenes de MEDLINE han demostrado que LSI es capaz de clasificar genes de manera eficaz basándose en el modelado conceptual de la información biológica contenida en los títulos y resúmenes de las citas de MEDLINE. [24]
LSI se adapta automáticamente a la terminología nueva y cambiante y ha demostrado ser muy tolerante con el ruido (es decir, palabras mal escritas, errores tipográficos, caracteres ilegibles, etc.). [25] Esto es especialmente importante para las aplicaciones que utilizan texto derivado del reconocimiento óptico de caracteres (OCR) y la conversión de voz a texto. LSI también trata de manera efectiva con datos escasos, ambiguos y contradictorios.
No es necesario que el texto esté en forma de oración para que LSI sea efectivo. Puede trabajar con listas, notas de formato libre, correo electrónico, contenido basado en la Web, etc. Siempre que una colección de texto contenga varios términos, LSI se puede utilizar para identificar patrones en las relaciones entre los términos y conceptos importantes contenidos en el texto.
LSI ha demostrado ser una solución útil para una serie de problemas de coincidencia conceptual. [26] [27] Se ha demostrado que la técnica captura información clave de la relación, incluida la información causal, orientada a objetivos y taxonómica. [28]
Cronología de LSI
- Mediados de la década de 1960 : técnica de análisis factorial descrita y probada por primera vez (H. Borko y M. Bernick)
- 1988 - Se publica un artículo fundamental sobre la técnica LSI [19]
- 1989 - Patente original concedida [19]
- 1992 - Primer uso de LSI para asignar artículos a revisores [29]
- 1994 - Patente concedida para la aplicación multilingüe de LSI (Landauer et al.)
- 1995 - Primer uso de LSI para calificar ensayos (Foltz, et al., Landauer et al.)
- 1999 - Primera implementación de la tecnología LSI para la comunidad de inteligencia para el análisis de texto no estructurado ( SAIC ).
- 2002 - Oferta de productos basados en LSI a agencias gubernamentales basadas en inteligencia (SAIC)
Matemáticas de LSI
LSI utiliza técnicas comunes de álgebra lineal para aprender las correlaciones conceptuales en una colección de texto. En general, el proceso implica construir una matriz de documento-término ponderada, realizar una descomposición de valores singulares en la matriz y utilizar la matriz para identificar los conceptos contenidos en el texto.
Matriz plazo-documento
LSI comienza construyendo una matriz de documentos de términos, , para identificar las ocurrencias del términos únicos dentro de una colección de documentos. En una matriz término-documento, cada término está representado por una fila, y cada documento está representado por una columna, con cada celda de la matriz,, que inicialmente representa el número de veces que aparece el término asociado en el documento indicado, . Esta matriz suele ser muy grande y muy escasa.
Una vez que se construye una matriz de documento-término, se le pueden aplicar funciones de ponderación local y global para condicionar los datos. Las funciones de ponderación transforman cada celda, de , para ser el producto de un peso de término local, , que describe la frecuencia relativa de un término en un documento y un peso global, , que describe la frecuencia relativa del término dentro de toda la colección de documentos.
Algunas funciones de ponderación local comunes [30] se definen en la siguiente tabla.
Binario | si el término existe en el documento, o de lo contrario | |
Término Frecuencia | , el número de apariciones del término en documento | |
Tronco | ||
Augnorm |
Algunas funciones de ponderación global comunes se definen en la siguiente tabla.
Binario | ||
Normal | ||
GfIdf | , dónde es el número total de veces que el término ocurre en toda la colección, y es el número de documentos en los que plazo ocurre. | |
Idf (frecuencia de documento inversa) | ||
Entropía | , dónde |
Los estudios empíricos con LSI informan que las funciones de ponderación de registro y entropía funcionan bien, en la práctica, con muchos conjuntos de datos. [31] En otras palabras, cada entrada de se calcula como:
Descomposición de valores singulares de rango reducido
Se realiza una descomposición de valores singulares de rango reducido en la matriz para determinar patrones en las relaciones entre los términos y conceptos contenidos en el texto. La SVD forma la base de LSI. [32] Calcula los espacios vectoriales de términos y documentos aproximando la matriz de frecuencia de un solo término,, en otras tres matrices: una matriz vectorial término-concepto m por r, una matriz de valores singulares r por r, y una matriz vectorial de concepto-documento de n por r ,, que satisfacen las siguientes relaciones:
En la fórmula, A es la matriz ponderada m por n de frecuencias de términos en una colección de texto, donde m es el número de términos únicos y n es el número de documentos. T es una matriz calculada m por r de vectores de término donde r es el rango de A, una medida de sus dimensiones únicas ≤ min ( m, n ) . S es una matriz diagonal calculada r por r de valores singulares decrecientes, y D es una matriz calculada n por r de vectores de documento.
Luego, la SVD se trunca para reducir el rango manteniendo solo las mayores entradas diagonales k « r en la matriz de valor singular S , donde k está típicamente en el orden de 100 a 300 dimensiones. Esto reduce efectivamente el término y documentos tamaños de matriz vector a m por k y n por k , respectivamente. La operación SVD, junto con esta reducción, tiene el efecto de conservar la información más importante semántica en el texto al tiempo que reduce el ruido y otros artefactos indeseables del espacio original de A . Este conjunto reducido de matrices a menudo se denota con una fórmula modificada como:
- A ≈ A k = T k S k D k T
Los algoritmos LSI eficientes solo calculan los primeros k valores singulares y los vectores de términos y documentos en lugar de calcular un SVD completo y luego truncarlo.
Tenga en cuenta que esta reducción de rango es esencialmente lo mismo que realizar el análisis de componentes principales (PCA) en la matriz A , excepto que PCA resta las medias. PCA pierde la escasez de la matriz A , lo que puede hacerla inviable para léxicos grandes.
Consultar y aumentar espacios vectoriales LSI
Las matrices T k y D k calculadas definen el término y los espacios vectoriales de documento, que con los valores singulares calculados, S k , incorporan la información conceptual derivada de la colección de documentos. La similitud de términos o documentos dentro de estos espacios es un factor de cuán cerca están entre sí en estos espacios, generalmente calculados como una función del ángulo entre los vectores correspondientes.
Los mismos pasos se utilizan para localizar los vectores que representan el texto de consultas y nuevos documentos dentro del espacio de documentos de un índice LSI existente. Mediante una simple transformación de la ecuación A = TSD T en la ecuación D = A T TS −1 equivalente, se puede crear un nuevo vector, d , para una consulta o para un nuevo documento calculando una nueva columna en A y luego multiplicando la nueva columna por TS −1 . La nueva columna en A se calcula utilizando las ponderaciones de términos globales derivadas originalmente y aplicando la misma función de ponderación local a los términos en la consulta o en el nuevo documento.
Un inconveniente de calcular vectores de esta manera, al agregar nuevos documentos con capacidad de búsqueda, es que se ignoran los términos que no se conocían durante la fase SVD para el índice original. Estos términos no tendrán ningún impacto en las ponderaciones globales y las correlaciones aprendidas derivadas de la colección original de texto. Sin embargo, los vectores calculados para el nuevo texto siguen siendo muy relevantes para las comparaciones de similitud con todos los demás vectores de documentos.
El proceso de aumentar los espacios vectoriales del documento para un índice LSI con nuevos documentos de esta manera se denomina plegado . Aunque el proceso de plegado no tiene en cuenta el nuevo contenido semántico del nuevo texto, agregar una cantidad sustancial de documentos de esta manera aún proporcionará buenos resultados para las consultas, siempre que los términos y conceptos que contienen estén bien representados dentro del LSI. índice al que se agregan. Cuando los términos y conceptos de un nuevo conjunto de documentos deben incluirse en un índice LSI, se debe volver a calcular la matriz término-documento y la SVD o utilizar un método de actualización incremental (como el que se describe en [13] ) es necesario.
Usos adicionales de LSI
En general, se reconoce que la capacidad de trabajar con texto sobre una base semántica es esencial para los sistemas modernos de recuperación de información. Como resultado, el uso de LSI se ha expandido significativamente en los últimos años a medida que se superaron los desafíos anteriores en cuanto a escalabilidad y rendimiento.
LSI se utiliza en una variedad de aplicaciones de recuperación de información y procesamiento de texto, aunque su aplicación principal ha sido la búsqueda de conceptos y la categorización automatizada de documentos. [33] A continuación se muestran algunas otras formas en las que se utiliza LSI:
- Descubrimiento de información [34] ( eDiscovery , comunidad gubernamental / de inteligencia, publicación)
- Clasificación de documentos automatizada (eDiscovery, comunidad gubernamental / de inteligencia, publicación) [35]
- Resumen de texto [36] (eDiscovery, Publishing)
- Descubrimiento de relaciones [37] (gobierno, comunidad de inteligencia, redes sociales)
- Generación automática de gráficos de vínculos de individuos y organizaciones [38] (Gobierno, comunidad de inteligencia)
- Emparejar documentos técnicos y subvenciones con revisores [39] (Gobierno)
- Atención al cliente en línea [40] (Gestión de clientes)
- Determinación de la autoría del documento [41] (Educación)
- Anotación automática de palabras clave de imágenes [42]
- Comprensión del código fuente del software [43] (Ingeniería de software)
- Filtrado de correo no deseado [44] (Administración del sistema)
- Visualización de información [45]
- Puntuación de ensayos [46] (Educación)
- Descubrimiento basado en la literatura [47]
- Predicción de rentabilidad de acciones [6]
- Análisis del contenido de los sueños (psicología) [7]
LSI se utiliza cada vez más para el descubrimiento de documentos electrónicos (eDiscovery) para ayudar a las empresas a prepararse para los litigios. En eDiscovery, la capacidad de agrupar, categorizar y buscar grandes colecciones de texto no estructurado sobre una base conceptual es esencial. La búsqueda basada en conceptos utilizando LSI se ha aplicado al proceso de eDiscovery por proveedores líderes ya en 2003. [48]
Desafíos para LSI
Los primeros desafíos de LSI se centraron en la escalabilidad y el rendimiento. LSI requiere un rendimiento computacional y una memoria relativamente altos en comparación con otras técnicas de recuperación de información. [49] Sin embargo, con la implementación de procesadores modernos de alta velocidad y la disponibilidad de memoria económica, estas consideraciones se han superado en gran medida. Las aplicaciones del mundo real que involucran más de 30 millones de documentos que se procesaron completamente a través de la matriz y cálculos SVD son comunes en algunas aplicaciones LSI. El paquete de software de código abierto gensim contiene una implementación completamente escalable (número ilimitado de documentos, capacitación en línea) de LSI . [50]
Otro desafío para LSI ha sido la supuesta dificultad para determinar el número óptimo de dimensiones a utilizar para realizar la SVD. Como regla general, un menor número de dimensiones permite comparaciones más amplias de los conceptos contenidos en una colección de texto, mientras que un mayor número de dimensiones permite comparaciones de conceptos más específicas (o más relevantes). El número real de dimensiones que se pueden utilizar está limitado por el número de documentos de la colección. La investigación ha demostrado que alrededor de 300 dimensiones proporcionarán generalmente los mejores resultados con colecciones de documentos de tamaño moderado (cientos de miles de documentos) y quizás 400 dimensiones para colecciones de documentos más grandes (millones de documentos). [51] Sin embargo, estudios recientes indican que 50-1000 dimensiones son adecuadas según el tamaño y la naturaleza de la colección de documentos. [52] La verificación de la proporción de varianza retenida, similar a la PCA o al análisis factorial , para determinar la dimensionalidad óptima no es adecuada para LSI. El uso de una prueba de sinónimos o la predicción de palabras faltantes son dos métodos posibles para encontrar la dimensionalidad correcta. [53] Cuando los temas de LSI se utilizan como características en los métodos de aprendizaje supervisado, se pueden utilizar medidas de error de predicción para encontrar la dimensionalidad ideal.
Ver también
- Coh-Metrix
- Procesamiento de término compuesto
- Semántica distributiva
- Análisis semántico explícito
- Mapeo semántico latente
- Indexación de estructura semántica latente
- Análisis de componentes principales
- Análisis semántico latente probabilístico
- Spamdexing
- Vector de palabra
- Modelo de tema
- Asignación de Dirichlet latente
Referencias
- ^ Susan T. Dumais (2005). "Análisis semántico latente". Revisión anual de ciencia y tecnología de la información . 38 : 188–230. doi : 10.1002 / aris.1440380105 .
- ^ "La página de inicio de la indexación semántica latente" .
- ^ http://topicmodels.west.uni-koblenz.de/ckling/tmt/svd_ap.html
- ^ Markovsky I. (2012) Aproximación de bajo rango: algoritmos, implementación, aplicaciones, Springer, 2012, ISBN 978-1-4471-2226-5 [ página necesaria ]
- ^ Alain Lifchitz; Sandra Jhean-Larose; Guy Denhière (2009). "Efecto de los parámetros ajustados en un modelo de respuesta a preguntas de opción múltiple LSA" (PDF) . Métodos de investigación del comportamiento . 41 (4): 1201–1209. doi : 10.3758 / BRM.41.4.1201 . PMID 19897829 . S2CID 480826 .
- ^ a b Ramiro H. Gálvez; Agustín Gravano (2017). "Evaluación de la utilidad de la minería de tableros de mensajes en línea en sistemas automáticos de predicción de stock". Revista de Ciencias Computacionales . 19 : 1877–7503. doi : 10.1016 / j.jocs.2017.01.001 .
- ^ a b Altszyler, E .; Ribeiro, S .; Sigman, M .; Fernández Slezak, D. (2017). "La interpretación del significado de los sueños: resolución de ambigüedad mediante análisis semántico latente en un pequeño corpus de texto". Conciencia y cognición . 56 : 178-187. arXiv : 1610.01520 . doi : 10.1016 / j.concog.2017.09.004 . PMID 28943127 . S2CID 195347873 .
- ^ Gerry J. Elman (octubre de 2007). "Apoyo al examen automatizado de patentes - Una propuesta". Informe de Derecho Biotecnológico . 26 (5): 435–436. doi : 10.1089 / blr.2007.9896 .
- ^ Marc W. Howard; Michael J. Kahana (1999). "Variabilidad contextual y efectos de posición serial en memoria libre" (PDF) . Cite journal requiere
|journal=
( ayuda ) - ^ Franklin M. Zaromb; et al. (2006). "Asociaciones temporales e intrusiones de lista previa en memoria libre" (PDF) . Cite journal requiere
|journal=
( ayuda ) - ^ Nelson, Douglas. "La Asociación de palabras de la Universidad del sur de Florida, normas de rima y fragmentos de palabras" . Consultado el 8 de mayo de 2011 .
- ^ Geneviève Gorrell; Brandyn Webb (2005). "Algoritmo hebbiano generalizado para análisis semántico latente" (PDF) . Interspeech'2005 . Archivado desde el original (PDF) el 21 de diciembre de 2008.
- ^ a b Matthew Brand (2006). "Modificaciones rápidas de bajo rango de la descomposición de valores singulares finos" (PDF) . Álgebra lineal y sus aplicaciones . 415 : 20-30. doi : 10.1016 / j.laa.2005.07.021 .
- ^ Ding, Yaguang; Zhu, Guofeng; Cui, Chenyang; Zhou, Jian; Tao, Liang (2011). Una implementación paralela de Singular Value Decomposition basada en Map-Reduce y PARPACK . Actas de la Conferencia Internacional de 2011 sobre Ciencias de la Computación y Tecnología de Redes . págs. 739–741. doi : 10.1109 / ICCSNT.2011.6182070 . ISBN 978-1-4577-1587-7. S2CID 15281129 .
- ^ a b Deerwester, Scott; Dumais, Susan T .; Furnas, George W .; Landauer, Thomas K .; Harshman, Richard (1990). "Indexación por análisis semántico latente". Revista de la Sociedad Estadounidense de Ciencias de la Información . 41 (6): 391–407. CiteSeerX 10.1.1.108.8490 . doi : 10.1002 / (SICI) 1097-4571 (199009) 41: 6 <391 :: AID-ASI1> 3.0.CO; 2-9 .
- ^ Abedi, Vida; Yeasin, Mohammed; Zand, Ramin (27 de noviembre de 2014). "Estudio empírico utilizando una red de asociaciones relacionadas semánticamente para cerrar la brecha de conocimiento" . Revista de Medicina Traslacional . 12 (1): 324. doi : 10.1186 / s12967-014-0324-9 . PMC 4252998 . PMID 25428570 .
- ^ Thomas Hofmann (1999). "Análisis semántico latente probabilístico". Incertidumbre en Inteligencia Artificial . arXiv : 1301.6705 .
- ^ Salakhutdinov, Ruslan y Geoffrey Hinton. "Hash semántico". RBM 500,3 (2007): 500.
- ^ a b c Deerwester, S., et al, Mejora de la recuperación de información con indexación semántica latente, Actas de la 51ª reunión anual de la Sociedad Estadounidense de Ciencias de la Información 25, 1988, págs. 36–40.
- ^ Benzécri, J.-P. (1973). L'Analyse des Données. Volumen II. L'Analyse des Correspondences . París, Francia: Dunod.
- ^ Furnas, GW; Landauer, TK; Gómez, LM; Dumais, ST (1987). "El problema del vocabulario en la comunicación humano-sistema". Comunicaciones de la ACM . 30 (11): 964–971. CiteSeerX 10.1.1.118.4768 . doi : 10.1145 / 32206.32212 . S2CID 3002280 .
- ^ Landauer, T., et al., Aprendizaje de conocimientos similares a los humanos por descomposición de valores singulares: un informe de progreso , MI Jordan, MJ Kearns & SA Solla (Eds.), Avances en sistemas de procesamiento de información neuronal 10, Cambridge: MIT Press, 1998, págs. 45–51.
- ^ Dumais, S .; Platt, J .; Heckerman, D .; Sahami, M. (1998). "Representaciones y algoritmos de aprendizaje inductivo para la categorización de textos" (PDF) . Actas de la séptima conferencia internacional sobre gestión de la información y el conocimiento - CIKM '98 . págs. 148 . CiteSeerX 10.1.1.80.8909 . doi : 10.1145 / 288627.288651 . ISBN 978-1581130614. S2CID 617436 .
- ^ Homayouni, R .; Heinrich, K .; Wei, L .; Berry, MW (2004). "Agrupación de genes por indexación semántica latente de resúmenes de MEDLINE" . Bioinformática . 21 (1): 104-115. doi : 10.1093 / bioinformatics / bth464 . PMID 15308538 .
- ^ Precio, RJ; Zukas, AE (2005). "Aplicación de la indexación semántica latente al procesamiento de texto ruidoso". Informática de Inteligencia y Seguridad . Apuntes de conferencias en informática. 3495 . pag. 602. doi : 10.1007 / 11427995_68 . ISBN 978-3-540-25999-2.
- ^ Ding, C., Un modelo de probabilidad basado en la similitud para la indexación semántica latente , Actas de la 22ª Conferencia internacional ACM SIGIR sobre investigación y desarrollo en la recuperación de información, 1999, págs. 59–65.
- ^ Bartell, B., Cottrell, G. y Belew, R., La indexación semántica latente es un caso especial óptimo de escala multidimensional , Actas, Conferencia ACM SIGIR sobre investigación y desarrollo en la recuperación de información, 1992, págs. 161-167.
- ^ Graesser, A .; Karnavat, A. (2000). "Análisis semántico latente captura estructuras causales, orientadas a objetivos y taxonómicos". Actas de CogSci 2000 : 184-189. CiteSeerX 10.1.1.23.5444 .
- ^ Dumais, S .; Nielsen, J. (1992). Automatización de la asignación de manuscritos enviados a revisores . Actas de la Decimoquinta Conferencia Internacional Anual sobre Investigación y Desarrollo en Recuperación de Información . págs. 233–244. CiteSeerX 10.1.1.16.9793 . doi : 10.1145 / 133160.133205 . ISBN 978-0897915236. S2CID 15038631 .
- ^ Berry, MW y Browne, M., Comprensión de los motores de búsqueda: modelado matemático y recuperación de texto, Sociedad de matemáticas industriales y aplicadas, Filadelfia, (2005).
- ^ Landauer, T., et al., Manual de análisis semántico latente, Lawrence Erlbaum Associates, 2007.
- ^ Berry, Michael W., Dumais, Susan T., O'Brien, Gavin W., Uso de álgebra lineal para la recuperación inteligente de información , diciembre de 1994, SIAM Review 37: 4 (1995), págs. 573–595.
- ^ Dumais, S., Análisis semántico latente, Revisión de ARIST de ciencia y tecnología de la información, vol. 38, 2004, Capítulo 4.
- ^ Comentario de mejores prácticas sobre el uso de métodos de búsqueda y recuperación de información en E-Discovery, la Conferencia de Sedona, 2007, págs. 189–223.
- ^ Foltz, PW y Dumais, ST Entrega de información personalizada: un análisis de los métodos de filtrado de información , Comunicaciones del ACM, 1992, 34 (12), 51-60.
- ^ Gong, Y. y Liu, X., Creación de resúmenes de texto genérico , actas, Sexta Conferencia Internacional sobre Análisis y Reconocimiento de Documentos, 2001, págs. 903–907.
- ^ Bradford, R., Descubrimiento eficiente de nueva información en grandes bases de datos de texto , Actas, Conferencia internacional IEEE sobre inteligencia y seguridad informática, Atlanta, Georgia, LNCS Vol. 3495, Springer, 2005, págs. 374–380.
- ^ Bradford, R., Aplicación de la indexación semántica latente en la generación de gráficos de redes terroristas , en: Actas, Conferencia internacional IEEE sobre inteligencia e informática de seguridad, ISI 2006, San Diego, CA, EE. UU., 23 al 24 de mayo de 2006, Springer, LNCS vol. 3975, págs. 674–675.
- ^ Yarowsky, D. y Florian, R., Quitar la carga de los presidentes de conferencias: Hacia un asistente de enrutamiento de papel digital , Actas de la Conferencia conjunta SIGDAT de 1999 sobre métodos empíricos en PNL y Very-Large Corpora, 1999, págs. 220–230.
- ^ Caron, J., Aplicación de LSA a la atención al cliente en línea: un estudio de prueba, tesis de maestría inédita, mayo de 2000.
- ^ Soboroff, I., et al, Visualización de la autoría de documentos usando N-gramas e indexación semántica latente , Taller sobre nuevos paradigmas en visualización y manipulación de información, 1997, págs. 43–48.
- ^ Monay, F. y Gatica-Perez, D., Sobre la anotación automática de imágenes con modelos de espacio latente , Actas de la 11ª conferencia internacional ACM sobre Multimedia, Berkeley, CA, 2003, págs. 275–278.
- ^ Maletic, J .; Marcus, A. (13 al 15 de noviembre de 2000). Uso del análisis semántico latente para identificar similitudes en el código fuente para respaldar la comprensión del programa . Actas de la 12ª Conferencia Internacional IEEE sobre herramientas con inteligencia artificial . Vancouver, Columbia Británica. págs. 46–53. CiteSeerX 10.1.1.36.6652 . doi : 10.1109 / TAI.2000.889845 . ISBN 978-0-7695-0909-9. S2CID 10354564 .
- ^ Gee, K., Uso de la indexación semántica latente para filtrar el spam , en: Actas, Simposio de ACM 2003 sobre Computación aplicada, Melbourne, Florida, págs. 460–464.
- ^ Landauer, T., Laham, D. y Derr, M., De párrafo a gráfico: Análisis semántico latente para visualización de información , Actas de la Academia Nacional de Ciencias, 101, 2004, págs. 5214–5219.
- ^ Foltz, Peter W., Laham, Darrell y Landauer, Thomas K., Puntuación de ensayos automatizada: aplicaciones a la tecnología educativa , Actas de EdMedia, 1999.
- ^ Gordon, M. y Dumais, S., Uso de la indexación semántica latente para el descubrimiento basado en la literatura , Revista de la Sociedad Estadounidense de Ciencias de la Información, 49 (8), 1998, págs. 674-685.
- ^ Tiene que haber una mejor manera de buscar, 2008, Libro blanco, Fios, Inc.
- ^ Karypis, G., Han, E., Algoritmo de reducción de dimensionalidad supervisado rápido con aplicaciones para categorización y recuperación de documentos , Actas de CIKM-00, 9ª Conferencia de ACM sobre gestión de la información y el conocimiento.
- ^ Radim Řehůřek (2011). "Seguimiento subespacial para análisis semántico latente". Avances en la recuperación de información . Avances en la recuperación de información - 33a Conferencia europea sobre investigación en RI, ECIR 2011 . Apuntes de conferencias en informática. 6611 . págs. 289–300. doi : 10.1007 / 978-3-642-20161-5_29 . ISBN 978-3-642-20160-8.
- ^ Bradford, R., Un estudio empírico de dimensionalidad requerida para aplicaciones de indexación semántica latente a gran escala , Actas de la 17ª Conferencia ACM sobre gestión de la información y el conocimiento, Napa Valley, California, Estados Unidos, 2008, pp. 153-162.
- ^ Landauer, Thomas K. y Dumais, Susan T., Análisis semántico latente, Scholarpedia, 3 (11): 4356, 2008.
- ^ Landauer, TK, Foltz, PW y Laham, D. (1998). Introducción al análisis semántico latente . Procesos del discurso, 25, 259-284
Otras lecturas
- Landauer, Thomas ; Foltz, Peter W .; Laham, Darrell (1998). "Introducción al análisis semántico latente" (PDF) . Procesos de discurso . 25 (2–3): 259–284. CiteSeerX 10.1.1.125.109 . doi : 10.1080 / 01638539809545028 .
- Deerwester, Scott ; Dumais, Susan T .; Furnas, George W .; Landauer, Thomas K .; Harshman, Richard (1990). "Indexación por análisis semántico latente" (PDF) . Revista de la Sociedad Estadounidense de Ciencias de la Información . 41 (6): 391–407. CiteSeerX 10.1.1.33.2447 . doi : 10.1002 / (SICI) 1097-4571 (199009) 41: 6 <391 :: AID-ASI1> 3.0.CO; 2-9 . Archivado desde el original (PDF) el 17 de julio de 2012. Artículo original donde se expuso por primera vez el modelo.
- Berry, Michael ; Dumais, Susan T .; O'Brien, Gavin W. (1995). "Uso de álgebra lineal para la recuperación de información inteligente" . Cite journal requiere
|journal=
( ayuda ) (PDF) . Ilustración de la aplicación de LSA a la recuperación de documentos. - "Análisis semántico latente" . InfoVis.
- Fridolin Wild (23 de noviembre de 2005). "Un paquete LSA de código abierto para R" . CRAN . Consultado el 20 de noviembre de 2006 .
- Thomas Landauer , Susan T. Dumais . "Una solución al problema de Platón: la teoría del análisis semántico latente de la adquisición, inducción y representación del conocimiento" . Consultado el 2 de julio de 2007 .
enlaces externos
Artículos sobre LSA
- Análisis semántico latente , un artículo de Scholarpedia sobre LSA escrito por Tom Landauer, uno de los creadores de LSA.
Charlas y demostraciones
- Descripción general de LSA , charla del Prof. Thomas Hofmann que describe LSA, sus aplicaciones en la recuperación de información y sus conexiones con el análisis semántico latente probabilístico .
- Complete el código de muestra de LSA en C # para Windows . El código de demostración incluye enumeración de archivos de texto, filtrado de palabras vacías, derivación, creación de una matriz de documentos y términos y SVD.
Implementaciones
Debido a sus aplicaciones de dominio cruzado en recuperación de información , procesamiento del lenguaje natural (NLP), ciencia cognitiva y lingüística computacional , LSA se ha implementado para admitir muchos tipos diferentes de aplicaciones.
- Sense Clusters , una implementación de perl orientada a la recuperación de información de LSA
- S-Space Package , una implementación Java de LSA orientada a la lingüística computacional y la ciencia cognitiva
- Los vectores semánticos aplican proyección aleatoria, LSA e indexación aleatoria reflectante a matrices de documentos de término de Lucene
- Infomap Project , una implementación C de LSA orientada a PNL (reemplazada por el proyecto semántica de vectores )
- Text to Matrix Generator , una caja de herramientas de MATLAB para generar matrices de documentos de términos a partir de colecciones de texto, con soporte para LSA
- Gensim contiene una implementación Python de LSA para matrices más grandes que RAM.