Sie sind auf Seite 1von 14

2.

RBOLES DE DECISIN

Un rbol de decisin es un conjunto de condiciones o reglas organizadas


en una estructura jerrquica, de tal manera que la decisin final se puede
determinar siguiendo las condiciones que se cumplen desde la raz hasta
alguna de sus hojas.

Un rbol de decisin tiene unas entradas las cuales pueden ser un objeto
o una situacin descrita por medio de un conjunto de atributos y a partir
de esto devuelve una respuesta la cual en ltimas es una decisin que es
tomada a partir de las entradas.

Los valores que pueden tomar las entradas y las salidas pueden ser
valores discretos o continuos. Se utilizan ms los valores discretos por
simplicidad. Cuando se utilizan valores discretos en las funciones de una
aplicacin se denomina clasificacin y cuando se utilizan los continuos se
denomina regresin.

Un rbol de decisin lleva a cabo un test a medida que este se recorre


hacia las hojas para alcanzar as una decisin. El rbol de decisin suele
contener nodos internos, nodos de probabilidad, nodos hojas y arcos [3].

9 Un nodo interno contiene un test sobre algn valor de una de las


propiedades.
9 Un nodo de probabilidad indica que debe ocurrir un evento
aleatorio de acuerdo a la naturaleza del problema, este tipo de
nodos es redondo, los dems son cuadrados.
9 Un nodo hoja representa el valor que devolver el rbol de
decisin.
9 Las ramas brindan los posibles caminos que se tienen de acuerdo
a la decisin tomada.

Y
0 1

X X
0 1 0 1

0 Z 1 Z
0 1 0 1

0 1 0 1

Figura 2. Representacin del conocimiento.


11
2.1. CICLO DE UN RBOL DE DECISIN

De acuerdo al ciclo que debe ser aplicado a un rbol de decisin, se tiene:

1. Aprendizaje:

2. Clasificacin:

Un ejemplo para la compra de un computador se puede dar primero,


especificando las reglas o condiciones que se han recolectado de una
base de datos.
age income student credit buys
rating computer
<=30 high no fair no
<=30 high no excellent no
3140 high no fair yes
>40 medium no fair yes
>40 low yes fair yes
>40 low yes excellent no
3140 low yes excellent yes
<=30 medium no fair no
<=30 low yes fair yes
>40 medium yes fair yes
<=30 medium yes excellent yes
3140 medium no excellent yes
3140 high yes fair yes
>40 medium no excellent no
12
Seguidamente se construye el rbol de decisin de acuerdo a los
parmetros levantados en el punto anterior y se evalan las posibilidades
ofrecidas dando as la respuesta ms adecuada al usuario.

2.2. CONSTRUCCIN DE RBOLES DE DECISIN

Para la construccin de rboles de decisin se deben tener en cuenta


ciertas etapas, estas son:

1. Construir el rbol (Reglas de divisin)

9 Al inicio todos los ejemplos de entrenamiento estn a la raz.


9 Los atributos deben ser categricos (si son continuos ellos
deben ser discretizados)
9 El rbol es construido recursivamente de arriba hacia abajo con
una visin de divide y conquista.
9 Los ejemplos son particionados en forma recursiva basado en
los atributos seleccionados
9 Los atributos son seleccionados basado en una medida
heurstica o estadstica (ganancia de informacin)
9 La ganancia de informacin se calcula desde el nivel de
entropa de los datos.

2. Detener la construccin (Reglas de parada): Se tienen en cuenta


las siguientes condiciones:

9 Todas las muestras para un nodo dado pertenecen a la misma


clase.
9 No existe ningunos atributos restantes para ser particionados
(el voto de la mayora es empleada para clasificar la hoja).
13
9 No existe ms ejemplos para la hoja.

3. Podar el rbol (Reglas de poda)

9 Identificar y eliminar ramas que reflejen ruido o valores atpicos.

2.3. CLASIFICACIN DE RBOLES DE DECISIN

Para este manual slo se tendr en cuenta los algoritmos y/o rboles de
decisin tomados en el software libre WEKA versin 3.4.

2.3.1. ADTree - Alternating Decision Tree [4]

Un rbol de decisin alternativo es un mtodo de clasificacin proveniente


