Método de aprendizaje | Porcentaje (%) |
---|---|
Examen escrito sobre el dominio y compresión teórico-empírica. | 20 |
Prácticas y participación con propuestas de casos de estudio. | 20 |
Tareas individuales y colaborativas. | 20 |
Proyecto integrador en el que se apliquen y demuestren los conocimientos adquiridos. | 40 |
PLN \(\subseteq\) AI
Decisiones sobre qué hacer basados en lo que conocemos (o creemos) sobre el mundo, de manera inconsciente y sin esfuerzo
¿Qué es el comportamiento inteligente?
El estudio de el comportamiento inteligente logrado a través de medios computacionales. La representación del conocimiento y el razonamiento son parte de la IA que se enfoca en cómo un agente usa lo que sabe para decidir qué hacer
Es el estudio de pensar como un proceso computacional
¿Qué significa estos conceptos y por qué serían útiles para construir sistemas inteligentes?
Estructuras simbólicas
Procesos computacionales
Representar conocimiento
Razonar con estas estructuras simbólicas
"Chelita sabe que ..."
"Chelita sabe que Vicente vendrá a la fiesta"
Relación entre conocedores o conocedoras
Y una idea 💡 expresada por una oración declarativa
(o preposición)
"Chelita sabe que \(p\)"
"Chelita sabe que es cierto que \(p\)"
Se ha formado un juicio de algún tipo y se ha dado cuenta de que el mundo es de una manera y no de otra.
De cualquier manera, lo que interesa sobre la preposición es la verdad:
Si Chelita espera que Vicente vaya a la fiesta, entonces Chelita espera que el mundo sea de una manera y no de otra.
Existen oraciones que implican conocimiento pero que que no mencionan explícitamente preposiciones
"Chelita sabe cómo llegar ahí"
Podemos imaginar preposiciones implícitas
"Chelita sabe para llegar a la fiesta hay que seguir recto y dar vuelta a la derecha ..."
"Chelita sabe programar desde que ..."
O adquirir entendimiento de alguien o algo
"Chelita {sabe, confía, sospecha, opina, espera, duda,...} que ..."
Las actitudes preposicionales son relaciones entre agentes y preposiciones difieren sólo en el nivel de convicción que se expresa:
Relación entre dos dominios
Abstracción
Símbolos
representante
representación
mariposa
El uso de símbolos formales para representar una colección de proposiciones creídas por algún agente
Simbolo o grafema
\(1\)
Alfabeto
\(\{0, 1\}\)
Palabra (string)
\(001101\)
Lenguaje
Sea \(L_1\): el conjunto de palabras (strings) de longitud 2:
\(\{00, 01, 10, 11\}\)
IA (cómputo)
Manipulación
formal
Colección de preposiciones o símbolos
Nuevas preposiciones o símbolos
Manipulación:
suma
1011
0010
1101
Manipulación:
inferencia lógica
Vicente le gusta a Chelita
Vicente irá a la fiesta
Alguien que le gusta a Chelita irá a la fiesta
¿Por qué es relevante para los sistemas inteligentes?
Se movió de esta manera porque creía que el rey era vulnerable, pero podía atacar la torre.
Se movió de esta manera porque creía que su dama era vulnerable, pero aún quería atacar la torre.
Interprete
Ejemplo: ¿Por qué se movió de cierta manera?
Se movió de esta manera porque el procedimiento de evaluación \(P\) que usa la función de evaluación estática \(Q\) devolvió un valor de \(+7\) después de una búsqueda minimax alfa-beta a la profundidad \(4\)
Equivocado nivel de detalle
Programa
Ejemplo: ¿Por qué se movió de cierta manera?
... razonamiento sobre el conocimiento explícitamente representado
The bathroom is dry. The hall is wet. There is a leak in the kitchen.
IF the bathroom is dry AND the hall is wet THEN there is a leak in the kitchen.
Hecho (fact)
Regla (rule)
... estrategias lingüísticas en las oraciones desde una perspectiva de lingüística computacional
El señor llevaba un pañuelo azul
El señor llevaba un pañuelo azul
El señor llevaba un pañuelo azul
sustantivo, masc., sin.
artículo, masc. sin.
verbo, 3ra persona
determinante indefinido
sustantivo común, masc. sin.
adjetivo, masc. sin.
Análisis morfológico:
Análisis sintáctico:
núcleo del sujeto
modificador directo
núcleo del predicado
objeto directo
El señor llevaba un pañuelo azul
Análisis semántico:
persona adulta
mover o desplazar consigo a una persona o una cosa hacia un lugar diferente del que uno está.
pieza cuadrada de tela fina, generalmente de algodón, que se usa principalmente para limpiarse la nariz, enjugarse las lágrimas o secarse el sudor de la frente y suele llevarse encima.
Varios modelos y técnicas estadísticos (en el lenguaje) utilizados en diversas tareas computacionales como:
Diseñar modelos de cómputo y sus capacidades
Automata de estados finitos
Simbolo o grafema
\(a,...,z \)
Alfabeto
\(\{a,...,z \}\)
Palabra (string)
\(001101\)
Lenguaje
Sea \(L_1\): el conjunto de palabras (strings) de longitud 2:
\(\{00, 01, 10, 11\}\)
finita secuencia de símbolos
finita conjuto de símbolos
Simbolo o grafema
\(1, 0\)
Alfabeto
\(\{0, 1\}\)
Palabra (string)
\(001101\)
Lenguaje
Sea \(L_1\): el conjunto de palabras (strings) de longitud 2:
\(\{00, 01, 10, 11\}\)
finita secuencia de símbolos
finita conjuto de símbolos
Problema de decisión:
un algoritmo para decidir si un enunciado dado se puede demostrar a partir de los axiomas usando las reglas de la lógica
Tesis de Alan Turing (1936)
0
1
0
1
0
1
1
0
1
0
0
1
1
0
0
1
0
1
0
1
0
0
1
0
0
0
1
A
B
+
C
entradas
salida
proceso
¿Se tendrán mayor poder de cómputo si ...
(no regresa el mismo resultado)
R1 = todas las variaciones son equivalentes en capacidad de cómputo
R2 = una función es computable de manera realista (o algorítmica) si y solo si es computable por una máquina de Turing
matemáticas
cómputación
... procedimiento paso a paso para realizar alguna tarea en un período de tiempo finito
... es una forma sistemática de organizar y acceder a los datos.
espacio
Metodología general: definición
Un algoritmo es una función \(f(n)\) que caracteriza el tiempo de ejecución en términos del tamaño de entrada \(n\)
Ejemplo:
Conjunto de operaciones primitivas de alto nivel que son independientes del lenguaje de programación utilizado y pueden identificarse también en el pseudocódigo
Modelo RAM (Random Access Machine)
\(w={w_1,w_2,... }\)
la memoria almacena una palabra (word)
?
acceso aleatorio a la memoria via una operación primitiva
Metodología general: pseudocódigo
Ejemplo: encontrar el elemento máximo en un arreglo \(A\) con \(n \in \Z\) elementos enteros
Algorithm arrayMax(A, n): Input: An array A storing n ≥ 1 integers. Output: The maximum element in A. currentMax ← A[0] for i ← 1 to n − 1 do if currentMax < A[i] then currentMax ← A[i] return currentMax
Ejemplo: encontrar el elemento máximo en un arreglo \(A\) con \(n \in \Z\) elementos enteros
Algorithm arrayMax(A, n): Input: An array A storing n ≥ 1 integers. Output: The maximum element in A. currentMax ← A[0] for i ← 1 to n − 1 do if currentMax < A[i] then currentMax ← A[i] return currentMax
\(+2\) (Indexado y asignación)
\(+1\) (Asignación)
\(+2(n-1)\) (Indexado y comparación)
\(+2(n-1)\) (Indexado y asignación)
\(+1\) (Retorno)
\(+n\) (Comparación)
\(i<n\)
\(i+=1\)
\(+2(n-1)\) (Suma y asignación)
Ejemplo: encontrar el elemento máximo en un arreglo \(A\) con \(n \in \Z\) elementos enteros
Tiempo de ejecución \(t(n)\) del algoritmo arrayMax(A, n):
\(2 + 1 + n + 4(n − 1) + 1 = 5n\)
\(2 + 1 + n + 6(n − 1) + 1 = 7n-2\)
Mejor caso
Peor caso
cuando \(A [0]\) es el elemento máximo, por lo que la variable \(currentMax\) nunca se reasigna
cuando los elementos se ordenan en orden creciente, de modo que la variable \(currentMax\) se reasigna en cada iteración del bucle \(for\).
Sintáxis <- estructura de la oración
Morfología <- forma de palabras
Semántica <- significado de palabras
Categorías gramaticales o sintácticas
a.k.a. partes de la oración (parts of speech, POS)
\(\text{sustantivo}\): personas, animales, conceptos y cosas.
\(\text{adjetivo}\): propiedades de los \(\text{sustantivos}\)
\(\text{verbo}\): expresa una acción tomada
\(\text{El}\) \(\text{perro}\) \( \begin{Bmatrix} astuto \\ inteligente \\ intrépido \\ dots \end{Bmatrix} \) \(\text{está}\) \(\text{en el parque}\)
Ejemplo:
\(sustantivo\) \(+\) \(adjetivo\) \(+\) \(verbo\)
Oración:
Clases de palabras
\(\text{There}\) \(\text{is}\) \(\text{a}\) \(\text{sweet}\) \(\text{candy}\)
Muchas palabras pueden tener muchas POS:
\(\text{Too much boiling will}\) \(\text{candy}\) \(\text{the}\) \(\text{molasses}\)
verbo
sustantivo
Categorías gramaticales o sintácticas
Categorías léxicas o sintácticas
Categorías abiertas o léxicas:
aquellas como sustantivos, verbos y adjetivos que tienen varios miembros (clases) y a las que comúnmente se agregan nuevas palabras.
Categorías cerradas o funcionales:
tales como preposiciones y determinantes que tienen sólo unos pocos miembros, y los miembros de los cuales normalmente tienen un uso gramatical claro.
Las distintas partes del discurso de una palabra se enumeran en un diccionario, también conocido como léxico (lexicon).
Esquemas de marcado gramatical
<p><s>And then he left.</s>
<s>He did not say another word.</s></p>
Categorías léxicas o sintácticas
SGML (Standard Generalized Markup Language) es un lenguaje general que permite definir una gramática para los textos.
POS tags
Categorías léxicas o sintácticas
Categorías de palabras (morfología)
En cualquier texto dado, encontraremos palabras y formas de palabras que no hemos visto antes y que no están en nuestro diccionario precompilado.
Muchas de estas nuevas palabras están relacionadas morfológicamente con palabras conocidas. Entonces, si entendemos los procesos morfológicos, podemos inferir mucho sobre las propiedades sintácticas y semánticas de las palabras nuevas.
Sintáxis
Morfología
Semántica
Categorías de palabras (morfología)
Morfemas léxicos o lexemas
Construcción teórica que representa el significado unitario y las propiedades sintácticas compartidas de un grupo de formas de palabras.
Datos
Inferencia
\(P(x|x_1)\)
iid
Modelo de lenguaje (language modeling)
El perro callejero está a punto de _____
predecir la siguiente palabra
Aplicaciones:
Modelo de lenguaje (language modeling)
El perro callejero está a punto de _____
predecir la siguiente palabra: clasificación
suposiciones de independencia:
en los datos o, no hay dependencia entre características, o la dependencia es lo suficientemente menor como para que podamos ignorarla.
\(sustantivo\) \(+\) \(adjetivo\) \(+\) \(verbo\)
Modelo de lenguaje (language modeling)
\(P(w_{n}|w_1,\dots,w_{n-1})\)
Modelo n-gram
\(P(w_{n}|w_{n-1})\)
\(P(\text{the}|\text{its water is so transparent that})=\frac{C(\text{its water is so transparent the})}{C(\text{its water is so transparent that})}\)
Ejemplo:
Markov assumption
Función de probabilidad
Frecuencia
Modelo de lenguaje (language modeling)
\(P(w_{n}|w_1,\dots,w_{n-1})\)
Modelo n-gram
\(P(w_{n}|w_{n-1})\)
\(P(\text{the}|\text{its water is so transparent that})=\frac{C(\text{its water is so transparent the})}{C(\text{its water is so transparent that})}\)
Ejemplo:
Markov assumption
Función de probabilidad
Frecuencia
Modelo de lenguaje (language modeling)
Estimación por máxima verosimilitud (Maximum Likelihood Estimation, MLE)
\(P_{\text{MLE}}(w_1,\dots,w_{n-1})=\frac{C(w_1,\dots,w_n)}{N}\)
\(P_{\text{MLE}}(w_{n}|w_1,\dots,w_{n-1})=\frac{C(w_1,\dots,w_n)}{C(w_1,\dots,w_{n-1})}\)
Estimadores estadísticos
El espacio de todas las posibles asignaciones de parámetros dentro de una determinada distribución dados los datos
Léxico:
Símbolos que se pueden usar en un lenguaje.
Sintáxis:
Reglas sintácticas que especifican la secuencia de símbolos que forman una oración en un lenguaje.
Esa persona puede correr rápido.
\(sustantivo\) \(+\) \(adjetivo\) \(+\) \(verbo\)
Sintáxis
Léxico
{persona, poder, correr, rápido}
Ejemplo: en la oración
Gramática: descripción y explicación de la estructura de una lengua
Morfema: unidad mínima de expresión lingüística y significado gramatical, que se une al lexema/gramema para formar una palabra.
Lexema:
Gramema:
gato: \(\text{gat}\)+\(\text{o}\)
lexema de género masculino
gato: \(\text{gat}\)+\(\text{itos}\)
mofema de pluralidad
morfema
morfema