Descargar

Mineria de datos (página 2)

Enviado por topicoss


Partes: 1, 2

3. Elegir el algoritmo de minería (o aprendizaje) (CART, C5.0, Backpropagation

La entrada del proceso de MD

Vista minable: en un contexto de BD relacionales, es una única tabla con todos los atributos relevantes para el proceso de MD.

Atributos: Nos concentraremos en dos tipos de atributos

Atributos numéricos: enteros, reales.

Atributos nominales: también referenciados como atributos categóricos, enumerados o discretos.

Toman valores en un conjunto finito y preestablecido de categorías.

Fase de evaluación, interpretación y visualización

1. Criterios para la evaluación de los modelos (patrones) descubiertos:

Precisos

Técnicas de evaluación (Validación simple y cruzada. Bootstrapping)

Medidas de evaluación de modelos (precisión predictiva (sobre "testing set")), confianza y cobertura, error cuadrático medio, cohesión y separación).

Comprensibles (inteligibles)

Interesantes (útiles y novedosos)

2. Interpretación y contextualización: Evaluar el contexto donde se va a usar el modelo.

Distribuciones de clases no balanceadas.

Tipo de errores y costo asociado.

Situaciones extraordinarias del mundo real (uso de conocimiento previo).

3. Visualización

La salida del proceso de MD

Reglas de clasificación (ver ejemplo 3)

Clusters (grupos) (ver ejemplo 4)

Árboles de decisión (ver ejemplo 5)

Redes neuronales

Reglas de asociación

Reglas relacionales (ILP)

Reglas difusas

Ecuaciones de regresión

Árboles de regresión

K-NN y CBR (Case-based reasoning)

Modelos Bayesianos

Notación

Conjunto de (nombres de) atributos A = fA1;A2; : : : ;Ang.

Por cada atributo Ai 2 A, un conjunto de valores (o dominio) V (Ai) = fvi1 ; vi2 ; : : : ; vimg.

