1 tópicos especiais em aprendizagem prof. reinaldo bianchi centro universitário da fei 2007

Post on 16-Apr-2015

109 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Tópicos Especiais em Aprendizagem

Prof. Reinaldo Bianchi

Centro Universitário da FEI

2007

2

Introdução

Meu 1/3 da disciplina de TEA. Objetivo:

– Apresentar aos alunos a disciplina de Aprendizado por Reforço (AR ou RL).

3 aulas divididas em:– Introdução ao AR.– Métodos avançados de AR.– Combinação de AR e outras áreas.

3

Programação de aulas 2006Aula Data Tópico Referência Professor1 20/09 Introdução Todas Paulo, Carlos,

Bianchi2 27/09 Aprendizagem indutiva de 1ª ordem Russell &

NorvigPaulo

3 04/10 Introdução à aprendizagem Bayesiana Neapolitan Paulo4 11/10 Aprendizagem Bayesiana Neapolitan Paulo5 18/10 Métodos de Regressão Linear Hastie et al. Carlos6 25/10 Métodos de Classificação Linear Hastie et al. Carlos7 01/11 Modelos de Validação e Seleção Hastie et al. Carlos8 09/11 Métodos baseados em Kernel e

Discriminantes FlexíveisHastie et al. Carlos

9 22/11 Introdução ao Aprendizado por Reforço Mitchell Bianchi10 29/11 Métodos avançados de AR e

Aceleração do Aprendizado por ReforçoSutton e Barto Bianchi

11 06/12 Aprendizado por Reforço Relacional,acelerado por heurística, e outros.

Sutton eBarto, Bianchi

Bianchi

12 13/12 Prova final Bianchi

4

Referências Básicas

“Reinforcement Learning: An introduction”, de Sutton & Barto:– http://envy.cs.umass.edu/~rich/book/the-book.html

“Reinforcement Learning: A Survey”, de Kaelbling & Littman:– http://www.cs.cmu.edu/afs/cs/project/jair/pub/

volume4/kaelbling96a-html/rl-survey.html Capítulo 13 do livro Machine Learning, do Tom

Mitchell. Capítulo 20 do livro Artificial Intelligence, Russell

& Norvig.

5

O Livro: Reinforcement Learning: an introduction.

6

O Livro: Reinforcement Learning: an introduction. Part I: The Problem

– Introduction– Evaluative Feedback– The Reinforcement Learning Problem

Part II: Elementary Solution Methods– Dynamic Programming– Monte Carlo Methods– Temporal Difference Learning

7

O Livro:RL: an introduction

Part III: A Unified View– Eligibility Traces– Generalization and Function Approximation– Planning and Learning– Dimensions of Reinforcement Learning– Case Studies

8

Objetivo desta Aula

Introdução ao Aprendizado por Reforço:– Introdução.– Avaliação e seleção das ações.– O problema do AR.– Programação Dinâmica.

Aula de hoje: capítulos 1 a 4 do Sutton & Barto.

9

Introdução

Capítulo 1 do Sutton e Barto.

10

Motivação

Desenvolver agentes capazes de aprender a escolher ações apenas interagindo com o ambiente– Em alguns problemas, é 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?

– Exemplos:• Criança adquirindo coordenação motora• Robô interagindo com um ambiente para atingir

objetivo(s)

11

Áreas do AR

Psicologia

Inteligência Artificial

Controle e Pesquisa Operacional

Redes Neurais Artificiais

Aprendizadopor Reforço

Neurociências

12

O que é o Aprendizado por Reforço? Aprendizado por interação. Aprendizado orientado a objetivos. Aprendizado sobre, do e enquanto

interagindo com um ambiente externo. Aprender o que fazer:

– Como mapear situações em ações.– Maximizando um sinal de recompensa

numérico.

13

Por que usar o AR?

Para problemas de otimização e controle, quando não se conhece o modelo do problema.

14

Aprendizado Supervisionado

Supervised Learning SystemInputs Outputs

Training Info = desired (target) outputs

Erro = (target output – actual output)

15

Aprendizado Não Supervisionado

Unsupervised Learning SystemInputs Outputs

Objetivo: agrupar objetos semelhantes

16

Aprendizado por Reforço