del aprendizaje automtico conocido en ingls como Alternating Decision
Tree (ADTree). Las estructuras de datos y el algoritmo son una
generalizacin de los rboles de decisin. El ADTree fue introducido por
Yoav Freund y Llew Mason en 19993.

Los ADTree contienen nodos splitter y nodos de prediccin. El primero es


un nodo que es asociado con una prueba, mientras que un nodo de
prediccin es asociado con una regla. El nodo de la Figura 3, esta
compuesto por 4 nodos splitter y 9 nodos de prediccin. Una instancia
define una serie de caminos en un ADTree. La clasificacin es asociada
con una instancia que es el signo de la suma de las predicciones
cercanas al camino en el que es definido por esta instancia. Considere el
ADTree de la figura 3 y la instancia x = (color=red, year=1989, ), la
suma de predicciones es +0.2+0.2+0.6+0.4+0.6 = +2, as la clasificacin
es +1 con alta confianza. Para la instancia x = (color=red, year=1999, ),
la suma de las predicciones es +0.4 y la clasificacin es +1 con baja
confianza. Para la instancia x= (color=white, year=1999, ), la suma de
las predicciones es -0.7 y la clasificacin es -1 con confianza media.

El ADTree puede ser visto como una consistencia de una raz nodo de
direccin y cuatro unidades de tres nodos cada uno. Cada unidad es una
regla de decisin y esta compuesta por un nodo splitter y dos nodos de
prediccin que son sus hijos [5].

3
Citado en Proz. rbol de decisin (ptima). Disponible:
http://www.proz.com/kudoz/2311529 [citado en 28 de Febrero de 2008]

14
Figura 3. Ejemplo de un rbol ADTree

Las reglas en un ADTree son similares a las de rboles de decisin,


consecuentemente se puede aplicar mtodos de empuje o aumento en el
orden para disear un algoritmo de aprendizaje ADTree. Una regla en un
ADTree define una particin de una instancia dentro de un espacio de tres
bloques definidos por C1 c2 , C1 c2 y C1 . Bsicamente, el algoritmo de
aprendizaje para construccin de un ADTree es una estrategia top-down.
Cada paso de aumento es seleccionado y adiciona una nueva regla o su
equivalente a una nueva unidad consistente de un nodo splitter y dos
nodos de prediccin.

MULTI-LABEL ALTERNATING DECISION TREE [5]

Un rbol de decisin multi-label o multietiqueta es un ADTree con las


siguientes restricciones: cualquier nodo de prediccin interior contiene un
0; esto es al menos un nodo splitter siguiendo cada nodo de prediccin;
los nodos de prediccin en una hoja contiene valores que pueden ser
interpretados como clases.

2.3.2. Decision Stump o rbol de decisin de un nivel

Como bien dice su nombre se trata de rboles de decisin de un solo


nivel.

15
Funcionan de forma aceptable en problemas de dos clases. No obstante,
para problemas de ms de dos clases es muy difcil encontrar tasas de
error inferiores a 0.5 segn [6].

Retomando los conceptos de [7], el propsito del algoritmo es construir un


modelo de cada caso que ser clasificada, tomando nicamente un
subconjunto de casos de entrenamiento. Este subconjunto es escogido en
base a la distancia mtrica entre las pruebas del caso y las pruebas de los
casos dentro del espacio. Por cada caso de prueba, se hace una
empaquetacin conjunta de un rbol de un nivel clasificando as el
aprendizaje de los puntos de entrenamiento cerrando la prueba actual del
caso.

Los rboles de decisin de un nivel o decisin stump (DS) son rboles


que clasifican casos, basados en valores caractersticos. Cada nodo en
un rbol de decisin de un nivel representa una caracterstica de un caso
para ser clasificado, y cada rama representa un valor que el nodo puede
tomar. Los casos son clasificados comenzando en el nodo raz y se
cataloga basndose en sus valores caractersticos. En el peor de los
casos un rbol de decisin de un nivel puede reproducir el sentido ms
comn, y puede hacerse mejor si la seleccin caracterstica es
particularmente informativa.

Generalmente, el conjunto propuesto consiste en los siguientes cuatro


pasos:

1. Determinar la distancia mtrica conveniente.