Asumiremos que V _ V (A1) [ V (A2) [ : : : [ V (An).

En un conjunto de ejemplos de entrenamiento E sobre A, cada elemento (ejemplo) ej 2 E, es

una n-tupla, representada por un mappging ej : A ! V, tal que ej(Ai) 2 V (Ai), 1 _ i _ n.

T (A) es el conjunto de todas las tuplas sobre los atributos de A y sus dominios.

Clasificación

Una de las tareas más utilizada en DM.

Cada instancia (registro) de la BD es rotulada con el valor de un atributo especial que llamamos la clase de la instancia.

Cada uno de los valores (discretos) que puede tomar este atributo corresponde a una clase.

El resto de los atributos de la instancia se utilizan para predecir la clase.

Objetivo: predecir la clase de nuevas instancias no clasificadas.

Ejemplo:

Dada una base de datos E con imágenes de rostros de un número acotado de personas con sus respectivos nombres, aprender una función que, dada una nueva imágen de

una de estas personas, permita determinar su identidad.

Aprendizaje

Aprendizaje de Conceptos

También denominada clasificación binaria. Forma particular de clasificación en la que el atributo objetivo

AO es booleano y por lo tanto la función a estimar es del tipo:

c : X ! f0; 1g

Los ejemplos en E son rotulados como pertenecientes al concepto (con valores 1, si, verdadero o +) o no pertenecientes al concepto (con valores 0, no, falso o ??). En el primer caso hablaremos de ejemplos positivos y en el segundo de ejemplos negativos.

Clasificación "suave"

Además de un clasificador h : X ! V (AO) se aprende otra función _ : X ! R, tal que _(x) significa el grado de certeza de la clasificación realizada por h respecto a la instancia x.

Variantes de la clasificación "suave": aprender estimadores de probabilidad:

h : X ! PD(V (AO))

donde PD(V (AO)) es el conjunto de distribuciones válidas sobre V (AO).

Si jV (AO)j = m y h(x) = p, p es una m-tupla p : V (AO) ! R+ tal que p(ci) es la probabilidad de que x pertenezca a la clase ci, 8ci 2 V (AO).

Aprendizaje de Conceptos

Ejemplos:

Determinar si un mensaje de correo electrónico es spam o no.

Determinar la conveniencia de operar a un paciente de acuerdo a sus síntomas.

Determinar si la imágen de una persona correponde a "Perez" o no.

Determinar si un día es propicio para jugar a un deporte particular.

Categorización

Los valores de AO corresponden a categorías y a una instancia le puede corresponder más de una categoría. El modelo a aprender ya no representa una función sino una correspondencia 1 a n.

Alternativa:

c : X ! 2V (AO)

Ejemplos:

Categorizar leyes de acuerdo a las áreas de gobierno involucradas.

Categorizar documentos de acuerdo a los temas abordados.

Dado un conjunto de perfiles de clientes, determinar los productos que pueden comprar.

Agrupamiento (clustering)

Dados

Un conjunto de datos E sin etiquetar, E _ X y X _ T (A). determinar

Un conjunto de grupos G = fg1; : : : ; glg.

Una función h : X ! G

El número de grupos jGj = l puede ser especificado a priori o determinado por el algoritmo de clustering.

Análisis de asociaciones (o vínculos)

Tarea descriptiva que tiene como objetivo identificar relaciones no explícitas entre atributos categóricos o nominales.

Dado

Un conjunto de datos E sin etiquetar.

encontrar

Un conjunto de reglas R = frkg

Cada regla rk con nk antecedentes y mk consecuentes es de la forma:

si Aa1 = va1 ^ : : : ^ Aank

= vank

entonces Ac1 = vc1 ^ : : : ^ Acmk

= vank

donde Aai ;Acj 2 A, vai 2 V (Aai ), vcj 2 V (Acj ), para i = 1 : : : nk, j = 1 : : :mk.

Algunas áreas de investigación y desafíos en DM

Escalar a conjuntos de datos extremadamente largos.

Algoritmos que puedan aprender desde atributos numéricos y simbólicos combinados con otros tipos de atributos (imágenes, texto, sonido).

Optimizar decisiones en lugar de predicciones.

Experimentación activa

Web Mining

Interacción de usuario y conocimiento previo

Datos rápidamente cambiantes (no estacionarios)

CONTINUACION……

Introducción

Estas prácticas consisten en, dado un conjunto de datos (numéricos y/o nominales) referidos a un problema cualquiera, aplicar algoritmos de inteligencia artificial que realizan un aprendizaje automático para establecer patrones y modelos sobre esos datos y así extraer conclusiones sobre ellos.

Los objetivos son profundizar en las técnicas básicas de aprendizaje automático / minería de datos, aprender con más detalle algunos de los algoritmos de aprendizaje, aprender a evaluar el resultado de la aplicación de un algoritmo y aprender a evaluar la aplicación de varios algoritmos.

Para ello se utilizará:

  • La biblioteca de clases de aprendizaje en Java llamada Weka, muy sencilla de utilizar, desarrollada en la universidad de Waikato de Nueva Zelanda ([WF99] Ian H. Witten y Eibe Frank. Data Mining. Practical Machine Learning Tools and Techniques with Java Implementations, Morgan Kaufmann, 1999).

  • Conjuntos de datos reales sobre problemas variados, incluidos en Weka.

Los datos corresponden a una gran variedad de problemas diferentes. Hay dos tipos de conjuntos de datos: datos numéricos (en los que los valores de las variables son números) y datos nominales (con valores discretos nominales).

Ejemplos de conjuntos con datos nominales son:

  • SOCIALES: Aprobación de créditos (Credit-a.arff), Votaciones en el Congreso de EEUU (Vote.arff)

  • ENFERMEDADES: Predicción de enfermedades (Breast-cancer.arff, Diabetes.arff, Heart-*.arff)

  • CLASIFICACION: Clasificación de setas (Mushroom.arff), Clasificación de animales (Zoo.arff)

  • RECONOCIMIENTO: Reconocimiento de audio (Vowel.arff), Reconocimiento de imágenes (Letter.arff)

  • MERCADO: Predicción del precio de los automóviles (Autos.arff)

Ejemplos de datos numéricos:

  • SOCIALES: Modelado de puntos/minuto en basket (BasketBall.arff), Tasa de homicidios en Detroit (Detroit.arff), Predicción sobre huelgas (Strike.arff)

  • ENFERMEDADES: Ecocardiograma (EchoMonths.arff)

  • MERCADO: Predicciones sobre automóviles (Auto*.arff), Consumo de electricidad (Elusage.arff), Consumo de gasolina (Gascons.arff), Valor de la vivienda en barrios de Boston (Housing.arff)

  • GEOLOGÍA: Datos sobre polución (Pollution.arff), Predicción sobre terremotos (Quake.arff)

Hay que modelar al menos dos problemas, uno de tipo nominal y otro de tipo numérico, de cualquier categoría, utilizando los algoritmos que se estime oportuno.

En particular, con los datos nominales hay que emplear al menos dos de los siguientes algoritmos:

  • Árboles de decisión de un nivel (decision stump) weka.classifiers.DecisionStump

  • Clasificador 1R (OneR) weka.classifiers.OneR

  • Árboles de decisión de un nivel (decision stump) weka.classifiers.OneR

  • Tabla de decisión (decision table) weka.classifiers.DecisionTable-R

  • ID3 weka.classifiers.Id3

  • C4.5 weka.classifiers.j48.J48

  • PART weka.classifiers.j48.PART

Y con los datos numéricos hay que emplear al menos dos de los siguientes algoritmos:

  • Árboles de decisión de un nivel (decision stump) weka.classifiers.DecisionStump

  • Tabla de decisión (decision table) weka.classifiers.DecisionTable-R

  • Regresión lineal weka.classifiers.LinearRegression

  • M5' weka.classifiers.m5.M5Prime

Se pide:

  • Estudiar bien el funcionamiento de los algoritmos elegidos para luego incluir un breve resumen en una sección del trabajo. Es conveniente consultar referencias externas.

  • Utilizando los datos de los problemas, crear los modelos estudiando diferentes estrategias de entrenamiento utilizando los parámetros de cada algoritmo.

  • Análisis de resultados (textuales y gráficos) que da Weka, comentando la conclusión y las diferencias entre los algoritmos que se han empleado.

Bibliografía

http://www.it.uc3m.es/jvillena/irc/practicas/propuestas/mineriadedatos.html

 

 

Autor:

Darien

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente