referências Árvore - ppgia.pucpr.bralekoe/am/2005/3-arvoresdecisao-apremaq.pdf · alessandro l....
Post on 21-Jan-2019
213 Views
Preview:
TRANSCRIPT
Aprendizagem de Máquina
Aprendizagem de Árvores de Decisão
Aula 3 Alessandro L. Koerich
Mestrado em Informática AplicadaPontifícia Universidade Católica do Paraná (PUCPR)
Mestrado em Informática Aplicada Aprendizagem de Máquina 2Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Plano de Aula
Introdução
Representação de Árvores de Decisão
Algoritmo de Aprendizagem ID3
Entropia e Ganho de Informação
Exemplos
Aspectos na Aprendizagem de Árvores de Decisão
Resumo
Mestrado em Informática Aplicada Aprendizagem de Máquina 3Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Referências
Duda R., Hart P., Stork D. PatternClassification 2ed. Willey Interscience, 2002. Capítulo 8.
Mitchell T. Machine Learning. WCB McGraw–Hill, 1997. Capítulo 3.
Mestrado em Informática Aplicada Aprendizagem de Máquina 4Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore
Mestrado em Informática Aplicada Aprendizagem de Máquina 5Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Introdução
Aprendizagem de árvores de decisão é um dos métodos de aprendizagem mais práticos e mais utilizados para a aprendizagem indutiva.
É um método para a aproximação de funções de valor discreto
É um método robusto a ruídos nos dados
Utiliza um bias indutivo: preferência por árvores menores.
Mestrado em Informática Aplicada Aprendizagem de Máquina 6Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Introdução
É um método para aproximar funções alvo de valor discreto, onde a função aprendida é representada por uma árvore de decisão.
Árvores de decisão também podem ser representadas como conjuntos de regras SE–ENTÃO (IF–THEN).
É um dos métodos de aprendizagem mais conhecidos
Aplicações: do diagnóstico de imagens médicas a análise de risco de crédito
Mestrado em Informática Aplicada Aprendizagem de Máquina 7Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Representação de Árvores de Decisão
Árvores de decisão classificam instâncias ordenando–as árvore acima (ou abaixo), a partir da raiz até alguma folha.
Cada nó da árvore especifica o teste de algum atributo da instância
Cada ramo partindo de um nó corresponde a um dos valores possíveis dos atributos.
Mestrado em Informática Aplicada Aprendizagem de Máquina 8Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo
Mestrado em Informática Aplicada Aprendizagem de Máquina 9Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Representação de Árvores de Decisão
Uma instância é classificada inicialmente pelo nó raiz, testando o atributo especificado por este nó.
Em seguida, movendo-se através do ramo correspondendo ao valor do atributo no exemplo dado.
Este processo é repetido para a sub-árvore originada no novo nó (Figura)
Mestrado em Informática Aplicada Aprendizagem de Máquina 10Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo
Mestrado em Informática Aplicada Aprendizagem de Máquina 11Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo
Mestrado em Informática Aplicada Aprendizagem de Máquina 12Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore de Decisão para PlayTennis
Uma árvore de decisão para o conceito PlayTennis.
Um exemplo é classificado ordenando–o através da árvore para o nó folha apropriado
Então retorna a classificação associada com esta folha (Yes ou No)
Mestrado em Informática Aplicada Aprendizagem de Máquina 13Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore de Decisão para PlayTennis
Mestrado em Informática Aplicada Aprendizagem de Máquina 14Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore de Decisão para PlayTennis
<Outlook=Sunny, Temperature=High, Humidity=High, Wind=Strong>
Mestrado em Informática Aplicada Aprendizagem de Máquina 15Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore de Decisão para PlayTennis
Em geral, árvores de decisão representam uma disjunção de conjunções de restrições sobre valores dos atributos das instâncias.
Cada caminho entre a raiz da árvore e uma folha corresponde a uma conjunção de testes de atributos e a própria árvore corresponde a uma disjunção destas conjunções.
Exemplo:(Outlook=Sunny ∧ Humidity=Normal)
∨ (Outlook=Overcast)∨ (Outlook=Rain, Wind=Weak)
Mestrado em Informática Aplicada Aprendizagem de Máquina 16Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Árvore de Decisão para PlayTennis
Representação de árvores de decisão:
Cada nó interno testa um atributo
Cada ramo corresponde ao valor do atributo
Cada folha atribui uma classificação
Mestrado em Informática Aplicada Aprendizagem de Máquina 17Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Quando Considerar Árvores de Decisão
Instâncias descritas por pares atributo–valor.Instâncias são descritas por um conjunto fixo de atributos (e.g. Temperature) e seus valores (e.g. Hot)
Função alvo tem valores discretos de saída. Classificação booleana (Yes ou No) para cada exemplo ou mais de duas possibilidades.
Mestrado em Informática Aplicada Aprendizagem de Máquina 18Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Quando Considerar Árvores de Decisão
Hipóteses disjuntivas podem ser necessárias. Árvores de decisão representam naturalmente expressões disjuntivas.
Dados de treinamento podem conter erros e valores de atributos faltantes.
Mestrado em Informática Aplicada Aprendizagem de Máquina 19Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Quando Considerar Árvores de Decisão
Exemplos:
Diagnóstico ou equipamentos médicos
Análise de risco em crédito
Modelagem de preferências em agendamento
Mestrado em Informática Aplicada Aprendizagem de Máquina 20Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
Base: Algoritmo ID3 e seu sucessor C4.5
O algoritmo ID3 “aprende” árvores de decisão construindo–as de cima para baixo (top–down), começando com a questão:
“Qual atributo deve ser testado na raiz da árvore?”
Para responder esta questão, cada atributo da instância é avaliado usando um teste estatístico para determinar quão bem ele sozinho classifica os exemplos de treinamento.
Mestrado em Informática Aplicada Aprendizagem de Máquina 21Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo
Melhor Atributo !!!
Mestrado em Informática Aplicada Aprendizagem de Máquina 22Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
O melhor atributo é selecionado e usado como teste na raiz da árvore.
Um descendente do nó raiz é então criado para cada valor possível deste atributo e os exemplos de treinamento são ordenados para o nó descendente apropriado.
Mestrado em Informática Aplicada Aprendizagem de Máquina 23Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
O processo é repetido usando exemplos de treinamento associados com cada nó descendente para selecionar o melhor atributo para testar naquele ponto da árvore.
Busca gulosa (greedy) por uma árvore de decisão aceitável, na qual o algoritmo nunca recua para reconsiderar escolhas prévias.
Mestrado em Informática Aplicada Aprendizagem de Máquina 24Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
Mestrado em Informática Aplicada Aprendizagem de Máquina 25Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
ID3( Exemplos, Atributo_Alvo, Atributos)Exemplos são os exemplos de treinamento. Atributo_Alvo é o atributo cujo valor será predito pela árvore. Atributos é uma lista de outros atributos que podem ser testados pela árvore de decisão. Retorna uma árvore de decisão que classifica corretamente os Exemplos dados.• Crie um nó Raiz para a árvore• Se todos Exemplos forem positivos, retorne a árvore de nó único (Raiz), com etiqueta = +• Se todos Exemplos forem positivos, retorne a árvore de nó único (Raiz), com etiqueta = –• Se Atributos estiver vazio, retorne a árvore de nó único Raiz, com etiqueta = valor mais comum do Atributo_Alvo nos Exemplos• Caso contrário, comece:
o A ← o atributo de Atributos que melhor classifica* Exemploso O atributo de decisão para Raiz ← Ao Para cada valor possível, vi, de A,
Adicione um novo ramo da árvore abaixo da Raiz, correspondendo ao teste A = viFaça Exemplosvi ser o subconjunto de Exemplos que tem valor vi para A.Se Exemplosvi for vazio
• Então embaixo deste novo ramo, adicione uma folha com etiqueta = valor mais comum do Atributo_Alvo nos Exemplos• Senão embaixo deste novo ramo adicione a subárvore
ID3(Exemplos, Atributo_Alvo, Atributos – {A}) • Final• Retorne Raiz
* O melhor atributo é aquele com ganho de informação mais elevado.
Mestrado em Informática Aplicada Aprendizagem de Máquina 26Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Algoritmo Básico para Aprendizagem de Árvores de Decisão
Escolha Central:
Selecionar qual atributo testar em cada nó da árvore.
Devemos selecionar:
Atributo que é mais útil para classificar os exemplos.
Medida Quantitativa:
Ganho de Informação = mede quão bem um dado atributo separa os exemplos de treinamento de acordo com a classificação alvo.
Mestrado em Informática Aplicada Aprendizagem de Máquina 27Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Indução Top–Down de Árvores de Decisão
Laço principal do algoritmo ID3
1. A ← o melhor atributo de decisão para o próximo nó
2. Atribui A como atributo de decisão para nó
3. Para cada valor de A criar um novo descendente de nó
4. Arranjar os exemplos de treinamento para os nós folhas
5. Se os exemplos de treinamento forem classificados perfeitamente, então PARE, Senão iteração sobre novos nós folhas
Mestrado em Informática Aplicada Aprendizagem de Máquina 28Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Indução Top–Down de Árvores de Decisão
Qual é o melhor atributo ?
Mestrado em Informática Aplicada Aprendizagem de Máquina 29Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Fronteiras de Decisão
Com dados numéricos é possível visualizar as fronteiras de decisão.
Mestrado em Informática Aplicada Aprendizagem de Máquina 30Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Caracteriza a (im)pureza de uma coleção arbitrária de exemplos.
Dado uma coleção S contendo exemplos + e – de algum conceito alvo, a entropia de S relativa a esta classificação booleana é:
p+ é a proporção de exemplos positivos em S
p– é a proporção de exemplos negativos em S
−−++ −−≡ ppppSEntropia 22 loglog)(
Mestrado em Informática Aplicada Aprendizagem de Máquina 31Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Exemplo: Sendo S uma coleção de 14 exemplos de algum conceito booleano, incluindo 9 exemplos positivos e 5 negativos [9+, 5–].
A entropia de S relativa a classificação booleana é:
940.0
)14
5log
14
5
14
9log
14
9(])5,9([ 22
=
−−=−+Entropia
Mestrado em Informática Aplicada Aprendizagem de Máquina 32Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
A função entropia relativa a uma classificação booleana, como a proporção, p+ de exemplos positivos varia entre 0 e 1.
Mestrado em Informática Aplicada Aprendizagem de Máquina 33Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Mestrado em Informática Aplicada Aprendizagem de Máquina 34Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Entropia(S) = número de bits esperados necessários para codificar classe (+ ou –) de membros tirados aleatoriamente de S ( sob o código ótimo, de comprimento mais curto).
Por que?
Teoria da informação: código de tamanho ótimo atribui –log2p bits para mensagens tendo probabilidade p.
Mestrado em Informática Aplicada Aprendizagem de Máquina 35Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Então, o número esperado de bits para codificar + ou – de um membro aleatório de S:
−−++
−−++
−−≡
−+−
ppppSEntropia
pppp
22
22
loglog)(
)log()log(
Mestrado em Informática Aplicada Aprendizagem de Máquina 36Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Entropia
Generalizando para o caso de um atributo alvo aceitar c diferentes valores, a entropia de Srelativa a esta classificação c–classes é definida como:
onde pi é a proporção de S pertencendo a classe i.
∑=
−≡c
iii ppSEntropia
12log)(
Mestrado em Informática Aplicada Aprendizagem de Máquina 37Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Ganho de Informação
Gain (S,A) = redução esperada na entropia devido a ordenação sobre A, ou seja, a redução esperada na entropia causada pela partição dos exemplos de acordo com este atributo A.
∑∈
−≡)(
)()(),(AValoresv
vv SEntropia
S
SSEntropiaASGain
Mestrado em Informática Aplicada Aprendizagem de Máquina 38Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Ganho de Informação
S é uma coleção de (dias) exemplos de treinamento descritos por atributos incluindo Wind. Temos 14 exemplos.
Mestrado em Informática Aplicada Aprendizagem de Máquina 39Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Superfície de Separação
Mestrado em Informática Aplicada Aprendizagem de Máquina 40Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Atributo alvo: PlayTennis (yes, no)
Mestrado em Informática Aplicada Aprendizagem de Máquina 41Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Primeiro passo: criação do nó superior da árvore de decisão.
Qual atributo deve ser testado primeiro na árvore?
Determinar o ganho de informação (Gain) para cada atributo candidato (i.e. Outlook, Temperature, Humidity e Wind)
Selecionar aquele cujo ganho de informação é o mais alto.
Mestrado em Informática Aplicada Aprendizagem de Máquina 42Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Mestrado em Informática Aplicada Aprendizagem de Máquina 43Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Exemplo:
Gain (S, Outlook) = 0.246
Gain(S, Humidity) = 0.151
Gain (S, Wind) = 0.048
Gain (S, Temperature) = 0.029
Ou seja, o atributo Outlook fornece a melhor predição do atributo alvo, PlayTennis, sobre os exemplos de treinamento (Fig 3.4)
Mestrado em Informática Aplicada Aprendizagem de Máquina 44Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Mestrado em Informática Aplicada Aprendizagem de Máquina 45Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
O processo para selecionar um novo atributo e particionar os exemplos de treinamento é repetido para cada nó descendente não terminal
São utilizados somente os exemplos de treinamento associados com este nó.
Atributos que foram incorporados anteriormente a árvore são excluídos →qualquer atributo deve aparecer somente uma vez ao longo de qualquer caminho na árvore.
Mestrado em Informática Aplicada Aprendizagem de Máquina 46Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Este processo continua até que uma das seguintes condições seja atendida:
1. Todos os atributos já estejam incluídos ao longo deste caminho da árvore;
2. Os exemplos de treinamento associados com este nó folha tenham todos o mesmo valor de atributo alvo.
A árvore final é ...
Mestrado em Informática Aplicada Aprendizagem de Máquina 47Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Exemplo Ilustrativo
Árvore de decisão final.
Mestrado em Informática Aplicada Aprendizagem de Máquina 48Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Busca no Espaço de Hipóteses por ID3
O método de aprendizagem ID3 pode ser caracterizado como um método de busca em um espaço de hipóteses, por uma hipótese que se ajusta aos exemplos de treinamento.
O espaço de hipóteses buscado pelo ID3 é o conjunto de árvores de decisão possíveis.
O ID3 realiza uma busca simples–complexa, hill–climbing através do espaço de hipóteses começando com uma árvore vazia e considerando progressivamente hipóteses mais elaboradas (Fig 3.5).
Mestrado em Informática Aplicada Aprendizagem de Máquina 49Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Busca no Espaço de Hipóteses por ID3
Mestrado em Informática Aplicada Aprendizagem de Máquina 50Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Busca no Espaço de Hipóteses por ID3
Espaço de hipóteses está completoA função alvo esta presente com certeza
Fornece um única hipótese (qual ?)Não pode representar 20 hipóteses
Sem backtracking (recuo/voltar atrás)Mínimo local
Escolhas de busca com base estatísticaRobustez a ruído nos dados
Solução com bias indutivo (prefere árvores mais curtas)
Mestrado em Informática Aplicada Aprendizagem de Máquina 51Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Bias Indutivo no ID3
Dada uma coleção de exemplos de treinamento, existem geralmente várias árvores de decisão consistentes com os exemplos.
Qual árvore deve ser escolhida ????
Mestrado em Informática Aplicada Aprendizagem de Máquina 52Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Bias Indutivo no ID3
A preferência é por árvores mais curtas e por aquelas com atributos de alto ganho de informação próximos da raiz
Bias: é uma preferência por algumas hipóteses aos invés de uma restrição do espaço de hipóteses H
Occam’s razor prefere as hipóteses mais curtas (mais simples) que se ajustam aos dados
Mestrado em Informática Aplicada Aprendizagem de Máquina 53Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Occam’s Razor
Por que a preferência por hipóteses curtas?
Argumentos a favor:
Poucas hipóteses curtas VERSUS hipóteses longas
Uma hipótese curta que se ajusta aos dados → improvável ser coincidente
Uma hipótese longa que se ajusta aos dados pode ser coincidente
Mestrado em Informática Aplicada Aprendizagem de Máquina 54Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Occam’s Razor
Por que a preferência por hipóteses curtas?
Argumentos contrários:
Existem muitas maneiras de definir pequenos conjuntos de hipóteses
E.g. todas as árvores com um número primo de nós que usa atributos
Mestrado em Informática Aplicada Aprendizagem de Máquina 55Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Aspectos na Aprendizagem de Árvoresde Decisão
Aspectos práticos na aprendizagem de árvores de decisão:
Crescimento da profundidade de árvores de decisão
Manipulação de atributos contínuos
Escolha de uma medida apropriada para a seleção de atributos
Manipulação de atributos com diferentes custos
Melhoria da eficiência computacionalMestrado em Informática Aplicada Aprendizagem de Máquina 56Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Sobreajuste em Árvores de Decisão
Considere a adição de ruído no exemplo de treinamento #15.
< Sunny, Hot, Normal, Strong, PlayTennis = No>
Qual o efeito na árvore anterior?
Mestrado em Informática Aplicada Aprendizagem de Máquina 57Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Sobreajuste (Overfitting)
Considere o erro da hipótese h sobreDados de treinamento: errotrain(h)
Distribuição de dados inteira D: erroD(h)
Uma hipótese h∈H sobreajusta os dados de treinamento se existir uma hipótese alternativa h’∈ H tal que:
errotrain(h) < errotrain(h’ )
e
erroD(h) > erroD(h)
Mestrado em Informática Aplicada Aprendizagem de Máquina 58Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Sobreajuste no Treinamento de Árvores de Decisão
Mestrado em Informática Aplicada Aprendizagem de Máquina 59Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Evitando Sobreajuste
Como podemos evitar o sobreajuste?Parar o crescimento quando a partição de dados não for estatisticamente significante
Desenvolver uma árvore completa e então fazer uma poda.
Como selecionar a melhor árvoreMedida de performance sobre os dados de treinamento
Medida de performance sobre um conjunto de dados de validação
Mestrado em Informática Aplicada Aprendizagem de Máquina 60Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Evitando Sobreajuste
Usar uma medida explícita de complexidade para a codificação de exemplos de treinamento e a árvore de decisão.
Minimizar o comprimento da descrição mínima (MDL) size ( tree ) + size ( misclassifications ( tree ) )
Mestrado em Informática Aplicada Aprendizagem de Máquina 61Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Erro de Poda Reduzido
Podar um nó de decisão → consiste em remover a sub-árvore enraizada naquele nó, tornando–o um nó folha.
Atribuir a este nó, a classificação mais comum dos exemplos de treinamento afiliados com aquele nó.
Nós são removidos somente se a árvore aparada resultante não apresenta um comportamento pior do que a original sobre o conjunto de validação
Mestrado em Informática Aplicada Aprendizagem de Máquina 62Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Erro de Poda Reduzido
Particionar os dados em conjuntos de validação e treinamento
Faça até que uma redução (poda) adicional seja prejudicial
1. Avaliar o impacto sobre o conjunto de validação da poda de cada nó possível, mais aqueles abaixo dele
2. Remover “gulosamente” aquele que melhora mais a precisão sobre o conjunto de validação
Mestrado em Informática Aplicada Aprendizagem de Máquina 63Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Erro de Poda Reduzido
Produz a menor versão da sub-árvore mais precisa
E se os dados forem limitados?
Mestrado em Informática Aplicada Aprendizagem de Máquina 64Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Efeito do Erro de Poda Reduzido
Mestrado em Informática Aplicada Aprendizagem de Máquina 65Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Pós–Redução (Poda) da Regra
1. Converter a árvore em um conjunto de regras equivalente
2. Podar cada regra independentemente das outras
3. Ordenar as regras finais em uma seqüência desejável para o uso
Talvez seja o método usando com mais freqüência. (e.g. C4.5)
Mestrado em Informática Aplicada Aprendizagem de Máquina 66Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Convertendo uma Árvore em Regras
IF (Outlook = Sunny) ^ (Humidity = High)THEN PlayTennis = No
IF (Outlook = Sunny) ^ (Humidity = Normal)THEN PlayTennis = Yes
Mestrado em Informática Aplicada Aprendizagem de Máquina 67Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Convertendo uma Árvore em Regras
Vantagens de converter uma árvore de decisão em regras antes da poda:
Permite distinguir entre os diferentes contextos onde os nós de decisão são utilizados.
Remove a distinção entre atributos de testes que ocorrem próximos da raiz da árvore e aqueles que ocorrem próximos das folhas.
Melhora a leitura. Regras são geralmente mais fáceis para pessoas entenderem
Mestrado em Informática Aplicada Aprendizagem de Máquina 68Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Atributos de Valor Continuo
Na definição da ID3 temos as restrições:1. Atributo alvo deve ter valor discreto2. Os atributos testados nos nós de decisão devem também ser de valor discreto.
A segunda restrição pode ser removida.Definir dinamicamente novos atributos de valor discreto que particionam o valor do atributo contínuo em um conjunto discreto de intervalos.
A = atributo de valor contínuo → criar um novo atributo Ac que é verdadeiro se A < c e falso caso contrário.
Como identificar c ???
Mestrado em Informática Aplicada Aprendizagem de Máquina 69Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Atributos de Valor Continuo
Exemplo: Incluir o atributo de valor contínuo Temperature na descrição dos exemplos de treinamento para a tarefa de aprendizagem anterior.
Supondo que os exemplos de treinamento associados a um nó particular são
Escolher um limiar c que produza o maior ganho de informações → Identificar exemplos adjacentes que diferem na classificação alvo.
Mestrado em Informática Aplicada Aprendizagem de Máquina 70Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Atributos de Valor Contínuo
Dois limiares candidatos:
c1 = (48+60)/2 = 54
c2 = (80+90)/2 = 85
O ganho de informação pode ser calculado para cada um destes atributos candidatos: Temperature>54 e Temperature>85 e o melhor pode ser selecionado (T>54)
Mestrado em Informática Aplicada Aprendizagem de Máquina 71Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Atributos com Muitos Valores
Problema:Se o atributo tem muitos valores GainselecionaráImagine utilizar Date=Jun_3_1996 como atributo
Uma solução: Usar GainRatio (penaliza o atributo Date) ao invés:
),(
),(),(
ASmationSplitInfor
ASGainASGainRatio ≡
S
S
S
SASmationSplitInfor i
c
i
i2
1
log),( ∑=
−≡
Mestrado em Informática Aplicada Aprendizagem de Máquina 72Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Atributos com Custos
Considere
Diagnóstico médico. BloodTest tem custo $150
Robótica. Width_from_1ft tem custo 23seg.
Como aprender um árvore consistente com custo esperado baixo? Uma solução: Substituir o gain por
Tan and Schlimmer (1994)
Nunez (1998)
onde w ∈ [0,1] determina a importância do custo
)(
),(2
ACostASGain
( )wASGain
ACost 1)(
12 ),(
+−
Mestrado em Informática Aplicada Aprendizagem de Máquina 73Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Valores de Atributos Desconhecidos
E se para alguns exemplos faltam os valores de A?
Use o exemplo de treinamento de qualquer jeito, ordene através da árvore
Se o nó n testa A, atribua o valor mais comum de A entre outros exemplos ordenados para o nó n
Atribuir o valor mais comum de A entre outros exemplos com a mesmo valor alvo
Atribuir uma probabilidade pi para cada valor possível vi de AAtribuir uma fração pi do exemplo para cada descendente na árvore
Classificar novos exemplos da mesma maneira
Mestrado em Informática Aplicada Aprendizagem de Máquina 74Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Resumo
Aprendizagem de árvores de decisão fornece um método prático para a aprendizagem de conceito e para a aprendizagem de outras funções de valor discreto
A família de algoritmos ID3 infere árvores de decisão expandindo–as a partir da raiz e descendo, selecionando o próximo melhor atributo para cada novo ramo de decisão adicionado a árvore.
ID3 busca um espaço de hipóteses completo evitando assim que a função alvo possa não estar presente no espaço de hipóteses.
Mestrado em Informática Aplicada Aprendizagem de Máquina 75Alessandro L. Koerich (alekoe@ppgia.pucpr.br)
Resumo
O bias indutivo implícito no ID3 inclui uma preferência por árvores menores. A busca através do espaço de hipóteses expande a árvore somente o necessário para classificar os exemplo de treinamento disponíveis.
Sobreajuste é um aspecto importante na aprendizagem de árvores de decisão. Métodos para poda posterior são importantes para evitar o sobreajuste.
Várias extensões ao algoritmo básico ID3.
top related