Arboles de Decision 1

download Arboles de Decision 1

of 26

Transcript of Arboles de Decision 1

Arboles de Decisin (I)Carlos Hurtado L. Depto de Ciencias de la Computacin, Universidad de Chile

Contenido Motivacin de Clasificacin Motivacin de Arboles de Decisin Nocin de Split Algoritmo de Hunt

Aprendizaje Supervisado Dado un conjunto de datos: {(x1,f(x1)),(x2,f(x2)),, (xn,f(xn))}. Donde y=f(x) es una funcin (sistema). Construir un modelo para predecir f(x), donde x no est en el conjunto de entrenamiento. Clasificacin: f es una funcin discreta. En algunos casos no hay una relacin funcional entre variables de entrada y de salida Aprendizaje de probabidades condicionales P(y|x).

Clasificacin Dado un conjunto de datos, donde cada dato pertenece a una clase. Construir un modelo que permita predecir la clase de un nuevo dato. En general: el modelo es mejor si el error de prediccin es menor.

Clasificacin: Ejemplo

Clasificacin: ejemplo (cont.)

Aplicaciones de Clasificacin (I) Deteccin de Fraude: Objetivo: predecir uso fraudulento en tarjetas de crdito Mtodo: Usar transacciones de compras en un determinado perodo e info. en cuentas. Definir atributos de entrada como: cundo se compra, frecuencia de compra, frecuencia de pagos, etc. Inducir un modelo para predecir clase de nuevas transacciones de compra.

Aplicaciones de Clasificacin (II) Prediccin de Deserciones (churn): Objetivo: en un determinado mes, predecir qu clientes abandonarn un determinado servicio (ej., telfono celular) Mtodo:

Definir atributos de entrada a partir de transacciones del cliente (ej., llamados telefnicos, frecuencia, ltimo llamado, interrupciones, etc.) e info. descriptiva de usuarios. Usar info. de meses anteriores y definir atributo de clase como abandono o no abandono del servicio. Inducir un clasificador.

Aplicaciones de Clasificacin (III) Clasificacin de Documentos: Objetivo: Predecir tpico de un nuevo documento Mtodo: Definir atributos de entrada a partir del contenido del documento (e.g., vector de trminos) Usar documentos pre-clasificados como datos de entrenamiento. Inducir un clasificador.

Tarea Machine Learning in Automated Text Categorization. Fabrizio Sebastiani. ACM Computing Surveys, Vol 34, No 1, March 2002. Control de Lectura 26 de Octubre.

Etapas en Clasificacin Construccin del modelo Datos de entrenamiento Datos de prueba Datos de uso

Prueba del modelo Uso del modelo

Enfoque Discriminante Arboles de Decisin Reglas de Decisin Discriminantes lineales Redes Bayesianas

Clasificacin: Tipos de Modelos

Enfoque Probabilstico Enfoque de Regresin Redes Neuronales Regresin Logstica

Arboles de Decisin Fciles de construir Fciles de interpretar No slo sirven para clasificar nuevos datos, sino que para qu determina cada clase.

Buena precisin en muchos casos

Arboles de Decisin

Arbol de Decisin para Deteccin de Fraude

Construccin de rboles de decisin Etapas Construccin Poda Es necesario podar el rbol para evitar sobreajuste

Prueba Medimos la calidad del modelo: error, tamao, etc.

Construccin de rboles de decisin: algoritmos Memoria Principal Algoritmo de Hunt (CLS, 1960s) ID3 (Quinlin 70s and 80s), C4.5 (Quinlin 90s)

Escalables SLIQ, SPRINT

Split Definicin: un split es una variable (atributo) ms una lista de condiciones sobre la variable.A .

A=a1

A=an

Split para variables categricas Simple vs. Complejo

A

A

A=a1

. A=an

{a1,..,ak} . {ak+1,..,an}

Split para variables numricas Estticos: Discretizando en un inicio

Dinmicos: Decisin binaria: A v Rangos: [0,15k), [15k,60k), [60k,100k), etc. Combinacin lineal de variables Ms complejo y poco comn en rboles de decisin

Algoritmo de Hunt Idea bsica: cada nodo en el rbol de decisin tiene asociado un subconjunto de los datos de entrenamiento Inicialmente, el nodo raz tiene asociado todo el conjunto de entrenamiento Construimos un rbol parcial que tiene tres tipos de nodos: Expandidos (interiores) Hojas: sern hojas en el rbol final y tienen asociada una clase Nodos por expandir: son hojas en el rbol parcial, pero deben ser expandidos Encontrar el mejor split para t Particionar los datos de t en nodos hijos de acuerdo al split Etiquetar t y sus nodos hijos con el mejor split

Operacin de expansin de un nodo t:

Algoritmo de Hunt (I)Nodo interior Nodo por expandir

Nodo hoja

Algoritmo de Hunt (II)

Nodos interiores Nodo por expandir

Nodo hoja

Algoritmo de Hunt (III)

Algoritmo de Hunt Main(Conjunto de Datos T) Expandir(Conjunto de Datos S) Expandir(T) If (todos los datos estn en la misma clase) then return Encontrar el mejor split r Usar r para particonar S en S1 y S2 Expandir(S1) Expandir(S2)

Algoritmo de Hunt: observaciones Las operaciones de expansin se realizan primero en profundidad Lo complejo es encontrar el mejor split en cada operacin de expansin Nmero de splits a buscar depende de si el atributo es categrico o no y del tipo de split (e.g., complejo vs. simple).