2. Encontrar el k vecino ms cercano usando la distancia
mtrica seleccionada.
3. Aplicar la empaquetacin de clasificacin de los rboles de
decisin de un nivel como entrenamiento de los k casos.
4. La respuesta a la empaquetacin de conjunto es la
prediccin para los casos de prueba.

2.3.3. ID3

El ID3 es un algoritmo simple pero potente, cuya misin es la elaboracin


de un rbol de decisin bajo las siguientes premisas [8]:

1. Cada nodo corresponde a un atributo y cada rama al valor posible


de ese atributo. Una hoja del rbol especifica el valor esperado de
la decisin de acuerdo con los ejemplos dados. La explicacin de
una determinada decisin viene dada por la trayectoria desde la
raz a la hoja representativa de esa decisin.

2. A cada nodo es asociado aquel atributo ms informativo que an


no haya sido considerado en la trayectoria desde la raz.
16
3. Para medir cunto de informativo es un atributo se emplea el
concepto de entropa. Cuanto menor sea el valor de la entropa,
menor ser la incertidumbre y ms til ser el atributo para la
clasificacin.

El ID3 es capaz de tratar con atributos cuyos valores sean discretos o


continuos. En el primer caso, el rbol de decisin generado tendr tantas
ramas como valores posibles tome el atributo. Si los valores del atributo
son continuos, el ID3 no clasifica correctamente los ejemplos dados. Por
ello, se propuso el C4.5, como extensin del ID3, que permite:

Otro concepto dado por [9] que se puede tomar es aquel donde se
describe que el ID3 es un algoritmo iterativo que elige al azar un
subconjunto de datos a partir del conjunto de datos de entrenamiento y
construye un rbol de decisin a partir de ello. El rbol debe clasificar de
forma correcta a todos los casos de entrenamiento. A continuacin y
usando este rbol intenta clasificar a todos los dems casos en el
conjunto completo de datos de entrenamiento. Si el rbol consigue
clasificar el subconjunto, entonces ser correcto para todo el conjunto de
datos, y el proceso termina. En caso contrario, se incorpora al
subconjunto una seleccin de los casos que no ha conseguido clasificar
correctamente, y se repite el proceso. De esta forma se puede hallar el
rbol correcto en unas pocas iteraciones, procesando un conjunto de
datos.

Figura 4. Ejemplo de un rbol ID3


17
2.3.4. J48 o C4.5

Es un algoritmo de induccin que genera una estructura de reglas o rbol


a partir de subconjuntos (ventanas) de casos extrados del conjunto total
de datos de entrenamiento. En este sentido, su forma de procesar los
datos es parecido al de Id3. El algoritmo genera una estructura de reglas
y evala su bondad usando criterios que miden la precisin en la
clasificacin de los casos. Emplea dos criterios principales para dirigir el
proceso dados por [10]:
1. Calcula el valor de la informacin proporcionada por una regla
candidata (o rama del rbol), con una rutina que se llama info.
2. Calcula la mejora global que proporciona una regla/rama usando
una rutina que se llama gain (beneficio).

Con estos dos criterios se puede calcular una especie de calor de


coste/beneficio en cada ciclo del proceso, que le sirve para decidir si
crear, por ejemplo, dos nuevas reglas, o si es mejor agrupar los casos de
una sola.

El algoritmo realiza el proceso de los datos en sucesivos ciclos. En cada


ciclo se incrementa el tamao de la ventana de proceso en un
porcentaje determinado respecto al conjunto total. El objetivo es tener
reglas a partir de la ventana que clasifiquen correctamente a un nmero
cada vez mayor de casos en el conjunto total.
Cada ciclo de proceso emplea como punto de partida los resultados
conseguidos por el ciclo anterior.

En cada ciclo de proceso se ejecuta un submodelo contra los casos


restantes que no estn incluidos en la ventana. De esta forma se calcula
la precisin del modelo respecto a la totalidad de datos.
Es importante notar que la variable de salida debe ser categrica.

Como se dice que el C4.5 es una mejora al Id3, se pueden describir


ciertas mejoras:
a) En vez de elegir los casos de entrenamiento de forma aleatoria
para formar la ventana, el rbol C4.5 sesga la seleccin para
conseguir una distribucin ms uniforme de la clase de la
ventana inicial.
b) En cuanto al lmite de excepciones (casos clasificados
incorrectamente) C4.5 incluye como mnimo un 50% de las
excepciones en la prxima ventana. El resultado es una
convergencia ms rpida hacia el rbol definitivo.
c) C4.5 termina la construccin del rbol sin tener que clasificar los
datos en todas las categoras (clases) posibles.

