Curso de procesamiento del lenguaje...

Post on 31-Jan-2020

6 views 0 download

Transcript of Curso de procesamiento del lenguaje...

César Antonio Aguilar

Facultad de Lenguas y Letras

14/03/2013

Curso de procesamiento del

lenguaje natural

Cesar.Aguilar72@gmail.com

PLN: ¿qué es? (1)

PLN: ¿qué es? (2)

<CD num= “1"> <PP tippp= "Aut"> M. Godron y G. Merriam </PP> entre otros, quienes <PVD><VD lema= "considerar" args= "3" mdo= "fin"> consideran </VD> a la <TERM term= "L" tipterm= "fn"> Ecología del Paisaje </TERM> <NX tipnx= "adv"> como </NX> </PVD> <MTD mdef= "dp" mt= ""> : </MTD> <DEF tipdef= "GD"> "la ecología de los sistemas movibles y heterogéneos, estudiando entonces la influencia de la estructura del paisaje sobre los procesos ecológicos, tanto a escala local como regional " </DEF> </CD>

PLN: ¿qué es? (3)

Siglo XVIII

Siglo XIX

Siglo XX

PLN: ¿qué es? (4)

El test de Turing (1)

Alan Turing (1912-1954), escribió un artículo famoso titulado “Computer Machinery and Intelligence”.

En este artículo, se plantea que si una máquina es capaz de comprender y generar lenguaje humano, entonces se puede considerar que se trata de una máquina inteligente.

Ahora bien, el problema no es tanto diseñarla (según Turing), sino probar que realmente este conocimiento es una prueba de cierta inteligencia.

¿Qué pensarían si su computador platicara con ustedes?

El test de Turing (2)

El Dr. Chandra platica con Sal, la hermana de Hal

Uno de los ejemplos más creíbles que podemos ver en el cine sobre lo que es la

interacción de tipo humano-máquina lo podemos ver en una película hecha por

Stanley Kubrick en 1968: 2001: A Space Odyssey. En ella, vemos como el Dr.

Sivasubramanian Chandrasegarampillai (o el Dr. Chandra) desarrolla en computador

más avanzado de su tiempo, Hall 9000, capaz de realizar varias tareas complejas,

entre ellas dialogar con astronautas.

Nueve años después, Hall tiene una hermana, Sal 9000, la cual en esencia tiene

los mismos atributos que su hermano mayor. Un ejemplo de su funcionamiento lo

pueden ver en la liga que anoté en la página del curso.

C-3PO Relaciones Interhumanas,

también C-3PO Relaciones

Cibernético-humanas, comúnmente

C-3PO.

Se trata de un droide de

protocolo, diseñado para

interactuar con seres pensantes.

Puede hablar y entender más de

seis millones de formas de

comunicación (¿idiomas?) .

Su principal función como droide

de protocolo es ayudar a explicar

las costumbres, de otras

culturas, la traducción, etc. Es

muy leal a sus amos. Desde su

creación, ha servido a más de

cuarenta.

¿Se acuerdan de Threepio?

Mayor información, ver:

http://starwars.wikia.com/wiki/C-3PO

Cosas más reales (1)

Threepio, a pesar del avance tecnológico actual, es todavía parte de la ciencia-ficción. ¿Qué podemos hacer hoy en día con las tecnologías del lenguaje?

Para tener una mejor idea de lo que son las actuales tecnologías del lenguaje, pueden ver en la página del curso un video en donde Emily Brender (University of Whashington) explica de forma muy breve qué es el PLN.

Igualmente, un ejemplo de aplicación es el sistema de traducción automática Verbmobil, desarrollado bajo el auspicio del Ministerio Federal Alemán para la Educación, la Ciencia, la Investigación y la Tecnología en 1996.

Liga al video:

www.youtube.com/watch?v=noZBab-Lmss

Mayor información sobre Verbmobil:

http://verbmobil.dfki.de/

Existe una considerable cantidad de recursos computacionales que permiten identificar y obtener información específica desde enormes cantidades de textos:

TAKMI (Text Analysis and Knowledge Mining)

www.trl.ibm.com

Cosas más reales (2)

Nota: esto no es una mera cuestión de ingenieros en cómputo, matemáticos, informáticos, empresarios, etc. También se requiere una participación directa de lingüistas. Para darnos una idea, revisemos algunas de las ofertas de trabajo que hoy podemos revisar en la página The Linguist List, un repositorio electrónico para lingüistas, en el cual podemos identificar esta clase de avisos.

