sábado, 12 de septiembre de 2009

Tareas en Data Mining



El presente artículo, sin ser exhaustivo, pretende mostrar una taxonomía de las tareas de Data Mining más importantes, además de las más conocidas como son la clasificación, regresión o reglas de asociación.


En primer lugar hay que diferenciar entre dos tipos de tareas, las predictivas, que son aquellas que aprenden a partir de un conjunto de entrenamiento correctamente etiquetado y posteriormente son capaces de predecir nuevos valores, y las descriptivas, que parten de un conjunto de valores no necesariamente etiquetados, por lo general no etiquetados, y su objetivo es describirlos.


Ambos tipos de tareas se entenderán mejor a continuación, pero previamente daremos unas definiciones necesarias:


  • E: Conjunto de todos los posibles elementos de entrada. Se suele representar como un conjunto de atributos nominales o numéricos A

  • A: Conjunto de atributos nominales o numéricos de E. E=A1 x A2 x ... x An

  • e € E: Elemento ejemplo perteneciente a E y representado por la tupla e=<a1, a2, a3...an> dónde a € A

  • S: Conjunto de valores de salida


Con las anteriores definiciones, pasemos a ver las tareas más importantes:



  • Predictivas: Dónde los elementos se presentan como d={<e,s> dónde e € E y s € S} y se denominan ejemplos etiquetados, ya que a un elemento determinado, definido por el conjunto de atributos a € A, le corresponde un conjunto de elementos de salida s € S


    • Clasificación: Es una de las tareas más frecuentes en datamining, y también se le denomina discriminación en estadística. Su objetivo es aprender una función f:E->S a partir de la colección de elementos de entrada etiquetados, d arriba descrita, con la clase a la que pertenecen. Si S sólo tiene un valor hablamos de clasificadores binarios (pe: es o no spam). La función f aprendida será capaz de decir para un nuevo ejemplo no etiquetado cuál será su clase. La clasificación suave se formula de igual manera pero además se añade el aprendizaje de otra función que indicará el grado de certeza en la clasificación, lo que por un lado da la bondad de la predicción efectuada, y por otro permite priorizar en la generación de rankings de clasificadores. El problema de la estimación de probabilidad de clasificación es similar a los dos anteriores pero aquí la función que se aprende es la de la probabilidad de que un ejemplo cualquiera pertenezca a cada una de las clases, y al conjunto de funciones aprendidas se les denomina estimador de probabilidad.

    • Categorización: En este caso lo que se aprende es una correspondencia, esto es, para cada entrada e € E no sólo hay una correspondencia en s € S sino que puede haber varias, esto es, cada elemento puede estar etiquetado con más de una clase (pe: los artículos de este blog tienen más de una etiqueta, por lo que categorizar un artículo significa predecir qué etiquetas tendrá en función de los ejemplos que ya existen en el archivo). En este caso también se puede presentar una categorización suave o un estimador de probabilidad.

    • Priorización: El problema consiste en obtener una lista de preferencias de unos datos dados a partir del aprendizaje de ejemplos previamente ordenadas. La definición formal es algo más compleja que la de la clasificación/categorización porque en este caso se habla de secuencias de elementos, pero el trasfondo es similar. Este tipo de tareas se suele utilizar para presentar los datos, y un ejemplo de aplicación muy divertido es el explicado en la Teoría de la elección pública. Sobre el tema de la priorización volveremos en próximos artículos cuando hablemos de Interfaces Inteligentes como la presentada en Diseño de Interfaces

    • Regresión: La regresión se define de manera muy similar a la clasificación, esto es, para cada ejemplo cada entrada se corresponde un único valor de salida d:E->S y se debe aprender la función capaz de predecir nuevos ejemplos. La diferencia está en que los valores de S únicamente pueden ser numéricos, y su representación gráfica generalmente se efectúa mediante rectas o curvas más o menos elaboradas dependiendo de la complejidad de la formulación aplicada. Un ejemplo de regresión sería la predicción de las ventas del siguiente trimestre en función del histórico de ventas efectuado, por lo que también se le suele denominar estimación cuando se habla de valores futuros, e interpolación cuando se habla de valores intermedios. Volveremos sobre la regresión cuando hablemos sobre los Indicadores de Gestión y los Cuadros de Mando incluidos en los produtos de gestión de Corex SI: SIC+ y Thor.



  • Descriptivas: Los ejemplos se presentan como conjuntos d={e dónde e € E} sin etiquetar ni ordenar de ninguna manera.


    • Agrupamiento ó clustering(ver imagen): El objetivo es obtener conjuntos de elementos similares entre sí, esto es, que los grupos contengan elementos lo más homogéneos entre sí dentro del grupo y lo más heterogéneos posible con el resto de grupos. La principal diferencia con la clasificación es que aquí no se aprende a qué grupo pertenece una instancia, ya que no se conoce ni siquiera los grupos que hay ni se tendría por qué conocer la cantidad de los mismos, sino que se aprende precisamente estos grupos a partir del proceso de aprendizaje, dónde se crean o inventan. Un ejemplo claro de clustering es la segmentación de clientes en marketing cuando se observa un conjunto de clientes y se agrupan según la observación de ciertos comportamientos (atributos), y no cuando se crean los grupos artificialmente y se decide incluir a los clientes en uno u otro grupo. Una nueva instancia se sabe cómo se comporta viendo a qué grupo pertenece. En la agrupación también existe el concepto de suave y de estimador de probabilidad.

    • Correlación o factorización: El objetivo es determinar dado el conjunto de atributos A de un elemento E, E = A1 x A2 x ... x An, si dos o más atributos están relacionados de algún modo. La correlación o factorización se limita a atributos numéricos, y únicamente determinan relación entre dos elementos, nunca causalidad, es decir, son bidireccionales y no orientados.

    • Reglas de asociación: Similares a la correlación y factorización pero para atributos nominales. Las reglas de asociación son una de las tareas principales de datamining y se aplican principalmente a bases de datos. Con ellas se puede obtener reglas del tipo "si compró este producto hay tanta probabilidad de comprar este otro". La implicación puede ser unidireccional y orientada o bidireccional. En esta categoría se suelen incluir las dependencias funcionales, diferenciándose en que estas consideran todos los posibles valores. Por ejemplo, sabiendo el nivel de ingresos, el rango de edad al que pertenece el cliente, la étnia, el nivel de estudios según varios valores y si está casado se puede determinar si un cliente puede ser moroso. La disciplina de Use Mining aplicada al eCommerce suele utilizar las reglas de asociación para facilitar al usuario productos que le puedan interesar según los productos seleccionados e incluso por los productos sobre los que ha prestado atención (clics en detalle por ejemplo sin necesidad de añadir a la cesta) y que Corex utiliza de diversas maneras en su sistema de eCommerce Thor.

    • Detección de valores e instancias anómalas: El objetivo es encontrar instancias que no son similares a ninguna de las demás instancias y se suele utilizar para detectar fraudes, fallos, intrusos, comportamientos diferenciados... por ejemplo fraudes en el uso de tarjetas de crédito (la hora, lugar, importe de una operación con tarjeta es diferente a su uso general), fallos en las redes de transmisión (el nivel de ruido, la latencia, el orden de llegada... de un paquete es diferente a los demás), intentos de acceso no autorizados (la combinación de caracteres en la contraseña, el número de intentos, los intervalos entre ellos... difieren de todos los usos corrientes)...




Con lo anterior se define de manera general las tareas principales en Data Mining, aunque no se incide excesivamente en su definición formal para un entendimiento general de las mismas, ni se explica tampoco el uso de unas tareas para realizar otras, por ejemplo, el uso de clasificadores binarios para obtener categorizaciones, o el uso de clustering para detectar usos diferenciados. Si se desea ampliar información se recomienda leer los trabajos de Hernández Orallo.


En el siguiente artículo trataremos los métodos más frecuentes en Data Mining y cómo se relacionan con las tareas aquí descritas, de manera que se tenga con ambos artículos una visión general de los métodos que comprenden esta apasionante y potente disciplina.

No hay comentarios:

Publicar un comentario en la entrada