18
REPRESENTACIN TIPO RBOL

La estructura del rbol esta compuesta por dos tipos de nodos:


- una hoja (nodo terminal), que indica una clase;
- un nodo de decisin, que especifica una comprobacin a
realizar sobre el valor de una variable. Tiene una rama y un
subrbol para cada resultado posible de la comprobacin.

Figura 5. Ejemplo aplicado de rbol de decisin adaptado para C4.5 [11]

C4.5 es una tcnica de induccin que se basa en el mtodo clsico de


dividir y vencer y forma parte de la familia de los TDIDT (Top Down
Induction Trees).

Figura 6. Ejemplo de un rbol de decisin generado por C4.5

19
2.3.5. LMT (Logistic Model Tree)

El LMT proporciona una descripcin muy buena de los datos.


Un LMT consiste bsicamente en una estructura de un rbol de decisin
con funciones de regresin logstica en las hojas. Como en los rboles de
decisin ordinarios, una prueba sobre uno de los atributos es asociado
con cada nodo interno. Para enumerar los atributos con k valores, el nodo
tiene k nodos hijos, y los casos son clasificados en las k ramas
dependiendo del valor del atributo.
Para atributos numricos, el nodo tienen dos nodos hijos y la prueba
consiste en comparar el valor del atributo con un umbral: un caso puede
ser clasificar los datos menores en la rama izquierda mientras que los
valores mayores en la rama derecha.
Formalmente [12] describe, un LMT consiste en una estructura de rbol
que esta compuesta por un juego N de nodos internos o no terminales y
un juego de T hojas o nodos terminales. La S denota el espacio,
atravesando por todos los atributos que estn presentes en los datos.

Figura 7. Pseudo cdigo para el algoritmo LMT

20
2.3.6. M5P (rbol de regresin)

Miguel ngel Fuentes y Pablo Galarza citan es un mtodo de aprendizaje


mediante rboles de decisin, utiliza el criterio estndar de poda M5 [13].

Es un rbol basado en rbol de decisin numrico tipo model tree.

Cita Raquel Bzquez, Fernando Delicado y M. Carmen Domnguez [14]


las caractersticas como:

Construccin de rbol mediante algoritmo inductivo de rbol de


decisin.
Decisiones de enrutado en nodos tomadas a partir de valores de
los atributos.
Cada hoja tiene asociada una clase que permite calcular el valor
estimado de la instancia mediante una regresin lineal.

2.3.7. NBTree (Naive Bayes Tree)

La referencia [15] muestra que es un algoritmo hibrido. Este genera un


tipo de rbol de decisin, pero las hojas contienen un clasificador Naive
Bayes construido a partir de los ejemplos que llegan al nodo.

As mismo tomando conceptos de [16], es un eficiente y efectivo algoritmo


de aprendizaje, pero previo a los resultados muestra que su capacidad es
limitada ya que puede nicamente representar cierto grado de separacin
entre las funciones binarias. Se le deben dar necesarias y suficientes
condiciones es el proceso en el dominio binario para ser aprendizaje
Naive Bayes bajo una representacin uniforme. Se ve entonces que el
aprendizaje (y los datos de error) de Naive Bayes puede ser afectado
dramticamente por distribuciones de muestreo. Los resultados ayudan a
dar un ms profundo entendimiento de este de una manera ms simple.

Se ha descrito que muestra datos de prediccin tan eficientemente como


el algoritmo C4.5.

Los resultados ayudan a profundizar en el entendimiento de este


aparentemente simple algoritmo de aprendizaje. Naive Bayes aprende
capacidades que son determinadas no nicamente por las funciones
objetivo, sino tambin por muestreos de distribuciones, y de cmo el valor
de un atributo es representado.

21
2.3.8. RandomForest

