2009-12-04 10 views
12

Estoy leyendo que puedo crear vectores mahout a partir de un índice lucene que se puede usar para aplicar los algoritmos de agrupamiento mahout. http://cwiki.apache.org/confluence/display/MAHOUT/Creating+Vectors+from+Textmahout lucene documento agrupando cómo?

me gustaría aplicar K-means algoritmo de agrupamiento en los documentos en mi índice Lucene, pero no está claro cómo puedo aplicar este algoritmo (o agrupación jerárquica) para extraer las agrupaciones significativas con estos documentos.

En esta página http://cwiki.apache.org/confluence/display/MAHOUT/k-Means dice que el algoritmo acepta dos directorios de entrada: uno para los puntos de datos y otro para los conglomerados iniciales. Mis puntos de datos son los documentos? ¿Cómo puedo "declarar" que estos son mis documentos (o sus vectores), simplemente tomarlos y hacer el agrupamiento?

lo siento de antemano por mi mala gramática

Gracias

Respuesta

3

Si tiene vectores, puede ejecutar KMeansDriver. Aquí está la ayuda para lo mismo.

Usage: 
[--input <input> --clusters <clusters> --output <output> --distance <distance> 
--convergence <convergence> --max <max> --numReduce <numReduce> --k <k> 
--vectorClass <vectorClass> --overwrite --help] 
Options 
    --input (-i) input    The Path for input Vectors. Must be a 
            SequenceFile of Writable, Vector 
    --clusters (-c) clusters   The input centroids, as Vectors. Must be a 
            SequenceFile of Writable, Cluster/Canopy. 
            If k is also specified, then a random set 
            of vectors will be selected and written out 
            to this path first 
    --output (-o) output    The Path to put the output in 
    --distance (-m) distance   The Distance Measure to use. Default is 
            SquaredEuclidean 
    --convergence (-d) convergence The threshold below which the clusters are 
            considered to be converged. Default is 0.5 
    --max (-x) max     The maximum number of iterations to 
            perform. Default is 20 
    --numReduce (-r) numReduce  The number of reduce tasks 
    --k (-k) k      The k in k-Means. If specified, then a 
            random selection of k Vectors will be 
            chosen as the Centroid and written to the 
            clusters output path. 
    --vectorClass (-v) vectorClass The Vector implementation class name. 
            Default is SparseVector.class 
    --overwrite (-w)     If set, overwrite the output directory 
    --help (-h)      Print out help 

Actualización: Obtenga el directorio de resultados de HDFS a local fs. Luego use la utilidad ClusterDumper para obtener el clúster y la lista de documentos en ese clúster.

+0

sí que es no puedo entender. ¿Cuál es el resultado? ¿Cómo puedo ver en el resultado que, por ejemplo, los documentos 5 y 8 están en el mismo clúster? – maiky

Cuestiones relacionadas