aprendizado de máquinas. objetivo a área de aprendizado de máquina preocupa-se em construir...

55
Aprendizado de Máquinas

Upload: luca-espirito-santo-sintra

Post on 07-Apr-2016

217 views

Category:

Documents


3 download

TRANSCRIPT

Aprendizado de Máquinas

Objetivo A área de aprendizado de máquina

preocupa-se em construir programas que automaticamente melhorem seu desempenho com a experiência.

Aprendendo de Observações

AMBIENTE

Sensores

Efectores

percepção

Modelo

Calculo da ação

raciocinio

Um agente

objetivo

Aprendizado A percepção pode ser usada para atuar e para

melhorar a habilidade do agente no futuro. O aprendizado ocorre como resultado da

interação do agente e o mundo, e das observações deste agente.

Pesquisas em Aprendizado Que componentes do elemento de

performance devem ser melhorados. Que representação é usada para estes

componentes. Que feedback esta disponível. Que informação a priori esta disponível.

Componentes de Performance Mapeamento do estado corrente para ações. Um meio de inferir propriedades do mundo. Informações de como o meio evoluí Informações das consequências das ações do

agente Estados desejáveis do mundo Objetivos para atingir determinados estados.

Representação do componente

Diferentes formas de representar conhecimento levam a diferentes métodos de aprendizado.

Ex: redes neurais, algoritmos genéticos, formulas lógicas....

Feedback Disponível E, S ; aprendizado supervisionado E, ~S ; aprendizado reforçado E ; aprendizado não

supervisionado

Aprendizado Indutivo

F(x)X F(X)

Aprendizado Indutivo Assumindo que o sistema é modelado

por um uma função f, desconhecida; Dado uma coleção de exemplos de f,

retornar a função h que se aproxima a f, a função h é denominada hipóteses.

Bias

Tarefa de Classificação

Árvores de Decisão

Alemanha Inglaterra

França

País

Não Sim

Sim Não

Idade

> 25< 25

Arvores de Decisão Um dos métodos práticos mais

usados Induz funções discretas robustas a

ruído Capaz de aprender expressões

disjuntivasSe pais = Inglaterra OuSe pais = França e idade < 25 EntãoComprar = sim

Árvores de Decisão Classificação; baseado num

conjunto de atributos Cada nó interno corresponde a um

teste sobre os valores dos atributos; Os arcos são rotulados com os

valores possíveis do teste; Cada folha na árvore especifica a

classificação.

Problemas apropriados Instâncias representadas por pares

atributo valor (pais = França, Inglaterra)

A função alvo têm valores discretosComprar (sim, não)

Os dados de treinamento podem conter ruído

Aplicações Diagnostico médico Defeito de equipamento Credito bancário

Esperar por uma mesa num restaurante

Decidir que propriedades ou atributos estão disponíveis para descrever os exemplos do domínio;

Existem alternativas?, existe um bar no local?, dia da semana, estado da fome, estado do restaurante, preço, chuva, reserva, tipo de comida, tempo de espera....

Esperar por uma mesa?

Alternativa Fome

Reservas DiaAlternat.

BarChove

Sim SimNão Sim

Vazio Medio

CheioEstado rest.

Espera

Não Não

Não

Sim

Sim Sim

Sim

Sim

Sim

0-1030-60>60 10-30

Não Sim

Não Sim

Não Sim

Não Sim

Não Sim

Não Sim

Semana Final

Induzindo Árvores a partir de exemplos

Um exemplo é descrito pelo valor dos atributos e o valor do predicado objetivo (classificação).

Solução trivial; uma folha para cada exemplo; memorização das observações sem extrair

padrão Extrair padrões significa descrever um grande

número de casos de uma maneira concisa. Ockham Razor: A melhor hipóteses é a mais

simples consistente com todas as observações.

Algoritmo básico ID3 (Quinlan) Busca top-down através do espaço

de árvores de decisão possíveis Que atributo deve ser testado na raiz

da árvore Cada atributo é testado, o melhor

selecionado

Indução Top-Down Laço principal

A <- o melhor atributo para o nó Para cada valor de A, crie um novo

