Вы находитесь на странице: 1из 7

INDICE GENERAL

INFORME DEL TRABAJO ................................................................................................................ 1


TEMA: DESARROLLO DE LOS ALGORITMOS DE PORTER Y DE BRILL ............................................. 1
I. INFORMACIÓN GENERAL ................................................................................................... 1
Objetivos ............................................................................................................................... 1
Equipos, materiales, programas y recursos utilizados .......................................................... 1
II. MARCO TEORICO ............................................................................................................... 1
A. Algoritmo de Porter ...................................................................................................... 1
B. Algoritmo de Brill.......................................................................................................... 4
CONCLUSIONES ......................................................................................................................... 5
RECOMENDACIONES ............................................................................................................. 6
BIBLIOGRAFIA ........................................................................................................................ 6
WEBGRAFIA ........................................................................................................................... 6
INFORME DEL TRABAJO

TEMA: DESARROLLO DE LOS ALGORITMOS DE PORTER Y DE


BRILL

I. INFORMACIÓN GENERAL
Objetivos
Explicar el algoritmo de Porter para la lematización de palabras.

Explicar el algoritmo de Brill para el etiquetado de palabras.

Equipos, materiales, programas y recursos utilizados


- Windows 10 de 32 o 64 bits.
- Python 3.6,Spyder 3.6
- Anaconda3-5.1.0
- NLTK 3.3

II. MARCO TEORICO


A. Algoritmo de Porter
El algoritmo de Porter es un proceso para remover los sufijos comunes morfológicos e
inflexionales de las palabras en inglés. Se usa como un proceso de normalización que
usualmente se realiza para establecer un sistema de recuperación de información. El paper
desde algoritmo fue elaborado en 1967, como parte de un proyecto de recuperación de
información, existen actualmente algoritmos de porter especializados a otros leguajes como el
español.
La lematización de corpus textuales (sobre todo en inglés) ha tenido un avance
considerable a partir de la implementación del Algoritmo de Porter.
Martin Porter desarrollo un algoritmo que, automáticamente, permite identificar asociar
la raíz (o stemmer) de un conjunto de palabras similares.
El algoritmo de derivación de Porter es un proceso para eliminar sufijos de las
palabras. Eliminar sufijos automáticamente es una operación que es especialmente útil en el
campo de la recuperación de información. En un típico entorno IR (Recuperación de
Información), un documento está representado por un vector de palabras o términos. Los
términos con una raíz común tienen generalmente significados similares, por ejemplo:

Work Working Worked

1
Con frecuencia, el rendimiento de un sistema de IR mejorará si los grupos de términos
como este se combinan en un solo término. Esto se puede hacer eliminando los distintos sufijos
–ED, -ING, -ION, IONS para salir de solo el término Work. Además, el proceso de eliminación de
sufijos reducirá la cantidad total de términos en el Sistema IR, y por lo tanto reducir el tamaño y
la complejidad de los datos en el sistema, que siempre es ventajoso.

Por lo general, se desea que solo se eliminen los morfemas flexivos, los
correspondientes a las declinaciones, conjugaciones, etc., no también morfemas derivativos (que
corresponden a diferentes partes del habla).
El algoritmo de Porter no cumple esto. Uno puede hacer su propio conjunto de reglas
(para cualquier idioma). Su ventaja es su simplicidad y velocidad.

El algoritmo de Porter se hizo suponiendo que no tenemos un diccionario raíz y que el


propósito de la tarea es mejorar el rendimiento IR, no como un ejercicio lingüístico. El programa
recibe una lista explícita de sufijos, y, con cada sufijo, el criterio bajo el cual se puede eliminar de
una palabra para dejar una raíz válida.

Tal vez el mejor criterio para eliminar sufijos de dos palabras W1 y W2 para producir un
único tallo S, es decir que lo hacemos sí parece que no hay diferencia entre las dos
declaraciones.La tasa de éxito para la eliminación de sufijos será significativamente menor al
100%, independientemente de cómo el proceso es evaluado.

