main
Class Laboratory

java.lang.Object
  extended by main.Laboratory

public class Laboratory
extends java.lang.Object

Programa para realizar pruebas del sistema de segmentacion de articulos RSS.

Este programa permite invocar al sistema desde consola, y entrega un conjunto de resultados para fines experimentales.

Entrada: Laboratory [source] [nclusters] [operation]
- source: fuente de carga de datos... size o rango de fechas
- nclusters: numero de clusters a generar
- operation: wordlist | clustering | all


Constructor Summary
Laboratory()
           
 
Method Summary
static int findTopic(java.util.List clusters, int item_id)
          encuentra el id del cluster que contiene al item_id dado
static Article getNextArticle(java.sql.Connection con)
          para debug, retorna el proximo articulo a clasificar
static float jaccardQuality(java.util.List clustersref, java.util.List clusters)
          este metodo calcula la calidad de la segmentacion realizada.
static void main(java.lang.String[] args)
           
static float quality(java.util.List clustersref, java.util.List clusters)
          este metodo calcula la calidad de la segmentacion... version 3.
static float qualityA(java.util.List clustersref, java.util.List clusters)
          este metodo calcula la calidad de la segmentacion contando los topicos correctos.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Laboratory

public Laboratory()
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Throws:
java.lang.Exception

jaccardQuality

public static float jaccardQuality(java.util.List clustersref,
                                   java.util.List clusters)
este metodo calcula la calidad de la segmentacion realizada.

Este metodo compara la similitud entre dos conjuntos de clusters, que hayan sido realizados sobre el mismo conjunto de documentos.

Parameters:
clustersref - el conjunto de referencia
clusters - el conjunto a testear
Returns:
el valor de la calidad

qualityA

public static float qualityA(java.util.List clustersref,
                             java.util.List clusters)
este metodo calcula la calidad de la segmentacion contando los topicos correctos.

Esta es una neuva implementacion del metodo para medir calidad de la clusterizacion. En este caso, se revisara el conjunto de los primeros k (10,25) topicos encontrados, y para cada uno, se determinara a que topico corresponde, de entre los topicos de referencia (mediante conteo simple de mayoria). Finalmente, se determinara a que distancia quedo cada topico encontrado, de la posicion de referencia.. y se sumara el resultado.

Parameters:
clustersref - el conjunto de referencia
clusters - el conjunto a testear
Returns:
el valor de la calidad

findTopic

public static int findTopic(java.util.List clusters,
                            int item_id)
encuentra el id del cluster que contiene al item_id dado

Parameters:
clusters - el conjunto sobre el que se buscara
item_id - el id a buscar
Returns:
el id del cluster encontrado

quality

public static float quality(java.util.List clustersref,
                            java.util.List clusters)
este metodo calcula la calidad de la segmentacion... version 3.

Esta funcion calcula la calidad de la segmentacion, contabilizando la cantidad de aciertos en el conjunto de resultados, sumado a un valor (ponderado) por cada no-acierto.

Para cada topico en los topten del conjunto de referencia, se cuenta si aparece en los topten del conjunto resultado. Si aparece,se cuenta un punto. Si aparece mas abajo, se cuenta un valor de 10/su_posicion.

La misma cuenta se hace al reves: para cada topico en los topten del resultado, se cuenta si corresponde a un topten del conjto de referencia. En caso contrario, se asigna un puntaje proporcional a su posicion.

Ambos resultados se suman... y se divide por el total = 20.

Parameters:
clustersref - el conjunto de referencia
clusters - el conjunto a testear
Returns:
el valor de la calidad

getNextArticle

public static Article getNextArticle(java.sql.Connection con)
para debug, retorna el proximo articulo a clasificar

Returns:
el proximo articulo