La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

¿Cómo hacer para que una máquina comprenda el LN?

Presentaciones similares


Presentación del tema: "¿Cómo hacer para que una máquina comprenda el LN?"— Transcripción de la presentación:

1 ¿Cómo hacer para que una máquina comprenda el LN?
Curso de Lingüística Computacional. Heiner Mercado Percia

2 problema ¿Qué hacer para que una máquina reconozca y genere LN?
Debemos encontrar los medios técnicos y conceptuales para resolver este problema de manera automática. La Ingeniería de software busca un procedimiento ejecutable de manera automática que resuelva este problema -> busca un algoritmo.

3 Algoritmos Algoritmo es el conjunto finito de instrucciones que configuran el procedimiento paso a paso para resolver un determinado problema en un tiempo finito. Un programa de computadora es un algoritmo que le dice a la computadora los pasos específicos para llevar acabo una tarea. Los algoritmos son rigurosamente definidos para que la computadora pueda interpretarlos.

4 Algoritmos Los algoritmos pueden escribirse en pseudocódigo, lo que también los hace fáciles de entender. También pueden representarse de forma sencilla por medio de diagramas de flujo. De esta manera, los algoritmos son más "universales", pues no dependen de un lenguaje de programación específico. En programación, los algoritmos se implementan en forma de sentencias en algún lenguaje de programación. La forma de escribir los algoritmos dependen del lenguaje de programación. Estos son los algoritmos que pueden ser interpretados por una computadora y así ser ejecutados.

5 Ejemplo Problema: Quiero saber cuantas veces aparece la palabra “automático” en un corpus. Leer caracteres de un archivo Reconocer una palabra Comparar una palabra con “automático” Contar el número de ocurrencias

6 Algoritmo (Diagrama de flujo)
Inicio Paso1 : Leer caracteres Paso 2: Reconocer palabras Paso 3: Comparar cada palabra con “automático” Paso 4: Contar el número de ocurrencias Fin Un DF es una representación gráfica de la secuencia de pasos que se realizan para obtener un resultado.

7 Algoritmo (pseudocódigo)
Esto debe traducirse en un lenguaje de máquina o un lenguaje de alto nivel (PHP, PERL, C++, etc.) Los lenguajes de alto nivel son programas que traducen órdenes escritas en lenguaje humano. Nb Ocurrencias = 0 PARA todos los caracteres del texto HACER palabra detectada =“” leer un carácter adjuntar carácter EN TANTO QUE no fin de palabra HACER adjuntar carácter a palabra detectada FIN TANTO QUE SI palabra detectada =“automático” ENTONCES Nb ocurrencias + 1 FIN PARA

8 Algoritmos y el LN La IA y la Traducción Automática buscan algoritmos que permitan tratar automáticamente el LN. Comienza el problema de la calculabilidad o computabilidad (Teoría de la complejidad computacional) Un problema es computable si tiene una solución algorítmica. Un computador no puede resolver un problema si no hay una solución algorítmica

9 Pensemos por un momento en problemas que queremos resolver.
El estudio de los procesos computacionales conduce a una clasificación de los problemas en solucionables y no solucionables. Pensemos por un momento en problemas que queremos resolver. Computabilidad ¿Se puede resolver cualquier problema de manera automática? ¿Podrá existir una máquina que logre resolver todo tipo de problemas automáticamente? Limitaciones de orden teórico (problema con solución –calculable-) Limitaciones técnicas Evaluación de la complejidad (cantidad de recursos necesarios: tiempo de ejecución, uso de memoria, eficiencia, etc.)

10 Complejidad Problema 1: contar en un corpus las ocurrencias de la palabra “lenguaje” Problema 2: contar las veces en que aparecen las palabras “lenguaje” y “natural” Solución 1: lectura secuencial de un archivo con un contador y una comparación. Solución 2a: lectura secuencial de un archivo con 1 bucle, 2 contadores y 2 comparaciones (El # de operaciones depende del número de palabras) Solución 2b: 2 lectores secuenciales con 1 contador (El doble de operaciones pero utiliza sólo un contador - memoria)

11 Algoritmos y el LN Se buscan algoritmos capaces de manipular series de símbolos y cadenas de símbolos (caracteres) Algoritmos que permitan a una máquina reconocer, interpretar y generar LN. Máquina de Turing

12 Algoritmos y el LN Reconocimiento: (teoría de los autómatas) se buscan algoritmos que permitan, dado un lenguaje L y una cadena x determinar si x є L o x є L Interpretación: tiene que ver con la semántica de los lenguajes. Se intenta formalizar el significado de las sentencias de un lenguaje Generación: consiste en encontrar mecanismos que permitan enumerar las cadenas que pertenecen a un lenguaje. Estos mecanismos son las gramáticas.

13 Estudio de los lenguajes
Tradicionalmente el estudio de los leguajes se divide en dos partes: el análisis de la estructura de las frases (gramática) y el estudio de su significado (semántica). A su vez, el estudio de la gramática se subdivide en morfología, sintaxis, y fonética. En los años 50 Chomsky introdujo la teoría de las gramáticas transformacionales o teoría de lenguajes formales que convirtió la lingüística en una ciencia. Esta teoría facilitó el estudio tanto de la LN como la formalización de los lenguajes de programación para computadores

14 Estudio de los lenguajes
Un Lenguaje L es: Conjunto infinito de oraciones Número finito de símbolos (palabras) Número finito de combinaciones bien formadas Reglas que organizan las combinaciones posibles de formación

15 Estudio de los lenguajes
Una gramática formal es un objeto o modelo matemático que permite especificar un lenguaje o lengua, es decir, es el conjunto de reglas capaces de generar todas las posibilidades combinatorias de ese lenguaje. La expresión «gramática formal» tiene dos sentidos: gramática de un lenguaje formal descripción formal de parte de la gramática de un lenguaje natural o sintaxis. Hay distintos tipos de gramáticas formales que generan lenguajes formales, veamos:

16 Gramática formal Un lenguaje L está formado por el cuádruplo VN, VT, P, O en el que: VN conjunto finito de símbolos no-terminales o variables (categorías sintácticas) VT conjunto finito de símbolos terminales (palabras) P conjunto finito de reglas de producción que suelen adoptar la forma  ->  donde  y  pueden ser VT y VN O símbolo inicial o axioma (Oración)

17 Jerarquía de las gramáticas de Chomsky
Chomsky clasificó los lenguajes en una jerarquía inclusiva de cuatro grados: Máquinas que pueden analizar cada lenguaje

18 Jerarquía de las gramáticas de Chomsky
Gramática tipo 0: pertenece a la semántica de los lenguajes naturales y artificiales. No tienen restricción alguna. Está relacionado con todos los problemas computables o recursivamente enumerables (solucionables por la máquina de Turing)

19 Jerarquía de las gramáticas de Chomsky
Gramática tipo 1: Lenguajes sensibles al contexto. Introducen algunas limitaciones en la estructura gramatical, aunque permite que el valor sintáctico de las palabras dependa de la posición en la frase, es decir, de su contexto. Ejemplo: Lengua africana bambara y el alemán-suizo. xz -> xz

20 Jerarquía de las gramáticas de Chomsky
Gramática tipo 2: Lenguajes independientes del contexto. El valor sintáctico de una palabra es totalmente independiente de su posición en la frase. Ejemplo: todos los lenguajes de computadores. El término libre de contexto se refiere al hecho de que el símbolo no terminal V puede siempre ser sustituido por w sin tener en cuenta el contexto en el que ocurra. V -> w

21 Jerarquía de las gramáticas de Chomsky
Gramática tipo 3: Lenguajes regulares. Se suelen describir mediante expresiones regulares. Sus palabras contienen regularidades. Una ER describe un conjunto de cadenas sin enumerar sus elementos. Por ejemplo, el grupo formado por las cadenas Handel, Händel y Haendel se describe mediante el patrón "H(a|ä|ae)ndel". VT -> VN (A->t) VT -> VN VT (A->tN)

22 Empleo de gramáticas Aplicaciones: Traducción Automática
Comprensión y reconocimiento del lenguaje oral Interfaces de LN para comunicación hombre – máquina Búsqueda de datos en bd. Enseñanza asistida por ordenador Comprensión y tratamiento de textos (lo más utilizado)


Descargar ppt "¿Cómo hacer para que una máquina comprenda el LN?"

Presentaciones similares


Anuncios Google