Capítulo 4. Descripción funcional de la herramienta
4.1. Minería de procesos aplicada
4.1.3. Algoritmos implementados en la herramienta
4.1.3.1 Algoritmos de agrupamiento
Buscan agrupamientos de tal forma que los objetos de un grupo sean similares entre sí de acuerdo a algún criterio y diferentes de los objetos de otros grupos de acuerdo a dicho criterio.
AgrupamientoJerárquico
Los llamados métodos jerárquicos tienen por objetivo agrupar para formar un nuevo grupo o bien separar alguno ya existente para dar origen a otros dos, de tal forma que, si sucesivamente se va efectuando este proceso de aglomeración o división, se minimice alguna distancia o bien se maximice alguna medida de
similitud [HC2006]. Una característica del método es calcular la distancia entre objetos, y luego entre grupos cuando los objetos están en un grupo determinado. Existen dos estrategias para agrupamiento jerárquico:
• Aglomerativas: esta es una estrategia de proximidad ascendente: cada observación comienza en su propio grupo, y los pares de grupos son mezclados mientras uno sube en la jerarquía.
• Divisivas: estrategia denominada descendente: todas las observaciones comienzan en un grupo, y se realizan divisiones mientras uno baja en la jerarquía.
Para la herramienta en cuestión se implementa la estrategia aglomerativa basada en métodos. Entre los diferentes métodos que implementan el agrupamiento por herencia se empleó el método Cobweb, este método describe probabilísticamente los clusters detectados.
COBWEB [KAICC1987], se caracteriza porque utiliza aprendizaje incremental, esto es, realiza las agrupaciones instancia a instancia. Durante la ejecución del algoritmo se forma un árbol (árbol de clasificación) donde las hojas representan los segmentos y el nodo raíz engloba por completo el conjunto de datos de entrada. Al principio, el árbol consiste en un único nodo raíz. Las instancias se van añadiendo una a una y el árbol se va actualizando en cada paso. La actualización consiste en encontrar el mejor sitio donde incluir la nueva instancia, operación que puede necesitar de la reestructuración de todo el árbol (incluyendo la generación de un nuevo nodo anfitrión para la instancia y/o la fusión/partición de nodos existentes) o simplemente la inclusión de la instancia en un nodo que ya existía. La clave para saber cómo y dónde se debe actualizar el árbol la proporciona una medida denominada utilidad de categoría, que mide la calidad general de una partición de instancias en un segmento. La reestructuración que mayor utilidad de categoría proporcione es la que se adopta en ese paso. El algoritmo es muy sensible a dos parámetros, entre otros:
a) Acuity: Este parámetro es muy necesario, ya que la utilidad de categoría se basa en una estimación de la media y la desviación estándar del valor de los atributos, pero cuando se estima la desviación estándar del valor de un atributo para un nodo en particular, el resultado es cero si dicho nodo sólo contiene una instancia. Así pues, el parámetro acuity representa la medida de error de un nodo con una sola instancia, es decir, establece la varianza mínima de un atributo.
b) Cut-off: Este valor se utiliza para evitar el crecimiento desmesurado del número de segmentos. Indica el grado de mejoría que se debe producir en la utilidad de categoría para que la instancia sea tenida en cuenta de manera individual. En otras palabras: cuando no es suficiente el incremento de la utilidad de categoría en el momento en el que se añade
un nuevo nodo, ese nodo se corta, conteniendo la instancia otro nodo ya existente.
Se puede decir que Cobweb organiza las instancias incrementalmente en un árbol de clasificación. Cada nodo del árbol de clasificación representa una clase y las hojas son nombradas con un concepto probabilístico que sumariza las distribuciones de atributo-valor de los objetos clasificados en dicho extremo del árbol. Dicha estructura puede ser empleada para detectar atributos faltantes o la clase de nuevos objetos en el dominio.
Además COBWEB pertenece a los métodos de aprendizaje conceptual o métodos basados en modelos. Esto significa que cada cluster se considera como un modelo que puede describirse intrínsecamente.
Al algoritmo COBWEB no hay que proporcionarle el número exacto de clusters que queremos, sino que en base a los parámetros anteriormente mencionados encuentra el número óptimo. Para poder obtener un árbol más manejable, se modifica el parámetro cut-off del valor cargado por defecto. El valor elegido es 0,05 y para concretar el análisis de manera simple y efectiva, para este algoritmo se deja sin elegir la clase índice de los atributos.
Empleando este algoritmo el analista de procesos obtiene las distintas instancias del proceso organizadas en una estructura de árbol que les permite entender cómo se comportaron las distintas ejecuciones del negocio. Detectando de manera simple cuales son los flujos característicos y donde se debería poner foco en optimizar los procesos. Un flujo que han ejecutado muchas instancias puede indicar diferentes cuestiones, por ejemplo, se deberán optimizar las tareas que en ese flujo se ejecutan de modo que el proceso completo sea más eficiente. También se pueden detectar casos particulares del proceso, donde posiblemente se pueda unificar las tareas para lograr una mejor utilidad de dicho flujo.
Figura 4.2 – Cobweb: Visualización del árbol obtenido.
En la Figura 4.2 se puede apreciar una distribución arbórea resultante de analizar un modelo complejo. Si bien la imagen se muestra de manera compacta, si esta es organizada visualmente puede dar un valor adicional que ayude a entender la composición del árbol obtenido y a su vez, con la información textual resultante podemos lograr un análisis completo, sobre todo a inferir casos futuros.
KMeans
Se trata de un algoritmo clasificado como Método de Particionado y Recolocación. Este método es hasta ahora el más utilizado en aplicaciones científicas e industriales. El nombre le viene porque representa cada uno de los clusters por la media (o media ponderada) de sus puntos, es decir, por su centroide.
Este algoritmo de clustering es una partición basada en la técnica de clasificación/agrupamiento de ítems en K grupos (donde K es usado para especificar el número de clusters). El agrupamiento es realizado minimizando la suma de las distancias al cuadrado entre ítems y al centroide correspondiente. Un centroide es “el centro de masa de un objeto geométrico de masa uniforme”. La representación mediante centroides tiene la ventaja de que tiene un significado gráfico y estadístico inmediato.
Este algoritmo selecciona K números de objetos, cada uno de los cuales representa un centro de cluster. Para cada uno de los objetos restantes, se le asigna el cluster más similar. Esta similitud se define en base a la distancia entre
el objeto y el centroide del cluster. El algoritmo procesa centro por centro de cluster, hasta completar todo el conjunto de datos [KMeans2012]. Este algoritmo trabaja con las discrepancias entre los elementos y los centroides. La suma de las discrepancias entre un punto y su centroide, expresado a través de la distancia apropiada, se usa como función objetivo. La función objetivo, suma de los cuadrados de los errores entre los puntos y sus centroides respectivos, es igual a la varianza total dentro del propio cluster.
En el presente trabajo se emplea el algoritmo SimpleKMeans, empleando distancia euclidiana para el procesamiento de cada centroide. A diferencia del método anterior, este necesita que se ingrese la cantidad de centroides a clasificar. Dicho valor debe ser ingresado antes de realizar el análisis.
Mediante este algoritmo la herramienta agrupa las instancias con menor distancia a cada uno de los centroides determinado. Este agrupamiento de secuencias permite detectar, además de los grupos de secuencias con mayor semejanza, cuales son los valores dados para cada vector representando a la instancia a considerar con dichos valores podemos determinar por ejemplo las actividades que fueron alcanzadas por las secuencias del mayor agrupamiento, que valores tienen las instancias que recorrieron dicha secuencia, pudiendo de este modo preparar el proceso para que se comporte mejor en los casos principales del proceso. A su vez, mediante los parámetros adicionales que ayudan a caracterizar mejor las secuencias con valores deseados por el analista se logrará comprender aún con mayor detalle la casuística de los mayores agrupamientos obtenidos.
La visualización del algoritmo permite detectar de manera simple la distribución lograda de los elementos en análisis de acuerdo a las características que cada uno tiene. En la Figura 4.2 se puede apreciar un denograma generado luego de construir el modelo con el método de agrupamiento mencionado en esta sección.