Marcus Sampaio
DSC/UFCG
Classificação Supervisionada
Marcus Sampaio
DSC/UFCG
• Entrada
– Um BD de tuplas, cada uma com um valor (classe) de
um atributo de classificação
• Saída: um modelo / perfil para cada classe
– Classe ‘crédito bom’
• (25 <= idade <= 40 e renda > 10k)  ‘crédito bom’
• casado  ‘crédito bom’
• Aplicações
– Análise de crédito (bom para concessão, ruim para
concessão)
– Perfil de cliente usuário de crédito (adimplemte,
inadimplente)
Marcus Sampaio
DSC/UFCG
Classificação Supervisionada (2)
• Organização prévia de dados em classes –
supervisão
– Dados: conjunto de casos, ou instâncias
– Classe: valor de um atributo de classificação
• Um algoritmo de classificação induz (infere, aprende)
padrões de classificação – modelo – dos dados
• Confiabilidade do modelo
– Divisão dos dados em conjunto de treinamento (conjuntotreinamento) e conjunto de teste (conjunto-teste)
– Um algoritmo de classificação induz (infere, aprende)
padrões de classificação – modelo – de conjuntos de
treinamento (depende da técnica utilizada)
– O modelo é testado com o conjunto de testes
• O modelo aprovado é usado para classificar novos
casos  conjunto de execução
Qualidade de um Modelo
Marcus Sampaio
DSC/UFCG
• Acurácia, desempenho e taxa de erro são sinônimos
• Um algoritmo de classificação classifica ou prediz a
classe de cada instância de teste, utilizando o modelo
inferido no treinamento
– Se a classificação for correta, então sucesso senão erro
– A taxa de erro é justamente a proporção de erros sobre o
conjunto total de instâncias testadas, ou simplesmente, taxa
de erro
– O complemento da taxa de erro é a taxa de acerto
– É mais comum referir-se a acurácia como sendo a taxa de
acerto
Qualidade de um Modelo (2)
Marcus Sampaio
DSC/UFCG
• É interessante também medir a taxa de erro
(acerto) da aplicação do modelo aos dados
minerados
– Baixas taxas de erro significam que o modelo é um
espelho dos dados
• Síntese dos dados (importante)
– 'Altas' taxas de erro não significam
necessariamente que o modelo é ruim
• O modelo não é uma síntese perfeita dos dados, mas
possivelmente
• Baixas taxas de erro nos testes
Qualidade de um Modelo (3)
Marcus Sampaio
DSC/UFCG
• Em resumo
– Modelo-espelho
• Bom para conhecer os dados
– Alta acurácia de teste
• Importante para acertar com o o conjunto de execução
– Estimativa da acurácia de execução
– Numa análise comparativa, é comum situações
como
Marcus Sampaio
DSC/UFCG
ID3
espelho
acurácia
de teste
acurácia
de execução
alta
média
J48
Análise
média
ID3 para
conhecer
os dados
alta
J48 é
melhor
para o conj.
de exec.
J48 é mais
confiável
que ID3
Árvores 1R
Marcus Sampaio
DSC/UFCG
• Árvores de decisão com um só nível (fora a
raiz)  árvores 1R
• O interessante e surpreendente é que árvores
1R podem alcançar um nível de acurácia
muito bom
Marcus Sampaio
DSC/UFCG
Estado
Temp
Umid
Vento
Jogo
ensol
quente
alta
falso
não
ensol
quente
alta
verdade
não
nublado
quente
alta
falso
sim
chuvoso
amena
alta
falso
sim
chuvoso
fria
normal
falso
sim
chuvoso
fria
normal
verdade
não
nublado
fria
normal
verdade
sim
ensol
amena
alta
falso
não
ensol
fria
normal
falso
sim
Marcus Sampaio
DSC/UFCG
chuvoso
amena
normal
falso
sim
ensol
amena
normal
verdade
sim
nublado
amena
alta
verdade
sim
nublado
quente
normal
falso
sim
chuvoso
amena
alta
verdade
não
Marcus Sampaio
DSC/UFCG
Estado
Ensolarado
Chuvoso
Nublado
Não
Sim
Sim
Algoritmo de Indução de
Árvores 1R
Marcus Sampaio
DSC/UFCG
Para cada atributo
Para cada valor do atributo, faça
Conte quantas vezes cada classe aparece
Encontre a classe mais freqüente
Forme um ramo da árvore
Calcule a taxa de erro da árvore
Escolha a árvore com a menor taxa de erro
Marcus Sampaio
DSC/UFCG
atributo
regras
erros
total de
erros
1
estado
ensolarado  não
nublado  sim
chuvoso  sim
2/5
0/4
2/5
4/14
2
temperatur
a
quente  não*
amena  sim
fria  sim
2/4
2/6
1/4
5/14
3
umidade
alta  não
normal  sim
3/7
1/7
4/14
4
ventania
falso  sim
verdade  não*
2/8
3/6
5/14
*- Escolha aleatória
Algoritmo (3)
Marcus Sampaio
DSC/UFCG
• Interpretação da árvore
– Aparentemente, existe jogo quando o tempo está
nublado ou chuvoso (vocês estão percebendo que
isto é coisa de inglês ou da "commonwealth"!),
mas não quando está ensolarado
Marcus Sampaio
DSC/UFCG
Árvores de Decisão
Análise de Crédito
s a la ry
e d u c a t io n
la b e l
10000
h ig h s c h o o l
re je c t
40000
u n d e r g ra d u a t e
ac c ept
15000
u n d e r g ra d u a t e
re je c t
75000
g ra d u a t e
ac c ept
18000
g ra d u a t e
ac c ept
salário
< 20.000
≥ 20.000
educação
aceito
 graduado
