La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Suffix Tree Clustering (STC)

Presentaciones similares


Presentación del tema: "Suffix Tree Clustering (STC)"— Transcripción de la presentación:

1 Suffix Tree Clustering (STC)
Universidad de Costa Rica Maestría en Computación e Informática Recuperación de la Información Profesor: Msc. Edgar Casasola Suffix Tree Clustering (STC) Basado en el artículo: “Web Document Clustering: A Feasibility Demostration” Oscar Rivera Céspedes Carné: A37523

2 Introducción Los sistemas de RI convencionales:
Retornan una larga lista de documentos No existe relación explícita de igualdad entre los documentos Los usuarios se ven forzados a recorrer esta lista Los resultados, por lo general, poseen baja precisión El usuario recorre un bajo porcentaje de la lista. Estos factores impiden a los usuarios localizar la információn que buscan.

3 Motivación Desarrollar un algoritmo que permita agrupar los documentos
devueltos por un buscador, como respuesta a una consulta, de manera que los elementos dentro de cada grupo sean lo mas homogéneos posible y los grupos sean lo mas heterogéneos posible entre ellos. El algoritmo debe satisfacer los siguientes requisitos: Relevancia Fácil Navegación Permitir Traslapes Tolerancia para funcionar con trozos de documentos Velocidad Incrementabilidad Se agrupa porque se parte de la premisa que es mas provechoso navegar entre los documentos de un grupo, cuya semejanza es muy alta que navegar entre todos los documentos devueltos por el navegador que estan ordenados por relevancia pero no toman en cuenta similaridad entre documentos porque la formula de ranking no toma en cuenta ese aspecto

4 Trabajo previo sobre Clustering de Documentos
Utilizado para mejorar la eficiencia de la búsqueda. (proceso previo a la búsqueda). Los algoritmos tradicionales son lentos. O(n2) u O(n) Los criterios de parada del algortimo son arbitrarios. Son sensitivos al criterio de parada. Son sensitivos al ruido o valores atípicos. La mayoría no permiten que un elemento pertenezca a mas de un grupo. No son incrementales. Tratan a los documentos como conjuntos de palabras y no como una secuencia ordenada de palabras.

5 Suffix Tree Clustering un nuevo esquema
Algoritmo de clustering con desempeño de tiempo lineal O(n) Identifica frases comunes a los documentos Trata a los documentos como frases o “strings” Incremental Utiliza un árbol de sufijos como estructura de datos base. Permite el traslape El algoritmo consta de 3 etapas: 1. Limpiar los documentos 2. Identificar los clusters base usando un árbol de sufijos 3. Combinar los clusters base en clusters

6 Paso 1. Limpiar los documentos
Utilizar un algoritmo de stemming “liviano” 1. Borrar Prefijos 2. Borrar Sufijos 3. Cambiar plural a singular Marcar los límites de las oraciones Eliminar símbolos no relevantes (“tags”, números, símbolos especiales). El texto original se mantiene inalterado para futuras refencias o para mostrar posteriormente la fuente de los resultados.

7 Paso 2. Identificar los cluster base
Consiste en crear un índice invertido para las frases Se puede hacer eficientemente con un árbol de sufijos Esta estructura se pueden construir en tiempo lineal, respecto a la colección de documentos. Puede crearse incrementalmente conforme se leen los documentos. Los documentos se tratan como frases pero en el sentido de una secuencia ordenada de palabras y no como un conjunto de palabras Caracteristicas básicas que no tienen los otros métodos

8 Paso 2. Identificar los cluster base
Se debe crear un árbol de sufijos para los documentos Se puede ver como un índice invertido Características de un árbol de sufijos para un string S: 1. Tiene una raíz y es dirigido 2. Cada nodo interno tiene al menos 2 hijos 3. Cada arista se etiqueta con un “substring” no vació de S 4. La etiqueta de un nodo es la concatenación de las etiquetas de las aristas que llevan a dicho nodo. 5. Para cada sufijo s de S, hay un nodo sufijo cuya etiqueta es s.

9 Paso 2. Identificar los cluster base
Arbol de sufijos para el conjunto de “strings”: “cat ate cheese” “mouse ate cheese too” “cat ate mouse too” El primer valor de los rectangulos es el documento o string de origen de s y el segundo el subindice Dentro de S al que pertenece s. Escribir en pizarra los cluster base Un cluster base es aquel que contiene dos o mas documentos