RLSystemInputs Outputs (“actions”)

Training Info = evaluations (“rewards” / “penalties”)

Objetivo: conseguir o máximo de reforço possível

17

Pontos chaves do AR

Ao aprendiz não é definido que ações tomar:– Aprendizado por busca, tentativa e erro.

Possibilidade de reforços arrasados;– Sacrifica-se ganhos imediatos e valoriza-se

ganhos a longo prazo. A necessidade de explorar e explotar. Considera o problema de um agente com um

objetivo como um todo, interagindo em um ambiente.

Ambiente estocástico e incerto.

18

Agente no AR

Situado no tempo. Aprendizado e planejamento continuo. Objetivo é modificar o ambiente.

Ambiente

Ação Estado

Recompensa Agente

19

Policy

Reward

ValueModel of

environment

Elementos do AR

Política (Policy): o que fazer. Recompensa (Reward): o que é bom. Valor (Value): o que é bom porque prevê uma

recompensa. Modelo (Model): o que causa o que.

20

Exemplo: Jogo da velha.X XXO O

X

XO

X

O

XO

X

O

X

XO

X

O

X O

XO

X

O

X O

X

} x’s move

} x’s

move

} o’s

move} x’s

move

} o’s move

..

. ..

.

..

.

..

...

.

..

.

..

.

..

.

..

.

x x

x

x o

x

o

xo

x

x

xxo

o

Assuma um oponente

imperfeito: as

vezes, ele comete

erro.

21

Estado V(s) – probabilidade estimada de

ganhar.5

?.5

?

.

.

. .

.

..

.

.

.

.

.

1 win

0 loss

.

.

.

.

.

.

0 draw

x

xxx

oo

oo

oxx

oo

o ox

xx

xo

Uma abordagem AR para Velha

1. Crie uma tabela com uma entrada por estado:

22

Uma abordagem AR para Velha

2. Agora, jogue muitas vezes:– Para escolher a ação, olhe para o que acontece um

passo adiante:

Escolha:– 90% das vezes um movimento de explotação (greedy

move): a ação que leva ao estado com a maior probabilidade estimada de vencer V(s).

– 10% das vezes um movimento de exploração (exploratory move): escolha uma ação aleatória.

Estado

atual Todos os possíveis

próximos estados*

23

Uma abordagem AR para Velha

3. Atualizando a tabela:– Enquanto se joga, modifica-se os valores dos

estados pelos quais se passa durante o jogo.– Tentativa de torna-los estimativas mais precisas da

probabilidade de vencer.– Para tanto, se copia (“back-up”) os valores de

estado após uma movimentação de explotação (greedy) para o estado anterior ao movimento.

Mais precisamente, ajusta-se o valor do estado anterior para ficar mais próximo do estado seguinte.

24

Uma abordagem AR para Velha

3. Atualizando a tabela:– Sabendo que:

• s = o estado antes da escolha da ação a executar.

• s´ = o estado após a execução da ação escolhida.

– Incrementa-se V(s) na direção de V(s´):

