Mahout - Clustering - "nombrando" los elementos del cluster

Estoy investigando y estoy jugando con Apache Mahout 0.6

Mi propósito es construir un sistema que nombre diferentes categorías de documentos en base a la entrada del usuario. Los documentos no se conocen de antemano y tampoco sé qué categorías tengo al recopilar estos documentos. Pero sí sé que todos los documentos en el modelo deben pertenecer a una de las categorías predefinidas.

Por ejemplo: Digamos que he recopilado una N documentos, que pertenecen a 3 grupos diferentes:

  • Política
  • Madonna (estrella del pop)
  • Ciencia ficción

No sé qué documento pertenece a qué categoría, pero sé que cada uno de mis N documentos pertenece a una de esas categorías (por ejemplo, no hay documentos sobre, por ejemplo, baloncesto entre estos N documentos)

Entonces, se me ocurrió la siguiente idea:

  • Aplique el agrupamiento de mahout (por ejemplo, k-mean con k = 3 en estos documentos) Esto debería dividir los N documentos en 3 grupos. Este debería ser mi tipo de modelo para aprender. Todavía no sé qué documento pertenece realmente a qué grupo, pero al menos los documentos están agrupados ahora por grupo

  • Pídale al usuario que encuentre cualquier documento en la web que deba ser sobre 'Madonna' (no puedo mostrarle al usuario ninguno de mis N documentos, es una restricción). Entonces quiero medir la 'similitud' de este documento y cada uno de los 3 grupos. Espero ver que la medida de similitud entre user_doc y documentos en el grupo Madonna en el modelo será mayor que la similitud entre user_doc y documentos sobre política.

Logré producir el grupo de documentos usando el libro 'Mahout in Action'. Pero no entiendo cómo debo usar Mahout para medir la similitud entre el grupo de documentos del grupo 'listo' y un documento dado.

Pensé en volver a ejecutar el clúster con k = 3 para documentos N + 1 con los mismos centroides (en términos de clúster de k-media) y ver si cae el nuevo documento, pero ¿hay alguna otra forma de hacerlo?

¿Es posible hacer con Mahout o mi idea es conceptualmente incorrecta? (ejemplo en términos de Mahout API sería realmente bueno)

Muchas gracias y perdón por una pregunta larga (no podría describirlo mejor)

Cualquier ayuda es muy apreciada

PD: Este no es un proyecto de trabajo a domicilio :)

Respuesta 1

Tengo un archivo jar con un punto de entrada predefinido en su archivo de manifiesto. Y se puede ejecutar con éxito. hadoop jar hadoop-test-1.0.2.jar -write -nrFiles 1 -fileSize 10 TestDFSIO.0.0.4 12/06/11 21: ...

Tenemos una aplicación web Spring MVC (WAR) que se implementa en Tomcat (6.0.35) que lanza un hilo dentro de una JVM separada en el momento de la implementación (no pregunte por qué, no mi diseño) y luego se comunica con ese hilo a través de ...

No estoy seguro de si esto es posible. Tengo una biblioteca de terceros que tiene una función que acepta una función File: String (File file); Esta función simplemente descargará algunos contenidos del ...

Necesito verificar un patrón contra algún texto (tengo que verificar si mi patrón está dentro de muchos textos). Este es mi ejemplo Patrón de cadena = "^ [a-zA-Z] * toto win (\\ W) * [a-zA-Z] * $"; if ("toto win ...