Você está na página 1de 8

Universidade Federal de Pelotas

Ciência da Computação

Estatística Básica

Aprendizagem de
Máquina

Matheus Garcia Nachtigall


Aprendizado de Conceitos

• É talvez o tipo mais comum de aprendizado;

• Por exemplo, nós continuamente aprendemos conceitos comos “pássaro”, “carro”;

• Cada conceito pode ser visto como descrevendo um sub-conjunto de objetos ou

eventos dentro de um conjunto maior (por exemplo, o sub-conjunto de animais que

chamamos de pássaros);

• Podemos, ainda, ver cada conceito como uma função booleana que se aplica sobre

este conjunto maior e que resulta “verdadeiro” para aqueles objetos que pertencem ao

conjunto menor definido pelo conceito;

• Quando aprendemos conceitos, tipicamente o fazemos através de exemplos: o

Aprendemos o conceito de “pássaro” após alguém classificar diversos pássaros como

sendo pássaros; após aprendermos, mesmo quando vemos um pássaros que nunca

vimos antes, sabemos que trata-se de um pássaro.

• Queremos então considerar o problema de inferir automaticamente a definição geral

de um conceito, dados exemplos rotulados como membros ou não membros do

conceito.

Aprendizado de Conceitos: inferir uma função booleana a partir da mineração de

dados ( data mining ) de exemplos de treinamento, compostos de pares

<entrada,saída> da função;

Exemplo

• Conceito: “dias em que os surfistas gostam de praticar wind-surf”


• Um exemplo é um conjunto de atributos de um dia e o rótulo desse dia (i.e. se os

surfistas gostaram ou não de praticar o esporte); nossa tarefa é aprender a prever se

os surfistas gostarão ou não do dia dado os atributos de um dia qualquer.

Exemplo Céu Temperatura Umidade Vento Água Ondas Gostou


1 Sol Quente Normal Forte Quente Sim Sim
2 Sol Quente Alta Forte Quente Sim Sim
3 Chuva Frio Alta Forte Quete Não Não
4 Sol Quente Alta Forte Fria Não Sim

• Quando aprendemos um conceito, formulamos uma hipótese, que é uma teoria de

como preverfuturas instâncias;

• Queremos, então, um algoritmo capaz de aprender uma hipótese que seja

consistente com o conceito – isto é, que fornece “Sim” para todas instâncias rotuladas

como “Sim” e “Não” para todas instâncias rotuladas como “Não” pelo conceito;

• Isto é, h(x) = c(x) para todo x

• Como podemos representar uma hipótese?

• Comecemos considerando uma forma simples: uma simples conjunção de

restrições sobre os atributos;

• Uma hipótese será um vetor de seis restrições, especificando os valores dos

seis atributos.

Para cada atributo, a hipótese poderá ser:

- “? “, indicando que qualquer valor é aceitável para esse atributo;

- Um único valor aceitável para aquele atributo;

- “∅” se nenhum valor for aceitável.


• Se uma instância x satisfaz todas restrições de uma hipótese h, então h

classifica x como um exemplo positivo (h(x) = 1). Por exemplo:

- <?, Frio, Alta, ?, ?, ?>, representa a hipótese de que Paulo gosta de

particar windsurf apenas em dias frios com alta umidade e que os

demais atributos não importam;

• A hipótese mais geral, onde TODOS dias são exemplos positivos é:

<?,?,?,?,?,?>

• A hipótese mais restritiva é: < ∅,∅, ∅,∅, ∅, ∅ >

• De forma geral, todo problema de aprendizado de conceitos pode ser descrito pelo

conjunto de instâncias que sobre as quais a função-alvo é definida, a função-alvo, o

conjunto de hipóteses candidatas consideradas pelo aprendiz e o conjunto de

exemplos de treinamento disponíveis.

Ordenação Geral- para-Específico de Hipóteses

• Muitos algoritmos de aprendizado de conceito organizam a busca utilizando uma

estrutura útil que existe para qualquer problema de aprendizado de conceitos: a

ordenação Geral-para-Específico das hipóteses;

• Considere estas duas hipóteses:

• h1= <Sol,?,?,Forte,?,?>

• h1= <Sol,?,?,?,?,?>

• Qual das hipóteses inclui o maior número de instâncias? h2 impõe menos restrições,