aceito
< graduado
rejeitado
Construção de Árvores
Marcus Sampaio
DSC/UFCG
• Problema recursivo
– Seleciona-se um atributo para ser o atributo-raiz
da árvore
– Cada valor do atributo é um ramo da árvore
• Decompõe o conjunto-treinamento em sub-conjuntos, um
para cada valor do atributo (intervalo, às vezes)
– Em princípio, quando todas as instâncias em um
ramo tiverem a mesma classificação, o processo
de decomposição pára
• Como determinar cada atributo-raiz?
Marcus Sampaio
DSC/UFCG
Construção de Árvores (3)
Marcus Sampaio
DSC/UFCG
• O primeiro atributo-raiz a ser escolhido é
Estado
– Menor entropia (entropia: grau de desordem)
• Ver, no livro-texto, como a entropia é calculada
– ‘A olho nu’, podia ser também Umidade
Marcus Sampaio
DSC/UFCG
Construção de Árvores (5)
Marcus Sampaio
DSC/UFCG
• Umidade é o segundo nodo do primeiro ramo
da árvore
– Note que não há necessidade de dividir os
conjuntos de instâncias deste nodo
• Induzir uma árvore-espelho não necessariamente leva à
melhor acurácia de execução
• A aplicação recursiva da mesma idéia conduz
à árvore final para o problema do tempo
Marcus Sampaio
DSC/UFCG
Construção de Árvores (7)
Marcus Sampaio
DSC/UFCG
• Exercício
– Verifique se a árvore é perfeita, isto é, todos os
nós folhas são puros – uma única classe
Construção de Árvores (8)
Marcus Sampaio
DSC/UFCG
• Idealmente, o processo termina quando todos
os nós-folhas são puros, isto é, todos os
conjuntos de instâncias têm a mesma classe
• Entretanto, pode não ser possível alcançar
esta 'feliz' situação
– Podemos ter duas instâncias do conjuntotreinamento com os mesmos valores do conjunto
de atributos, porém com classes diferentes
• Um tipo de ‘sujeira’
– Algoritmos sofisticados, como o J48, preferem
errar no treinamento para acertar no teste!
Construção de Árvores (9)
Marcus Sampaio
DSC/UFCG
• Um conjunto puro pode não ser significativo
– Pouco freqüente, ou estatisticamente inválido
(“overfitting”)
• Como conseqüência de “overfitting”, a árvore pode ser
larga e profunda
– Pouco legível
• “Overfitting” se dá geralmente em atributos
com muitos valores
– Atributos numéricos  ‘Discretização’
Algoritmos de Árvores
Marcus Sampaio
DSC/UFCG
• ID3
– Bom para conhecer o conjunto de treinamento
• C4.5
– Produz modelos mais confiáveis que o ID3
– Pode se afastar do conjunto de treinamento
• Mecanismo de poda (“pruning”)
• J.48
– Versão WEKA do C4.5
• C5.0 (See5)
– Versão comercial do C4.5
• Outros algoritmos
Poda ("Pruning")
Marcus Sampaio
DSC/UFCG
Poda ("Pruning") (2)
Marcus Sampaio
DSC/UFCG
Download

Construção de Árvores