El procesamiento del lenguaje natural ( PNL ) es un subcampo de la lingüística , la informática y la inteligencia artificial que se ocupa de las interacciones entre las computadoras y el lenguaje humano, en particular cómo programar las computadoras para procesar y analizar grandes cantidades de datos del lenguaje natural . El resultado es una computadora capaz de "comprender" el contenido de los documentos, incluidos los matices contextuales del idioma que contienen. Luego, la tecnología puede extraer con precisión la información y los conocimientos contenidos en los documentos, así como categorizar y organizar los propios documentos.
Los desafíos en el procesamiento del lenguaje natural con frecuencia involucran el reconocimiento del habla , la comprensión del lenguaje natural y la generación del lenguaje natural .
Historia
El procesamiento del lenguaje natural tiene sus raíces en la década de 1950. Ya en 1950, Alan Turing publicó un artículo titulado " Maquinaria informática e inteligencia " en el que proponía lo que ahora se llama el test de Turing como criterio de inteligencia, una tarea que implica la interpretación automatizada y generación de lenguaje natural, pero en el momento no articulado. como un problema separado de la inteligencia artificial.
PNL simbólico (1950 - principios de 1990)
La premisa de PNL simbólica es bien resumida por John Searle 's habitación china experimento: Dado un conjunto de reglas (por ejemplo, un libro de frases chino, con preguntas y respuestas coincidentes), el ordenador emula comprensión del lenguaje natural (u otras tareas de PLN) por aplicar esas reglas a los datos con los que se enfrenta.
- Década de 1950 : El experimento de Georgetown en 1954 implicó la traducción completamente automática de más de sesenta oraciones en ruso al inglés. Los autores afirmaron que dentro de tres o cinco años, la traducción automática sería un problema resuelto. [2] Sin embargo, el progreso real fue mucho más lento, y después del informe ALPAC en 1966, que encontró que una investigación de diez años no cumplió con las expectativas, la financiación para la traducción automática se redujo drásticamente. Se realizaron pocas investigaciones adicionales en traducción automática hasta finales de la década de 1980, cuando se desarrollaron los primeros sistemas estadísticos de traducción automática .
- Década de 1960 : algunos sistemas de procesamiento del lenguaje natural notablemente exitosos desarrollados en la década de 1960 fueron SHRDLU , un sistema de lenguaje natural que trabaja en " mundos de bloques " restringidos con vocabularios restringidos, y ELIZA , una simulación de un psicoterapeuta rogeriano , escrito por Joseph Weizenbaum entre 1964 y 1966. Casi sin información sobre el pensamiento o las emociones humanas, ELIZA a veces proporcionaba una interacción sorprendentemente similar a la humana. Cuando el "paciente" excedió la base de conocimientos muy pequeña, ELIZA podría proporcionar una respuesta genérica, por ejemplo, responder a "Me duele la cabeza" con "¿Por qué dice que le duele la cabeza?".
- Década de 1970 : durante la década de 1970, muchos programadores comenzaron a escribir " ontologías conceptuales ", que estructuraban información del mundo real en datos comprensibles por computadora. Algunos ejemplos son MARGIE (Schank, 1975), SAM (Cullingford, 1978), PAM (Wilensky, 1978), TaleSpin (Meehan, 1976), QUALM (Lehnert, 1977), Política (Carbonell, 1979) y Plot Units (Lehnert 1981). ). Durante este tiempo, se escribieron los primeros chatterbots (por ejemplo, PARRY ).
- Década de 1980 : La década de 1980 y principios de la de 1990 marcan el apogeo de los métodos simbólicos en la PNL. Las áreas de enfoque de la época incluían investigación sobre análisis basado en reglas (por ejemplo, el desarrollo de HPSG como una operacionalización computacional de la gramática generativa ), morfología (por ejemplo, morfología de dos niveles [3] ), semántica (por ejemplo, algoritmo de Lesk ), referencia (por ejemplo, dentro de la Teoría del Centrado [4] ) y otras áreas de comprensión del lenguaje natural (por ejemplo, en la Teoría de la Estructura Retórica ). Se continuaron otras líneas de investigación, por ejemplo, el desarrollo de chatterbots con Racter y Jabberwacky . Un acontecimiento importante (que finalmente condujo al cambio estadístico en la década de 1990) fue la creciente importancia de la evaluación cuantitativa en este período. [5]
PNL estadístico (décadas de 1990 a 2010)
Hasta la década de 1980, la mayoría de los sistemas de procesamiento del lenguaje natural se basaban en conjuntos complejos de reglas escritas a mano. Sin embargo, a fines de la década de 1980, se produjo una revolución en el procesamiento del lenguaje natural con la introducción de algoritmos de aprendizaje automático para el procesamiento del lenguaje. Esto se debió tanto al aumento constante del poder computacional (ver la ley de Moore ) como a la disminución gradual del dominio de las teorías lingüísticas chomskyanas (por ejemplo, la gramática transformacional ), cuyos fundamentos teóricos desalentaron el tipo de lingüística de corpus que subyace al enfoque del aprendizaje automático. al procesamiento del lenguaje. [6]
- Década de 1990 : muchos de los primeros éxitos notables de los métodos estadísticos en PNL se produjeron en el campo de la traducción automática , debido especialmente al trabajo en IBM Research. Estos sistemas pudieron aprovechar los corpus textuales multilingües existentes que habían sido elaborados por el Parlamento de Canadá y la Unión Europea como resultado de leyes que exigían la traducción de todos los procedimientos gubernamentales a todos los idiomas oficiales de los sistemas de gobierno correspondientes. Sin embargo, la mayoría de los otros sistemas dependían de corpus desarrollados específicamente para las tareas implementadas por estos sistemas, lo que fue (y a menudo sigue siendo) una limitación importante en el éxito de estos sistemas. Como resultado, una gran cantidad de investigación se ha dedicado a métodos para aprender de manera más efectiva a partir de cantidades limitadas de datos.
- Década de 2000 : con el crecimiento de la web, desde mediados de la década de 1990 se dispone de cantidades cada vez mayores de datos lingüísticos sin procesar (sin anotar). Por lo tanto, la investigación se ha centrado cada vez más en algoritmos de aprendizaje no supervisados y semi-supervisados . Dichos algoritmos pueden aprender de los datos que no se han anotado manualmente con las respuestas deseadas o utilizando una combinación de datos anotados y no anotados. Generalmente, esta tarea es mucho más difícil que el aprendizaje supervisado y, por lo general, produce resultados menos precisos para una determinada cantidad de datos de entrada. Sin embargo, hay una enorme cantidad de datos no anotados disponibles (incluido, entre otras cosas, todo el contenido de la World Wide Web ), que a menudo pueden compensar los resultados inferiores si el algoritmo utilizado tiene una complejidad de tiempo lo suficientemente baja como para Sé práctico.
PNL neural (presente)
En la década de 2010, el aprendizaje de representación y los métodos de aprendizaje automático de estilo de red neuronal profunda se generalizaron en el procesamiento del lenguaje natural, debido en parte a una serie de resultados que muestran que tales técnicas [7] [8] pueden lograr resultados de vanguardia en muchas tareas de lenguaje natural, por ejemplo en modelado de lenguaje, [9] análisis, [10] [11] y muchos otros. Esto es cada vez más importante en la medicina y la atención médica, donde la PNL se utiliza para analizar notas y texto en registros médicos electrónicos que, de otro modo, serían inaccesibles para su estudio cuando se busca mejorar la atención. [12]
Métodos: reglas, estadísticas, redes neuronales
En los primeros días, muchos sistemas de procesamiento del lenguaje se diseñaron mediante métodos simbólicos, es decir, la codificación manual de un conjunto de reglas, junto con una búsqueda en el diccionario: [13] [14] como escribir gramáticas o diseñar reglas heurísticas para derivación .
Los sistemas más recientes basados en algoritmos de aprendizaje automático tienen muchas ventajas sobre las reglas producidas a mano:
- Los procedimientos de aprendizaje utilizados durante el aprendizaje automático se enfocan automáticamente en los casos más comunes, mientras que cuando se escriben reglas a mano, a menudo no es del todo obvio hacia dónde se debe dirigir el esfuerzo.
- Los procedimientos de aprendizaje automático pueden hacer uso de algoritmos de inferencia estadística para producir modelos que son robustos a entradas desconocidas (por ejemplo, que contienen palabras o estructuras que no se han visto antes) y entradas erróneas (por ejemplo, con palabras mal escritas o palabras omitidas accidentalmente). Generalmente, manejar tal entrada con elegancia con reglas escritas a mano o, de manera más general, creando sistemas de reglas escritas a mano que toman decisiones suaves, es extremadamente difícil, propenso a errores y requiere mucho tiempo.
- Los sistemas basados en el aprendizaje automático de las reglas pueden hacerse más precisos simplemente proporcionando más datos de entrada. Sin embargo, los sistemas basados en reglas escritas a mano solo pueden hacerse más precisos aumentando la complejidad de las reglas, lo cual es una tarea mucho más difícil. En particular, existe un límite a la complejidad de los sistemas basados en reglas escritas a mano, más allá del cual los sistemas se vuelven cada vez más inmanejables. Sin embargo, la creación de más datos para ingresar a los sistemas de aprendizaje automático simplemente requiere un aumento correspondiente en la cantidad de horas-hombre trabajadas, generalmente sin aumentos significativos en la complejidad del proceso de anotación.
A pesar de la popularidad del aprendizaje automático en la investigación de PNL, los métodos simbólicos todavía (2020) se usan comúnmente
- cuando la cantidad de datos de entrenamiento es insuficiente para aplicar con éxito métodos de aprendizaje automático, por ejemplo, para la traducción automática de lenguajes de bajos recursos como los que proporciona el sistema Apertium ,
- para preprocesamiento en tuberías de PNL, por ejemplo, tokenización , o
- para posprocesar y transformar la salida de canalizaciones de PNL, por ejemplo, para la extracción de conocimientos de análisis sintácticos.
métodos de estadística
Desde la llamada "revolución estadística" [15] [16] a finales de los 80 y mediados de los 90, gran parte de la investigación del procesamiento del lenguaje natural se ha basado en gran medida en el aprendizaje automático. El paradigma del aprendizaje automático exige, en cambio, el uso de inferencias estadísticas para aprender automáticamente tales reglas a través del análisis de grandes corpora (la forma plural de corpus , es un conjunto de documentos, posiblemente con anotaciones humanas o informáticas) de ejemplos típicos del mundo real.
Se han aplicado muchas clases diferentes de algoritmos de aprendizaje automático a las tareas de procesamiento del lenguaje natural. Estos algoritmos toman como entrada un gran conjunto de "características" que se generan a partir de los datos de entrada. Sin embargo, la investigación se ha centrado cada vez más en modelos estadísticos , que toman decisiones probabilísticas suaves basadas en la asignación de ponderaciones de valor real a cada característica de entrada. Tales modelos tienen la ventaja de que pueden expresar la certeza relativa de muchas respuestas posibles diferentes en lugar de una sola, produciendo resultados más confiables cuando dicho modelo se incluye como un componente de un sistema más grande.
Algunos de los primeros algoritmos de aprendizaje automático utilizados, como los árboles de decisión , produjeron sistemas de reglas estrictas si-entonces similares a las reglas escritas a mano existentes. Sin embargo, el etiquetado de parte del discurso introdujo el uso de modelos de Markov ocultos en el procesamiento del lenguaje natural y, cada vez más, la investigación se ha centrado en modelos estadísticos , que toman decisiones probabilísticas suaves basadas en asignar ponderaciones de valor real a las características que componen la entrada. datos. Los modelos de lenguaje de caché en los que ahora se basan muchos sistemas de reconocimiento de voz son ejemplos de tales modelos estadísticos. Estos modelos son generalmente más robustos cuando se les da una entrada desconocida, especialmente una entrada que contiene errores (como es muy común para los datos del mundo real), y producen resultados más confiables cuando se integran en un sistema más grande que comprende múltiples subtareas.
Desde el giro neuronal, los métodos estadísticos en la investigación de la PNL han sido reemplazados en gran medida por redes neuronales. Sin embargo, continúan siendo relevantes para contextos en los que se requiere transparencia e interpretación de las estadísticas.
Redes neuronales
Un gran inconveniente de los métodos estadísticos es que requieren una compleja ingeniería de características. Desde 2015, [17] el campo ha abandonado en gran medida los métodos estadísticos y se ha desplazado a las redes neuronales para el aprendizaje automático. Las técnicas populares incluyen el uso de incrustaciones de palabras para capturar las propiedades semánticas de las palabras y un aumento en el aprendizaje de un extremo a otro de una tarea de nivel superior (p. Ej., Respuesta a preguntas) en lugar de depender de una serie de tareas intermedias separadas (p. Ej., etiquetado de parte del discurso y análisis de dependencia). En algunas áreas, este cambio ha implicado cambios sustanciales en la forma en que se diseñan los sistemas de PNL, de modo que los enfoques basados en redes neuronales profundas pueden verse como un nuevo paradigma distinto del procesamiento estadístico del lenguaje natural. Por ejemplo, el término traducción automática neuronal (NMT) enfatiza el hecho de que los enfoques basados en el aprendizaje profundo para la traducción automática aprenden directamente las transformaciones secuencia a secuencia , obviando la necesidad de pasos intermedios como la alineación de palabras y el modelado del lenguaje que se usaba en estadística. traducción automática (SMT). Los últimos trabajos tienden a utilizar una estructura no técnica de una tarea determinada para construir una red neuronal adecuada. [18]
Tareas comunes de PNL
La siguiente es una lista de algunas de las tareas más comúnmente investigadas en el procesamiento del lenguaje natural. Algunas de estas tareas tienen aplicaciones directas en el mundo real, mientras que otras sirven más comúnmente como subtareas que se utilizan para ayudar a resolver tareas más grandes.
Aunque las tareas de procesamiento del lenguaje natural están estrechamente entrelazadas, se pueden subdividir en categorías para mayor comodidad. A continuación se muestra una división aproximada.
Procesamiento de texto y voz
- Reconocimiento óptico de caracteres (OCR)
- Dada una imagen que representa texto impreso, determine el texto correspondiente.
- Reconocimiento de voz
- Dado un clip de sonido de una persona o personas hablando, determine la representación textual del discurso. Esto es lo opuesto del texto a la voz y es uno de los problemas extremadamente difíciles denominados coloquialmente " AI-completo " (ver arriba). En el habla natural, apenas hay pausas entre palabras sucesivas y, por lo tanto, la segmentación del habla es una subtarea necesaria del reconocimiento del habla (ver más abajo). En la mayoría de los idiomas hablados, los sonidos que representan letras sucesivas se mezclan entre sí en un proceso denominado coarticulación , por lo que la conversión de la señal analógica en caracteres discretos puede ser un proceso muy difícil. Además, dado que las palabras en el mismo idioma son pronunciadas por personas con diferentes acentos, el software de reconocimiento de voz debe poder reconocer la amplia variedad de entradas como idénticas entre sí en términos de su equivalente textual.
- Segmentación del habla
- Dado un clip de sonido de una persona o personas hablando, sepárelo en palabras. Una subtarea de reconocimiento de voz y típicamente agrupada con ella.
- Texto a voz
- Dado un texto, transforme esas unidades y produzca una representación hablada. La conversión de texto a voz se puede utilizar para ayudar a las personas con discapacidad visual. [19]
- Segmentación de palabras ( tokenización )
- Separe un fragmento de texto continuo en palabras separadas. Para un idioma como el inglés , esto es bastante trivial, ya que las palabras suelen estar separadas por espacios. Sin embargo, algunos idiomas escritos como el chino , el japonés y el tailandés no marcan los límites de las palabras de esa manera, y en esos idiomas la segmentación del texto es una tarea importante que requiere el conocimiento del vocabulario y la morfología de las palabras en el idioma. A veces, este proceso también se utiliza en casos como la creación de bolsas de palabras (BOW) en la minería de datos.
Análisis morfológico
- Lematización
- La tarea de eliminar solo las terminaciones flexivas y devolver la forma de diccionario base de una palabra que también se conoce como lema. La lematización es otra técnica para reducir las palabras a su forma normalizada. Pero en este caso, la transformación en realidad usa un diccionario para asignar palabras a su forma real. [20]
- Segmentación morfológica
- Separe las palabras en morfemas individuales e identifique la clase de morfemas. La dificultad de esta tarea depende en gran medida de la complejidad de la morfología ( es decir , la estructura de las palabras) del idioma que se está considerando. El inglés tiene una morfología bastante simple, especialmente una morfología flexional , por lo que a menudo es posible ignorar esta tarea por completo y simplemente modelar todas las formas posibles de una palabra ( por ejemplo , "abrir, abrir, abrir, abrir") como palabras separadas. En idiomas como el turco o meitei , [21] una gran aglutinado lengua india, sin embargo, este enfoque no es posible, ya que cada entrada del diccionario tiene miles de formas posibles de palabras.
- Etiquetado de parte de la voz
- Dada una oración, determina la parte del discurso (POS) de cada palabra. Muchas palabras, especialmente las comunes, pueden servir como múltiples partes del discurso . Por ejemplo, "libro" puede ser un sustantivo ("el libro sobre la mesa") o un verbo ("reservar un vuelo"); "conjunto" puede ser un sustantivo , verbo o adjetivo ; y "out" puede ser cualquiera de al menos cinco partes diferentes del discurso.
- Derivado
- El proceso de reducir las palabras flexionadas (o en ocasiones derivadas) a una forma básica ( por ejemplo , "cerrar" será la raíz de "cerrado", "cerrar", "cerrar", "más cerca", etc.). La derivación produce resultados similares a la lematización, pero lo hace basándose en reglas, no en un diccionario.
Análisis sintáctico
- Inducción gramatical [22]
- Genere una gramática formal que describa la sintaxis de un idioma.
- Romper oraciones (también conocido como " desambiguación del límite de la oración ")
- Dado un fragmento de texto, encuentre los límites de la oración. Los límites de las oraciones a menudo están marcados por puntos u otros signos de puntuación , pero estos mismos caracteres pueden servir para otros propósitos ( por ejemplo , marcar abreviaturas ).
- Analizando
- Determinar el árbol de análisis sintáctico (análisis gramatical) de una oración determinada. La gramática de los lenguajes naturales es ambigua y las oraciones típicas tienen múltiples análisis posibles: quizás sorprendentemente, para una oración típica puede haber miles de análisis potenciales (la mayoría de los cuales parecerán completamente absurdos para un humano). Hay dos tipos principales de análisis: análisis de dependencias y análisis de constituyentes . El análisis de dependencias se centra en las relaciones entre palabras en una oración (marcando cosas como objetos primarios y predicados), mientras que el análisis de constituyentes se centra en construir el árbol de análisis utilizando una gramática probabilística libre de contexto (PCFG) (ver también gramática estocástica ).
Semántica léxica (de palabras individuales en contexto)
- Semántica léxica
- ¿Cuál es el significado computacional de palabras individuales en contexto?
- Semántica distributiva
- ¿Cómo podemos aprender representaciones semánticas a partir de datos?
- Reconocimiento de entidad nombrada (NER)
- Dado un flujo de texto, determine qué elementos del texto se asignan a nombres propios, como personas o lugares, y cuál es el tipo de cada uno de esos nombres (por ejemplo, persona, ubicación, organización). Aunque las mayúsculas pueden ayudar a reconocer entidades nombradas en idiomas como el inglés, esta información no puede ayudar a determinar el tipo de entidad nombrada y, en cualquier caso, a menudo es inexacta o insuficiente. Por ejemplo, la primera letra de una oración también se escribe en mayúscula, y las entidades nombradas a menudo abarcan varias palabras, de las cuales solo algunas están en mayúscula. Además, muchos otros idiomas en escrituras no occidentales (por ejemplo, chino o árabe ) no tienen mayúsculas en absoluto, e incluso los idiomas con mayúsculas pueden no usarlo de manera consistente para distinguir nombres. Por ejemplo, el alemán escribe con mayúscula todos los sustantivos , independientemente de si son nombres, y el francés y el español no escriben con mayúscula los nombres que sirven como adjetivos .
- Análisis de sentimiento (ver también Análisis de sentimiento multimodal )
- Extrae información subjetiva generalmente de un conjunto de documentos, a menudo usando reseñas en línea para determinar la "polaridad" sobre objetos específicos. Es especialmente útil para identificar tendencias de opinión pública en redes sociales, para marketing.
- Extracción de terminología
- El objetivo de la extracción de terminología es extraer automáticamente términos relevantes de un corpus dado.
- Desambiguación del sentido de la palabra
- Muchas palabras tienen más de un significado ; tenemos que seleccionar el significado que tiene más sentido en contexto. Para este problema, normalmente se nos da una lista de palabras y los sentidos de las palabras asociadas, por ejemplo, de un diccionario o un recurso en línea como WordNet .
Semántica relacional (semántica de oraciones individuales)
- Extracción de relaciones
- Dado un fragmento de texto, identifique las relaciones entre las entidades nombradas (por ejemplo, quién está casado con quién).
- Análisis semántico
- Dado un fragmento de texto (típicamente una oración), produzca una representación formal de su semántica, ya sea como un gráfico (por ejemplo, en el análisis sintáctico AMR ) o de acuerdo con un formalismo lógico (por ejemplo, en el análisis sintáctico DRT ). Este desafío generalmente incluye aspectos de varias tareas más elementales de PNL de la semántica (p. Ej., Etiquetado de roles semánticos, desambiguación del sentido de las palabras) y puede extenderse para incluir un análisis del discurso completo (p. Ej., Análisis del discurso, correferencia; consulte Comprensión del lenguaje natural a continuación).
- Etiquetado de rol semántico (ver también etiquetado de rol semántico implícito a continuación)
- Dada una sola oración, identifique y elimine la ambigüedad de los predicados semánticos (por ejemplo, marcos verbales ), luego identifique y clasifique los elementos del marco ( roles semánticos ).
Discurso (semántica más allá de oraciones individuales)
- Resolución de correferencia
- Dada una oración o un fragmento de texto más grande, determina qué palabras ("menciones") se refieren a los mismos objetos ("entidades"). La resolución de anáforas es un ejemplo específico de esta tarea, y se ocupa específicamente de hacer coincidir los pronombres con los sustantivos o nombres a los que se refieren. La tarea más general de la resolución de correferencia también incluye la identificación de las llamadas "relaciones puente" que involucran expresiones de referencia . Por ejemplo, en una oración como "Entró en la casa de John por la puerta de entrada", "la puerta de entrada" es una expresión de referencia y la relación puente que debe identificarse es el hecho de que la puerta a la que se hace referencia es la puerta de entrada de John. casa (en lugar de alguna otra estructura a la que también se podría hacer referencia).
- Análisis del discurso
- Esta rúbrica incluye varias tareas relacionadas. Una tarea es el análisis sintáctico del discurso, es decir, identificar la estructura del discurso de un texto conectado, es decir, la naturaleza de las relaciones discursivas entre oraciones (p. Ej. Elaboración, explicación, contraste). Otra tarea posible es reconocer y clasificar los actos de habla en un fragmento de texto (por ejemplo, pregunta de sí-no, pregunta de contenido, declaración, afirmación, etc.).
- Etiquetado de rol semántico implícito
- Dada una sola oración, identifique y elimine la ambigüedad de los predicados semánticos (p. Ej., Marcos verbales ) y sus roles semánticos explícitos en la oración actual (consulte Etiquetado de roles semánticos más arriba). Luego, identifique los roles semánticos que no se realizan explícitamente en la oración actual, clasifíquelos en argumentos que se realicen explícitamente en otras partes del texto y aquellos que no están especificados, y resuelva los primeros contra el texto local. Una tarea estrechamente relacionada es la resolución de anáforas cero, es decir, la extensión de la resolución de correferencia a lenguajes pro-drop .
- Reconociendo la vinculación textual
- Dados dos fragmentos de texto, determine si uno es verdadero implica al otro, implica la negación del otro o permite que el otro sea verdadero o falso. [23]
- Segmentación y reconocimiento de temas
- Dado un fragmento de texto, sepárelo en segmentos, cada uno de los cuales esté dedicado a un tema, e identifique el tema del segmento.
- Minería de argumentos
- El objetivo de la minería de argumentos es la extracción e identificación automática de estructuras argumentativas del texto en lenguaje natural con la ayuda de programas de computadora. [24] Tales estructuras argumentativas incluyen la premisa, las conclusiones, el esquema del argumento y la relación entre el argumento principal y secundario, o el argumento principal y el contraargumento dentro del discurso. [25] [26]
Aplicaciones de PNL de alto nivel
- Resumen automático (resumen de texto)
- Produzca un resumen legible de un fragmento de texto. A menudo se utiliza para proporcionar resúmenes de texto de un tipo conocido, como trabajos de investigación, artículos en la sección financiera de un periódico.
- Generación de libros
- No es una tarea de PNL propiamente dicha, sino una extensión de la generación del lenguaje natural y otras tareas de PNL, la creación de libros completos. El primer libro generado por máquina fue creado por un sistema basado en reglas en 1984 (Racter, La barba del policía está a medio construir ). [27] El primer trabajo publicado por una red neuronal se publicó en 2018, 1 the Road , comercializado como una novela, contiene sesenta millones de palabras. Ambos sistemas son modelos de lenguaje básicamente elaborados pero sin sentido (sin semántica) . El primer libro de ciencia generado por máquina se publicó en 2019 (Beta Writer, Lithium-Ion Batteries , Springer, Cham). [28] A diferencia de Racter y 1 the Road , esto se basa en el conocimiento fáctico y en el resumen del texto.
- Gestión del diálogo
- Sistemas informáticos destinados a conversar con un humano.
- Documento AI
- Una plataforma Document AI se encuentra en la parte superior de la tecnología NLP, lo que permite a los usuarios sin experiencia previa en inteligencia artificial, aprendizaje automático o NLP entrenar rápidamente a una computadora para extraer los datos específicos que necesitan de diferentes tipos de documentos. La IA de documentos impulsada por la PNL permite a los equipos no técnicos acceder rápidamente a la información oculta en los documentos, por ejemplo, abogados, analistas comerciales y contables. [29]
- Corrección de errores gramaticales
- La detección y corrección de errores gramaticales implica una gran variedad de problemas en todos los niveles del análisis lingüístico (fonología / ortografía, morfología, sintaxis, semántica, pragmática). La corrección de errores gramaticales es impactante ya que afecta a cientos de millones de personas que usan o adquieren el inglés como segundo idioma. Por lo tanto, ha estado sujeto a una serie de tareas compartidas desde 2011. [30] [31] [32] En lo que respecta a la ortografía, la morfología, la sintaxis y ciertos aspectos de la semántica, y debido al desarrollo de potentes modelos de lenguaje neuronal como como GPT-2 , ahora (2019) se puede considerar un problema en gran parte resuelto y se comercializa en varias aplicaciones comerciales. [33]
- Máquina traductora
- Traduce automáticamente texto de un idioma humano a otro. Este es uno de los problemas más difíciles y forma parte de una clase de problemas denominados coloquialmente " AI-completo ", es decir, que requieren todos los diferentes tipos de conocimiento que poseen los humanos (gramática, semántica, hechos sobre el mundo real, etc. .) para resolverlo correctamente.
- Generación de lenguaje natural (NLG):
- Convierta información de bases de datos informáticas o intenciones semánticas en lenguaje humano legible.
- Comprensión del lenguaje natural (NLU)
- Convierta fragmentos de texto en representaciones más formales, como estructuras lógicas de primer orden , que son más fáciles de manipular para los programas de computadora . La comprensión del lenguaje natural implica la identificación de la semántica pretendida a partir de las múltiples semánticas posibles que pueden derivarse de una expresión del lenguaje natural que normalmente toma la forma de notaciones organizadas de conceptos del lenguaje natural. La introducción y creación del metamodelo y la ontología del lenguaje son soluciones eficientes, aunque empíricas. Para la construcción de una base de formalización semántica se espera una formalización explícita de la semántica del lenguaje natural sin confusiones con supuestos implícitos como el supuesto de mundo cerrado (CWA) frente al supuesto de mundo abierto , o el Sí / No subjetivo frente a Verdadero / Falso objetivo. . [34]
- Respuesta a preguntas
- Dada una pregunta en lenguaje humano, determina su respuesta. Las preguntas típicas tienen una respuesta correcta específica (como "¿Cuál es la capital de Canadá?"), Pero a veces también se consideran preguntas abiertas (como "¿Cuál es el significado de la vida?"). Trabajos recientes han examinado cuestiones aún más complejas. [35]
Tendencias generales y (posibles) direcciones futuras
Sobre la base de las tendencias de larga data en el campo, es posible extrapolar las direcciones futuras de la PNL. A partir de 2020, se pueden observar tres tendencias entre los temas de la larga serie de tareas compartidas de CoNLL: [36]
- Interés en aspectos "cognitivos" cada vez más abstractos del lenguaje natural (1999-2001: análisis superficial, 2002-03: reconocimiento de entidad con nombre, 2006-09 / 2017-18: sintaxis de dependencia, 2004-05 / 2008-09 etiquetado de roles semánticos Correferencia 2011-12, 2015-16: análisis del discurso, 2019: análisis semántico).
- Mayor interés por el multilingüismo y, potencialmente, la multimodalidad (inglés desde 1999; español, holandés desde 2002; alemán desde 2003; búlgaro, danés, japonés, portugués, esloveno, sueco, turco desde 2006; vasco, catalán, chino, griego, húngaro , Italiano, turco desde 2007; checo desde 2009; árabe desde 2012; 2017: más de 40 idiomas; 2018: 60 + / 100 + idiomas)
- Eliminación de representaciones simbólicas (basadas en reglas sobre supervisadas hacia métodos débilmente supervisados, aprendizaje de representaciones y sistemas de extremo a extremo)
Cognición y PNL
La mayoría de las aplicaciones de PNL de nivel superior involucran aspectos que emulan el comportamiento inteligente y la aparente comprensión del lenguaje natural. En términos más generales, la operacionalización técnica de aspectos cada vez más avanzados de la conducta cognitiva representa una de las trayectorias de desarrollo de la PNL (consulte las tendencias entre las tareas compartidas de CoNLL más arriba).
La cognición se refiere a "la acción o proceso mental de adquirir conocimiento y comprensión a través del pensamiento, la experiencia y los sentidos". [37] La ciencia cognitiva es el estudio científico interdisciplinario de la mente y sus procesos. [38] La lingüística cognitiva es una rama interdisciplinaria de la lingüística, que combina el conocimiento y la investigación tanto de la psicología como de la lingüística. [39] Especialmente durante la era de la PNL simbólica , el área de la lingüística computacional mantuvo fuertes vínculos con los estudios cognitivos.
Como ejemplo, George Lakoff ofrece una metodología para construir algoritmos de procesamiento del lenguaje natural (PNL) a través de la perspectiva de la ciencia cognitiva , junto con los hallazgos de la lingüística cognitiva , [40] con dos aspectos definitorios:
- Aplicar la teoría de la metáfora conceptual , explicada por Lakoff como “la comprensión de una idea, en términos de otra”, que proporciona una idea de la intención del autor. [41] Por ejemplo, considere la palabra inglesa "big" . Cuando se usa en una comparación ( "Ese es un árbol grande" ), la intención del autor es dar a entender que el árbol es "físicamente grande" en relación con otros árboles o la experiencia del autor. Cuando se usa metafóricamente ( "Mañana es un gran día" ), la intención del autor de implicar "importancia" . La intención detrás de otros usos, como en "Ella es una gran persona" seguirá siendo algo ambigua para una persona y un algoritmo cognitivo de PNL por igual sin información adicional.
- Asignar medidas relativas de significado a una palabra, frase, oración o fragmento de texto basándose en la información presentada antes y después del fragmento de texto que se analiza, por ejemplo, mediante una gramática probabilística libre de contexto (PCFG). La ecuación matemática para tales algoritmos se presenta en la patente de EE. UU. 9269353:
- Dónde,
- RMM , es la medida relativa de significado
- token , es cualquier bloque de texto, oración, frase o palabra
- N , es el número de tokens que se analizan
- PMM , es la medida probable de significado basada en un corpus
- d , es la ubicación del token a lo largo de la secuencia de tokens N-1
- PF , es la función de probabilidad específica de un idioma.
- Dónde,
Los vínculos con la lingüística cognitiva son parte de la herencia histórica de la PNL, pero se han abordado con menos frecuencia desde el cambio estadístico durante la década de 1990. Sin embargo, se han seguido enfoques para desarrollar modelos cognitivos hacia marcos técnicamente operacionalizables en el contexto de varios marcos, por ejemplo, de gramática cognitiva, [42] gramática funcional, [43] gramática de construcción, [44] psicolingüística computacional y neurociencia cognitiva (por ejemplo, ACT-R ), sin embargo, con una aceptación limitada en la PNL convencional (medida por la presencia en las principales conferencias [45] de la ACL ). Más recientemente, las ideas de la PNL cognitiva se han revivido como un enfoque para lograr la explicabilidad , por ejemplo, bajo la noción de "IA cognitiva". [46] Asimismo, las ideas de la PNL cognitiva son inherentes a los modelos neuronales de PNL multimodal (aunque rara vez se hacen explícitos). [47]
Ver también
- 1 el camino
- Calificación de ensayos automatizada
- Minería de textos biomédica
- Procesamiento de término compuesto
- Ligüística computacional
- Revisión asistida por computadora
- Lenguaje natural controlado
- Aprendizaje profundo
- Procesamiento lingüístico profundo
- Semántica distributiva
- Ayuda a la lectura en lenguas extranjeras
- Ayuda de escritura en lengua extranjera
- Extracción de información
- Recuperación de información
- Tecnologías del lenguaje y la comunicación
- Tecnología del lenguaje
- Indexación semántica latente
- Identificación de lengua materna
- Programación en lenguaje natural
- Búsqueda de lenguaje natural
- Esquema del procesamiento del lenguaje natural
- Ampliación de consultas
- Comprensión de consultas
- Reificación (lingüística)
- Procesamiento de voz
- Sistema de diálogo hablado
- Prueba de texto
- Simplificación de texto
- Transformador (modelo de aprendizaje automático)
- Truecasing
- Respuesta a preguntas
- Word2vec
Referencias
- ^ Kongthon, Alisa; Sangkeettrakarn, Chatchawal; Kongyoung, Sarawoot; Haruechaiyasak, Choochart (27 al 30 de octubre de 2009). Implementación de un sistema de mesa de ayuda online basado en agente conversacional . MEDES '09: La Conferencia Internacional sobre Gestión de EcoSistemas Digitales Emergentes. Francia: ACM. doi : 10.1145 / 1643823.1643908 .
- ^ Hutchins, J. (2005). "La historia de la traducción automática en pocas palabras" (PDF) .[ fuente autoeditada ]
- ^ Koskenniemi, Kimmo (1983), Morfología de dos niveles: un modelo computacional general de reconocimiento y producción de formas de palabras (PDF) , Departamento de Lingüística General, Universidad de Helsinki
- ^ Joshi, AK y Weinstein, S. (1981, agosto). Control de la inferencia: papel de algunos aspectos del centrado en la estructura del discurso . En IJCAI (págs. 385-387).
- ^ Guida, G .; Mauri, G. (julio de 1986). "Evaluación de los sistemas de procesamiento del lenguaje natural: problemas y enfoques". Actas del IEEE . 74 (7): 1026–1035. doi : 10.1109 / PROC.1986.13580 . ISSN 1558-2256 . S2CID 30688575 .
- ↑ La lingüística chomskyana fomenta la investigación de " casos extremos " que enfatizan los límites de sus modelos teóricos (comparables a losfenómenos patológicos en matemáticas), típicamente creados mediante experimentos mentales , en lugar de la investigación sistemática de fenómenos típicos que ocurren en datos del mundo real. como es el caso de la lingüística de corpus . La creación y el uso de tales corpus de datos del mundo real es una parte fundamental de los algoritmos de aprendizaje automático para el procesamiento del lenguaje natural. Además, los fundamentos teóricos de la lingüística chomskyana, como el llamadoargumento de la " pobreza del estímulo ", implican que los algoritmos de aprendizaje general, como se utilizan normalmente en el aprendizaje automático, no pueden tener éxito en el procesamiento del lenguaje. Como resultado, el paradigma de Chomskyan desalentó la aplicación de tales modelos al procesamiento del lenguaje.
- ^ Goldberg, Yoav (2016). "Una introducción a los modelos de redes neuronales para el procesamiento del lenguaje natural". Revista de Investigación en Inteligencia Artificial . 57 : 345–420. arXiv : 1807.10854 . doi : 10.1613 / jair.4992 . S2CID 8273530 .
- ^ Buen amigo, Ian; Bengio, Yoshua; Courville, Aaron (2016). Aprendizaje profundo . MIT Press.
- ^ Jozefowicz, Rafal; Vinyals, Oriol; Schuster, Mike; Shazeer, Noam; Wu, Yonghui (2016). Explorando los límites del modelado del lenguaje . arXiv : 1602.02410 . Código bibliográfico : 2016arXiv160202410J .
- ^ Choe, Do Kook; Charniak, Eugene. "Análisis como modelado de lenguaje" . Emnlp 2016 .
- ^ Vinyals, Oriol; et al. (2014). "Gramática como lengua extranjera" (PDF) . Nips2015 . arXiv : 1412.7449 . Código Bibliográfico : 2014arXiv1412.7449V .
- ^ Turchin, Alexander; Florez Builes, Luisa F. (19/03/2021). "Uso del procesamiento del lenguaje natural para medir y mejorar la calidad de la atención de la diabetes: una revisión sistemática" . Revista de ciencia y tecnología de la diabetes : 193229682110008. doi : 10.1177 / 19322968211000831 . ISSN 1932-2968 . PMID 33736486 .
- ^ Winograd, Terry (1971). Procedimientos como representación de datos en un programa informático para la comprensión del lenguaje natural (Tesis).
- ^ Schank, Roger C .; Abelson, Robert P. (1977). Guiones, planes, metas y comprensión: una investigación sobre las estructuras del conocimiento humano . Hillsdale: Erlbaum. ISBN 0-470-99033-3.
- ^ Mark Johnson. Cómo la revolución estadística cambia la lingüística (computacional). Actas del Taller EACL 2009 sobre la Interacción entre Lingüística y Lingüística Computacional.
- ^ Philip Resnik. Cuatro revoluciones. Language Log, 5 de febrero de 2011.
- ^ Socher, Richard. "Tutorial de aprendizaje profundo para NLP-ACL 2012" . www.socher.org . Consultado el 17 de agosto de 2020 .Este fue uno de los primeros tutoriales de Deep Learning en la ACL 2012 y despertó tanto el interés como (en ese momento) el escepticismo de la mayoría de los participantes. Hasta entonces, el aprendizaje neuronal fue básicamente rechazado por su falta de interpretabilidad estadística. Hasta 2015, el aprendizaje profundo se había convertido en el marco principal de la PNL.
- ↑ Annamoradnejad, I. (2020). Colbert: Usar la incrustación de frases de bert para detectar el humor . preimpresión de arXiv arXiv: 2004.12765.
- ^ Yi, Chucai; Tian, Yingli (2012), "Lectura asistida de texto a partir de antecedentes complejos para personas ciegas", Análisis y reconocimiento de documentos basados en cámaras , Springer Berlin Heidelberg, págs. 15-28, CiteSeerX 10.1.1.668.869 , doi : 10.1007 / 978- 3-642-29364-1_2 , ISBN 9783642293634
- ^ "¿Qué es el procesamiento del lenguaje natural? Introducción a la PNL en el aprendizaje automático" . GyanSetu! . 2020-12-06 . Consultado el 9 de enero de 2021 .
- ^ Kishorjit, N .; Vidya, Raj RK .; Nirmal, Y .; Sivaji, B. (2012). "Identificación del morfema de Manipuri" (PDF) . Actas del 3er Taller sobre Procesamiento del Lenguaje Natural del Sur y Sudeste Asiático (SANLP) . COLING 2012, Mumbai, diciembre de 2012: 95–108.Mantenimiento de CS1: ubicación ( enlace )
- ^ Klein, Dan; Manning, Christopher D. (2002). "Inducción de la gramática del lenguaje natural utilizando un modelo de contexto constituyente" (PDF) . Avances en sistemas de procesamiento de información neuronal .
- ^ PASCAL Recognizing Textual Entailment Challenge (RTE-7) https://tac.nist.gov//2011/RTE/
- ^ Lippi, Marco; Torroni, Paolo (20 de abril de 2016). "Minería de la argumentación: estado del arte y tendencias emergentes" . Transacciones ACM sobre tecnología de Internet . 16 (2): 1–25. doi : 10.1145 / 2850417 . ISSN 1533-5399 . S2CID 9561587 .
- ^ "Argument Mining - Tutorial IJCAI2016" . www.i3s.unice.fr . Consultado el 9 de marzo de 2021 .
- ^ "Enfoques de PNL a la argumentación computacional - ACL 2016, Berlín" . Consultado el 9 de marzo de 2021 .
- ^ "UBUWEB :: Racter" . www.ubu.com . Consultado el 17 de agosto de 2020 .
- ^ Escritor, Beta (2019). Baterías de iones de litio . doi : 10.1007 / 978-3-030-16800-1 . ISBN 978-3-030-16799-8.
- ^ "Documento de comprensión de la IA en Google Cloud (Cloud Next '19) - YouTube" . www.youtube.com . Consultado el 11 de enero de 2021 .
- ^ Administración. "Centro de Tecnología del Lenguaje (CLT)" . Universidad Macquarie . Consultado el 11 de enero de 2021 .
- ^ "Tarea compartida: corrección de errores gramaticales" . www.comp.nus.edu.sg . Consultado el 11 de enero de 2021 .
- ^ "Tarea compartida: corrección de errores gramaticales" . www.comp.nus.edu.sg . Consultado el 11 de enero de 2021 .
- ^ "Acerca de nosotros | Grammarly" . www.grammarly.com . Consultado el 11 de enero de 2021 .
- ^ Duan, Yucong; Cruz, Christophe (2011). "Formalización de la semántica del lenguaje natural a través de la conceptualización desde la existencia" . Revista Internacional de Innovación, Gestión y Tecnología . 2 (1): 37–42. Archivado desde el original el 9 de octubre de 2011.
- ^ Mittal (2011). "Sistemas versátiles de respuesta a preguntas: ver en síntesis" (PDF) . Revista Internacional de Sistemas Inteligentes de Información y Bases de Datos . 5 (2): 119-142. doi : 10.1504 / IJIIDS.2011.038968 .
- ^ "Tareas compartidas anteriores | CoNLL" . www.conll.org . Consultado el 11 de enero de 2021 .
- ^ "Cognición" . Léxico . Oxford University Press y Dictionary.com . Consultado el 6 de mayo de 2020 .
- ^ "Pregúntele al científico cognitivo" . Federación Estadounidense de Maestros . 8 de agosto de 2014.
La ciencia cognitiva es un campo interdisciplinario de investigadores de la lingüística, psicología, neurociencia, filosofía, informática y antropología que buscan comprender la mente.
- ^ Robinson, Peter (2008). Manual de lingüística cognitiva y adquisición de segundas lenguas . Routledge. págs. 3–8. ISBN 978-0-805-85352-0.
- ^ Lakoff, George (1999). Filosofía en carne: la mente encarnada y su desafío a la filosofía occidental; Apéndice: El paradigma de la teoría neuronal del lenguaje . Libros básicos de Nueva York. págs. 569–583. ISBN 978-0-465-05674-3.
- ^ Strauss, Claudia (1999). Una teoría cognitiva del significado cultural . Prensa de la Universidad de Cambridge. págs. 156-164. ISBN 978-0-521-59541-4.
- ^ "Anotación cognitiva conceptual universal (UCCA)" . Anotación Cognitiva Conceptual Universal (UCCA) . Consultado el 11 de enero de 2021 .
- ^ Rodríguez, FC y Mairal-Usón, R. (2016). Construyendo una gramática computacional RRG . Onomazeína , (34), 86-117.
- ^ "Gramática de construcción fluida - Un sistema de procesamiento totalmente operativo para las gramáticas de construcción" . Consultado el 11 de enero de 2021 .
- ^ "Portal de miembros de ACL | Portal de miembros de la Asociación de Lingüística Computacional" . www.aclweb.org . Consultado el 11 de enero de 2021 .
- ^ "Fragmentos y reglas" . www.w3.org . Consultado el 11 de enero de 2021 .
- ^ Socher, Richard; Karpathy, Andrej; Le, Quoc V .; Manning, Christopher D .; Ng, Andrew Y. (2014). "Semántica composicional fundamentada para encontrar y describir imágenes con frases" . Transacciones de la Asociación de Lingüística Computacional . 2 : 207–218. doi : 10.1162 / tacl_a_00177 . S2CID 2317858 .
Otras lecturas
- Bates, M (1995). "Modelos de comprensión del lenguaje natural" . Actas de la Academia Nacional de Ciencias de los Estados Unidos de América . 92 (22): 9977–9982. Código Bibliográfico : 1995PNAS ... 92.9977B . doi : 10.1073 / pnas.92.22.9977 . PMC 40721 . PMID 7479812 .
- Steven Bird, Ewan Klein y Edward Loper (2009). Procesamiento de lenguaje natural con Python . O'Reilly Media. ISBN 978-0-596-51649-9 .
- Daniel Jurafsky y James H. Martin (2008). Procesamiento del habla y el lenguaje , 2ª edición. Pearson Prentice Hall. ISBN 978-0-13-187321-6 .
- Mohamed Zakaria Kurdi (2016). Procesamiento del lenguaje natural y lingüística computacional: habla, morfología y sintaxis , Volumen 1. ISTE-Wiley. ISBN 978-1848218482 .
- Mohamed Zakaria Kurdi (2017). Procesamiento del lenguaje natural y lingüística computacional: semántica, discurso y aplicaciones , Volumen 2. ISTE-Wiley. ISBN 978-1848219212 .
- Christopher D. Manning, Prabhakar Raghavan y Hinrich Schütze (2008). Introducción a la recuperación de información . Prensa de la Universidad de Cambridge. ISBN 978-0-521-86571-5 . Versiones oficiales html y pdf disponibles sin cargo.
- Christopher D. Manning y Hinrich Schütze (1999). Fundamentos del procesamiento estadístico del lenguaje natural . La prensa del MIT. ISBN 978-0-262-13360-9 .
- David MW Powers y Christopher CR Turk (1989). Aprendizaje automático del lenguaje natural . Springer-Verlag. ISBN 978-0-387-19557-5 .