logo classifica um maior número de instâncias como positivas. De fato, toda instância

classificada por h1como positiva será também classificada como positiva por h2.

• Dizemos que h2 é mais geral que h1.


Algorit m o de Aprendizagem “Find-S”

• Find-S encontra a hipótese maximamente específica;

• Isto é, encontra a hipótese mais específica o possível que seja capaz de classificar

os exemplos;

• Iniciamos h com a hipótese mais específica em H

• Para cada exemplo de treinamento positivo x:

• Para cada atributo ai em h:

• Se o atributo NÃO é satisfeito por x, então:

• Substitua ai em h pela próxima restrição mais geral que

satisfaz x

• Retorne a hipótese h

• Exemplo:

• ℎ = < ∅,∅, ∅, ∅,∅, ∅ >

• Ao vermos o primeiro exemplo positivo, vemos que a hipótese é específica

demais. Nenhum dos atributos satisfaz o exemplo, então cada atributo é

substituído pelo valor mais geral que satisfaz o exemplo: no caso, o próprio

valor do exemplo. Resultando em:

• ℎ = < sol,quente,normal,forte,quente,sim >

• Esta hipótese é bastante específica ainda: ela diz que todas instâncias são

negativas, exceto a única instância positiva vista até o momento.

• O segundo exemplo positivo força a hipótese a se generalizar mais:

• ℎ = <sol,quente,?,forte,quente,sim>

• O próximo exemplo é negativo, que é ignorado pelo algoritmo. Mas note que

a hipótese acima já classifica esse exemplo negativo corretamente! Logo, não


precisaríamos mudar a hipótese de qualquer maneira. E isso é verdade para

todos exemplos negativos.

• O quarto exemplo leva a seguinte hipótese:

• ℎ =< sol,quente,?,forte,?,?>

• A busca sendo feita no exemplo progride movendo-se da hipótese mais específica

em direção ahipóteses menos específicas, sempre modificando a hipótese o mínimo

possível para incluir o exemplo positivo sendo visto.

• De fato, esse algoritmo converge para uma hipótese que é consistente com todos

exemplos positivos e negativos;


Aprendizagem Bayesiana

Aprendizado probabilista: Cálcula probabilidades explícitas para hipóteses, entre as

abordagens mais práticas para certos tipos de porblemas de aprendizagem

Incremental: Cada exemplo pode, incrementalmente, aumentar/diminuir a

probabilidade de que uma hipótese seja correta. Pode-se combinar conhecimento

prévio com dados observados

Previsão probabilistica: Previsão de multiplas hipóteses, ponderadas pelas suas

probabilidades

Exemplo: Dias que o time de futebol gosta de praticar:

Dia Tempo Temp. Umidade Vento Jogar


D1 Sol Quente Alta Fraco Não
D2 Sol Quente Alta Forte Não
D3 Coberto Quente Alta Fraco Sim
D4 Chuva Normal Alta Fraco Sim
D5 Chuva Frio Normal Fraco Não
D6 Chuva Frio Normal Forte Não
D7 Coberto Frio Normal Forte Sim
D8 Sol Normal Alta Fraco Não
D9 Sol Frio Normal Fraco Sim
D10 Chuva Normal Normal Fraco Sim

D11 Sol Frio Alta Forte ?


Cálculo de Probabilidades:

P(Sim) = 5/10 = 0.5 P(Não) = 5/10 = 0.5

P(Sol/Sim) = 1/5 = 0.2 P(Sol/Não) = 3/5 = 0.6

P(Frio/Sim) = 2/5 = 0.4 P(Frio/Não) = 2/5 = 0.4

P(Alta/Sim) = 2/5 = 0.4 P(Alta/Não) = 3/5 = 0.6

P(Forte/Sim) = 1/5 = 0.2 P(Forte/Não) = 2/5 = 0.4

P(Sim)P(Sol/Sim) P(Frio/Sim) P(Alta/Sim) P(Forte/Sim)

0,5 x 0,2 x 0,4 x 0,4 x 0,2 = 0.0032

P(Não)P(Sol/Não)P(Frio/Não) P(Alta/Não) P(Forte/Não)

0,5 x 0,6 x 0,4 x 0,6 x 0,4 = 0.0288

⇒ Jogar_Futebol( D 11 ) = Não