– Onde: • 0 < < 1 é á taxa de aprendizado.

)()()()( sVsVsVsV

25

Uma abordagem AR para Velha

Jogada exploratória:Não atualiza V(s).

26

Uma abordagem AR para Velha

Este método de atualização dos valores de V(s) é um tipo de aprendizado usando diferenças temporais (temporal-difference learning method).– A modificação em V(s) é baseada na

diferença V(s´) - V(s), estimados em dois instantes de tempos diferentes.

– Um backup.– Será visto mais a fundo (capítulo 6).

27

Como melhorar este jogador?

Tirar vantagens de simetrias:– Representação/generalização?– É vantajoso? E se o oponente não usar?

Os movimentos de exploração aleatórios são realmente necessários?

Pode-se aprender durante os movimentos aleatórios?

Pode-se aprender de maneira offline?– Pré-treinamentos?– Usando modelos do oponente?

28

Exemplo: generalização.

Table Generalizing Function

Approximator State VState V

s

s

s

.

.

.

s

1

2

3

N

Train

here

29

Exemplo: generalização.

Table Generalizing Function

Approximator State VState V

s

s

s

.

.

.

s

1

2

3

N

Train

here

30

Jogo da velha é muito fácil?

Sim...– Jogo finito e curto.– Pequeno número de estados.– Olhar um passo a frente é sempre

possível.– Estado completamente observável...

31

Alguns exemplos notáveis de AR

TD-Gammon: Tesauro– O melhor jogador de Gamão do mundo.

Controle de Elevadores: Crites & Barto– Controladores de alto desempenho.

Gerenciamento de inventario: Van Roy, Bertsekas, Lee & Tsitsiklis– Melhoria de 10–15% sobre os modelos usados.

Dynamic Channel Assignment: Singh & Bertsekas, Nie & Haykin– Alocação de canais em telefonia celular.

32

TD-Gammon

– Inicie com uma rede neural aleatória.– Jogue muitas vezes contra si mesmo.– Aprenda destes jogos.

Produziu o melhor jogador de gamão no mundo (incluindo campeões humanos).

Action selectionby 2–3 ply search

Value

TD errorVt1 Vt

Tesauro, 1992–1995

33

Neurogammonsame network, buttrained from 15,000

expert-labeled examples

TD-Gammon

Especialistas são escassos e caros Experiência é barata, e ensina a solução real.

# hidden units

performanceagainst

gammontool

50%

70%

0 10 20 40 80

TD-Gammonself-play Tesauro, 1992

34

Controle de Elevadores

10 andares, 4 cabines

STATES: button states; positions, directions, and motion states of cars; passengers in cars & in halls

ACTIONS: stop at, or go by, next floor

REWARDS: roughly, –1 per time step for each person waiting

Conservatively about 10 states22

Crites and Barto, 1996

35

Performance Comparison

0

20

40

60

80

AverageWaiting

andSystemTimes

Dispatcher

0

1

2

% Waiting >1 minute

Dispatcher

0

200

400

600

800

AverageSquaredWaiting

Time

Dispatcher

36

O problema do Carro na Montanha

Minimum-Time-to-Goal Problem

Moore, 1990 Goal

Gravity wins

STATES: car's position and velocity

ACTIONS: three thrusts: forward, reverse, none

REWARDS: always –1 until car reaches the goal

No Discounting

37

Algumas aplicações

Time Brainstormers da Robocup (entre os 3 melhores nos 3 últimos anos)– Objetivo: Time cujo conhecimento é obtido 100%

por técnicas de aprendizagem por reforço– RL em situações específicas

• 2 atacantes contra 2 defensores• habilidades básicas

Inúmeras aplicações em problemas de otimização, de controle, jogos e outros...

38

Patrulha multi-agente

Dado um mapa, um grupo de agentes deve visitar continuamente locais específicos deste mapa de maneira a minimizar o tempo que os nós ficam sem serem visitados

Recompensa: ociosidade dos nós visitados

Performance comparisson 5 agents

0102030405060708090

100

Conscientiouscognitive agent

HeuristicCoordinator

Conscientiousreactive agent

LearnerAgent

Ave

rag

e id

len

ess

39

Jogos

Aprendizagem por reforço para:– IA do jogador.– Adaptação ao usuário.

40

Exemplo de Algoritmo: Q-Learning

41

Aprendizagem por reforço

Tarefa de aprendizagem por reforço:– Aprender uma política de ações * ótima,

que maximiza a função V (V*) ou a função Q (Q*)* = argmax[V(s)]

Em outras palavras, de que maneira o agente deve agir para maximizar as suas recompensas futuras

42

Exemplo: LabirintoFunção recompensa Função V*

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

43

Aprendendo uma política ótima

Se o ambiente é conhecido, ou seja, T(s,a) = s’ e r(s,a) são conhecidos:– V*(s) =maxa[ r(s,a) + V*((s,a) ) ] *(s) = argmaxa[r(s,a) + V*((s,a) )]– Equações de Bellman:

• Programação dinâmica computa uma política ótima em tempo polinomial

E se não temos conhecimento prévio do ambiente, ou se for difícil estimar estas funções?

44

Q Learning

Algoritmo de aprendizagem para computar a função Q ótima (valor das ações) *(s) = argmaxa[Q(s,a)]

• não é função de Tnem de r

Q*(st,at) = r(st,at) + maxa’ [Q(st+1,a’)]

• Como atualizar Q sem precisar de r(st,at) nem de T ?

45

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

46

Algoritmo Q-Learning para mundos determinísticos

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:

• Q[s][a] = r + maxa’ (Q[s’][a’])

Usufruir valores

conhecidos ou explorar valores não

computados?

47

Avaliação e seleção das ações.(Evaluative Feedback)

Capítulo 2 do Sutton e Barto.

48

Avaliando ações

Avaliando ações versus instrução através de exemplos de ações corretas:– Reforço puramente avaliativo depende

totalmente na ação executada.– Reforço puramente instrutivo independe

completamente da ação executada. Aprendizado supervisionado é instrutivo Otimização é avaliativo (evaluative).

49

Avaliando ações

Associativo versus Não-associativo:– Associativo: entradas mapeiam saídas;

aprende a melhor saída para cada entrada.– Não-associativo: “aprende” (encontra) uma

saída ótima. O problema do bandido de n-braços (n-

armed bandit) é:– Não-associativo.– Avaliativo.

50

The 1-Armed Bandit Problem

51

The 1-Armed Bandit Problem

52

The n-Armed Bandit Problem

Escolha repetidamente uma entre n ações;– Cada escolha é uma jogada.

O objetivo é maximizar as recompensas recebidas a longo prazo.

Para solucionar o problema do bandido de n-braços deve-se:– Explorar uma variedade de ações, e– Exploitar as melhores ações.

53

The n-Armed Bandit Problem

Após cada jogada at,recebe uma recompensa rt, onde:

Estes são os valores-ação (action-values), desconhecidos:– Distribuição de rt, depende somente de at.

E rt | at Q*(at )

54

O dilema exploração/exploitação

Suponha que você estime os valores-ação:–

A ação exploitatória (ou gulosa ou greedy) é:

Casos possíveis:

– Não se pode explorar o tempo todo; não se pode exploitar o tempo todo...

– Não se deve parar a exploração, mas deve ser reduzida com o tempo...

Qt(a) Q*(a)

)(maxarg* aQa ta

t

nexploratio

onexploitati*

*

tt

tt

aa

aa

55

Métodos Valores-Ação

Métodos mais simples o possível

56

Métodos Valores-Ação

São métodos que adaptam as estimativas dos valores-ação.

Exemplo: suponha que na n-ésima jogada a ação a foi escolhida ka vezes, resultando em recompensas

Então a média amostrada é:

e

Qt(a)

r1 r2 rk a

ka

r1, r2, , rka,

limk a

Qt(a) Q*(a)

57

Seleção de ações -Greedy

A seleção de ações gulosa (greedy) é:–

Uma modificação gera a -Greedy:

A maneira mais simples de balancear exploração e exploitação...

at at* arg max

aQt(a)

at* with probability 1

random action with probability {at

58

Exemplo: 10-Armed Bandit

n = 10 possíveis ações. Cada Q*(a) é escolhido de maneira

aleatória a partir de uma distribuição normal (0,1).

Cada reforço rt também é normal:

– 1000 jogadas. Média de 2000 repetições (trials).

(Q*(at ),1)

59

Métodos -Greedy no problema 10-Armed Bandit

60

Seleção de ações -Greedy

Método de escolha de ações efetivo e popular...

A maneira mais simples de balancear exploração e exploitação...

Mas possui um problema:– Escolhe de maneira igual entre todas as ações a

explorar.– Em tarefas onde a pior ação é muito ruim, pode se

tornar um problema.

61

Seleção de ações Softmax

Métodos de escolha de ação “Softmax” ponderam probabilidades e valores estimados.

O mais comum utiliza uma distribuição de Gibbs ou Boltzmann:– Escolha a ação a em uma jogada t com a

probabilidade:

– onde t é a “temperatura”.

n

b

bQ

aQ

t

t

e

e

1

)(

)(

62

Implementação Incremental

O método de estimativa da média por amostragem computa a média dos primeiros k reforços utilizando:

Problema:– A cada reforço, mais memória para guardar a lista é

necessária e mais esforço para calcular Q é preciso. – Requisitos computacionais e de memória crescem

com o tempo, não sendo limitados.

k

rrrQ k

k

21

63

Implementação Incremental

Como computar Q passo a passo, sem guardar todos os reforços?

???1

1

1211

kk

kkk

QQk

rrrrQ

64

A matemática...

kr

kkk

kkk

kkkk

kk

k

iik

k

iik

Qrk

Q

QQkrk

QQkQrk

kQrk

rrk

rk

Q

1

1

1

1

11

1

11

1

1

)1(1

11

11

1

1

1

1

1

65

Implementação Incremental

Ou seja, pode se calcular Q passo a passo usando:

Esta implementação requer memória para armazenar apenas Qk e pouca

computação.

kkkk Qrk

QQ

11 1

1

66

Implementação Incremental

Esta é uma forma muito comum para as regras de atualização dos valores:

Onde:– StepSize determina quão rápido se atualiza

os valores.– Para casos não estacionários...

NewEstimate = OldEstimate + StepSize[Target – OldEstimate]

67

O problema não estacionário

Escolhendo Qk como uma média

amostrada é apropriado para o problema onde Q*(a) é não muda com o tempo (é estacionário).

No caso não estacionário deve-se usar uma média exponencial ponderada:

iik

k

i

kk

kkkk

rQQ

QrQQ

)1()1(

10 , for

101

11

constant

68

Valores iniciais

O método iterativo visto depende do valor inicial de Qk=0 (a).

Suponha uma inicialização otimista:

– No caso do n-armed bandit: Q0 (a)=5, a.

69

Avaliação versus Instrução

70

Avaliação versus Instrução

The n-armed bandit problem we considered above is a case in which the feedback is purely evaluative.– The reward received after each action gives some

information about how good the action was, but it says nothing at all about whether the action was correct or incorrect, that is, whether it was a best action or not.

– Here, correctness is a relative property of actions that can be determined only by trying them all and comparing their rewards.

71

Avaliação versus Instrução

You have to perform some form of the generate-and-test method whereby you try actions, observe the outcomes, and selectively retain those that are the most effective.

This is learning by selection, in contrast to learning by instruction, and all reinforcement learning methods have to use it in one form or another.

72

Avaliação versus Instrução

RL contrasts sharply with supervised learning, where the feedback from the environment directly indicates what the correct action should have been.

In this case there is no need to search:– whatever action you try, you will be told

what the right one would have been. – There is no need to try a variety of actions;

the instructive "feedback" is typically independent of the action selected (so is not really feedback at all).

73

Avaliação versus Instrução

The main problem facing a supervised learning system is to construct a mapping from situations to actions that mimics the correct actions specified by the environment and that generalizes correctly to new situations.

A supervised learning system cannot be said to learn to control its environment because it follows, rather than influences, the instructive information it receives.

Instead of trying to make its environment behave in a certain way, it tries to make itself behave as instructed by its environment.

74

Binary Bandit Tasksat 1 or at 2

rt success or rt failure

Suppose you have just two actions:

and just two rewards:

Then you might infer a target or desired action:

failure

success

ifaction other the

if ta

{dt

and then always play the action that was most often the target

Call this the supervised algorithmIt works fine on deterministic tasks…

75

Contingency Space The space of all possible binary bandit tasks:

76

Linear Learning AutomataLet t(a) Pr at a be the only adapted parameter

LR –I (Linear, reward - inaction)

On success : t 1(at ) t (at) (1 t(at )) 0 < < 1

(the other action probs. are adjusted to still sum to 1)

On failure : no change

LR -P (Linear, reward - penalty)

On success : t 1(at ) t (at) (1 t(at )) 0 < < 1

(the other action probs. are adjusted to still sum to 1)

On failure : t 1(at ) t(at) (0 t(at )) 0 < 1

For two actions, a stochastic, incremental version of the supervised algorithm

77

Performance on Binary Bandit Tasks A and B

78

Conclusão parcial

Tudo mostrado até aqui é muito simples:– Mas complicados os suficiente...– Métodos melhores serão construídos a partir

destes. Como melhorar estes métodos?

– Estimar incertezas.– Utilizar aproximadores de funções.– Introduzir Bayes...

Após o intervalo, formalização do problema do Aprendizado por Reforço...

79

Intervalo

top related