descendente Classifique os exemplos de

treinamento segundo os valores de A Se os exemplos de treinamento estão

perfeitamente classificados, fim, senão volte a laço.

Indução de Árvores Encontrar a árvore de decisão menor é um

problema intratável; Solução: Heurísticas simples, boas árvores Idéia básica Testar o atributo mais importante primeiro Separar o maior número de casos, a cada

vez. Classificação correta com o menor número de

teste.

Indução de Árvores Uma árvore de decisão é construída de

forma "top-down", usando o princípio de dividir-para-conquistar.

Inicialmente, todas as tuplas são alocadas à raiz da árvore.

Selecione um atributo e divida o conjunto. Objetivo- separar as classes Repita esse processo, recursivamente.

Função de Shannon Info = - i=1,N pi log2pi bits Em vários algoritmos de árvore de

decisão, a seleção de atributos é baseada nesta teoria. Ex: ID3, C4.5, C5.0 [Quinlan93],

[Quinlan96].

Teoria da Informação Escolha do melhor atributo? Árvore de profundidade mínima Atributo perfeito divide os exemplos em

conjuntos que são + e -. ex: estado do restaurante x tipo de

restaurante Quantidade de informação esperada de

cada atributo (Shanon & Weaver, 1949).

Teoria da Informação Dada uma situação na qual há N resultados

alternativos desconhecidos, quanta informação você adquire quando você sabe o resultado? Resultados equiprováveis: Lançar uma moeda, 2 resultados, 1 bit de informação 1 ficha dentre 8, 8 resultados, 3 bits de informação 1 ficha dentre 32, 32 resultados, 5 bits de informação N resultados equiprováveis: Info = log2N bits

Teoria da Informação Probabilidade de cada resultado p=1/N,

Info = - log2 p bits Resultados não equiprováveis:

ex: 128 fichas, 127 pretas e 2 branca. É quase certo que o resultado de extrair uma ficha será uma ficha preta.

Existe menos incerteza removida, porque há menos dúvida sobre o resultado.

Entropia (I) A entropia mede a homogeneidade

dos exemplos Ex: conjunto (+,-) Entropia(S) =- p+ log2p+ - p- log2p- p+ proporção de + em S p- proporção de + em S

Entropia (S)Entropia(s)

Proporção de exemplos +0,5

1

Árvores e Teoria da Informação

Para um dado exemplo qual é a classificação correta? Uma estimação das probabilidades das

possíveis respostas antes de qualquer atributo ser testado é:

Proporção de exemplos + e - no conjunto de treinamento.

I(p/(p+n),n/(p+n))=-p/(p+n)log2p/(p+n)- n/(p+n)log2n/(p+n)

Árvores e Teoria da Informação

Testar atributo Qualquer atributo A divide o conjunto E

em subconjuntos E1,...,Ev de acordo com seus valores (v valores distintos).

Cada subconjunto Ei possui pi exemplos (+ ) e ni exemplos (-),

I (pi/(pi+ni),ni/(pi+ni)) bits de informação adicional para responder.

Ganho de Informação Um exemplo randômico possui valor i

para o atributo com probabilidade (pi+ni)/(p+n)

Em media depois de testar o atributo A necessitamos

Resta(A)=i=1,v (pi+ni)/(p+n)I(pi/(pi+ni),ni/(pi+ni))

Ganho(A)= I(p/(p+n),n/(p+n))- Resta(A)

Sexo País Idade CompraM França 25 SimM Inglaterra 21 SimF França 23 SimF Inglaterra 34 SimF França 30 NãoM Alemanha 21 NãoM Alemanha 20 NãoF Alemanha 18 NãoF França 34 NãoM França 55 Não

Exemplo

Entropia inicial Nó raiz 10 exemplos 4 com classe + 6 com classe – Se um atributo A com valores Ai..Av é

usado para particionar os exemplos, cada partição terá uma nova distribuição de classes

Info(s)= - 4/10 log 4/10- 6/10 log 6/10 = 0,97

Entropia para sexo

++- - -

++- - -

M F

+ 4, - 6

