La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Curso de Lingüística Computacional. Heiner Mercado Percia.

Presentaciones similares


Presentación del tema: "Curso de Lingüística Computacional. Heiner Mercado Percia."— Transcripción de la presentación:

1 Curso de Lingüística Computacional. Heiner Mercado Percia

2 ¿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 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 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 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 Un DF es una representación gráfica de la secuencia de pasos que se realizan para obtener un resultado. Inicio Paso1 : Leer caracteresPaso 2: Reconocer palabras Paso 3: Comparar cada palabra con automático Paso 4: Contar el número de ocurrencias Fin

7 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 leer un carácter adjuntar carácter a palabra detectada FIN TANTO QUE SI palabra detectada =automático ENTONCESNb ocurrencias + 1 FIN PARA 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.

8 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 ¿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.) 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.

10 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 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 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 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 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 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 Un lenguaje L está formado por el cuádruplo V N, V T, P, O en el que: V N conjunto finito de símbolos no-terminales o variables (categorías sintácticas) V T conjunto finito de símbolos terminales (palabras) P conjunto finito de reglas de producción que suelen adoptar la forma -> donde y pueden ser V T y V N O símbolo inicial o axioma (Oración)

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

18 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 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 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 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". V T -> V N (A->t) V T -> V N V T (A->tN)

22 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 "Curso de Lingüística Computacional. Heiner Mercado Percia."

Presentaciones similares


Anuncios Google