arvores de decisao
Post on 01-Nov-2015
2 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
1rvores de Deciso
Joo GamaJgama@liacc.up.pt
2002 Joo Gama 2
Sumario rvores de deciso
Motivao Construo de uma rvore de deciso
Critrios para seleccionar atributos Entropia
Podar a rvore Estimativas de erro
Extenses rvores multivariadas
-
22002 Joo Gama 3
rvores de Deciso Uma rvore de deciso utiliza uma estratgia de dividir-
para-conquistar: Um problema complexo decomposto em sub-problemas mais
simples. Recursivamente a mesma estratgia aplicada a cada sub-
problema. A capacidade de discriminao de uma rvore vem da:
Diviso do espao definido pelos atributos em sub-espaos. A cada sub-espao associada uma classe.
Crescente interesse CART (Breiman, Friedman, et.al.) C4.5 (Quinlan) Splus, Statistica, SPSS , R
2002 Joo Gama 4
rvores de deciso Exemplo da partio do espao dos atributos
-
32002 Joo Gama 5
O que uma Arvore de Deciso? Representao por rvores de deciso:
Cada n de deciso contem um teste num atributo.
Cada ramo descendente corresponde a um possvel valor deste atributo.
Cada Folha est associada a uma classe.
Cada percurso na arvore (da raiz folha) corresponde a uma regra de classificao.
No espao definido pelos atributos: Cada folha corresponde a uma regio
Hiper-rectngulo A interseco dos hiper-rectngulos
vazio A unio dos hiper-rectngulos o
espao completa.
2002 Joo Gama 6
Representao Uma rvore de deciso representa a disjuno de conjunes
de restries nos valores dos atributos Cada ramo na rvore uma conjuno de condies O conjunto de ramos na rvore so disjuntos
DNF (disjuntive normal form)
Qualquer funo lgica pode ser representada por um rvore de deciso.
Exemplo a or b
b
a
- +
+
10
10
-
42002 Joo Gama 7
Construo de uma rvore de deciso A ideia base:
1. Escolher um atributo.2. Estender a rvore adicionando um ramo para cada valor do
atributo.3. Passar os exemplos para as folhas (tendo em conta o valor do
atributo escolhido)4. Para cada folha
1. Se todos os exemplos so da mesma classe, associar essa classe folha2. Seno repetir os passos 1 a 4
2002 Joo Gama 8
Exemplos de rvores de Deciso Atributos binrios
1. And
1. Exerccios:1. Representar Or, Xor2.
A
0
0 1
1
10
111001010000
BA BA
)()( DCBA
B0
-
52002 Joo Gama 9
Exemplos:
NoSim9171ChuvaSimNo7581NubladoSimSim9072NubladoSimSim7075SolSimNo8075ChuvaSimNo7069SolNoNo9572SolSimSim6564NubladoNoSim7065ChuvaSimNo8068ChuvaSimNo9670ChuvaSimNo8683NubladoNoSim9080SolNoNo8585Sol
JogaventoHumidadeTemperatu.Tempo
NoSim9171ChuvaSimNo7581NubladoSimSim9072NubladoSimSim7075SolSimNo8075ChuvaSimNo7069SolNoNo9572SolSimSim6564NubladoNoSim7065ChuvaSimNo8068ChuvaSimNo9670ChuvaSimNo8683NubladoNoSim9080SolNoNo8585Sol
JogaventoHumidadeTemperatu.TempoVento
Sim No
O conjunto de dados original: Selecciona um atributo:
Qual o melhor atributo?
2002 Joo Gama 10
Critrios para Escolha do Atributo Como medir a habilidade de um dado atributo discriminar
as classes? Existem muitas medidas.
Todas concordam em dois pontos: Uma diviso que mantm as propores de classes em todas as
parties intil. Uma diviso onde em cada partio todos os exemplos so da
mesma classe tem utilidade mxima. 10 / 10 10 / 10
5 / 5 5 / 5 10 / 0 0 / 10
-
62002 Joo Gama 11
Caracterizao das medidas de partio
Medida da diferena dada por uma funo baseada nas propores das classes entre o n corrente e os ns descendentes.
Valoriza a pureza das parties. Gini, entropia
Medida da diferena dada por uma funo baseada nas propores das classes entre os ns descendentes.
Valoriza a disparidade entre as parties. Lopez de Mantaras
Medida de independncia Medida do grau de associao entre os atributos e a classe.
2002 Joo Gama 12
Entropia Entropia uma medida da aleatoridade de uma varivel. A entropia de uma varivel nominal X que pode tomar i valores:
A entropia tem mximo (log2 i) se pi = pj para qualquer i j A entropia(x) = 0 se existe um i tal que pi = 1
assumido que 0 * log2 0 = 0
=i
ii ppXentropia 2log*)(
-
72002 Joo Gama 13
Ganho de Informao No contexto das rvores de deciso a entropia usada para estimar a
aleatoridade da varivel a prever: classe. Dado um conjunto de exemplos, que atributo escolher para teste?
Os valores de um atributo definem parties do conjunto de exemplos. O ganho de informao mede a reduo da entropia causada pela partio dos
exemplos de acordo com os valores do atributo.
A construo de uma rvore de deciso guiada pelo objectivo dediminuir a entropia ou seja a aleatoridade -dificuldade de previso- da varivel objectivo.
( ) ( )v
ExsentropiaExs
vExs
ExsentropiaAtriExsganho #
# )( , =
2002 Joo Gama 14
Calculo do Ganho de Informao de um atributo nominal Informao da Classe:
p(sim) = 9/14 p(no) = 5/14 Info(joga) =
= - 9/14 log2 9/14 5/14 log2 5/14 = 0.940 bits
Informao nas parties: p(sim|tempo=sol) = 2/5 p(no|tempo=sol) = 3/5 Info(joga|tempo=sol)
= -2/5log22/5 3/5log23/5 = 0.971 bits Info(joga|tempo=nublado) = 0.0 bits Info(joga|tempo=chuva) = 0.971 bits Info(tempo)
= 5/14*0.971+4/14*0 + 5/14*0.971 = 0.693 bits
Ganho de Informao obtida neste atributo: Ganho(tempo) = 0.940 0.693 = 0.247 bits
203No
342Sim
ChuvaNubladoSol
-
82002 Joo Gama 15
Calculo do Ganho para Atributos numricos Um teste num atributo numrico produz uma partio binria do
conjunto de exemplos: Exemplos onde valor_do_atributo < ponto_referncia Exemplos onde valor_do_atributo >= ponto_referncia
Escolha do ponto de referncia: Ordenar os exemplos por ordem crescente dos valores do atributo numrico. Qualquer ponto intermdio entre dois valores diferentes e consecutivos dos
valores observados no conjunto de treino pode ser utilizado como possvel ponto de referncia.
usual considerar o valor mdio entre dois valores diferentes e consecutivos. Fayyard e Irani (1993) mostram que de todos os possveis pontos de referncia
aqueles que maximizam o ganho de informao separam dois exemplos de classes diferentes.
2002 Joo Gama 16
Calculo do Ganho para Atributos numricos Considere o ponto de referncia temperatura = 70.5 Um teste usando este ponto de referncia divide os exemplos
em duas parties: Exemplos onde temperatura < 70.5 Exemplos onde temperatura > 70.5
Como medir o ganho de informao desta partio? Informao nas parties
p(sim | temperatura70.5)=4/9 Info(joga | temperatur70.5) =
-5/9 log2 5/9 4/9 log2 4/9 = 0.991 bits Info(temperatura)=5/14*0.721+9/14*0.991 = 0.895 bits Ganho(temperatura) = 0.940 0.895 = 0.045 bits
Temperatu. Joga 64 Sim 65 No 68 Sim 69 Sim 70 Sim 71 No 72 No 72 Sim 75 Sim 75 Sim 80 No 81 Sim 83 Sim 85 No
-
92002 Joo Gama 17
Repetir o processo
2002 Joo Gama 18
Arvore de deciso final
-
10
2002 Joo Gama 19
Critrios de paragemQuando parar a diviso dos exemplos?
Todos os exemplos pertencem mesma classe.Todos os exemplos tm os mesmos valores dos atributos (mas
diferentes classes).O nmero de exemplos inferior a um certo limite.(?) O mrito de todos os possveis testes de partio dos exemplos
muito baixo.
2002 Joo Gama 20
Construo de uma Arvore de Deciso O problema de construir uma rvore de deciso:
Consistente com um conjunto de exemplos Com o menor numero de ns um problema NP completo.
Dois problemas: Que atributo seleccionar para teste num n? Quando parar a diviso dos exemplos ?
Os algoritmos mais divulgados: Utilizam heursticas que tomam decises olhando para a frente um
passo. No reconsideram as opes tomadas.
-
11
Regularizao em rvores de Deciso
2002 Joo Gama 22
Sobre-ajustamento O algoritmo de partio recursiva do conjunto de dados gera
estruturas que podem obter um ajuste aos exemplos de treino perfeito. Em domnios sem rudo o nr. de erros no conjunto de treino pode
ser 0. Em problemas com rudo esta capacidade problemtica:
A partir de uma certa profundidade as decises tomadas so baseadas em pequenos conjuntos de exemplos.
A capacidade de generalizao para exemplos no utilizados no crescimento da arvore diminui.
-
12
2002 Joo Gama 23
Variao do erro com o nr. de ns
0
5
10
15
20
25
30
35
40
1 5 10 20 30 40 50 60 70 80 90 100Nr. de Nos da Arvore
Erro
(%
)
TreinoTest
2002 Joo Gama 24
Sobre-ajustamento (overfitting) Definio:
Uma arvore de deciso d faz sobre-ajustamento aos dados se existir uma arvore d tal que:
d tem menor erro que d no conjunto de treino mas d tem menor erro na populao.
Como pode acontecer: Rudo nos dados Excesso de procura
O numero de parmetros de uma rvore de deciso cresce linearmente com o numero de exemplos. Uma rvore de deciso pode obter um ajuste perfeito aos dados de
treino.
-
13
2002 Joo Gama 25
Sobre-ajustamento Occams razor: preferncia pela hiptese mais simples.
Existem menos hipteses simples do que complexas. Se uma hiptese simples explica os dados pouco provvel que
seja uma coincidncia. Uma hiptese complexa pode explicar os dados apenas por
coincidncia. A avaliao de uma hiptese deve ter em conta o processo
de construo da hiptese.
2002 Joo Gama 26
Simplificar a arvore Duas possibilidades:
Parar o crescimento da arvore mais cedo (pre-pruning).Crescer uma arvore completa e podar a arvore (pos-pruning).
Growing and pruning is slower but more reliable Quinlan, 1988
O problema do Xor Requer olhar em frente mais que um nvel.
-
14
2002 Joo Gama 27
Critrios Critrios:
Obter estimativas fiveis do erro a partir do conjunto de treino. Optimizar o erro num conjunto de validao independente do
utilizado para construir a arvore. Minimizar:
erro no treino + dimenso da arvore Cost Complexity pruning (Cart)
dimenso da arvore + dimenso dos exemplos mal classificados MDL pruning (Quinlan)
2002 Joo Gama 28
Estimativas de Erro O problema fundamental do algoritmo de poda a estimativa de erro
num determinado n. O erro estimado a partir do conjunto de treino no um estimador fivel.
O reduced error pruning consiste em obter estimativas de erro a partir de um conjunto de validao
independente do conjunto de treino. Reduz o volume de informao disponvel para crescer a arvore.
O Cost complexity pruning, Breiman, 1984 Podar com base na estimativa do erro e complexidade da arvore.
Cart (Breiman et al.) O Error based pruning,
Podar com base numa estimativa do erro no conjunto de treino. Assume uma distribuio Binomial para os exemplos de um n.
Usado no C5.0
-
15
2002 Joo Gama 29
O Error based pruning Um determinado n contem N exemplos.
Classificando estes exemplos utilizando a classe maioritria, vo ser mal classificados E exemplos.
O erro neste n E/N. Qual o verdadeiro erro p neste n ? Assumindo que:
Os exemplos de um n constituem uma amostra de uma populao que segue uma distribuio binomial.
A varincia do erro neste n dada por: P * (1 - P) / N P o erro na populao (desconhecido).
Fixando um nvel de confiana, podemos obter um intervalo de confiana [Umin:Umax] para p.
Umax uma estimativa pessimista para o erro neste n.
2002 Joo Gama 30
O Error based pruning A probabilidade de uma varivel aleatria X, de mdia 0 e desvio
padro 1, assumir um valor maior que z, com confiana c, : P[X >= z] = c
Para um determinado nvel de confiana c, determinado o valor superior para o intervalo de confiana
)1/()42
(
NErrosf onde ]
/)1([
2
2
222
Nz
Nz
Nf
Nf
zN
zfp
czNpp
pfp
++++=
==>=
-
16
2002 Joo Gama 31
Um algoritmo de poda Percorre a rvore em profundidade Para cada n de deciso calcula:
Uma estimativa pessimista do erro no n Soma pesada das estimativas pessimistas dos erros nos ns
descendentes O peso a probabilidade de um exemplo seguir o ramo correspondente.
Se a estimativa do erro no n menor ou igual soma das estimativas de erros dos ns descendentes o n transformado em folha.
2002 Joo Gama 32
Exemplo Error based pruning No n B
Estimativa no n: 0.46 Soma pesada das estimativas nas
folhas: 6/14*0.47+2/14*0.72+6/14*0.47=0.51
Como 0.46 < 0.51 o n transformado numa folha.
Exerccio: Qual a deciso para o n A ?
9+5--
1+1--
4+2--
4+2--
1+1--
0.47 0.72 0.47
0.72
N B
N A
0.46
-
17
2002 Joo Gama 33
Valores Desconhecidos Pr-Processados
Substituir o valor desconhecido pelo valor mais provvel Atributos numricos: mdia. Atributos nominais: mediana.
Na construo do modelo Assumir que um atributo tem como possvel valor o valor
desconhecido. Atribuir um peso a cada exemplo.
Nos exemplos em que o atributo de teste toma um valor desconhecido, o exemplo passado para todos os ns descendentes com um peso proporcional probabilidade de um exemplo seguir o ramo.
Extenses
-
18
2002 Joo Gama 35
Algumas Ideias: rvores com funes nas folhas
NBTree usa Nave Bayes nas Folhas rvores com funes nos ns
Multivariate Trees rvores com funes nos ns e nas folhas
Functional Trees
rvores Incrementais Hoeffding Trees
Florestas de rvores .
2002 Joo Gama 36
Arvores Multivariadas Motivao
Discriminante linear Superfcies de deciso obliquas em relao aos eixos definidos pelos
atributos. rvores de Deciso
Partio do espao dos atributos. Superfcies de deciso: hiper-rectangulos.
rvores multivariadas: Combinao de superfcies de deciso obliquas com partio do espao dos
atributos:
-
19
2002 Joo Gama 37
Arvores Multivariadas Discriminantes Recursivos
QUEST Em cada n constri um discriminante linear.
Arvores Multivariadas LMDT
Em cada n constri uma Maquina Linear que usada como teste neste n.
LTREE Em cada n constri um discriminante linear Todos os exemplos neste n so estendidos com novos atributos
Cada novo atributo a probabilidade de o exemplo estar num lado do hiper-plano.
A capacidade de discriminao de um novo atributo estimada em competio com os atributos originais.
Anlise(em geito de concluso)
-
20
2002 Joo Gama 39
Vantagens das Arvores de deciso Mtodo no-paramtrico
No assume nenhuma distribuio particular para os dados. Pode construir modelos para qualquer funo desde que o numero de exemplos
de treino seja suficiente. A estrutura da rvore de deciso independente da escala das
variveis. Transformaes montonas das variveis (log x, 2*x, ...) no alteram a estrutura
da arvore. Elevado grau de interpretabilidade
Uma deciso complexa (prever o valor da classe) decomposto numa sucesso de decises elementares.
eficiente na construo de modelos: Complexidade mdia O(n log n)
Robusto presena de pontos extremos e atributos redundantes ouirrelevantes. Mecanismo de seleco de atributos.
2002 Joo Gama 40
Inconvenientes das rvores de deciso Instabilidade
Pequenas perturbaes do conjunto de treino podem provocar grandes alteraes no modelo aprendido.
Presena de valores desconhecidos Fragmentao de conceitos
Replicao de sub-arvores
)()( dcba
-
21
2002 Joo Gama 41
O espao de Hipteses O espao de hipteses
completo Qualquer funo pode ser
representada por uma rvore de deciso.
No reconsidera opes tomadas Mnimos locais
Escolhas com suporte estatstico Robusto ao rudo
Preferncia por rvores mais pequenas
2002 Joo Gama 42
Bibliografia Adicional Online:
http://www.Recursive-Partitioning.com/ Tom Mitchell
Machine Learning (chap.3) MacGrawHill, 1997
Quinlan, R. C4.5 Programs for Machine Learning
Morgan Kaufmann Publishers, 1993
L.Breiman, J.Friedman, R.Olshen, C.Stone Classification and Regression Trees
Wadsworth, 1984
-
22
2002 Joo Gama 43
Exerccios Considere um problema de duas classes, definido por 4 atributos
binrios x1,x2,x3,x4. Represente sob a forma de uma rvore o conceito
(x1 e x2 e x3) ou x4 (x1 e x2) ou (x3 e x4)
Utilizando ferramentas computacionais, calculo o atributo para a raiz de uma rvore de deciso nos problemas Iris Balance-scale
Utilizando ferramentas computacionais, indique uma rvore qualquer (a escolha do atributo a usar em cada n pode ser aleatria) para o problema Iris Qual a taxa de erro da rvore no dataset de treino? Aplique o algoritmo de poda rvore.
top related