Aprendizado de Maquina e Arvore de Decisão
Aprendizado de Maquina e Arvore de Decisão
Aprendizado de Maquina e Arvore de Decisão
Aprendizado de Conceito
Etapas do KDD – Abordagem Computacional
Etapas do KDD – Abordagem Computacional
ã o de
a ra ç
p
Pre Dados
Etapas do KDD – Abordagem Computacional
ã o de
a ra ç
p
Pre Dados
ã o de
x t r a ç to
E im e n
h e c
Con
Etapas do KDD – Abordagem Computacional
Visualização
o de de Dados
ra çã
p a
Pre Dados
ã o de
x t r a ç to
E im e n
h e c
Con
Extração de Conhecimento –
Aprendizado de Máquina
• Definição (Mitchell, 1997):
– Pode-se dizer que um programa de computador aprende a
partir de uma experiência E com respeito a uma classe de
tarefas T e com medida de desempenho P, se seu
desempenho P na tarefa T melhora com a experiência E.
• 3 Componentes:
– Tarefa a ser realizada
– A fonte de experiência (arquivos?)
– A medida de desempenho (a ser otimizada)
• Medida de Desempenho
– Na maioria das vezes espera-se um valor aproximado
– Função Objetivo ideal (V)
– Função Objetivo utilizada (V)
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Supervisionado
25
20
Series1
15
Series2
10
5
0
0
5
10
15
20
25
Aprendizado Não Supervisionado
25
20
15
10
5
0
0
5
10
15
20
25
Aprendizado Não Supervisionado
25
20
15
10
5
0
0
5
10
15
20
25
Aprendizado Não Supervisionado
25
20
15
10
5
0
0
5
10
15
20
25
Aprendizado Não Supervisionado
25
20
15
10
5
0
0
5
10
15
20
25
Aprendizado Semissupervisionado
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Semi-supervised Learning
25
20
15
Series1
Series2
10
Unlabeled
5
0
0
5
10
15
20
25
Aprendizado de Conceito
• É um problema de busca por uma
hipótese que melhor se ajusta a um
conjunto de treinamento. A busca é
realizada em um espaço (de busca)
predefinido contendo hipóteses
candidatas.
Aprendizado de Conceito
• Aquisição de conceitos gerais de
exemplos específicos de treinamento
• Um conceito pode ser a descrição de um
objeto ou objetos pertencentes a um
conjunto
– Carro, casa, pessoa, cachorro, saudável, etc.
– Um elemento pertence ou não a um conceito
• Função booleana
Aprendizado de Conceito
• Definição (Mitchell, 1997): inferência de
uma função booleana utilizando exemplos
de entradas e saídas.
• Exemplo contact-lenses
Aprendizado de Conceito
• Definições:
– Conjunto de itens que define um conceito é chamado
conjunto de instâncias X (arquivo de dados)
– O conceito (ou função) a ser aprendido é chamado
conceito alvo c. c: X → {0,1}
– Instâncias onde c(x) = 1 são chamadas exemplos
positivos
– Instâncias onde c(x) = 0 são chamadas exemplos
negativo
– O objetivo do aprendizado é encontrar uma hipótese h
tal que h(x) = c(x) para todo x em X.
Aprendizado de Conceito
• Qualquer hipótese considerada uma boa
aproximação da função objetivo obtida a
partir de um conjunto de treinamento
suficientemente grande, também será uma
boa aproximação para dados ainda não
observados (dados de teste).
Aprendizado de Conceito
• Viés indutivo: é o conjunto de considerações
iniciais feitas para que o algoritmo de
aprendizado realize o aprendizado de maneira
correta
• Nem sempre o viés indutivo é correto e nestes
casos o algoritmo poderá gerar resultados
também incorretos.
• Exemplo:
– a hipótese mais geral deve sempre ser preferida
– a hipótese mais específica deve sempre ser preferida
Aprendizado de Máquina
Árvore de Decisão
Árvore de Decisão
• Uma das formas de aprendizado indutivo
mais utilizadas
– Aplicações práticas
– Tarefas de Classificação (Aprendizado
supervisionado)
• Aproximação de funções discretas
robusta a ruídos
• Aprendizado de expressões disjuntivas
Árvore de Decisão
Árvore de Decisão
Entropia(S) ≡
Árvore de Decisão – ID3
• O ganho de informação de um atributo é a
redução esperada na entropia causada pelo
particionamento das instâncias de acordo com
este atributo. Ou seja, o quanto se espera que
a entropia seja reduzida quando se sabe o
valor do atributo A.
Ganho(S,A) ≡
Argument opposed:
• What’s so special about “short” hypotheses?
Árvore de Decisão – C4.5
Definição (mitchell, 1997): considere um
espaço de hipóteses H. Uma hipótese h ∈ H,
superestima (overfits) um conjunto de dados
de treinamento (D) se existe alguma outra
hipótese h’ ∈ H, tal que, h possui um erro
menor que h’ em D, mas h’ possui um erro
menor que h no conjunto de dados completo.
Árvore de Decisão – C4.5
• Overfitting pode prejudicar o desempenho
de algoritmos de aprendizado
• Overfitting acontece principalmente
quando:
– Há ruído nos dados
– A amostra de treinamento é muito pequena
(não reflete a distribuição dos dados).
Árvore de Decisão – C4.5
• Existem basicamente duas linhas de
atuação para se minimizar Overfitting em
aprendizado de árvores de decisão:
– Parar de expandir um ramo antes de atingir a
classificação perfeita (entropia=zero)
• Dificuldade em se definir o ponto de parada
– Podar a árvore construída sem a
preocupação de se evitar overffiting
Árvore de Decisão – C4.5
• Poda pela Redução do Erro (Quinlan,
1987)
– Todos os nós da árvores são candidatos à
poda
– Realiza-se a poda se a árvore resultante não
gera resultados de classificação piores que a
árvore original (no conjunto de teste)
– Um terceiro conjunto (de validação) de dados
(≠ do conjunto de teste e do conjunto de
treinamento pode ser usado)
Árvore de Decisão – C4.5
• Poda pela Redução do Erro (Quinlan, 1987)
Árvore de Decisão – C4.5
• Poda de Regras
– Converte-se a árvore em regras
– Poda-se cada regra removendo-se os antecedentes
que resultem em melhora na taxa de classificação
• Pode-se utilizar conjunto de validação ou não (como no C4.5)
– Ordena-se as regras de acordo com a precisão (taxa
de classificação) de cada uma
– As regras são utilizadas, para classificar novas
instâncias, na seqüência estabelecida no passo
anterior
Árvore de Decisão – C4.5
• Poda de Regras
– A conversão da árvore em regras permite
que:
• a eliminação seja testada em sub-ramos de
maneira independente
• A eliminação de nós ocorra em qualquer sentido
(não necessariamente da raiz para as folhas
• Facilita a compreensão do modelo
Árvore de Decisão – C4.5
• Atributos contínuos
– Considere um atributo contínuo
“temperature” (Mitchell, 1997) como abaixo:
– Tem-se:
• (48+60)/2 = 54
• (80+90)/2 = 85
– Calcula-se então o ganho de informação de
cada possibilidade
Árvore de Decisão – C4.5
• Atributos contínuos
– Para este exemplo os atributos
Temperature>54
Temperature>85.
– A partir daí o novo atributo participa da
construção da árvore como se fosse um
atributo discreto
– Há ainda outros métodos para tornar o
atributo discreto e com mais de 2 valores
possíveis (veja Fayyad and Irani, 1993)
Árvore de Decisão – C4.5
• Atributos com muitos valores possíveis