Las reglas típicas del algoritmo de Porter son:


Paso 1a:
SSES -> SS caresses -> caress
IES -> I ponies -> poni
ties -> ti
SS -> SS caress -> caress
S -> cats -> cat

Paso 1b:
(m>0) EED -> EE feed -> feed
agreed -> agree
(*v*) ED -> plastered -> plaster
bled -> bled
(*v*) ING -> motoring -> motor
sing -> sing
Paso 2:
(m>0) ATIONAL -> ATE relational -> relate
(m>0) TIONAL -> TION conditional -> condition
rational -> rational
(m>0) ENCI -> ENCE valenci -> valence
(m>0) ANCI -> ANCE hesitanci -> hesitance
(m>0) IZER -> IZE digitizer -> digitize
(m>0) ABLI -> ABLE conformabli -> conformable
(m>0) ALLI -> AL radicalli -> radical
(m>0) ENTLI -> ENT differentli -> different

2
(m>0) ELI -> E vileli - > vile
(m>0) OUSLI -> OUS analogousli -> analogous
(m>0) IZATION -> IZE vietnamization -> vietnamize
(m>0) ATION -> ATE predication -> predicate
(m>0) ATOR -> ATE operator -> operate
(m>0) ALISM -> AL feudalism -> feudal
(m>0) IVENESS -> IVE decisiveness -> decisive
(m>0) FULNESS -> FUL hopefulness -> hopeful
(m>0) OUSNESS -> OUS callousness -> callous
(m>0) ALITI -> AL formaliti -> formal
(m>0) IVITI -> IVE sensitiviti -> sensitive
(m>0) BILITI -> BLE sensibiliti -> sensible

Paso 3:
(m>0) ICATE -> IC triplicate -> triplic
(m>0) ATIVE -> formative -> form
(m>0) ALIZE -> AL formalize -> formal
(m>0) ICITI -> IC electriciti -> electric
(m>0) ICAL -> IC electrical -> electric
(m>0) FUL -> hopeful -> hope
(m>0) NESS -> goodness -> good

Paso 4:
(m>1) AL -> revival -> reviv
(m>1) ANCE -> allowance -> allow
(m>1) ENCE -> inference -> infer
(m>1) ER -> airliner -> airlin
(m>1) IC -> gyroscopic -> gyroscop
(m>1) ABLE -> adjustable -> adjust
(m>1) IBLE -> defensible -> defens
(m>1) ANT -> irritant -> irrit
(m>1) EMENT -> replacement -> replac
(m>1) MENT -> adjustment -> adjust
(m>1) ENT -> dependent -> depend
(m>1 and (*S or *T)) ION -> adoption -> adopt
(m>1) OU -> homologou -> homolog
(m>1) ISM -> communism -> commun
(m>1) ATE -> activate -> activ
(m>1) ITI -> angulariti -> angular
(m>1) OUS -> homologous -> homolog
(m>1) IVE -> effective -> effect
(m>1) IZE -> bowdlerize -> bowdler

3
B. Algoritmo de Brill

El algoritmo de Brill es un etiquetador basado en reglas que se desempeña con igual


eficiencia que los modelos probabilísticos, obviando las limitaciones comunes de los enfoques
basados en reglas. Las reglas se asumen automáticamente. Se requiere menos información
almacenada, menos reglas, y se facilita encontrar e implementar mejoras al etiquetado y al
traslado de un conjunto de etiquetas o género de corpus a otro. El algoritmo funciona
encontrando automáticamente las reglas de etiquetado y reparando su debilidad, por lo que
mejora su rendimiento.

El sistema requiere de un corpus previamente etiquetado para entrenar al algoritmo. Se


utiliza el 90% para el proceso descrito a continuación, 5% para la selección de los parches (reglas
de etiquetado manuales) que arrojan menos resultados y 5% para pruebas.

El etiquetador inicia asignando al corpus de trabajo la etiqueta POS más probable de


acuerdo con el corpus de entrenamiento, sin considerar información contextual; toma en cuenta
las palabras que inician con mayúscula como nombres propios. Las palabras que le son
desconocidas de acuerdo con el corpus de entrenamiento las etiqueta de acuerdo con las 3
últimas letras de las mismas.

El etiquetado anterior arroja resultados cercanos al 90% se procede al análisis de los


errores etiquetando el 5% del corpus de entrenamiento (corpus de parches) con las categorías
encontradas y comparándolas con las que ya fueron asignadas por un experto. Con los errores
encontrados se procede a aplicar una serie de reglas (parches) previamente elaboradas que
alimentan al sistema.

Se aplican dichos parches y se compara cuántos errores se corrigieron; el sistema repite


este proceso hasta encontrar cuáles son las reglas que eliminan la mayor cantidad de errores y
las guarda.

Posteriormente, cuando se inserta al sistema un texto no etiquetado, se procede


etiquetando primero con las categorías gramaticales más probables y después aplicando cada
parche, en orden, hasta producir la salida final.

El etiquetado tiene la particularidad de elegir solamente las mejores reglas para el


etiquetado, por lo que permite ingresar una gran cantidad de reglas sin que se afecte el
resultado final, lo que facilita la elección de las reglas más sencillas y más efectivas para el
etiquetador.

4
El etiquetador Brill es portátil. Es transferible a otros conjuntos de etiquetas o géneros
y a otros idiomas. Si el etiquetador se utilizara en un corpus diferente se encontraría un conjunto
distinto de parches adecuado. En este etiquetador basado en reglas, la información se captura
con menos de ocho reglas, facilitado el desarrollo posterior del etiquetador. La información
contextual se expresa de manera compacta (Brill, 1992).

El algoritmo de Brill se fundamenta en el aprendizaje basado en transformaciones y


dirigido por el error. Este algoritmo consta de los siguientes módulos:

Etiquetador léxico.
Cada palabra se etiqueta inicialmente con su etiqueta más probable No se tiene en
cuenta el contexto en el que aparece .
Palabras desconocidas:
- Sustantivo propio si la primera letra es mayúscula
- Sustantivo común en otro caso
Etiquetador de palabras desconocidas
Intenta adivinar una etiqueta para una palabra desconocida en función de su sufijo, de
su prefijo, y de otras propiedades relevantes similares.
Cada transformación consta de dos partes una descripción del contexto de aplicación
una regla de reescritura que reemplaza una etiqueta por otra.
Etiquetador contextual
El etiquetador contextual actúa justo después del etiquetador de palabras
desconocidas.
Aplica en orden una secuencia de reglas contextuales que han sido aprendidas de
manera automática a partir del corpus de entrenamiento.

CONCLUSIONES

El algoritmo de Porter consta 4 reglas básicas las cuales nos ayuda en la normalización
o generación de lexemas al momento de preprocesamiento de los datos de un corpus lingüístico.

El algoritmo de Brill tiene su fundamento en el aprendizaje basado en transformaciones


y dirigido por el error, consta de 3 pasos las cuales ayudan en el etiquetado de corpus
lingüísticos.

5
RECOMENDACIONES

Podemos usar ambos algoritmos en conjunto como parte del preprocesamiento cuando
trabajamos en un proyecto de procesamiento de lenguaje natural.

BIBLIOGRAFIA
- Newell, A., Langer, S., and Hickey, M. (1998). The role of natural language
processing in alternative and augmentative communication. Natural Language Engineering.
- Bellegarda, J. R. (2004). Statistical language model adaptation: Review and
perspectives. Speech Communication.

WEBGRAFIA

Sparck Jones, Karen, and Peter Willet, 1997, Readings in Information Retrieval, San
Francisco: Morgan Kaufmann: https://tartarus.org/martin/PorterStemmer/index-old.html

Вам также может понравиться