Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE INGENIERÍA
Aprendizaje Automático
Sección de ejercicios N°2
Torres Christian, Diego Pando
Facultad de Ingeniería, Carrera de Sistemas
Universidad de Cuenca
{marcelo.torres, diego.pando}@ucuenca.edu.ec
1.1
1.2
1.3
1.4
1.5
1.6
A. En Weka, abrir el archivo zoo.arff en la vista Explorer. ¿Cuántos atributos tiene?. ¿Es
necesaria la columna animal?
Primero, el archivo contiene la clasificación de animales en base a ciertas características o
atributos que se incluyen en él, pudiendo clasificarse en alguno de 6 grupos. El archivo tiene 18
atributos. La columna animal no es tan necesaria puesto a que la clasificación se la va haciendo
según las otras características de cada animal, además nuestra variable de clasificación va a ser
“type” y esta variable “animal” no vendría a ser necesaria.
B. Ir a la pestaña Classify y seleccionar el árbol de decisión J48. Dar click en la parte derecha
del botón Choose; esto abre una ventana con los hyper-parámetros del algoritmo.
Seleccionar 10-fold cross-validation y ejecutar el algoritmo.
Además, podemos observar en la siguiente imagen el árbol de decisión que se puede generar con
la propia herramienta, lo cual nos permite ir viendo cómo se lo fue creando:
Por lo tanto, la diferencia en los resultados de los algoritmos es mínima, teniendo al algoritmo
PART un poco mas de precisión por su root mean squared error.
E. Realice un análisis similar con los datasets: vehicle.arff y credit-g.arff. Siéntase en libertad
de probar otros algoritmos y analizar sus resultados.
DATASET VEHICLE.ARFF
El dataset trae una clasificación de autos, los cuales pueden ser de 4 tipos, usando una serie de
características extraídas del dataset. Aplicando el algoritmo J48
DATASET CREDIT-G.ARFF
Este dataset, contiene una clasificación de clientes como buenos o malos, según una serie de
características provistas en el dataset. Es decir aquí se pueden basar para saber si es rentable dar
crédito a un cierto cliente.
Consta de 21 atributos y una variable clasificatoria que nos indica si el cliente es bueno o malo
para cierto crédito.
Primero aplicamos el algoritmo de J48, utilizando Cross validation con 10 capas, obteniendo:
Como se puede observar, con este algoritmo se obtuvo un 70.2% de aciertos y un 29.8 de errores
al clasificar las instancias. Además de un root mean square error de 0.4974.
En la matriz de confusión se obtuvo una mejor clasificación de los clientes buenos que de los
malos, ya que 561 los clasificó correctamente como buenos y 139 incorrectamente como malos.
Además 141 clasificó correctamente como malos y 159 como buenos.
En cuanto a tiempo de ejecución y a porcentaje de aciertos en la clasificación, tiene una leve
mejoría el algoritmo de J49.
F. Realizar un proceso similar como con la herramienta Weka, pero en Knime utilizar el
algoritmo: Decision Tree..
Una vez descargado e instalado, nos presentará una pantalla como la siguiente:
El cual permite leer ese tipo de archivo de lo cual se tiene la siguiente configuración:
3) Para generar la matriz de confusión aparte de todos los nodos que se mostrarán al final,
se hace uso de un nodo llamado “scorer” el cual permite la creación de la matriz.
Donde X-partitioner es el primero en un bucle de validación cruzada. Al final del ciclo debe haber
un X-Aggregator para recolectar los resultados de cada iteración. Todos los nodos entre estos dos
nodos se ejecutan tantas veces como se deben realizar las iteraciones. En donde se configura lo
siguiente:
Se escoge el número de capas que se requiere para el modelo y además la variable clasificatoria.
Y el X-Agregator es el final de un ciclo de validación cruzada y debe seguir un nodo X-Partitioner.
Recopila el resultado de un nodo predictor, que en nuestro caso es el Decision Tree Predictor,
compara la clase pronosticada y la clase real y genera las predicciones para todas las filas y las
estadísticas de iteración.
La estructura del modelo queda de la siguiente manera:
DATASET VEHICLE.ARFF
Aplicando el mismo modelo para este dataset se obtuvo los siguientes resultados:
DATASET CREDIT-G
Finalmente, con el tercer dataset que se trata de dar un crédito a un cliente, se obtuvo lo siguiente: