Aprendizagem de Máquina Porto Alegre, Junho de 2008. Filipo Studzinski Perotto Luís Otávio...

Post on 17-Apr-2015

104 views 0 download

Transcript of Aprendizagem de Máquina Porto Alegre, Junho de 2008. Filipo Studzinski Perotto Luís Otávio...

Aprendizagem de MáquinaAprendizagem de Máquina

Porto Alegre,

Junho de 2008.

Filipo Studzinski Perotto

Luís Otávio Álvares

(Machine Learning)

2

SumárioSumário

• Introdução

• Aprendizagem Supervisionada

• Aprendizagem Não-Supervisionada

• Aprendizagem por Reforço

3

Comportamento Inteligente

X

Aprendizagem

IntroduçãoIntrodução

4

Como pré-programar toda a solução para problemas complexos e dinâmicos?

5

• Aprender a reconhecer palavras faladas• Aprender a conduzir um veículo• Aprender a classificar estruturas astronômicas• Aprender a jogar• Aprender a classificar e-mails• Descoberta de relações em bases de dados

Aplicações Bem-Sucedidas

6

DefinindoDefinindo Aprendizagem de Máquina Aprendizagem de Máquina

• Um sistema apresenta aprendizagem se ele é capaz de transformar-se adaptativamente a partir das próprias experiências

• Portanto, num problema de aprendizagem bem formulado identificamos 3 fatores: – a classe das tarefas T– a medida de desempenho a ser melhorada P – e a fonte de experiência (treinamento) E.

7

Aprendizagem SupervisionadaAprendizagem Supervisionada

• Existe um “professor”

• Fonte externa indica certo e errado

8

ClassificaçãoClassificação

Definição do Problema

• Dados:– Um conjunto de exemplos de treinamento

• na forma (entrada-saída)

• Encontrar:– uma função geral capaz de prever adequadamente as saídas

para novos exemplos, por representar, em princípio, a função geradora dos exemplos de treinamento

9

Abordagem ConexionistaAbordagem Conexionista• Rede Neural / Máquinas de Núcleo

– O conhecimento da rede fica armazenado nos pesos das ligações entre os nós

• O conhecimento é distribuído:– uma unidade pode participar

de diversos padrões– um padrão pode estar ligado

à diversas unidades

10

Abordagem EstatísticaAbordagem Estatística• Modelo Incremental:– inicia com uma hipótese a priori da distribuição– atualiza a distribuição conforme recebe os exemplos

11

Hábito 1 Hábito 2 Hábito 3

Sintoma 1 Sintoma 2 Sintoma 3

Rede Bayesiana:

Filtro Bayesiano:

12

Aprendizagem de ConceitosAprendizagem de Conceitos

• Dados:– Um Espaço de Características– Um conjunto de exemplos de treinamento

• Características (f1, f2, f3, ..., fn)• Rótulo z

• Encontrar:– Um Modelo de Classificação

Entradas Modelo Saídas

13

Melhor Hipótese CorrenteMelhor Hipótese Corrente

H ← Qualquer Hipótese consistente com o 1º Exemplo

Para cada Novo Exemplo faça:

Se é falso positivo para H então:

H ← Especialização de H (+ condições)

Se é falso negativo para H então:

H ← Generalização de H (- condições)

14

Mundo dos BlocosMundo dos Blocos

+

Um Arco é:

- 2 blocos azuis em pé paralelos

- um bloco azul sobre os outros dois

+

Um Arco é:

- 2 blocos de qualquer cor em pé paralelos

- um bloco sobre os outros dois

-

Um Arco é:

- 2 blocos em pé separados e paralelos

- um bloco sobre os outros dois

15

Espaço de VersõesEspaço de Versões

• Preserva todas as Hipóteses Válidas

• Representação:– G (Conjunto de Hipóteses mais Gerais)

– S (Conjunto das Hipóteses mais Específicas)

– Conjunto Parcialmente Ordenado

• Atualização do Espaço de Versões:– Especializa G com um falso positivo

– Generaliza S com um falso negativo

16

++

++

++

+

++

+

-

++

-

++

-

--

--

-

-

-

-

-

--

-

--

---

S

G1

G

2

17

G1 G2 G3 G4 G5 ... Gn

S1 S2 S3 S4 S5 ... Sm

...

Hipóteses mais

Gerais

Hipóteses mais

Específicas

18

Árvores de DecisãoÁrvores de Decisão

F1

F2 F3 Fn

y1 ym

...

• Nós Superiores:

Testes de Discriminação

• Folhas:

Rótulo da Classe

19

Prejuízo Situação Explicação Atitude

Alto Anonimato Boa Ficar

Médio Anonimato Ruim Correr

Médio Evidência Ruim Ficar

Alto Evidência Ruim Correr

Baixo Evidência Boa Ficar

Baixo Anonimato Ruim Ficar

... ... ... ...

20

Prejuízo

médio baixo alto

ExplicaçãoAnonimato

não sim boa ruim

CorrerFicar Ficar Correr

Ficar

21

Indução de Árvores de DecisãoIndução de Árvores de Decisão

S inicial = o conjunto de todos os exemplos de treinamento;

SE todos os elementos em S satisfazem o critério de parada,

ENTÃO:

Cria um Nó Folha, caracterizando uma classe;

SENÃO

Seleciona um Atributo A

Cria um Nó de Discriminação baseado em A;

Particiona S em subconjuntos, conforme A;

Aplica o algoritmo recursivamente em cada subconjunto;

22

O + O + + O + O O O + +

Indução: passo 1Indução: passo 1

23

Indução: passo 2Indução: passo 2

O + O+ O +O O +

+ ++

24

Indução: passo 3 ... nIndução: passo 3 ... n

+ ++

O O +O +

O OO

25

• Construção da Árvore– Critério de Escolha dos Atributos Discriminantes

– Critério de Parada do Particionamento

– Objetivo: minimizar a árvore

• Complexidade– Encontrar a árvore mínima é NP-Completo

– Saída: Utilização de Heurísticas

26

• Critério para Seleção de Atributos– Baseado no Ganho de Informação

– Um bom candidato separa bem os exemplos entre as classes

– Critério de Ganho: Redução Esperada da Entropia

• Entropia– Quantidade de Informação necessária para fazer a descrição dos

elementos do conjunto

– Muitas classes misturadas e homogeneamente distribuídas dentro de um grupo representam alta entropia

• Entropia( 50% / 50%) = 1

• Entropia( 100% / 0%) = 0

27

• Superadaptação– Ramos excessivos que não contribuem significativamente

para a classificação

• Poda– Pode considerar

• Taxa de Erro

• Limite Mínimo de Ganho

– Pode ser feita• Durante a construção (limite como critério de parada)

• Depois da construção (revisão)

– Substitui uma subárvore por uma folha

28

Superadaptado?

Generalização Adequada?

29

Aprendizagem ComputacionalAprendizagem Computacional

• Provavelmente Correta

• Aproximadamente Correta

• Conjunto suficientemente grande de exemplos de treinamento

É quase certo que qualquer hipótese que esteja seriamente errada será ‘desmascarada’ com alta probabilidade após um pequeno número de exemplos.

Qualquer hipótese que seja consistente com um conjunto suficientemente grande de exemplos de treinamento terá pouca probabilidade de estar seriamente errada.

30

Aprendizagem Não-SupervisionadaAprendizagem Não-Supervisionada

• Aprendizagem Não-Supervisionada– Não há exemplos nem classes pré-definidas

– Domínios naturalmente divididos em classes

– Análise de padrões nos dados de entrada através da distribuição no espaço

– Análise de correlações e coincidências

– Descoberta de Conhecimento

Entradas Modelo

31

ClusterizaçãoClusterização

Definição do Problema

• Dados:– Um Espaço de Características– Um Conjunto de Instâncias situadas nesse espaço

• Encontrar:– Grupos de entidades similares (Clusters)– Regiões com alta densidade relativa de pontos no espaço

32

• Exemplo:

33

• Todos os objetos são inicialmente alocados a um único grupo, e esse vai sendo dividido (ou partido) em grupos menores.

Método Hierárquico DivisivoMétodo Hierárquico Divisivo

Geral

Sub1 Sub2 Sub n

...

teste de discriminação

34

35

Pontos representativos de possíveis conceitos são espalhados inicialmente no espaço de entradas. Cada um desses pontos conceituais vai se aproximando da nuvem de pontos de entrada mais próxima.

Método de CentróidesMétodo de Centróides

36

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

Atualiza Médias

K= Número de Agrupamentos

Inicialização Aleatória

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

Atualiza Médias

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10

Reassocia

37

• Problema: Desequilíbrio na distribuição dos centros...

38

Aprendizagem por ReforçoAprendizagem por Reforço

Agente

Percepções

Reforço (+/-)

Ação

Ambiente

Metáfora do Agente:

Idéia de interação contínua

39

Definição do Problema

• Dados:– Um Agente em um Ambiente– A cada instante de tempo:

• o agente está em um estado s • executa uma ação a• vai para um estado s’• recebe uma recompensa r

• Encontrar:– uma política de ações que maximize o total de recompensas

recebidas pelo agente

Política de AçõesPolítica de Ações

40

Questão da Autonomia

• Como um agente aprende a escolher ações apenas interagindo com o ambiente?– Muitas vezes, é impraticável o uso de

aprendizagem supervisionada• Como obter exemplos do comportamento correto e

representativo para qualquer situação?• E se o agente for atuar em um ambiente

desconhecido?

41

A Função de Recompensa

• Feedback do ambiente sobre o comportamento do agente

• Indicada por r:(S A) R– r(s,a) indica a recompensa recebida quando se

está no estado s e se executa a ação a– Pode ser determinística ou estocástica

42

Política de AçõesPolítica de Ações• Aprendizagem por Reforço– não há exemplos– existe um feedback do ambiente (recompensa) que avalia o comportamento do agente

• Aprendizagem Incremental– Desempenho + Exploração

43

Estimativa da Recompensa

0 0 0 0 10

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

3 4 6 8 10

2 3 4 6 8

1 2 3 4 6

0 1 2 3 4

UtilidadeRecompensas

44

U(s) : (S R)

• Cálculo da Função de Utilidade do Estado:– Faz uma tabela com a utilidade de cada estado– Utilidade é a estimativa de recompensas futuras– Constrói um Modelo de Transição de Estados

• Algotitmos: TD, PDA

Métodos de Função de UtilidadeMétodos de Função de Utilidade

45

Q(s,a) : (S A) R

• Cálculo do Valor das Ações: – Faz uma tabela com o valor de cada par (estado-

ação)– Avalia cada par (estado-ação) pelas recompensas– Método Livre de Modelo

• Algoritmos: Q-Learning

Métodos de Valor das AçõesMétodos de Valor das Ações

46

Estimativa da RecompensaEstimativa da Recompensa

• A idéia:– R := Rt + *Rt+1 + 2

*Rt+2 + ...

– Rt é a Recompensa da ação atual

é um fator de desconsideração para as recompensas previstas nos passos futuros

47

• Atualização da Tabela Utilidade do Estado:– V = R + (V[s’])– U[s] U[s] + (V - U[s])

• Atualização da Tabela Valor da Ação:– V = R + maxa’ (Q[s’, a’])– Q[a,s] Q[a,s] + (V - Q[a,s])

Estimativa da RecompensaEstimativa da Recompensa

48

Exemplo: Labirinto (=0.9) Função recompensa Função V*

Função Q* Uma política de ações ótima

49

• Sistemas Classificadores– Constrói um conjunto de regras (estado, ação)– Aplica Algoritmos Genéticos neste conjunto– Recompensas avaliam a força das regras

Abordagem EvolutivaAbordagem Evolutiva

Descoberta(Algoritmos Genéticos)

Desempenho(Sistema Classificador)

Atribuição de Crédito(Bucket Brigade)

Entrada

Recompensa

Saída

Criar Regras

Avaliar Regras

Escolher Regras

50

Algoritmo Q-Learning

• Para todo estado s e ação a, inicialize a tabela Q[s][a] = 0;

• Para sempre, faça:– Observe o estado atual s;

– Escolha uma ação a e execute;

– Observe o próximo estado s’ e recompensa r

– Atualize a tabela Q:

• V = R + maxa’ (Q[s’, a’])