Cosas más reales (3)

http://linguistlist.org/jobs/browse-jobs.cfm

Entre lo simple y lo complejo (1)

Reconocimiento de Entidades nombradas =

¿Y qué puedo buscar?:

• Nombres de personas

• Lugares

• Periodos históricos

• Empresas

• Áreas de trabajo

• Etc., etc, y más etc.

¿Quién, cuándo, dónde, cómo?

Tarea = Identificar elementos valiosos que contengan información potencial dentro de un texto.

Entre lo simple y lo complejo (2)

Location

Organization

Date Location

Location

La apuesta es: hacer esta clase de búsquedas de manera eficiente y automática.

Incluso en situaciones en donde se tenga que trabajar con idiomas desconocidos para un usuario.

Ejemplo propuesto por Micth Marcus (UPenn)

Entre lo simple y lo complejo (2)

Inteligencia artificial

Deducción y razonamiento

Representación del conocimiento

Aprendizaje automático

Percepción Creatividad

Inteligencia social Cibernética y robótica

Procesamiento del lenguaje natural

Procesamiento de texto Procesamiento de voz

Estableciendo equivalencias (1)

¿Lingüística computacional?

Lingüística teórica

Fonética/ Fonología Morfología Lexicología Sintaxis Semántica

Análisis del discurso

Pragmática

Estableciendo equivalencias (2)

Estableciendo equivalencias (3)

¿Ingeniería lingüística?

Lingüística aplicada

Psicolingüística

Neurolingüística Adquisición y desarrollo del lenguaje

Enseñanza de lenguas

Traducción

Análisis político del discurso

Sociolingüística Lexicografía

Terapia del lenguaje

Terminología

Lingüística computacional

Procesamiento de voz

Lematización/tokenización

Lexicones Chunking/parsing

Relaciones semánticas

Representación del discurso

Inferencias pragmáticas

Estableciendo equivalencias (4)

Ingeniería lingüística

Reconocimiento/ generación de voz

Recuperación y extracción de

información

Extracción terminológica Resumen

automático

Traducción automática

Reconocimiento de entidades nombradas

Ontologías

Corpus lingüísticos

Lexicografía computacional

Clasificación de documentos

Sistemas pregunta-respuesta

Minería de textos

Estableciendo equivalencias (5)

Tomado de: Van Valin (2006): 264

¿La misma visión del mundo? (1)

Tomado de: Van Valin (2006): 282.

¿La misma visión del mundo? (2)

Tomado de: Copestake (2007)

¿La misma visión del mundo? (3)

¿Y qué hacemos? (1)

Como buenos computólogos, siguiendo la propuesta de Turing o Von Neumann, queremos ocupar ese conocimiento lingüístico para

crear máquinas inteligentes.

Como todo buen lingüista, nos interesa estudiar, describir y

modelar las formas y las funciones que operan en toda

lengua humana.

Un rasgo particular de los lingüistas computacionales

respecto a los colegas lingüistas, es que ponemos

énfasis en desarrollar modelos formales a partir de datos

empíricos

Un rasgo que distingue a los lingüistas computacionales de los colegas

computólogos, es que trabajan con fenómenos dinámicos, que se ven afectados

por un entorno social.

¿Y qué hacemos? (2)

1. Modelar una realidad lingüística basándonos en métodos simbólicos y numéricos.

2. Ofrece una base empírica sólida, que muestra el funcionamiento real de una lengua natural.

¿Y qué hacemos? (3)

Métodos basados en reglas lingüísticas: el lenguaje natural sigue una serie de reglas que sirven para construir estructuras con patrones regulares.

Métodos estadísticos: el lenguaje natural, al presentar cierta regularidad, ofrece un margen de probabilidad estadística para determinar si es viable que se genere o no cierta estructura lingüística.

¿Y qué hacemos? (4)

¿Y qué hacemos? (5)

Lenguaje = ¿reglas y combinaciones? (1)

Verdad de Perogrullo: El lenguaje natural es un sistema combinatorio de signos (SCS).

Lingüistas: “Una lengua humana es un sistema muy, pero muy complejo como para reducirlo a puras fórmulas, ¿o sí?”

Computólogos: “Sí es así, una lengua humana opera como cualquier lenguaje artificial, ¿no?”

¿Qué es lo que entienden computólogos por SCS?

Lenguaje L =

1. Conjunto de caracteres

2. Cadenas

3. Variables

4. Operadores

