Tratamiento Automático de Reglas Ortográficas para la Detección y

Anuncio
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Tratamiento Automático de Reglas Ortográficas
para la Detección y Corrección de Errores
Brian Plüss
Laura Pomponio
Universidad Nacional de Rosario
Facultad de Ciencias Exactas, Ingenierı́a y Agrimensura
Departamento de Computación
{bpluss,pomponio}@fceia.unr.edu.ar
11 de septiembre de 2008
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Contenidos
1
Introducción
2
Reglas Ortográficas
3
El Corrector
4
Ejemplos
5
Trabajos Futuros y Conclusiones
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Motivación
La detección y corrección de errores ortográficos es un problema
importante y cotidiano.
Enfoque universal: diccionarios
Se busca la palabra en el diccionario.
Correcciones propuestas de acuerdo a una distancia.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Motivación
Problema 1: falsos errores.
Problema 2: errores no detectados.
Estas soluciones no utilizan propiedades lingüı́sticas de la
palabra y su contexto.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Propuesta
Propuesta: atacar el problema mediante reglas que usen estas
propiedades.
¿Cuáles reglas?
Las que propone la Real Academia Española (RAE).
Análisis y clasificación según sus cualidades lingüı́sticas.
Implementación de un prototipo en Prolog.
Esbozo de una arquitectura que integre el corrector a editores de
texto y haga uso de herramientas auxiliares.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Propuesta
Propuesta: atacar el problema mediante reglas que usen estas
propiedades.
¿Cuáles reglas?
Las que propone la Real Academia Española (RAE).
Análisis y clasificación según sus cualidades lingüı́sticas.
Implementación de un prototipo en Prolog.
Esbozo de una arquitectura que integre el corrector a editores de
texto y haga uso de herramientas auxiliares.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Formuladas para su uso por humanos.
Resuelven ambigüedades con información adicional sobre a
palabra.
Quien escribe posee esa información, lo que permite su
aplicación.
Ejemplos:
(Se escriben con b) Las terminaciones -aba, -abas, -ábamos,
-abais, -aban del pretérito imperfecto de indicativo de los verbos
de la primera conjugación. Ejemplos: cantaba, bajabas, amaban.
Terminaciones, conjugación: morfologı́a.
(Se escriben con b) Las que contienen el elemento compositivo
bio-, -bio (‘vida’). Ejemplos: biografı́a, biosfera, anaerobio,
microbio.
Significado (‘vida’): semántica.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Formuladas para su uso por humanos.
Resuelven ambigüedades con información adicional sobre a
palabra.
Quien escribe posee esa información, lo que permite su
aplicación.
Ejemplos:
(Se escriben con b) Las terminaciones -aba, -abas, -ábamos,
-abais, -aban del pretérito imperfecto de indicativo de los verbos
de la primera conjugación. Ejemplos: cantaba, bajabas, amaban.
Terminaciones, conjugación: morfologı́a.
(Se escriben con b) Las que contienen el elemento compositivo
bio-, -bio (‘vida’). Ejemplos: biografı́a, biosfera, anaerobio,
microbio.
Significado (‘vida’): semántica.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Formuladas para su uso por humanos.
Resuelven ambigüedades con información adicional sobre a
palabra.
Quien escribe posee esa información, lo que permite su
aplicación.
Ejemplos:
(Se escriben con b) Las terminaciones -aba, -abas, -ábamos,
-abais, -aban del pretérito imperfecto de indicativo de los verbos
de la primera conjugación. Ejemplos: cantaba, bajabas, amaban.
Terminaciones, conjugación: morfologı́a.
(Se escriben con b) Las que contienen el elemento compositivo
bio-, -bio (‘vida’). Ejemplos: biografı́a, biosfera, anaerobio,
microbio.
Significado (‘vida’): semántica.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Formuladas para su uso por humanos.
Resuelven ambigüedades con información adicional sobre a
palabra.
Quien escribe posee esa información, lo que permite su
aplicación.
Ejemplos:
(Se escriben con b) Las terminaciones -aba, -abas, -ábamos,
-abais, -aban del pretérito imperfecto de indicativo de los verbos
de la primera conjugación. Ejemplos: cantaba, bajabas, amaban.
Terminaciones, conjugación: morfologı́a.
(Se escriben con b) Las que contienen el elemento compositivo
bio-, -bio (‘vida’). Ejemplos: biografı́a, biosfera, anaerobio,
microbio.
Significado (‘vida’): semántica.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Formuladas para su uso por humanos.
Resuelven ambigüedades con información adicional sobre a
palabra.
Quien escribe posee esa información, lo que permite su
aplicación.
Ejemplos:
(Se escriben con b) Las terminaciones -aba, -abas, -ábamos,
-abais, -aban del pretérito imperfecto de indicativo de los verbos
de la primera conjugación. Ejemplos: cantaba, bajabas, amaban.
Terminaciones, conjugación: morfologı́a.
(Se escriben con b) Las que contienen el elemento compositivo
bio-, -bio (‘vida’). Ejemplos: biografı́a, biosfera, anaerobio,
microbio.
Significado (‘vida’): semántica.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Ejemplos:
(Se escriben con b) Las que empiezan por el elemento
compositivo bi-, bis-, biz- (‘dos’ o ‘dos veces’). Ejemplos: bipolar,
bisnieto, bizcocho.
(Se escriben con v ) Las que empiezan por el elemento
compositivo vice-, viz- o vi- (‘en lugar de’). Ejemplos:
vicealmirante, vizconde, virrey.
Sı́labas homófonas, semántica, ambigüedad: pragmática
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Las Reglas
Ejemplos:
(Se escriben con b) Las que empiezan por el elemento
compositivo bi-, bis-, biz- (‘dos’ o ‘dos veces’). Ejemplos: bipolar,
bisnieto, bizcocho.
(Se escriben con v ) Las que empiezan por el elemento
compositivo vice-, viz- o vi- (‘en lugar de’). Ejemplos:
vicealmirante, vizconde, virrey.
Sı́labas homófonas, semántica, ambigüedad: pragmática
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Lingüı́stica
Fonologı́a: determina qué secuencias de sonidos están en un
idioma.
Conceptos: fonema, sı́laba
Aplicación: separación en sı́labas, determinación de elementos
compositivos
Morfologı́a: estudia la estructura interna de las palabras.
Conceptos: categorı́as, flexiones, derivación, composición,
palabra, forma de palabra.
Aplicación: categorización, lematización.
Sintaxis: estudia la combinatoria de palabras en estructuras
superiores.
Conceptos: sintagmas, oración.
Aplicación: clasificación por análisis sintáctico, resolución de
ambigüedades.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Lingüı́stica
Fonologı́a: determina qué secuencias de sonidos están en un
idioma.
Conceptos: fonema, sı́laba
Aplicación: separación en sı́labas, determinación de elementos
compositivos
Morfologı́a: estudia la estructura interna de las palabras.
Conceptos: categorı́as, flexiones, derivación, composición,
palabra, forma de palabra.
Aplicación: categorización, lematización.
Sintaxis: estudia la combinatoria de palabras en estructuras
superiores.
Conceptos: sintagmas, oración.
Aplicación: clasificación por análisis sintáctico, resolución de
ambigüedades.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Lingüı́stica
Fonologı́a: determina qué secuencias de sonidos están en un
idioma.
Conceptos: fonema, sı́laba
Aplicación: separación en sı́labas, determinación de elementos
compositivos
Morfologı́a: estudia la estructura interna de las palabras.
Conceptos: categorı́as, flexiones, derivación, composición,
palabra, forma de palabra.
Aplicación: categorización, lematización.
Sintaxis: estudia la combinatoria de palabras en estructuras
superiores.
Conceptos: sintagmas, oración.
Aplicación: clasificación por análisis sintáctico, resolución de
ambigüedades.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Lingüı́stica
Semántica: ciencia de los significados literales.
Conceptos: léxica, textitcomposicional, mapeo cognitivo.
Aplicación: desambiguación respecto del significado absoluto.
Pragmática: trata del lenguaje en uso.
Conceptos: contexto, textitsentido común, inferencia, referencia,
interpretación, coherencia.
Aplicación: desambiguación respecto del significado en contexto.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Lingüı́stica
Semántica: ciencia de los significados literales.
Conceptos: léxica, textitcomposicional, mapeo cognitivo.
Aplicación: desambiguación respecto del significado absoluto.
Pragmática: trata del lenguaje en uso.
Conceptos: contexto, textitsentido común, inferencia, referencia,
interpretación, coherencia.
Aplicación: desambiguación respecto del significado en contexto.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Arquitectura
Gran parte de los editores populares soportan
plugins.
Ejemplos: OpenOffice.org, jEdit, Eclipse,
EditPlus, emacs,. . .
Frontera entre el editor y el corrector.
Herramientas auxiliares: tokenizers, que eliminen
signos de puntuación; alguna función de librerı́a,
que lleve las palabras a minúsculas; un
silabeador, que separe en sı́labas cada una de
las palabras; por nombrar sólo algunas.
El Corrector utiliza las reglas en la BC para tratar
cada palabra.
Cuando necesita información lingüı́stica usa
herramientas externas.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Prototipo
Implementado en Prolog.
BC con las reglas, mecanismo de inferencia y algunas de las
herramientas auxiliares parciales, implementadas ad-hoc.
No se intentó vincular el mismo a ninguna de las herramientas de
procesamiento lingüı́stico mencionadas en la arquitectura
propuesta.
Reglas clasificadas de acuerdo a la información lingüı́stica que
requerirán del usuario.
Se tratan las palabras con las letras “conflictivas”.
Excepciones tratadas en primer lugar.
Se asume que hay error y se intenta determinar qué reglas se
violaron.
Reglas con poca o nula intervención del usuario se aplican antes.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Prototipo
aplicar(X,Q):- (excepcion(X) -> (Q = X,
write(’Es excepción : \"’),
write(Q),
write(’\".’),nl,!));
((retract(buffer(_)) -> true; true),
assert(buffer(X)),
(exist_v(X) -> ((regla_b(Regla),
aplicar_reglas(Regla,Z,Y,T));
(exist_b(X) -> ((regla_v(Regla),
aplicar_reglas(Regla,Z,Y,T));
%%Si exist_v y exist_b
buffer(Q));
%%Si exist_v y NO exist_b
buffer(Q)));
%% Si NO exist_v
(exist_b(X) -> ((regla_v(Regla),
aplicar_reglas(Regla,Z,Y,T));
%%Si NO exist_v y exist_b
buffer(Q));
%% Si NO exist_v y NO exist_b
Q=X))).
aplicar_reglas(Regla,Z,Y,T):- buffer(Z),
T =.. [Regla,Z,Y], T,
write(’Aplicar regla a \"’),write(Z),
write(’\" : ’), write(T),nl,
retract(buffer(Z)),assert(buffer(Y)),fail.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Prototipo
Ejemplo:
(Se escriben con b) Las palabras acabadas en -bilidad. Ejemplos:
amabilidad, habilidad, posibilidad. Excepciones: movilidad, civilidad y
sus compuestos.
rb4(X, Y):- ((sub_atom(X,_,_,0,’vilidad’)-> H = bilidad);
(sub_atom(X,_,_,0,’vilidades’)-> H = bilidades)
) -> (atom_length(H,N),
sub_atom(X,0,_,N,Pre),
atom_concat(Pre,H,Y));
Y=X.
Al aplicar rb4, se corrige una palabra termina en -vilidad/-vilidades.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Ejemplo 1
verificabilidad.
1. f. Fil. Cualidad de verificable.
Del diccionario de la RAE. Pero. . .
Microsoft Word 2003
Mozilla Thunderbird
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Ejemplo 1
2 ?- corregir.
Ingrese una frase o una lista de palabras entre doble comilla " " y en letras minúsculas:
|: "la verificabilidad es una caracterı́stica deseable".
Aplicar regla a "verificabilidad" : rb1(verificabilidad, verificabilidad)
...
Aplicar regla a "verificabilidad" : rb17(verificabilidad, verificabilidad)
Aplicar regla a "verificabilidad" : rv1(verificabilidad, verificabilidad)
...
Aplicar regla a "verificabilidad" : rv10(verificabilidad, verificabilidad)
Aplicar regla a "deseable" : rv1(deseable, deseable)
...
Aplicar regla a "deseable" : rv10(deseable, deseable)
El resultado de la corrección es:
"la verificabilidad es una caracterı́stica deseable"
Yes
3 ?- corregir.
Ingrese una frase o una lista de palabras entre doble comilla " " y en letras minúsculas:
|: "la verificavilidad es una caracterı́stica deseable".
Aplicar regla a "verificavilidad" : rb1(verificavilidad, verificavilidad)
...
Aplicar regla a "verificavilidad" : rb4(verificavilidad, verificabilidad)
...
Aplicar regla a "verificabilidad" : rb17(verificabilidad, verificabilidad)
El resultado de la corrección es:
"la verificabilidad es una caracterı́stica deseable"
Yes
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Ejemplo 2
Tanto “vaya” como “baya” estarán en los diccionarios. Entonces. . .
Microsoft Word 2003
Mozilla Thunderbird
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Ejemplo 2
4 ?- corregir.
Ingrese una frase o una lista de palabras entre doble comilla " " y en letras minúsculas:
|: "esto no significa que baya a funcionar correctamente".
Aplicar regla a "baya" : rv1(baya, baya)
...
Aplicar regla a "baya" : rv8(baya, baya)
¿Ud. quiso escribir "vaya" en lugar de "baya"
donde "vaya" es presente subjuntivo del verbo "ir" ?(s / n) : s.
Aplicar regla a "baya" : rv9(baya, vaya)
Aplicar regla a "vaya" : rv10(vaya, vaya)
El resultado de la corrección es:
"esto no significa que vaya a funcionar correctamente"
Yes
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Trabajos futuros
Implementar más reglas.
Análisis de herramientas de procesamiento lingüı́stico y
factibilidad de integración, intervención del usuario, posibles
errores, etc.
Pruebas estadı́sticas de efectividad y comparación con
herramientas tradicionales. Corpus y scripts.
Implementación de un plugin para incorporar el corrector a algún
editor popular.
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Introducción
Reglas Ortográficas
El Corrector
Ejemplos
Trabajos Futuros y Conclusiones
Conclusiones
Propuesta alternativa para resolver un problema habitual.
Análisis de factibilidad práctica y teórica.
Posibilidad de automatización total con el uso de herramientas
de auxiliares.
¿Nunca antes abordado?
El inglés, ¿cuántas reglas ortográficas tiene?
Brian Plüss, Laura Pomponio
Tratamiento Automático de Reglas Ortográficas
Descargar