• Q[a,s] Q[a,s] + (V - Q[a,s])

51

Q-Learning

• Atualiza-se Q(st) após observar o estado st+1 e recompensa recebida

Q(s1,aright) = r + maxa’Q(s2,a’) = 0 + 0.9 max{63,81,100} = 90

52

Dilema aproveitamento-exploração

• Na aprendizagem por reforço ativa o agente enfrenta dilema aproveitamento-exploração:– Quando gulosamente aproveitar da estimação atual da

função valor e escolher ação que a maximiza?

– Quando curiosamente explorar outra ação que pode levar a melhorar estimação atual da função valor?

– Taxa de exploração = proporção de escolhas curiosas

– Geralmente se começa com uma taxa de exploração alta que vai decrescendo com tempo

53

Exemplos

• Arm Robot Problem:– http://www.applied-mathematics.net/

54

Maldição da DimensionalidadeMaldição da Dimensionalidade

• o número de estados possíveis cresce exponencialmente com a quantidade de características representadas

• Conseqüentemente o tempo de treinamento e número de exemplos necessários também

• Q-Learning só pode ser aplicado a problemas relativamente pequenos

55

Questão:

• É melhor aprender um modelo e uma função de utilidade ou apenas uma função de ação-valor sem modelo?

• Qual o limite dessa idéia de aprendizagem?

56

Aprendizagem de MáquinaAprendizagem de Máquina

Porto Alegre,

Junho de 2008.

Filipo Studzinski Perotto

Luís Otávio Álvares

58

kc

1,vc

1,vc

1,vc

1,vc

ix

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

kc

1,vc

1,vc

1,vc

1,vc

ix

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

2,vc

59

Hábito 1 Hábito 2 Hábito 3

Sintoma 1 Sintoma 2 Sintoma 3

Doença

Problema da EstruturaProblema da Estrutura• Aprendizagem de Variáveis Ocultas

– criar e destruir variáveis– problema: complexidade exponencial

60

Indução de Árvores de DecisãoIndução de Árvores de Decisão

61

Máquinas de NúcleoMáquinas de Núcleo• Aumentar a Dimensionalidade do Espaço.• Tornar o Problema

Linearmente Separável• Uso de Vetores de Suporte• Uso de Funções de Núcleo

62

• Percorrer a Árvore– Tomada de Decisão– Expressão através de Regras: Disjunção de Conjunções

Estrago

médio baixo alto

ExplicaçãoAnonimato

não sim boa ruim

FugirFicar Ficar Fugir

Ficar

Se (Estrago = Alto) e (Explicação = Ruim) Então Fugir

63

Algoritmos de Indução de ADAlgoritmos de Indução de AD• ID3

– Representa apenas atributos categóricos

– Subdivide o grupo pela cardinalidade do atributo de teste

– Não faz tratamento de ruídos

– Utiliza critério de ganho de informação no particionamento

• CART– Permite atributos numéricos

– Gera sempre divisões binárias (agrupando valores)

– Pode fazer regressão (função numérica)

• C4.5– Permite atributos numéricos e valores desconhecidos

– Utiliza Poda

64

Condições:– Representação– Ruído– Determinismo– ...

Abordagens:– Simbólica– Conexionista– Analítica– Evolutiva– Estatística

65

Maldição da DimensionalidadeMaldição da Dimensionalidade

“Maldição da Dimensionalidade”: o número de classificadores que devem ser considerados aumenta exponencialmente com o número de atributos do conjunto de dados, ficando mais difícil para o algoritmo de aprendizagem encontrar um modelo preciso (Bellman, 1961).

 

“O número de exemplos necessários para se aprender um certo conceito cresce exponencialmente de acordo com o número de atributos” (Valiant, “A Theory of The Learnable”, 1984).

66

Exemplo Não-Determinístico

-1 -1 -1 -1 +100

-1 -1 -1 -1 -100

-1 -1 -1 -1 -1

A -1 -1 -1 -1

Ações: ,,,

Chance da execução correta: 90%

-50 -50 -50 -50 +100

-50 -50 -50 -50 -100

-50 -50 -50 -50 -50

A -50 -50 -50 -50