Si combinamos todo esto, entonces creamos algoritmos capaces de analizar patrones.

Lenguaje = ¿reglas y combinaciones? (2)

Por su parte, los lingüistas (una buena parte), considera que SCS es un conjunto de signos (desde fonemas hasta palabras), los cuales operan bajo determinados principios y parámetros propios de una lengua.

Lenguaje = ¿reglas y combinaciones? (3)

¿Por qué no hacen las cosas bien?

Dadas estas diferencias de enfoques sobre la forma de abordar un mismo objeto de estudio, vale la pena preguntarse: ¿por qué los computólogos y los lingüistas no se entienden (muchas veces), y se ven con desconfianza (normalmente)?

Postura de los ingenieros en cómputo

Postura de los lingüistas

Pānini: Es el autor de la gramática del sánscrito (Vyakarana), la cual se puede considerar como la primera gramática “formal” que se conoce hasta ahora (S. 8 A.C.). Se trata de un modelo de descripción y generación de construcciones en sánscrito que atiende 4 niveles: fonético, morfológico, sintáctico y semántico.

X Files (1)

Pregunta: ¿quién es el primer “lingüista computacional” de la historia?

El sánscrito, según Pānini, opera como un sistema que genera patrones regulares:

*8.2.23 padasyaGen sa¸yog‡ntasyaGen lopa˛ Nom

*8.2.24 padasyaGen sa¸yog‡ntasyaGen r‡tAbl sasyaGen lopa˛ Nom

*8.2.25 dhiLoc sasyaGen lopa˛ Nom

*8.2.26 jhaloAbl jhaliLoc sasyaGen lopa˛ Nom

*8.2.27 hrasv‡dAbl aÔg‡tAbl jhaliLoc sasyaGen lopa˛ Nom

*8.2.28 iÒa˛Abl „ÒiLoc sasyaGen lopa˛Nom

*8.2.29 sko˛GenDu sa¸yog‡dyorGenDu jhaliLoc lopa˛Nom

*8.2.29 sko˛GenDu sa¸yog‡dyorGenDu padasyaGen anteLoc lopa˛Nom *8.2.30 co˛Gen jhaliLoc ku˛Nom

*8.2.30 co˛Gen padasyaGen anteLoc ku˛Nom

X Files (2)

Representación de la gramática de Pānini según Paul Kiparsky:

www.stanford.edu/~kiparsky/

X Files (3)

Lo curioso es que la idea de Pānini ha influido a varios tipos:

Aristóteles (384-322 A. C.) Grammaire de Port-

Royal (1660) René Descartes

(1596-1650)

Fco. Sánchez de las Brozas (1523-1600)

Charles Babbage (1791-1871)

Wilhelm von Humboldt (1767-1835)

George Boole (1815-1864)

Ada A. Byron (1815-1852)

X Files (4)

Las sospechas de Mulder (1)

Todos ellos han planteado algunas cosas:

Tal regularidad es el fruto de un uso rutinario por parte de sus hablantes. Dicha rutina, con el tiempo, da lugar a una gramática

Lenguas humanas sistema de signos

Permiten expresar información sobre el mundo y las personas

Se codifican siguiendo reglas y patrones regulares

¿Qué podemos hacer con una lengua viéndola como un sistema de signos?

Establecer modelos gramaticales

Hacer comparaciones entre distintas lenguas

humanas

Deducir reglas y patrones

Aprovechar esos modelos para desarrollar sistemas de cómputo capaces de generar y comprender una lengua

Las sospechas de Mulder (2)

Una forma de ver las cosas, y que ha dejado mucho dinero a algunos, es utilizar el lenguaje natural para hacer búsquedas de información.

Las sospechas de Mulder (3)

Algunas referencias

Sitios WEB:

1. Página electrónica de Daniel Jurafsky: www.stanford.edu/~jurafsky, Stanford University.

2. Página electrónica de James Martin: www.cs.colorado.edu/~martin/csci5832/, University of Colorado.

3. Linguistic Data Consortium: www.ldc.upenn.edu/, University of Pennsylvania.

4. Natura Language Tool-kit (NLTK): www.nltk.org.

5. General Architecture for Text Engineering (GATE): http://gate.ac.uk/, University of Sheffield

6. The Stanford Natural Language Processing Group: http://nlp.stanford.edu/, Stanford University.

Libro básico: Jurafsky, Daniel y James H. Martin (2008): Speech and Language Processing, New York, Prentice-Hall.