Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Indice
1 Introducci
on
2 Morfologa
3 Correcci
on de errores
4 N-grams
5 Tagging
6 Context-Free Grammar (CFG)
2/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Introduccion
Definicion
Natural - Para quien?
Language - Dice cosas, aunque quizas no las entiendas
Processing - Haz todo lo que puedas para darme mucho
Aplicaciones
Extracci
on de informaci
on
Motores de b
usqueda
Traducci
on
Sistemas de reconocimiento de voz
Interfaces
Clasificaci
on de textos
etc.
3/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Introduccion
Competiciones Kaggle
EMC Israel Data Science Challenge ($10,000)
CPROD1: Consumer products contest 1 ($10,000)
Heritage Health Prize ($3,000,000)
The Hewlett Foundation: Short Answer Scoring ($100,000)
The Hewlett Foundation: Automated Essay Scoring ($100,000)
GigaOM WordPress Challenge ($10,000)
Detecting Insults in Social Commentary ($10,000)
Facebook 2 - Mapping the Internet
4/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Descripcion
Estudio de la formaci
on de las palabras a partir de morfemas.
Tipos
Inflectional - Palabras con misma raz, manteniendo el tipo de palabra
resultante.
Derivational - Fusi
on de raz + morfema que forman una palabra de
diferente tipo.
Aplicaciones
Parsing morfol
ogico - Descomposici
on en estructuras simples (raz,
prefijos, sufijos, afijos, tiempo verbal, etc).
Reducir tiempo de b
usqueda, an
alisis o agregaci
on de palabras.
Reducir almacenamiento.
Stemming - B
usqueda de las races de las palabras.
Clasificar POS de cada palabra
5/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Reconocimiento morfologico
Comprobar si una palabra pertenece al lenguaje o no
Se necesita
Lexico - Conjunto de posibles races y afijos
Morphotactics - Reglas que indican que morfemas puedes seguir a otros
Reglas ortograficas o de spelling - Modelar cambios en los morfemas
cuando estos se unen
Representacion de la morfologa
Bruta - Cada posible palabra por separado
Aut
omatas de estados finitos
6/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Parsing morfologico
Transformar una palabra en su raz mas modificadores y vice.
Finite State Transducer (FST)
Q - Estados
- Conjunto de pares mapeados (i:o)
(q, i : o) - Funci
on de transici
on
Propiedades
Inversi
on - Intercambio de alfabetos de entra y salida
Composici
on - Se pueden concatenar para formar un FST mas complejo
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Descripcion
Objetivo
Detectar y/o corregir palabras que probablemente esten mal por otras
que probablemente esten mejor.
Aplicaciones
Optical character recognition (OCR)
Handwriting recognition
Dise
no de interfaces
Tipos
Detecci
on de errores en palabras desconocidas
Correcci
on de palabras desconocidasde manera ciega
Detecci
on y correcci
on basada en contexto
8/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Errores simples
9/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Errores multiples
10/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Descripcion
Objetivo
Predecir siguiente palabra
Calculo de probabilidades
Aplicaciones
Reconocimiento de voz, escritura
Comunicaci
on aumentativa para discapacitados
Detecci
on de errores de spelling severos
Metodos
Unsmoothed N-grams
Smoothed N-grams = Unsmoothed + Smoothing technique
11/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Unsmoothed N-grams
Estimaciones
P(wi ) = 1/M
P(wi ) = c(wi )/M
i1
P(wi /wiN
)=
i
c(wiN
)
i1
c(wiN )
i
Que pasa si c(wiN
) = 0?
12/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Smoothing techniques
Add-one
c(wi ) + 1
M +V
V - N
umero de palabras distintas (types) posibles
Problema: Demasiada probabilidad de palabras nunca observadas
P(wi ) =
Written-Bell Discounting
T - N
umero de types vistas
Z - N
umero de types con ci = 0
X
T
P(wi ) =
T +M
ci =0
ci = 0
+ T)
P(wi ) = Z (M
c
i
ci > 0
M +T
13/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Smoothing techniques
Written-Bell Discounting
T (wi1 ) - N
umero de types vistas que empiezan por wi1
Z (wi1 ) - N
umero de types con ci = 0 que empiezan por wi1
X
T (wi1 )
P(wi /wi1 ) =
T (wi1 ) + M(wi1 )
c(wi1 ,wi )=0
T (wi1 )
c(wi1 , wi ) = 0
c(wi1 , wi ) > 0
M(wi1 ) + T (wi1 )
14/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Smoothing techniques
Good-Turing Discounting
Nc - N de bigrams que aparecen c veces
Nc+1
c = (c + 1)
Nc
Cambiando c por c
c
P(wi ) = P
j cj
Deleted Interpolation
i /wi1 ) = 1 (wi1 )P(wi /wi1 , wi ) + 2 (wi1 )P(wi )
P(w
con
P
i >= 0, i i = 1
i estimadas mediante ML con EM en Hold-out corpus
15/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Smoothing techniques
Katz Back-off
i
i
Si c(wiN
) = 0, uso c(wiN+1
)
Utilizando alg
un
m
e
todo
de
discounting
c (wi , wi1 )
c(wi1 )
i /wi1 ) =
P(w
P(wi )
(wi1 ) P
c(wi )=0 P(wi )
donde
X
c (wi1 , wi )
(wi1 ) = 1
c(wi1 )
c(wi1 , wi ) > 0
eoc
16/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Definicion
Objetivo
Determinar el POS de cada palabra de una sentencia
Aplicaciones
Paso inicial al analisis sintactico
Sintetizadores de voz
Eliminar ambig
uedad del significado de palabras
Tipos de algoritmos
Rule-based
Stochastic
Transformation-based
17/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
18/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Transformation-based Tagger
Rule-based tagger
Diccionario para posibles tags de cada palabra
Conjunto de reglas manuales
Transformation-based tagger
Igual a rule-based, pero aprendiendo las reglas (supervisado)
Esbozo
1 Etiquetar con el tag m
as probable (corpus)
2 Aprender reglas de cambio (de general a especfico)
19/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Palabras desconocidas
20/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Definicion
P - Reglas de producci
on del lenguaje
A donde A N y N, d
A w donde A y w una palabra del alfabeto
S - Smbolo de inicio
21/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Ejemplo CFG
Reglas P
S NP VP
NP Det Noun
VP Verb NP
Det el | un
Noun conductor | perro
Verb atropello
Sentencias
el conductor atropell
o un perro
un conductor atropell
o un perro
un conductor atropell
o el perro
el perro atropello un conductor
22/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Parsing
Objetivo
Analizar una sentencia y asignarle una estructura sintactica en base a
unas reglas CFG
Aplicaciones
Comprobaci
on de errores gramaticales
Traducci
on
Respuestas automaticas
Algoritmos
Top-Down Parsing
Bottom-Up Parsing
Earley Algorithm
23/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Earley Algorithm
Basado en programaci
on dinamica
Construccion de N+1 tablas (charts)
N - N
umero de palabras de la sentencia
Regla, [n1 , n2 ]
n1 - Posici
on de la regla en la sentencia
n2 n1 - Posici
on siguiente a analizar en la regla
24/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Earley Algorithm
Analisis iterativo sobre los charts y sus elementos
Predictor
Actualiza chart actual
Analiza reglas A B, [i, j] con B
/ POS
A
nade todas las reglas B mediante B , [i, j]
Scanner
Actualiza chart siguiente
Analiza reglas A B, [i, j] con B POS[word[j]]
A
nade las reglas B word[j], [j, j + 1]
Completer
Actualiza chart actual
Analiza reglas completas B , [j, k]
A
nade todas las reglas en chart j que cumplen A B, [i, k]
25/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Earley Algorithm
26/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Earley Algorithm
27/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
28/ 29
Introducci
on
Morfologa
Correcci
on de errores
N-grams
Tagging
Bibliografa
29/ 29