10 Paso 2. Identificar los cluster base
Calificación de los cluster base: (fórmula de ranking) A cada cluster base se le asigna una calificación Es una función del número de documentos que contiene La calificación s(B) del cluster base B con frase P es: s(B) = |B| * f(|P|) |B| = # de documentos en el cluster base B |P| = # de palabras en P que no tienen calificación 0 f = función que penaliza a las frases de una sola palabra, es lineal para frases de 2 a 6 palabras y constante para frases mayores Todas las palabras que aparezcan en la lista de stop words (las que aprecen mucho o poco) reciben una calificación de 0

11 Paso 3. Combinando los cluster base
Dados dos cluster base Bn y Bm, con tamaños | Bm| y | Bn|. Sea | Bm Bn| el número de documentos comunes. La similaridad entre Bn y Bm se define: 1 si: | Bm Bn| / | Bm| > 0.5 y | Bm Bn| / | Bn| > 0.5 0 en cualquier otro caso 0.5 puede variar

12 Paso 3. Combinando los cluster base
1 si: | Bm Bn| / | Bm| > 0.5 y | Bm Bn| / | Bn| > 0.5 0 en cualquier otro caso

13 Experimentos Contendientes de STC:
Ninguno es incremental y tratan los documentos como conjuntos de palabras y no como una secuencia ordenada de palabras GAHC (Group-Average Agglomerative Hierarchical Clustering) K-means Buckshot Fractionation Single pass

14 Experimentos GAHC O(n2) Sensible al criterio de parada
Sensible al ruido No permite traslapes K-means Tiempo lineal, O(nkT). k = # clusters, T número de iteraciones No permite traslape de clusters Single Pass Tiempo lineal, O(nk) Es el algoritmo incremental mas popular Tiende a producir clusters grandes Permite traslapes

15 Experimentos Fractionation Rápido, de tiempo lineal
Permite el traslape Es sensitivo al criterio de parada. Es sensitivo a valores atípicos Buckshot Tiempo lineal No permite el traslape Los centroides se calculan tomando una muestra. Peligroso cuando se esta interesado en clusters pequeños y estos no estan representados en la muestra.

16 Experimentos Metodología
Se definieron 10 consultas con sus tópicos y descripciones De los tópicos se tomaron las palabras claves para hacer las búsquedas Se generaron 10 colecciones de 200 trozos (documentos) cada una . Para cada trozo se bajo el documento completo. Manualmente se asigno una relevancia a todos los documentos. En promedio por cada colección había 40 documentos relevantes (20 % del total de 200 documentos por consulta) Las consultas se realizaron en un meta buscador (MetaCrawler.) Todos los algoritmos corrieron hasta producir 10 clusters.

17 Experimentos STC obtiene los mejores resultados porque:
Promedio de precisión STC obtiene los mejores resultados porque: Usa frases (como una secuencia ordenada de palabras y no como un conjunto de palabras) para identificar los clusters. Permite el traslape (cada documento fue colocado en promedio en 2.1 clusters)

18 Experimentos La utilización de frases y traslape son factores
Promedio de precisión La utilización de frases y traslape son factores vitales en el desempeño del algoritmo STC

19 Experimentos Promedio de precisión. Algoritmos con palabras simples y con frases Promedio de precisión algoritmos con traslape y sin traslape ¿Son la utilización de frases y traslape factores sensibles en los demás Algoritmos o solo para STC? ¿Podría beneficiarse o empeorar el desempeño al adaptar los algoritmos para que utilicen estas “mejoras”?

20 Experimentos Recordar uno de los requisitos básicos que el algoritmo debe ser tolerante a los trozos Promedio de precisión. Trozos vs Documentos completos ¿El desempeño es bueno a pesar de que no se utilice el documento completo sino solamente trozos de él? Sí. Factores que influyen: Los trozos que retornan los buscadores parecen ser significativos y contienen acertadamente la mayoría de la información clave. Los trozos tienen menos “ruido” que los documentos completos

21 Experimentos STC es bueno porque: Tiempo de ejecución lineal
Ventajas de que sea incremental Tiempo de ejecución vs número de trozos STC es bueno porque: Tiempo de ejecución lineal Es incremental (no necesita tener toda la colección para empezar a procesarla)

22 Conclusiones Satisface los 6 requerimientos que debe cumplir el Cluster para Web 1. Relevancia 2. Traslape 3. Tolerancia a los trozos 4. Velocidad 5. Incrementabilidad 6. Fácil navegación Se demostró que es posible la utilización de cluster en la Web Utilizar los trozos que devuelven los buscadores es una alternativa razonable y rápida Bajo la metodología utilizada STC sugiere ser un buen algoritmo de clustering para Web El traslape y el uso de frases como una secuencia ordenada de palabras son factores de mucho peso en STC no así en los demás métodos.


Descargar ppt "Suffix Tree Clustering (STC)"

Presentaciones similares


Anuncios Google