Archive for febrero 2010

h1

Weka Explorer

febrero 11, 2010

Este componente de Weka está dividido en varias entornos/secciones

*Preprocess: En este área será donde carguemos los datos para trabajar con ellos. Como ya se comentó anterior mente se utilizará un tipo de fichero específico (arff). Un ejemplo bastante simple pero representativo es weather.arff. Su estructura es sencilla.  Primero la cabecera, la cual contiene meta-información sobre el nombre de la relación y los atributos con los que contarán los datos.

arff header

La siguiente sección sería la que corresponda con los datos

arff data

Preprocess nos permite saber el número de instancias que hemos cargado, el número de atributos que tienen nuestras instancias. También permite obtener unformación sobre estos atributos, su tipo, los valores máximos y minimos que toman, la media, la desviación típica. Ofrece una pequeña gráfica para cada atributo en a que refleja los resultados de de nuestro atributo clase para cara rango de ese atributo. Lo explico con el ejemplo de weather.arff

NOTA: Atributo clase -> será el que indique qué tipo de clase es dentro de nuestra clasificación. Un ejemplo sería una clasificación de imágenes entre paisajes, retratos/personas y edificios.

En este caso nuestro atributo clase es play (si se jugó el partido o no). Al pinchar sobre él, nos identifica el yes (azul) y el no (rojo) cada uno con un color

arff class attribute

Al picnhar sobre el atributo outlook

arff attibute

Podemos ver a distribución de los atributos en tres columnas

1) Los días soleados

2) Los días que se jugó a cubierto

3) Los días lluviosos

En cada uno de ellos se pude ver rápidamente los días que se jugó el partido y los que no teniendo en cuenta si era soleado, a cubierto o lluvioso.

En la sección de filter podremos selccionar varias opciones que nos permitirán realizar filtrados de atributos, cambiar el tipo de estos, unificar valores de un mismo atributo. Si vemos que hay una relación claro entre dos atributos, estos se podrían combinar en uno solo. Esto se puede ver gracias a al entorno visualize.

* Classificaton: Una vez tenemos nuestros datos cargados (filtrados o no) se puede realizar una clasificación de estos. Para ello se hará uso de algoritmos de clasificación y de diversas formas de aplicar estos (sin profundizar mucho aún).

* Cluster: En esta pestaña se pueden en contrar los algoritomos de clustering, que nos  permiten clasificar un conjunto de elementos de muestra en un determinado número de grupos basándose en las semejanzas y diferencias existentes entre los datos de la muestra (sin profundizar mucho aún).

* Associate: Esta pestaña permite el uso de métodos de asociación de datos (no he profundizado aún).

* Select Attributes: Esta sección nos permite usar métodos de selección de atributos. El obejetivo de estos métodos es determinar los atributos que tienen mas peso a la hora de decidir si unos datos están en una clase u otra (sin prfundizar aún).

* Visualize: En este entorno se representa graficamente la distribución de todos los atributos. De esta manera podremos observar relaciones entre atributos de forma gráfica.

h1

Weka GUI, una gran ayuda

febrero 5, 2010

Estos días he estado peleándome con el código de los ejemplos de weka. Dichos ejemplos los puedes bajar del repositorio SVN de weka. La verdad es que eso no me supuso mucho problema. Tan solo tuve que instalar el plugin de SVN para Eclipse, añadir el repo y hacer el checkout del directorio en el que estaba interesado. El problema vino a lo hora de compilar aquello con ANT. Imposible. Por ahora lo he dejado. Me he centrado en ejemplos prácticos que muestran como usar la GUI (Graphical User Interface) de weka.  Para ello he hecho uso de la web de un mienbro de la Universidad Politécnica de Valencia (enlace relacionado añadido). A contuniación detallaré un poco la interfaz de weka y los elementos que me han ayudado a enteder el filtrado, clasificación y visualización.

Weka GUI

La pantalla incial nos muestra los cuatro entornos de tabajo defenidos por weka

Weka GUI

* Explorer: se trata de un interfaz gráfica que nos permite el uso de varias herramientas de weka, las cuales comentaremos brevemente a continuación.

* Experimenter: este componente se encarga de la automatización de tareas para la ejecución de experimentos de gran volumen.

* KnowledgeFlow: según lo que he leído, permite generar proyectos de minería de datos mediante la generación de flujos de información. Es una alternativa al explorer, con una interfaz distinta y alguna que otra cosa mas.

* Simple CLI: consola para invocar directamente con java los paquetes de weka

En concreto me he centrado en la utilización de explorer. Este componente nos permite el preprocesado (filtrado), calisficación y visualización de los datos. Con esto se puede ver la distribución de los datos caracterizados por sus atributos. Se pueden combinar atributos o eliminarlos si estos no son discriminantes. En la siguiente entrada (por no alargar mas esta) profundizaré mas en este componente y como lo he utilizado para adquirir conocimiento sobre el preprocesado y clasificación de los datos. Lo cual ayudará sin duda al uso de estas herramientas vía nuestro futuro código en java. Tambien nos será muy úitl para la elección acertada de los parámetros a extraer de las imágenes.