Comprensión del lenguaje natural
La comprensión de lenguaje natural (CLN) es una parte del procesamiento de lengua natural en inteligencia artificial que trabaja con la comprensión de lectura en dispositivos electrónicos. CLN es considerado un problema AI-duro.[1]
![](http://up.wiki.x.io/wikipedia/commons/thumb/c/cd/Learning_to_Read_by_Sigur%C3%B0ur_m%C3%A1lari.jpg/220px-Learning_to_Read_by_Sigur%C3%B0ur_m%C3%A1lari.jpg)
El proceso de desensamblar y parsear la entrada es más complejo que el proceso inverso de ensamblar la salida en generación de lengua natural debido a la ocurrencia de características desconocidas e inesperadas en la entrada y la necesidad de determinar los esquemas sintácticos y semánticos apropiados a aplicarle, factores que son pre-determinados cuando se genera lenguaje.Understanding is more difficult than Generation[cita requerida]
Hay un considerable interés comercial en el campo debido a su aplicación en la reunión de noticias, categorización de texto, activación de voces, y análisis a gran escala de contenido.
Historia
editarEl programa STUDENT (estudiante), escrito en 1964 por Daniel Bobrow para su disertación de PhD en el MIT es uno de los primeros intentos conocidos del entendimiento por un ordenador del lenguaje natural.[2][3][4][5][6] Ocho años después de que John McCarthy declaró el término de inteligencia artificial, la disertación de Bobrow (Entrada del Lengua Natural para un Sistema Solucionador de Problemas Computacionales) mostró como una computadora puede entender una entrada sencilla en lenguaje natural para solucionar problemas algebraicos de palabras.
Un año más tarde, en 1965, Joseph Weizenbaum en el MIT escribió ELIZA, un programa interactivo que mantenía una conversación coherente en Inglés sorbe cualquier tema, la mayoría sobre psicoterapia. ELIZA trabajaba con un parsing sencillo y sustituyendo palabras claves por frases models, y Weizenbaum eludió el problema de dar al programa una base de datos de conocimiento del mundial real o un buen léxico. Aun así ELIZA obtuvo una sorprendente popularidad como proyecto juguete y puede ser visto como temprano precursor de los sistemas comerciales actuales como aquellos utilizados por Ask.com.[7]
En 1969 Roger Schank en la universidad de Stanford introdujo la teoría de dependencia conceptual para el entendimiento del lengua natural.[8] Este modelo, parcialmente influido por el trabajo de Sydney Lamb, era extensamente utilizado por alumnos de Schank en la Universidad de Yale, como Robert Wilensky, Wendy Lehnert, y Janet Kolodner.
En 1970, William A. Woods introdujo la red de transición aumentada (RTA) para representar entrada de lengua natural.[9] En vez de reglas de estructura de frase, los RTAs usaban un conjunto equivalente de estado autómata finito que era llamado recursivamente. RTAs y su formato más general llamado "RTAs generalizados" continuaron siendo utilizados por muchos años.
En 1971 Terry Winograd terminó de escribir SHRDLU para su tesis de PhD en el MIT. SHRDLU podría entender frases inglesas sencillas en un mundo restringido de bloques de hijos para dirigir un brazo robótico que mueve elementos. La demostración exitosa de SHRDLU mostró la importancia de la continuidad de la investigación en el campo.[10][11] Winograd continuó siendo una importante influencia en el campo con la publicación de su libro Lenguaje como un proceso cognitivo.[12] En Stanford, Winograd más tarde sería el asesor de Larry Page, quien cofundó Google.
En los 1970s y los 1980s el grupo de procesamiento de lenguaje natural en SRI International continuó la investigación y el desarrollo en el campo. Se tomaron un número de esfuerzos comerciales basados en la investigación, p. ej., en 1982 Gary Hendrix formó Symantec Corporation originalmente como compañía para el desarrollo de una interfaz para el lenguaje natural que ayudara a las consultas de bases de datos en ordenadores personales. Sin embargo, con la llegada del uso del ratón, las interfaces gráficas de usuario de Symantec cambiaron de dirección. Otros esfuerzos comerciales empezaron por esos mismos años, p. ej., Larry R. Harris en la Artificial Intelligence Corporation y Roger Schank y sus alumnos de Cognitive Systems corp.[13][14] En 1983, Michael Dyer desarrolló en Yale el sistema BORIS el cual tiene muchas semejanzas con el trabajo de Roger Schank y W. G. Lehnart.[15]
El tercer milenio trajo la introducción de los sistemas que utilizan aprendizaje de máquina para clasificación de texto, como el IBM Watson. Aun así, esto no es CLN. Según John Searle, Watson ni siquiera entendió las preguntas.[16]
John Ball, inventor y científico cognitivo de la Teoría de Patom (Patom Theory) apoya esta valoración. CLN ha hecho avances en el apoyo a la productividad humana en servicio y comercio electrónicos, pero esto en gran parte ha sido posible especializando el alcance de la aplicación. Hay miles de maneras de pedir algo en una lengua humana que desafían al CLN convencional. "Tener una conversación significativa con máquinas es sólo posible cuando emparejamos cada palabra con su significado correcto basado en los significados de las otras palabras en la oración – justo como un niño de 3 años hace sin conjeturas" Patom Teoría
Alcance y contexto
editarEl término global "comprensión del lenguaje natural" puede ser aplicado a un conjunto diverso de aplicaciones de ordenador, desde pequeñas, relativamente simples tareas, como órdenes cortas para robots, a esfuerzos altamente complejos como la total comprensión de artículos periodísticos o fragmentos de poesía. Muchos aplicaciones del mundo real caen entre los dos extremos, por ejemplo, la clasificación de texto para el análisis automático de correos electrónicos y su reenvío a un departamento adecuado en una empresa no requiere un profundo entendimiento del texto, pero necesita tratar con un vocabulario mucho más grande y una sintaxis más diversa que la administración de simples consultas a tablas de bases de datos con esquemas fijos.[17]
A través de los años varios intentos de procesar lenguaje natural o frases del inglés en ordenadores han tenido lugar en diferentes grados de complejidad. Algunos intentos no han resultado en sistemas con una profunda comprensión, pero han ayudado sobre todo en la usabilidad de sistemas. Por ejemplo, Wayne Ratliff originalmente desarrolló el programa Vulcan con un sintaxis similar al inglés para simular el habla de la computadora en Star Trek. Vulcan más tarde se convirtió en dBase, un sistema cuya sintaxis fácil de usar lanzó eficazmente la industria de las bases de datos en ordenadores personales.[18][19] Sistemas sintaxis fáciles de utilizar o similares al inglés son, sin embargo, bastante diferentes de sistemas que usan un léxico rico e incluyen una representación interna (a menudo como lógica de primer orden) de la semántica de oraciones en lenguaje natural.
Por ello la amplitud y profundidad de "comprensión" en un sistema determina tanto la complejidad del sistema (y los cambios que implica) y los tipos de aplicaciones que pueda tratar.La "amplitud" de un sistema se mide por los tamaños de su vocabulario y gramática. La "profundidad" se mide por el grado en el que su comprensión se aproxima al de un hablante nativo fluido. En el más estrecho y más superficial, intérprete de comandos similares al inglés que requieren de una complejidad mínima, pero tienen una gama pequeña de aplicaciones. Los sistemas estrechos pero profundos exploran y modelan mecanismos de comprensión, pero todavía tienen aplicaciones limitadas.[20] Los sistemas que intentan entender el contenido de un documento como una noticia más allá del emparejamiento de las palabras claves sencillas y que responden a su conveniencia para un usuario es más abaracdor y requiere una mayor complejidad, pero son todavía un poco superficiales.[21] Los sistemas que son tanto muy anchos como profundos van más allá del actual estado del arte.
Componentes y arquitectura
editarSin importar el enfoque usado, la mayoría de los sistemas de comprensión de lenguaje natural comparten algunos componentes comunes. El sistema necesita un léxico de la lengua y reglas de parser y gramática para covnertir frases a una representación interna. La construcción de un bueno léxico con una ontología adecuada requiere un esfuerzo significativo, p. ej., el léxico de Wordnet requirió mucha personas y años de esfuerzo.[22]
El sistema también necesita una teoría semántica para guiar la compresión. Las capacidades de interpretación de un sistema de entendimiento del lenguaje depende de la teoría semántica utilizada. La competencis en las teorías semánticas del lenguaje tienen específicas compensaciones en sus beneficios como las bases de la interpretación semántica automatizada computacionalmente.[23] Esto va desde las semánticas ingenuas o análisis semántico estocástico al uso de la pragmática para obtener el significando en un contexto.[24][25][26]
Aplicaciones avanzadas de CLN también intentan incorporar inferencia lógica dentro de su marco, lo que es generalmente logrado mapeando el significado derivado a un conjunto de aserciones en lógica de predicado, luego utilizando deducción lógica para llegar a conclusiones. Por tanto, los sistemas basados en lenguajes funcionales como Lisp necesitan incluir un subsistema para representar aserciones lógicas, mientras que los sistemas orientados a la lógica como aquellos que usan el lenguaje Prolog generalmente caen en una extensión del framework de representación lógica built-in.[27][28]
La administración del contexto en CLN puede presentar grandes retos. Una variedad grande de ejemplos han resultado en aproximaciones múltiples a la modelación formal del contexto, cada cual con debilidades y beneficios específicos.[29][30]
Véase también
editarReferencias
editar- ↑ Roman V. Yampolskiy. Turing Test as a Defining Feature of AI-Completeness . In Artificial Intelligence, Evolutionary Computation and Metaheuristics (AIECM) --In the footsteps of Alan Turing. Xin-She Yang (Ed.). pp. 3-17. (Chapter 1). Springer, London. 2013. http://cecs.louisville.edu/ry/TuringTestasaDefiningFeature04270003.pdf
- ↑ American Association for Artificial Intelligence Brief History of AI [1] Archivado el 10 de marzo de 2010 en Wayback Machine.
- ↑ Daniel Bobrow's PhD Thesis Natural Language Input for a Computer Problem Solving System.
- ↑ Machines who think by Pamela McCorduck 2004 ISBN 1-56881-205-1 page 286
- ↑ Russell, Stuart J.; Norvig, Peter (2003), Artificial Intelligence: A Modern Approach Prentice Hall, ISBN 0-13-790395-2, http://aima.cs.berkeley.edu/, p. 19
- ↑ Computer Science Logo Style: Beyond programming by Brian Harvey 1997 ISBN 0-262-58150-7 page 278
- ↑ Weizenbaum, Joseph (1976). Computer power and human reason: from judgment to calculation W. H. Freeman and Company. ISBN 0-7167-0463-3 pages 188-189
- ↑ Roger Schank, 1969, A conceptual dependency parser for natural language Proceedings of the 1969 conference on Computational linguistics, Sång-Säby, Sweden, pages 1-3
- ↑ Woods, William A (1970). "Transition Network Grammars for Natural Language Analysis". Communications of the ACM 13 (10): 591–606 [2]
- ↑ Artificial intelligence: critical concepts, Volume 1 by Ronald Chrisley, Sander Begeer 2000 ISBN 0-415-19332-X page 89
- ↑ Terry Winograd's SHRDLU page at Stanford SHRDLU Archivado el 17 de agosto de 2020 en Wayback Machine.
- ↑ Winograd, Terry (1983), Language as a Cognitive Process, Addison–Wesley, Reading, MA.
- ↑ Larry R. Harris, Research at the Artificial Intelligence corp. ACM SIGART Bulletin, issue 79, January 1982 [3]
- ↑ Inside case-based reasoning by Christopher K. Riesbeck, Roger C. Schank 1989 ISBN 0-89859-767-6 page xiii
- ↑ In Depth Understanding: A Model of Integrated Process for Narrative Comprehension.. Michael g. Dyer. MIT Press. ISBN 0-262-04073-5
- ↑ https://www.wsj.com/articles/SB10001424052748703407304576154313126987674
- ↑ An approach to hierarchical email categorization by Peinfeng Li et al. in Natural language processing and information systems edited by Zoubida Kedad, Nadira Lammari 2007 ISBN 3-540-73350-7
- ↑ Infoworld, Nov 13, 1989, page 144
- ↑ Infoworld, April 19, 1984, page 71
- ↑ Building Working Models of Full Natural-Language Understanding in Limited Pragmatic Domains by James Mason 2010 [4]
- ↑ Mining the Web: discovering knowledge from hypertext data by Soumen Chakrabarti 2002 ISBN 1-55860-754-4 page 289
- ↑ G. A. Miller, R. Beckwith, C. D. Fellbaum, D. Gross, K. Miller. 1990. WordNet: An online lexical database. Int. J. Lexicograph. 3, 4, pp. 235-244.
- ↑ Using computers in linguistics: a practical guide by John Lawler, Helen Aristar Dry 198 ISBN 0-415-16792-2 page 209
- ↑ Naive semantics for natural language understanding by Kathleen Dahlgren 1988 ISBN 0-89838-287-4
- ↑ Stochastically-based semantic analysis by Wolfgang Minker, Alex Waibel, Joseph Mariani 1999 ISBN 0-7923-8571-3
- ↑ Pragmatics and natural language understanding by Georgia M. Green 1996 ISBN 0-8058-2166-X
- ↑ Natural Language Processing Prolog Programmers by M. Covington, 1994 ISBN 0-13-629478-2
- ↑ Natural language processing in Prolog by Gerald Gazdar, Christopher S. Mellish 1989 ISBN 0-201-18053-7
- ↑ Understanding language understanding by Ashwin Ram, Kenneth Moorman 1999 ISBN 0-262-18192-4 page 111
- ↑ Formal aspects of context by Pierre Bonzon et al 2000 ISBN 0-7923-6350-7