Segn cita Francisco Jos Soltero y Diego Jos Bodas en su artculo [17]
Se basan en el desarrollo de muchos rboles de clasificacin. Para
clasificar un objeto desde un vector de entrada, se pone dicho vector bajo
cada uno de los rboles del bosque. Cada rbol genera una clasificacin,
el bosque escoge la clasificacin teniendo en cuenta el rbol ms votado
sobre todos los del bosque.
Cada rbol se desarrolla como sigue:
Si el nmero de casos en el conjunto de entrenamiento es N,
prueba N casos aleatoriamente, pero con sustitucin, de los datos
originales. Este ser el conjunto de entrenamiento para el
desarrollo del rbol.
Si hay M variables de entrada, un nmero m<<M es especificado
para cada nodo, m variables son seleccionadas aleatoriamente del
conjunto M y la mejor participacin de este m es usada para dividir
el nodo. El valor de m se mantienen constante durante el
crecimiento del bosque.
Cada rbol crece de la forma ms extensa posible, sin ningn tipo
de poda.

Figura 8. Esquema del algoritmo Random Forest [18]

CARACTERSTICAS DE RANDOM FOREST [19]

Corre eficientemente sobre grandes bases de datos


Puede manejar cientos de variables de entrada sin eliminacin de
otras variables.
Esto da las estimaciones para saber que variables son importantes
en la clasificacin.
Es un mtodo eficaz para estimar datos perdidos y mantiene la
exactitud de cundo una proporcin grande de los datos falla.
Los rboles generados pueden ser salvados de un uso futuro sobre
otros datos.
22
Los prototipos son calculados ya que dan informacin acerca de la
relacin entre las variables y las clasificaciones.
Ofrece un mtodo experimental para detectar interacciones entre
variables.

2.3.9. RandomTree

Siguiendo los conceptos de [20] Un RandomTree es un rbol dibujado al


azar de un juego de rboles posibles. En este contexto "al azar" significa
que cada rbol en el juego de rboles tiene una posibilidad igual de ser
probado. Otro modo de decir esto consiste en que la distribucin de
rboles es "uniforme".

El proceso del RandomTree es un proceso que produce random trees de


permutaciones arbitrarias.

PROCESO PARA CONSTRUIR UN RANDOM TREE

Siguiendo la conceptualizacin realizada por [21], primero se marcan los


vrtices n por nmero 1 a travs de de una manera aleatoria para cada
que cada vrtice tenga la misma probabilidad (este vrtice es la
permutacin aleatoria).
Usando esta permutacin, se comienza a construir un rbol sobre vrtices
de n: inicialmente, se tiene vrtices de n y ninguna marca. En el paso k-th
se intenta agregar el borde de k-th y ver si el grfico resultante contiene
un ciclo. Si es as, se salta el borde o lnea de marca, adems se agrega
al grfico y se repite para k+1. Durante este proceso el grfico
almacenar un bosque.
Despus de al menos pasos se obtendr un rbol (un bosque
conectado).

Las lneas punteadas representan las marcas o lneas que fueron


consideradas, pero omitidas o saltadas.

Figura 9. Proceso para construir un Random Tree


23
2.3.10. REPTree

Cita Aurora Agudo, Juan Carlos Alonso y Ruth Santana en [22] Es un


mtodo de aprendizaje rpido mediante rboles de decisin. Construye un
rbol de decisin usando la informacin de varianza y lo poda usando
como criterio la reduccin del error. Solamente clasifica valores para
atributos numricos una vez. Los valores que faltan se obtienen partiendo
las correspondientes instancias.
Refiere Antonio Bellas [23] Es un rbol de clasificacin con modelo
comprensible (reglas if then else)

Haciendo referencia de [24], construye un rbol de decisin usando la


ganancia de informacin y realiza una poda de error reducido. Solamente
ordena una vez los valores de los atributos numricos. Los valores
ausentes se manejan dividiendo las instancias correspondientes en
segmentos.

2.3.11. UserClassifier

Su caracterstica esencial es que permite al usuario construir su propio


rbol de decisin.

Figura 10. Ejemplo de UserClassifier bsico

Citando conceptos de [25], los nodos en el rbol de decisin no son


prueba simple sobre los valores del atributo, pero son regiones que el
usuario selecciona. Si un caso miente dentro de la regin este sigue una
rama del rbol, si este miente fuera de las regiones sigue por otra rama.
Por lo tanto cada nodo tiene slo dos ramas que bajan de l.

24

Das könnte Ihnen auch gefallen