Title: Tema 3. Operaciones sobre el texto
1Tema 3.Operaciones sobre el texto
- Sistemas de Gestión Documental
2Introducción
- No todas las palabras son igualmente importantes
en un texto para representar su significado. - Es necesario considerar un preprocesamiento del
texto antes de indexarlo. - El preprocesamiento debe determinar los términos
que deben ser índices. - Durante el preprocesamiento, se realizarán
algunas operaciones sobre el texto de forma
adicional, para mejorar la indexación.
3Introducción
- Las operaciones principales que podemos encontrar
son - Análisis léxico
- Eliminación de palabras vacías
- Stemming
- Selección de términos índice
- Construcción de estructuras de categorización de
términos (tesauros, ...)
4Introducción
- No obstante, el preprocesamiento puede acarrear
situaciones no deseadas - Buscamos el patrón la casa de Pedro. ? Si no
hemos indexado palabras vacías, no podremos
recuperar textos con este patrón. - La recuperación puede ser más difícil de entender
para el usuario si se aplica preprocesamiento. - Algunos sistemas (buscadores web) no realizan
preprocesamiento, sacrificando rendimiento por
velocidad y simplicidad en las tareas de
búsquedas.
5Preprocesamiento
6Análisis léxico
- Consiste en convertir una secuencia de caracteres
en una secuencia de palabras. - Las palabras serán los candidatos a índices.
- La separación de palabras vendrá dada por
- Espacios en blanco
- Dígitos
- Guiones
- Signos de puntuación
- Distinción de mayúsculas y minúsculas
7Análisis léxico
- Los números (dígitos) no son buenos candidatos a
índices son muy vagos en significado. - Sin embargo, hay casos en los que pueden ser
importantes - Los dígitos pueden aparecer combinados con
caracteres, por ejemplo, 256 a.c. Las fechas
pueden ser importantes. - Los números de una tarjeta de crédito pueden ser
importantes - ...
- La solución puede ser no considerar secuencias de
dígitos, a no ser que sigan expresiones regulares.
8Análisis léxico
- La consideración de guiones presenta también
problemas - Se puede separar una palabra que contenga guiones
en palabras componentes (state-of-the-art state
of the art). - Pero hay palabras en las que los guiones son
relevantes (B-49). - Existe la posibilidad de que un guión enlace dos
partes de una misma palabra (fin de línea). - La solución puede ser aplicar una regla general,
y considerar las excepciones.
9Análisis léxico
- Los signos de puntuación se suelen eliminar del
texto. - Existen casos en los que los signos de puntuación
forman parte de la palabra (236 a.c.) - La eliminación de los signos, en estos casos, no
presenta excesivos problemas en el rendimiento de
la consulta. - Aún así, hay casos en los que la eliminación de
los signos de puntuación puede llevar a
confusiones.
10Análisis léxico
- La distinción de mayúsculas y minúsculas no
debería afectar al rendimiento de la consulta. - Lo habitual es convertir todo el texto a
mayúsculas o minúsculas. - A pesar de ello, existen escenarios en los que
conviene distinguir entre ambas.
11Análisis léxico
- La implementación de estas operaciones sobre el
texto no son difíciles de realizar. - No obstante, habrá que tener cuidado en la tarea,
puesto que pueden afectar a la recuperación y al
tiempo empleado. - Se pueden obviar estas tareas, si bien no está
comprobado que la no utilización de las mismas
sea producente o contraproducente.
12Palabras vacías
- Las palabras que son muy frecuentes en los
documentos no ayudan a discriminar. - Dentro de este conjunto se hallan palabras que
carecen de significado por ellas mismas, como
artículos, preposiciones, conjunciones, etc. - La eliminación de estas palabras reducirá el
tamaño de la estructura del índice empleado (por
ejemplo 40).
13Palabras vacías
- Algunos verbos, adverbios y adjetivos pueden
estar incluidos en las listas de palabras vacías,
aunque tengan significado. - La eliminación de este tipo de palabras puede
llevar a, por ejemplo, no poder encontrar ser o
no ser, esa es la cuestión.
14él ésta éstas éste éstos última últimas último últ
imos aañadió aún actualmente adelante además afir
mó agregó ahíahora al algún algo alguna algunas a
lguno algunos alrededorambos ante anterior antes
apenas aproximadamente aquí asíaseguró aunque aye
r bajo bien buen buena buenas bueno buenoscómo ca
da casi cerca cierto cinco comentó como con conoce
rconsideró considera contra cosas creo cual cuale
s cualquiercuando cuanto cuatro cuenta da dado da
n dar de debedeben debido decir dejó del demás de
ntro desde después dicedicen dicho dieron diferen
te diferentes dijeron dijo diodonde dos durante e
ejemplo el ella ellas ello ellosembargo en encue
ntra entonces entre era eran esesa esas ese eso e
sos está están esta estaba estabanestamos estar e
stará estas este esto estos estoy estuvo exexiste
existen explicó expresó fin fue fuera fueron gran
grandesha había habían haber habrá hace hacen ha
cer hacerlo haciahaciendo han hasta hay haya he h
echo hemos hicieronhizo hoy hubo igual incluso in
dicó informó junto la ladolas le les llegó lleva
llevar lo los luego lugarmás manera manifestó may
or me mediante mejor mencionómenos mi mientras mi
sma mismas mismo mismos momento muchamuchas mucho
muchos muy nada nadie ni ningún ninguna ningunas
ninguno ningunos no nos nosotras nosotros nuestra
nuestras nuestro nuestros nueva nuevas nuevo nuevo
s nuncao ocho otra otras otro otros para parece p
arte partirpasada pasado pero pesar poca pocas po
co pocos podemos podrápodrán podría podrían poner
por porque posible próximo próximosprimer primer
a primero primeros principalmente propia propias p
ropiopropios pudo pueda puede pueden pues qué que
quedó queremosquién quien quienes quiere realizó
realizado realizar respectosí sólo se señaló sea
sean según segunda segundo seisser será serán se
ría si sido siempre siendo siete siguesiguiente s
in sino sobre sola solamente solas solosolos son
su sus tal también tampoco tan tanto teníatendrá
tendrán tenemos tener tenga tengo tenido tercera t
iene tienentoda todas todavía todo todos total tr
as trata través trestuvo un una unas uno unos ust
ed va vamos vanvarias varios veces ver vez y ya y
o
15Analizador léxico y stopwords
- Implementación
- Utilizar un generador de analizadores léxicos
(lex en unix) - Crear un analizador léxico a mano y ad hoc
- Crear un analizador léxico a mano como un
autómata de estados finitos - El mejor es el primero, para casos complicados.
El tercero sería el siguiente, si el analizador
es simple. El segundo sería muy costoso.
16Analizador léxico y stopwords
- La implementación del tratamiento de las
stopwords se puede realizar de dos maneras - Examinar la salida del analizador léxico y
eliminar las palabras de la lista de stopwords
(problema de búsqueda). - Eliminar las stopwords como parte del proceso del
analizador léxico. - La segunda aproximación es más eficiente, y se
puede implementar de forma sencilla con
generadores de analizadores léxicos.
17Stemming
- Variaciones sintácticas de una palabra
- En la consulta aparece una palabra, pero en los
documentos aparecen variantes sintácticas de la
palabra. - Solución obtener la raíz de la palabra y
sustituirla por las palabras. - Se consigue obtener un concepto común desde las
variantes de una palabra ? se mejora el
rendimiento (exhaustividad). - Además se reduce el tamaño de los índices.
18Stemming
- Existe controversia sobre la verdadera utilidad
del stemming. Los experimentos no ayudan a ver
una clara conclusión. - El problema de aplicar stemming es que se pierde
información sobre la palabra completa, o se
necesita espacio adicional para almacenar esa
información. - Algunos sistemas web desechan esta posibilidad de
stemming. - Existen varias posibilidades para aplicar
stemming eliminación de afijos (prefijos y
sufijos), tablas de búsqueda, variedad de
sucesores y n-gramas.
19Stemming
- Criterios para evaluar los stemers
- Corrección, efectividad de la recuperación,
compresión - Aplicable en la indexación de documentos o en
tiempo de consulta. - Hasta donde llegar
- Overstemming ? se elimina gran parte de la
palabra las búsquedas pueden dar resultados
indeseados. - Understemming ? se elimina poca porción de la
palabra se pueden perder en una búsqueda
documentos relevantes.
20Stemming
- Eliminación de afijos
- Es intuitivo, simple, y de fácil implementación.
- Es más importante la eliminación de sufijos que
la de prefijos. - Existen varios algoritmos para su implementación.
El más famoso para lengua inglesa es el de
Porter. - Básicamente, se trata de aplicar reglas siguiendo
un cierto orden, para sustituir sufijos por otras
subcadenas o cadenas vacías.
21Stemming
- Tablas de búsqueda
- Se busca la raíz de una palabra en una tabla.
- Depende de los datos que se tengan de la raíz
para el idioma. - Puede no resultar práctico debido a la falta de
información sobre las raíces de los términos y el
espacio de almacenamiento que necesita. - No se puede aplicar para palabras específicas o
que no estén en el idioma para el que se tiene la
tabla.
22Stemming
- Variedad de sucesores
- Se basa en la determinación de las fronteras de
los morfemas. - Utiliza cierto conocimiento de la lingüística
estructural. - Es más complejo que la eliminación de prefijos y
sufijos. - La variedad de sucesores de una cadena es el
número de caracteres diferentes que la siguen en
las palabras de un texto.
23Stemming
- Ejemplo de variedad de sucesores
Texto
able, axle, accident, ape, about
Palabra
apple
Variedad desucesores
a ? 4 (b, x, c, p)ap ? 1 (e)app ? 0appl ?
0apple ? 0
24Stemming
- Cuando el texto es lo suficientemente largo
(gt2000 palabras), se produce que - Tomando una subcadena, a medida que se añaden
caracteres, disminuye la variedad de sucesores. - Llegado a un punto determinado (cantidad de
caracteres de la subcadena), la variedad de
sucesores comienza a aumentar. - Este es el punto que marca cual es la raíz de la
palabra.
25Stemming
- Metodos de corte para la variedad de sucesores
- Cutoff. Seleccionar un valor de corte fijo.
- Peak and plateau. El corte se produce en el
carácter para el que la variedad de sucesores
excede la inmediatamente anterior y a la
inmediatamente siguiente. - Complete word. El corte se produce en el segmento
que coincide con una palabra en el texto. - Entropy. Considera la distribución de variedades
de sucesores. Es un cálculo matemático.
26Stemming
- Se debe elegir el segmento que es la raíz
- Si el primer segmento aparece en menos de 12
palabras, es probable que sea la raíz. - En caso contrario, es posible que el primer
segmento sea un prefijo, con lo que se debe
seleccionar el segundo segmento como raíz de la
palabra. - Ninguno de los métodos es perfecto.
27Stemming
- Ejemplo de variedad de sucesores
Texto
able, ape, beatable, fixable, read,
readable,reading, reads, red, rope, ripe
Palabra
readable
PREFIJO VARIEDAD DE SUCESORES LETRASR 3 E,
I, ORE 2 A, DREA 1 DREAD 3 A, I,
SREADA 1 BREADAB 1 LREADABL 1 EREAD
ABLE 1 BLANCO
28Stemming
- N-gramas
- Se basa en la identificación de digramas y
trigramas. - Es más un procedimiento de clustering de términos
que de stemming (no se produce corte de
palabras). - Puesto que se pueden usar digramas, trigramas,
etc., se la ha llamado método de los n-gramas.
29Stemming
dirigir ? di ir ri ig gi irdireccion
? di ir re ec cc ci io ondirector
? di ir re ec ct to orescena ? es
sc ce en naescenario ? es sc ce en
na ar ri iocenar ? ce en na ar
A Número de digramas únicos en la primera
palabraB Número de digramas únicos en la
segunda palabraC Número de digramas únicos
compartidos por la primera y segunda palabras
30Stemming
Dirigir Dirección Director Escena Escenario Cenar
Dirigir -
Dirección -
Director -
Escena -
Escenario -
Cenar -
31Stemming
Dirigir Dirección Director Escena Escenario Cenar
Dirigir -
Dirección 0.30 -
Director 0.30 0.53 -
Escena 0 0 0 -
Escenario 0.15 0.13 0 0.77 -
Cenar 0 0 0 0.67 0.67 -
32Ejercicios
1. Dado el texto con las siguiente
palabras armario, armas, armazón, vencer,
derrota, valentía, venerado, destrozar,
descubrir, desestimar, descolgar, construir,
derribar, derrocar, desarme, armada,
vencimiento Aplicar el método de peak and
plateau y el complete word para obtener la raíz
de las palabras desarmar, armamento, vencido
(Nota tomar como límite de prefijos el valor
4) 2. Utilizando el método de los n-gramas
(usando digramas), calcular las similitudes para
las palabras colocar, colocación, coloso,
vocación, evocación, gesto.