En el procesamiento del lenguaje natural (NLP), la inserción de palabras es un término que se utiliza para la representación de palabras para el análisis de texto, generalmente en forma de un vector de valor real que codifica el significado de la palabra de modo que las palabras que están más cerca en el vector se espera que el espacio tenga un significado similar. [1] Las incrustaciones de palabras se pueden obtener utilizando un conjunto de técnicas de aprendizaje de características y modelado del lenguaje donde las palabras o frases del vocabulario se asignan a vectores de números reales . Conceptualmente, implica la incrustación matemática desde el espacio con muchas dimensiones por palabra a un espacio vectorial continuo. con una dimensión mucho menor.
Los métodos para generar este mapeo incluyen redes neuronales , [2] reducción de dimensionalidad en la matriz de co-ocurrencia de palabras , [3] [4] [5] modelos probabilísticos, [6] método de base de conocimiento explicable, [7] y representación explícita en términos del contexto en el que aparecen las palabras. [8]
Se ha demostrado que las incrustaciones de palabras y frases, cuando se utilizan como representación de entrada subyacente, mejoran el rendimiento en tareas de PNL como el análisis sintáctico [9] y el análisis de sentimientos . [10]
Desarrollo e historia del enfoque
En lingüística , las incrustaciones de palabras se discutieron en el área de investigación de la semántica distributiva . Su objetivo es cuantificar y categorizar las similitudes semánticas entre elementos lingüísticos en función de sus propiedades de distribución en grandes muestras de datos lingüísticos. La idea subyacente de que "una palabra se caracteriza por la compañía que mantiene" fue popularizada por John Rupert Firth . [11]
La noción de un espacio semántico con elementos léxicos (palabras o términos de varias palabras) representados como vectores o incrustaciones se basa en los desafíos computacionales de capturar características distribucionales y usarlas para aplicaciones prácticas para medir la similitud entre palabras, frases o documentos completos. La primera generación de modelos de espacio semántico es el modelo de espacio vectorial para la recuperación de información. [12] [13] [14] Tales modelos de espacio vectorial para palabras y sus datos de distribución implementados en su forma más simple dan como resultado un espacio vectorial muy escaso de alta dimensionalidad (cf. Maldición de dimensionalidad ). La reducción del número de dimensiones utilizando métodos algebraicos lineales, como la descomposición de valores singulares , condujo a la introducción del análisis semántico latente a fines de la década de 1980 y al enfoque de indexación aleatoria para recopilar contextos de coincidencia de palabras. [15] [16] [17] [18] [19] En 2000 Bengio et al. proporcionó en una serie de artículos los "modelos de lenguaje probabilístico neuronal" para reducir la alta dimensionalidad de las representaciones de palabras en contextos mediante "el aprendizaje de una representación distribuida de palabras". [20] [21] Las incrustaciones de palabras vienen en dos estilos diferentes, uno en el que las palabras se expresan como vectores de palabras concurrentes, y otro en el que las palabras se expresan como vectores de contextos lingüísticos en los que ocurren las palabras; estos diferentes estilos se estudian en (Lavelli et al., 2004). [22] Roweis y Saul publicaron en Science cómo usar la " incrustación lineal local " (LLE) para descubrir representaciones de estructuras de datos de alta dimensión. [23] La mayoría de las técnicas de incrustación de palabras nuevas después de aproximadamente 2005 se basan en una arquitectura de red neuronal en lugar de modelos más probabilísticos y algebraicos, ya que algunos trabajos fundamentales de Yoshua Bengio y sus colegas. [24] [25]
El enfoque ha sido adoptado por muchos grupos de investigación después de que los avances alrededor del año 2010 se hubieran realizado en el trabajo teórico sobre la calidad de los vectores y la velocidad de entrenamiento del modelo y los avances en hardware permitieron explorar un espacio de parámetros más amplio de manera rentable. En 2013, un equipo de Google dirigido por Tomas Mikolov creó word2vec , un conjunto de herramientas de incrustación de palabras que puede entrenar modelos de espacio vectorial más rápido que los enfoques anteriores. El enfoque de word2vec se ha utilizado ampliamente en la experimentación y fue fundamental para despertar el interés por las incrustaciones de palabras como tecnología, trasladando la línea de investigación de la investigación especializada a una experimentación más amplia y, finalmente, allanando el camino para la aplicación práctica. [26]
Limitaciones
Tradicionalmente, una de las principales limitaciones de las incrustaciones de palabras ( modelos de espacio vectorial de palabras en general) es que las palabras con múltiples significados se combinan en una sola representación (un solo vector en el espacio semántico). En otras palabras, la polisemia y la homonimia no se manejan adecuadamente. Por ejemplo, en la frase "El club intenté ayer fue genial!", No está claro si el término del club se relaciona con la palabra sentido de un sándwich club , club de béisbol , casa club , club de golf , o cualquier otro sentido que el club podría tener. La necesidad de acomodar múltiples significados por palabra en diferentes vectores (incrustaciones de múltiples sentidos) es la motivación de varias contribuciones en PNL para dividir las incrustaciones de sentido único en incrustaciones de múltiples sentidos. [27] [28]
La mayoría de los enfoques que producen incrustaciones de múltiples sentidos se pueden dividir en dos categorías principales para su representación del sentido de las palabras, es decir, no supervisados y basados en el conocimiento. [29] Basado en word2vec skip-gram, Multi-Sense Skip-Gram (MSSG) [30] realiza la discriminación e incrustación del sentido de las palabras simultáneamente, mejorando su tiempo de entrenamiento, asumiendo un número específico de sentidos para cada palabra. En el salto gramo multisentido no paramétrico (NP-MSSG), este número puede variar según cada palabra. Combinando el conocimiento previo de bases de datos léxicas (p. Ej., WordNet , ConceptNet , BabelNet ), incrustaciones de palabras y desambiguación del sentido de las palabras, la anotación de sentido más adecuada (MSSA) [31] etiqueta los sentidos de las palabras a través de un enfoque no supervisado y basado en el conocimiento considerando el contexto de una palabra en una ventana corredera predefinida. Una vez que se eliminan las ambigüedades de las palabras, se pueden utilizar en una técnica estándar de incrustaciones de palabras, por lo que se producen incrustaciones de múltiples sentidos. La arquitectura de MSSA permite que el proceso de desambiguación y anotación se realice de forma recurrente de manera que se mejore a sí mismo.
Se sabe que el uso de incrustaciones de múltiples sentidos mejora el rendimiento en varias tareas de PNL, como el etiquetado de parte de la voz , la identificación de relaciones semánticas, la relación semántica , el reconocimiento de entidades con nombre y el análisis de sentimientos. [32] [33]
Recientemente, se han desarrollado incrustaciones contextualmente significativas como ELMo y BERT . Estas incorporaciones utilizan el contexto de una palabra para eliminar la ambigüedad de los polisemas. Lo hacen utilizando arquitecturas de red neuronal LSTM y Transformer .
Para secuencias biológicas: BioVectors
Asgari y Mofrad han propuesto incrustaciones de palabras para ngramas en secuencias biológicas (por ejemplo, ADN, ARN y proteínas) para aplicaciones bioinformáticas . [34] Biovectores denominados (BioVec) para referirse a secuencias biológicas en general con proteínas-vectores (ProtVec) para proteínas (secuencias de aminoácidos) y genes-vectores (GeneVec) para secuencias de genes, esta representación puede ser ampliamente utilizada en Aplicaciones del aprendizaje profundo en proteómica y genómica . Los resultados presentados por Asgari y Mofrad [34] sugieren que BioVectors puede caracterizar secuencias biológicas en términos de interpretaciones bioquímicas y biofísicas de los patrones subyacentes.
Vectores de pensamiento
Los vectores de pensamiento son una extensión de las incrustaciones de palabras en oraciones completas o incluso documentos. Algunos investigadores esperan que estos puedan mejorar la calidad de la traducción automática . [35]
Software
El software para entrenar y usar incrustaciones de palabras incluye Word2vec de Tomas Mikolov, GloVe de la Universidad de Stanford , [36] GN-GloVe, [37] incrustaciones Flair, [32] ELMo de AllenNLP , [38] BERT , [39] fastText , Gensim , [40] Indra [41] y Deeplearning4j . El análisis de componentes principales (PCA) y la incrustación de vecinos estocásticos distribuidos en T (t-SNE) se utilizan para reducir la dimensionalidad de los espacios vectoriales de palabras y visualizar incrustaciones y agrupaciones de palabras . [42]
Ejemplos de aplicación
Por ejemplo, fastText también se usa para calcular incrustaciones de palabras para corpus de texto en Sketch Engine que están disponibles en línea. [43]
Ver también
- Agrupación marrón
- Base de datos distribucional-relacional
Referencias
- ^ Jurafsky, Daniel; H. James, Martin (2000). Procesamiento del habla y el lenguaje: una introducción al procesamiento del lenguaje natural, la lingüística computacional y el reconocimiento del habla . Upper Saddle River, Nueva Jersey: Prentice Hall. ISBN 978-0-13-095069-7.
- ^ Mikolov, Tomas; Sutskever, Ilya; Chen, Kai; Corrado, Greg; Dean, Jeffrey (2013). "Representaciones distribuidas de palabras y frases y su composicionalidad". arXiv : 1310,4546 [ cs.CL ].
- ^ Lebret, Rémi; Collobert, Ronan (2013). "Word Emdeddings a través de Hellinger PCA". Conferencia del Capítulo Europeo de la Asociación de Lingüística Computacional (EACL) . 2014 . arXiv : 1312.5542 . Código bibliográfico : 2013arXiv1312.5542L .
- ^ Levy, Omer; Goldberg, Yoav (2014). Incrustación de palabras neuronales como factorización de matriz implícita (PDF) . NIPS.
- ^ Li, Yitan; Xu, Linli (2015). Revisión de la incorporación de palabras: un nuevo aprendizaje de representaciones y una perspectiva de factorización de matrices explícita (PDF) . Int'l J. Conf. sobre Inteligencia Artificial (IJCAI).
- ^ Globerson, Amir (2007). "Incrustación euclidiana de datos de co-ocurrencia" (PDF) . Revista de investigación sobre aprendizaje automático .
- ^ Qureshi, M. Atif; Greene, Derek (4 de junio de 2018). "EVE: técnica de incrustación basada en vectores explicables utilizando Wikipedia". Revista de sistemas de información inteligentes . 53 : 137-165. arXiv : 1702.06891 . doi : 10.1007 / s10844-018-0511-x . ISSN 0925-9902 . S2CID 10656055 .
- ^ Levy, Omer; Goldberg, Yoav (2014). Regularidades lingüísticas en representaciones de palabras escasas y explícitas (PDF) . CoNLL. págs. 171–180.
- ^ Socher, Richard; Bauer, John; Manning, Christopher; Ng, Andrew (2013). Análisis con gramáticas vectoriales composicionales (PDF) . Proc. Conf. ACL
- ^ Socher, Richard; Perelygin, Alex; Wu, Jean; Chuang, Jason; Manning, Chris; Ng, Andrew; Potts, Chris (2013). Modelos profundos recursivos para la composicionalidad semántica sobre un árbol de sentimientos (PDF) . EMNLP.
- ^ Firth, JR (1957). "Una sinopsis de la teoría lingüística 1930-1955". Estudios de análisis lingüístico : 1–32. Reimpreso en FR Palmer, ed. (1968). Artículos seleccionados de JR Firth 1952-1959 . Londres: Longman.
- ^ Salton, Gerard (1962). "Algunos experimentos en la generación de asociaciones de palabras y documentos" . Actas de la AFIPS '62 (otoño) Actas del 4 al 6 de diciembre de 1962, Conferencia conjunta sobre computación de otoño : 234-250. doi : 10.1145 / 1461518.1461544 . S2CID 9937095 . Consultado el 18 de octubre de 2020 .
- ^ Salton, Gerard; Wong, A; Yang, CS (1975). "Un modelo de espacio vectorial para indexación automática". Comunicaciones de la Asociación de Maquinaria de Computación (CACM) . 18 (11): 613–620. doi : 10.1145 / 361219.361220 . hdl : 1813/6057 . S2CID 6473756 .
- ^ Dubin, David (2004). "El periódico más influyente que nunca escribió Gerard Salton" . Consultado el 18 de octubre de 2020 .
- ^ Sahlgren, Magnus. "Una breve historia de las incrustaciones de palabras" .
- ^ Kanerva, Pentti, Kristoferson, Jan y Holst, Anders (2000): Indexación aleatoria de muestras de texto para análisis semántico latente , Actas de la 22ª Conferencia Anual de la Sociedad de Ciencias Cognitivas, p. 1036. Mahwah, Nueva Jersey: Erlbaum, 2000.
- ^ Karlgren, Jussi; Sahlgren, Magnus (2001). Uesaka, Yoshinori; Kanerva, Pentti; Asoh, Hideki (eds.). "De las palabras al entendimiento". Fundamentos de la inteligencia del mundo real . Publicaciones de CSLI: 294–308.
- ^ Sahlgren, Magnus (2005) Una introducción a la indexación aleatoria , Actas de los métodos y aplicaciones del taller de indexación semántica en la 7ma Conferencia Internacional sobre Terminología e Ingeniería del Conocimiento, TKE 2005, 16 de agosto, Copenhague, Dinamarca
- ^ Sahlgren, Magnus, Holst, Anders y Pentti Kanerva (2008) Permutaciones como un medio para codificar el orden en el espacio de palabras , en actas de la 30ª Conferencia Anual de la Sociedad de Ciencias Cognitivas: 1300-1305.
- ^ Bengio, Yoshua ; Ducharme, Réjean; Vincent, Pascal; Jauvin, Christian (2003). "Un modelo de lenguaje probabilístico neuronal" (PDF) . Revista de investigación sobre aprendizaje automático . 3 : 1137-1155.
- ^ Bengio, Yoshua; Schwenk, Holger; Senécal, Jean-Sébastien; Morin, Fréderic; Gauvain, Jean-Luc (2006). Un modelo de lenguaje probabilístico neuronal . Estudios en Fuzziness y Soft Computing . 194 . págs. 137-186. doi : 10.1007 / 3-540-33486-6_6 . ISBN 978-3-540-30609-2.
- ^ Lavelli, Alberto; Sebastiani, Fabrizio; Zanoli, Roberto (2004). Representaciones de términos distributivos: una comparación experimental . XIII Congreso Internacional ACM sobre Gestión de la Información y el Conocimiento. págs. 615–624. doi : 10.1145 / 1031171.1031284 .
- ^ Roweis, Sam T .; Saul, Lawrence K. (2000). "Reducción de dimensionalidad no lineal por incrustación localmente lineal". Ciencia . 290 (5500): 2323–6. Código Bibliográfico : 2000Sci ... 290.2323R . CiteSeerX 10.1.1.111.3313 . doi : 10.1126 / science.290.5500.2323 . PMID 11125150 .
- ^ Morin, Fredric; Bengio, Yoshua (2005). "Modelo de lenguaje de red neuronal probabilística jerárquica". AIstats . 5 : 246–252.
- ^ Mnih, Andriy; Hinton, Geoffrey (2009). "Un modelo de lenguaje distribuido jerárquico escalable" . Advances in Neural Information Processing Systems 21 (NIPS 2008) . Curran Associates, Inc .: 1081–1088.
- ^ word2vec
- ^ Reisinger, Joseph; Mooney, Raymond J. (2010). Modelos de espacios vectoriales de múltiples prototipos del significado de las palabras . Tecnologías del lenguaje humano: Conferencia anual de 2010 del Capítulo norteamericano de la Asociación de Lingüística Computacional. Los Ángeles, California: Asociación de Lingüística Computacional. págs. 109-117. ISBN 978-1-932432-65-7. Consultado el 25 de octubre de 2019 .
- ^ Huang, Eric. (2012). Mejora de las representaciones de palabras a través del contexto global y prototipos de múltiples palabras . OCLC 857900050 .
- ^ Camacho-Collados, José; Pilehvar, Mohammad Taher (2018). De la palabra a la inserción de los sentidos: una encuesta sobre las representaciones vectoriales del significado . arXiv : 1805.04032 . Código bibliográfico : 2018arXiv180504032C .
- ^ Neelakantan, Arvind; Shankar, Jeevan; Passos, Alexandre; McCallum, Andrew (2014). "Estimación no paramétrica eficiente de múltiples incrustaciones por palabra en el espacio vectorial". Actas de la Conferencia de 2014 sobre métodos empíricos en el procesamiento del lenguaje natural (EMNLP) . Stroudsburg, PA, EE.UU .: Asociación de Lingüística Computacional: 1059–1069. arXiv : 1504.06654 . doi : 10.3115 / v1 / d14-1113 . S2CID 15251438 .
- ^ Ruas, Terry; Grosky, William; Aizawa, Akiko (1 de diciembre de 2019). "Incrustaciones de sentido múltiple a través de un proceso de desambiguación de sentido de palabras". Sistemas expertos con aplicaciones . 136 : 288-303. arXiv : 2101.08700 . doi : 10.1016 / j.eswa.2019.06.026 . hdl : 2027,42 / 145475 . ISSN 0957-4174 . S2CID 52225306 .
- ^ a b Akbik, Alan; Blythe, Duncan; Vollgraf, Roland (2018). "Incrustaciones de cadenas contextuales para etiquetado de secuencias" . Actas de la 27ª Conferencia Internacional de Lingüística Computacional . Santa Fe, Nuevo México, Estados Unidos: Asociación de Lingüística Computacional: 1638–1649.
- ^ Li, Jiwei; Jurafsky, Dan (2015). "¿Las incrustaciones multisensibles mejoran la comprensión del lenguaje natural?". Actas de la Conferencia de 2015 sobre métodos empíricos en el procesamiento del lenguaje natural . Stroudsburg, PA, EE.UU .: Asociación de Lingüística Computacional: 1722–1732. arXiv : 1506.01070 . doi : 10.18653 / v1 / d15-1200 . S2CID 6222768 .
- ^ a b Asgari, Ehsaneddin; Mofrad, Mohammad RK (2015). "Representación continua distribuida de secuencias biológicas para proteómica profunda y genómica" . PLOS ONE . 10 (11): e0141287. arXiv : 1503.05140 . Código bibliográfico : 2015PLoSO..1041287A . doi : 10.1371 / journal.pone.0141287 . PMC 4640716 . PMID 26555596 .
- ^ Kiros, Ryan; Zhu, Yukun; Salakhutdinov, Ruslan; Zemel, Richard S .; Torralba, Antonio; Urtasun, Raquel; Fidler, Sanja (2015). "vectores de pensamiento de salto". arXiv : 1506.06726 [ cs.CL ].
- ^ "Guante" .
- ^ Zhao, Jieyu; et al. (2018) (2018). "Aprendizaje de incrustaciones de palabras neutrales en cuanto al género". arXiv : 1809.01496 [ cs.CL ].
- ^ "Elmo" .
- ^ Pires, Telmo; Schlinger, Eva; Garrette, Dan (4 de junio de 2019). "¿Qué tan multilingüe es BERT multilingüe?". arXiv : 1906.01502 [ cs.CL ].
- ^ "Gensim" .
- ^ "Indra" . 2018-10-25.
- ^ Ghassemi, Mohammad; Mark, Roger; Nemati, Shamim (2015). "Una visualización del sentimiento clínico en evolución mediante representaciones vectoriales de notas clínicas" (PDF) . Computación en Cardiología .
- ^ "Visor de incrustaciones" . Visor de incrustaciones . Computación léxica . Consultado el 7 de febrero de 2018 .