Entropia sexo

Sim (+) Não (- ) Total

MF

2 3 2 3

5 5

Total 4 6 10

Info(sexo)= (5/10) (-2/5 log 2/5 – 3/5 log 3/5)+ (5/10) (-2/5 log 2/5 – 3/5 log 3/5)

= 0,97

Entropia PaisPais

- - -++- - - ++

Alemanha França Inglaterra

Entropia PaisSim(+) Não(-) Total

FrançaInglaterraAlemanha

2 3 5 2 0 2 0 3 3

4 6 10 Total

Info(País)= 5/10 (-2/5 log2/5 –3/5 log 3/5 ) + 2/10 (-2/2 log2/2 – 0/2 log0/2) +

3/10 (-0/3 log0/3 – 3/3 log3/3) = 0,485

Nó raiz Ganho(País) = Info(S) – Info(País)

= 0,97 – 0,485 Ganho(Sexo) = Info(S) – Info(Sexo) = 0,97- 0,97 = 0

Outros Critérios Há vários outros critérios que

podem ser usados para selecionar atributos quando construindo uma árvore de decisão

Nenhum critério é superior em todas as aplicações. A eficácia de cada critério depende dos dados sendo minerados.

Metodologia de Aprendizado

Colecione um conjunto grande de exemplos; Divida em 2 conjuntos disjunto: conjunto de treinamento conjunto de teste

Use o algoritmo de aprendizado com o conj. treinamento para gerar a hipóteses H.

Calcule a percentagem de exemplos no conjunto de teste que estão corretamente classificados por H.

Repita os passos 2 a 4 para diferentes conjuntos

Conjunto de treinamento O resultado é um conjunto de dados

que pode ser processado para dar a media da qualidade da predição.

Curva de Aprendizado

Tamanho do conjunto de treinamento

% de corretos no conjunto de teste

100

Ruído e Overfitting Ex: 2 ou mais exemplos com a mesma

descrição e diferentes classificações. Classificação segundo a maioria Reportar a estimação das probabilidades de

cada classificação. Classificar considerando atributos

irrelevantes ex: jogo de dados, considerar como atributo

dia,cor..

Overfitting Quando existe um conjunto grande de

hipóteses possíveis, devemos ser cuidadosos para não usar a liberdade resultante para encontrar regularidades nos dados.

Sugere-se podar a árvore, prevenindo testar atributos que não são claramente relevantes. Ganho de informação perto de zero Teste de Significância Estatística. Crescer à árvore completa e depois podar

Poda-Reduzir o erro Cada nó é candidato a poda Remove-se toda a sub-árvore e se

atribui a classificação mais comum nos exemplos de treinamento

O nó é removido se a árvore resultante se comporta igual ou melhor que a árvore original no conjunto de validação

Treinamento, teste, validação

Regras Post-Poda Converta a árvore em seu conjunto

de regras equivalentes Pode cada regra

independentemente das outras (precondições)

Ordene as regras

Árvores de decisão Falta de dados Atributos com custos diferentes Atributos contínuos Atributos multivalorados

Atributos contínuos Criar atributos discretos

Todos os intervalos possíveis (48+60)/2

E testar ganho de informação

Temperatura: 40 48 60 72 80 90Comprar : N N S S S N

Atributos multivalorados Se o atributo possui muitos valores

possíveis será beneficiado pelo critério de ganho de informação

Alternativa usar Gainratio Gainratio(S,A)= Gain(S,A)/SplitInformation(S,A) SplitInformation(S,A)= -|Si|/|S|log2 |Si|/|S|

Atributos com custos diferentes Ex: exames médicos Tan & Schlimmer(1990) Gain2(S,A)/Cost(A) Nunez (1988) 2 Gain(S,A) – 1/(Cost(A)+1)w

Onde w (0,1)

Atributos desconhecidos Alguns exemplos não possuem o valor

do atributo A Se o nó n testa o atributo A, atribui o

valor mais comum. Se o nó n testa o atributo A, atribui o

valor mais comum nos exemplos com igual valor de classificação

Atribui uma probabilidade pi a cada valor possível.