Aprendizagem por reforo Jacques Robin CInUFPE O que
Aprendizagem por reforço Jacques Robin CIn-UFPE
O que é aprendizagem por reforço? E Uma classe de problemas de aprendizagem (pela qual existe uma grande diversidade de técnicas) técnicas E Aprendizagem: Epor um agente com objetivo(s) situado em um ambiente Eda utilidade dos estados do ambiente com respeito a esse(s) objetivo(s) Eou de uma política de ação maximizando o grau de satisfação desse(s) objetivo(s) Eindiretamente via recepção de reforço (ou dica) positivo ou negativo Equando se encontra em alguns estados Eou como resultado da execução de uma ação ou uma serie de ações
Exemplo de tarefa de aprendizagem por reforço E Agente explorador da caverna do wumpus E Explora N instâncias aleatoriamente geradas da caverna E Recebe reforços: E+1 quando sai vivo da caverna sem o ouro E+5 quando sai vivo da caverna com o ouro E-5 quando morre caindo em um buraco ou devorado pelo wumpus E Aprende: Efunção f: Percepções Ações, para um agente puramente reativo Eou, função g: Estados. Da. Caverna Utilidades, para um agente reativo com estado interno, modelo perceptivo e modelo efetivo do ambiente
Aprendizagem por reforço x Aprendizagem supervisionada Aprendizagem por reforço E retorno na forma de dica, as vezes para um conjunto de escolhas Eex, na situação 26, a ação 27 é nota 0. 8 Eex, a partir da situação 26, a serie de ação 27, 3, 12, 79, e 99 é nota 0. 3 E permite treinamento Etanto prévio a utilização Equanto durante a utilização E aprende mapeamento global percepção(t) ação(t) E para satisfazer simultaneamente vários objetivos Aprendizagem supervisionada E retorno na forma da escolha correta, separadamente por cada escolha: ex, na situação 26, ação 67 era a melhor E requer treinamento antes da utilização E aprende mapeamentos componentes: Eclassificação (percepção(t), modelo(t-1)) modelo(t) Eprevisão (modelo(t), ação(t)) modelo(t+1)) Eotimização (modelo(t+1), objetivo(t)) max(utilidade(t+1)) E para satisfazer um único objetivo
Conceitos chaves da aprendizagem por reforço E Política de ação E Função de reforço E Função de valor (ou utilidade) E Modelo do ambiente Policy Reward Value Model of environment
Política de ação E Mapeia estado percebido do ambiente pelo agente para a ação a executar nesse estado que maximiza satisfação dos seus objetivos E : percepção(estado(ambiente)) ação(estado(ambiente)) E estado percebido pode ser última percepção recebida ou modelo construído a partir das percepções anteriores E pode ser determinista ou estocástica
Função de reforço E Mapeia estados do ambiente ou transição do ambiente de um estado para um outro para um número indicando a satisfação imediata dos objetivos do agente nesse estado ou no estado resultando da transição E r: estado(ambiente) real, ou E r: (estado 1(ambiente), estado 2(ambiente)) real E r codifica os objetivos do agente de maneira imediata local E r pode ser determinista ou estocástica
Função de valor E Mapeia estado do ambiente para um número indicando o a satisfação futura atingível dos objetivos do agente a partir desse estado E v: estado(ambiente) real E v codifica os objetivos do agente de maneira global e a prazo E v(e) definida como função aditiva dos reforços nos estados alcançáveis a partir de e: Ev(ek) = i [k, + [ pi. r(ei) Ev(ek) = i [k, j] r(ei) Ev(ek) = limj i [k, j] r(ei)
Modelo do ambiente E Modelo perceptivo, mapeia percepções para representação interna do estado do ambiente Emp: (percepção(t), modelo(estado(ambiente(t-1)))) modelo(estado(ambiente(t))) E Modelo efetivo, mapeia ação a efetuar para representação interna do estado do ambiente resultando dessa ação Eme: (ação(t), modelo(estado(ambiente(t)))) modelo(estado(ambiente(t+1))) E Cada um desses modelos pode ser: E representado em extensão por uma tabela, ou E representado em intenção por algum formalismo de representação do conhecimento como operadores de próximo estado, regras, lógica, operadores de planejamento E manualmente codificado, ou E aprendido com aprendizagem supervisionado
Exemplo introdutório: jogo da velha X X O X x X O O X O X O O X X O . . . x o X X } x joga x . . . o o x x } o joga x . . . . } x joga } o joga x o x x o } x joga
Exemplo introdutório: jogo da velha 1. Inicializar tabela de valores com tabela de reforços Estado x x o o o vitória 0 derrota . . . o x o o x x x o o 1 . . . x x x o o V(s) – Probabilidade estimada de ganhar. 5 ? 0 empate 2. Fazer agente jogar muitos jogos contra adversário imperfeito E Escolhendo: E a grande maioria das vezes ação que leva a estado de maior valor E as vezes aleatoriamente ação que leva a estado com valor menor E Atualiza tabela depois de cada ação E levando do estado s para o estado s´ E com a formula: V(s) : = V(s) + p(V(s´) – V(s)) E na qual p é o tamanho de passo de aprendizagem
Exemplo introdutório: jogo da velha E Exemplo de técnica de aprendizagem por reforço dita de diferencia temporal E Se p decresce a cada iteração, convergência para a tabela de valor representando política de ação ótima contra um adversário usando uma política de ação fixa E Se p não decresce até 0, bom desempenho mesmo contra adversário que muda lentamente sua política de ação E Ilustra como aprendizagem por reforço permite um agente: Etomar em conta conseqüências de longo prazo da suas ações sem busca explícita no espaço dos estados ou das seqüências de ações Eadaptar-se a um adversário ou a um ambiente dinâmico sem um modelo explícito do mesmo
Exemplos de aplicações práticas da aprendizagem por reforço E Jogos com agente treinado jogando contra ele mesmo, ou várias encarnações ligeiramente diferentes dele E Navegação e manipulação robótica E Filtragem de e-mail sem aquisição manual nem de regras de filtragem, nem de corpus de exemplos positivos e negativos
Tipologia dos problemas de aprendizagem por reforço E E E E Passivo Reforço em qualquer estado Com modelo prévio do ambiente Aprendizagem da função valor Ambiente accessível Ambiente determinista Ambiente episódico Ativo Reforço em poucos estados Sem modelo prévio do ambiente Aprendizagem da função ação-valor E Ambiente inacessível E Ambiente não determinista E Ambiente não episódico E E E No caso mais complexo, a aprendizagem por reforço é praticamente equivalente a IA como um todo
Aprendizagem por reforço passivo x ativo Passivo E Ambiente passa de um estado para o outro sem intervenção do agente E A cada transição, agente apenas: Epercebe o estado e recebe reforço Eatualiza sua representação do valor desse estado E Equivalente a situação na qual: EAgente faz mudar o ambiente pela execução de uma política de ação predefinida EAgente não tenta descobrir uma boa política de ação Emas apenas avaliar política predefinida Ativo E Agente tenta descobrir uma boa política de ação E A cada transição, agente: Epercebe o estado e recebe reforço Eatualiza sua representação do valor desse estado Eescolhe uma ação a executar que muda o estado do ambiente
Dilema aproveitamento-exploração E Na aprendizagem por reforço ativa o agente enfrenta dilema aproveitamento-exploração: EQuando gulosamente aproveitar da estimação atual da função valor e escolher ação que a maximiza? EQuando curiosamente explorar outra ação que pode levar a melhorar estimação atual da função valor? EParticularmente relevante quando aprendizagem ocorre durante utilização, sem fase de treinamento prévio ETaxa de exploração = proporção de escolhas curiosas EGeralmente se começa com uma taxa de exploração alta que vai decrescendo com tempo EMesmo princípio do que o simulated annealing
Aprendizagem por reforço com reforço em todos x em poucos estados Reforço em todos os estados E Agente recebe reforço em todos os estados E Pode facilmente atribuir esse reforço esse estado o a última ação que executou E Simplifica a atualização da estimativa do valor desse estado ou ação Reforço em poucos estados E Agente recebe reforço apenas em poucos estados E Enfrenta o problema da distribuição desse reforço entre as várias ações que executou desde o último reforço E Dificulta atualização da estimativa do valor dos estados ou das ações
Dilema da atribuição do mérito E Na maioria dos casos, reforço é recebido apenas em alguns estados E Em jogos, agente pode receber reforço apenas no estado final (ganhou? perdeu? empatou? ) E As vezes, agente executa uma política de ação ótima com apenas um único erro grave e recebe reforço negativo E Como identificar qual foi a ação que causou esse reforço? E A mesma ação no mesmo estado pode ser ótima no contexto de uma serie de ações, mas péssima no contexto de uma outra serie E Dilema geralmente resolvido iterativamente pela execução de muitas series de ações diferentes EValor de uma ação em um estado estimada como média do seu valor em todas as series tentadas ESeu valor em uma serie tentada estimada como o reforço recebido pela serie divido pelo tamanho da serie E Computacionalmente caro E Ressalta necessidade de exploração
Aprendizagem por reforço com x sem modelo prévio do ambiente Com modelo prévio do ambiente E Agente possui modelo do ambiente para prever transições de estado do ambiente causada pelas suas ações E Em ambiente não determinista tal modelo pode ser apenas estocástico Sem modelo prévio do ambiente E Agente ignora a priori: Etanto o valor de cada estado do ambiente com respeito a seus objetivos Equanto as transições de estado do ambiente que suas ações podem causar E Dois tipos de técnicas: EAs que permitem ao agente aprender o valor de ação para a realização dos seus objetivos sem conhecer o estado do ambiente EAs que permitem aprender ambas a função valor e a função de transição de estado
Aprendizagem por reforço de uma função valor x de uma função ação-valor Função valor E associa valor diretamente a estados ambiente E valor de uma ação indiretamente definida como valor do estado resultado da execução da ação E aplicável apenas para agente com modelo efetivo do ambiente (para prever o estado resultado da execução de cada ação) Função ação-valor E associa valor diretamente a pares (estado(ambiente), ação) E aplicável a agente: Esem modelo efetivo do ambiente Esem nenhum modelo de um ambiente acessível E com modelo apenas perceptivo de um ambiente inacessível E chamado de Aprendizagem Q
Aprendizagem por reforço de uma função valor x de uma função ação-valor 0 0 100 0 0 72 90 0 0 100 0 0 Reforços 81 100 0 Reforços 90 100 81 Função Valor 90 72 81 81 100 81 90 90 72 100 81 Função Ação-Valor
Aprendizagem por reforço em ambiente episódico x não episódico Ambiente episódico E O reforço recebido pelo agente depende apenas do estado atual do ambiente E O estado sucessor depende apenas do estado atual e da ação a executar E Ambos são independentes dos estados precedentes pelo qual o ambiente passou E Escolher uma ação em tal ambiente chama-se de processo de decisão de Markov E Pode se reusar o vasto leque de técnicas de otimização iterativas probabilistas disponíveis para tais processos Ambiente não episódico E Agentes chegando no mesmo estados do ambiente por caminhos diferentes podem: Ereceber reforços diferentes Efazer passar o ambiente para estados diferentes executando a mesma ação nesse mesmo estado E Técnicas baseadas em modelos de Markov não se aplicam
Aprendizagem por reforço em ambiente determinista x não determinista Ambiente determinista E Agente recebe sempre mesma percepção e mesmo reforço ao chegar em um determinado estado do ambiente E Agente executando a mesma ação no mesmo estado do ambiente sempre leva-o no mesmo estado sucessor E Função valor ou ação-valor podem ser determinista Ambiente não determinista E Agente pode receber percepções e reforços diferentes quando chegar várias vezes no mesmo estado do ambiente E Execução da mesma ação no mesmo estado pode levar o agentes para estados sucessores diferentes E Sensores e atuadores ruidosos são umas das causas de tal não determinismo E Função valor ou ação-valor há de ser estocástica
Técnicas de Aprendizagem Por Reforço (APR) E APR passiva com modelo efetivo do ambiente: ELMS: teoria do controle adaptativo EADP: programação dinâmica adaptativa (pesquisa operacional) ETD: diferencia temporal E APR passiva sem modelo efetivo do ambiente: ELMS e TD E APR ativa com modelo efetivo do ambiente: EADP ativa e TD ativa EModelo previamente conhecido ou iterativamente aprendido junto a função valor E APR ativa sem modelo efetivo do ambiente: EAprendizagem Q
APR passiva com modelo do ambiente não determinista 3 +1 3 -0. 0380 2 -1 2 -0. 1646 1 Start 1 1 -0. 2911 2 3 4 1 0. 0886 0. 2152 +1 -0. 4430 -1 -0. 4177 -0. 5443 -0. 7722 2 3 4 E Agente guarda para cada estado: E probabilidades de transição para os outros estados Enúmero de vezes que foi alcançado Eestimativa atual de v E Várias técnicas em função da formula de atualização de v
Teoria do controle adaptativa E LMS: v(sk) = ij r(sij) / n Eonde sij são os estados depois de sk nos n percursos já explorados passando por sk Ereduz aprendizagem por reforço a aprendizagem supervisionada com reforços a vir já observados sendo o retorno Evalor estimado de um estado função apenas de reforços ignorando valor estimado de outros estados Epor isso converge muito lentamente Ecomo não usa modelo do ambiente é utilizável para APR sem modelo
Programação dinâmica adaptativa e diferença temporal E ADP: v(si) = r(si) + jp(trans(si, sj)). v(sj) Eonde p(trans(si, sj)) é a probabilidade do ambiente passar do estado si para o estado sj Evalor estimado de um estado função do reforço no estado, dos valores estimados em estados vizinhos e do modelo do ambiente Epor isso converge mais rapidamente que LMS Eporém computacionalmente caro por tomar em consideração, para cada percurso, todos os vizinhos de todos os estados do percurso Eintratável para ambientes com muitos estados, ex, jogo do backgammon envolveria resolver sistema de 1050 equações com 1050 variáveis E TD: v(si, ek) = v(si, ek-1) + (r(sj) + v(sj, ek-1) - v(si, ek-1)) Evalor estimado do estado função do reforço no estado e do valor estimado de apenas um vizinho, vizinho o precedente no percurso atual E rapidez de convergência melhor que LMS mas menor que ADP E porém mais computacionalmente escalável do que ADP
APR passiva sem modelo efetivo do ambiente não determinista E LMS e TD de fato não usam modelo efetivo do ambiente e então se aplicam a esse caso sem modificação E ADP precisa ser modificado da seguinte maneira: Emodelo adquirido simultaneamente com função valor via percursos no ambiente Ecada transição observada é registrada pelo agente Eesse registros são generalizados por uma técnica de aprendizagem supervisionada incremental como: E redes neurais E redes bayesianas E programação em lógica incremental
ADP ativa E Mudanças chaves de passivo para ativo: EAdição de política de compromisso aproveitamento-exploração EParametrização do modelo efetivo pelas ações a executar E Atualização: v(si) = r(sj) + maxa e( jp(trans(si, a, sj)). v(sj) , n(a, sj)), onde Ep(trans(si, a, sj)) é a probabilidade do estado sj ser o resultado da execução da ação a no estado si En(a, sj) é o número de vezes a ação a foi escolhida no estado sj Ee(v, n) é a função de exploração Ee(v, n) = r+ se n L Ee(v, n) = v se n L Er+ é uma estimativa otimista do maior reforço disponível no ambiente EL é um limiar fixo E Modelo p(trans(si, a, sj)) aprendido semelhantemente a p(trans(si, sj)), exceto pelo registro da ação executada que causou a transição observada
TD ativa E Coeficiente no fórmula de atualização toma em consideração compromisso aproveitamento-exploração: E = 1 / 1 + n(a, s) Eonde n(s, a) é o número de vezes a ação a foi escolhida no estado s E Função de exploração e acrescentada para escolher a ação a executar E Modelo efetivo do ambiente: E passa a ser necessário para escolher ação a executar a cada passo E pode ser aprendido iterativamente usando mesmas técnicas do que no ADP ativo
Aprendizagem Q E Aprende valor de uma determinada ação em um determinado estado no lugar do valor desse estado em si E Permite dispensar modelo efetivo do ambiente inteiramente, mesmo no caso ativo E não precisa ser fornecido como conhecimento prévio E nem aprendido junto a função ação-valor E Relação entre função valor e função ação-valor: E v(e) = maxa q(a, e) E Fórmula de atualização: E q(am, si, ek) = q(am, si, ek-1) + (r(si) + maxan q(an, sj, ek-1) - q(am, si, ek-1)) / (1 + n(am, si)) Eonde: n(am, si) é o número de vezes a ação am foi escolhida no estado si E adaptação ao caso de aprendizagem de uma função ação-valor da fórmula de atualização de TD E ADP não pode ser usado para aprender valores q pós re-introduziria necessidade de um modelo efetivo do ambiente E Converge menos rapidamente que ADP
Representação intencional do ambiente E Métodos apresentados até agora não são escaláveis para domínios com muitos estados e com muitas ações E Solução: Emudar de uma representação em extensão dos estados do ambiente, dos efeitos das ações e do valor dos estados ou ações para uma representação em intenção Eintegrar aprendizagem por reforço com representação do conhecimento e/ou aprendizagem supervisionado incremental E Cada elemento de um problema de APR pode ser abstraído por um vetor de atributos, ex, Ev(ei) = w 1 f 1(ei) +. . . + wnfn(ei) EEssa soma ponderada pode ser substituída ao v(ei) nas equações de atualização Eos pesos aprendidos usando aprendizagem supervisionado incremental Eos fj(ek) aprendidos resolvendo as novas equações abstratas
Aprendizagem por reforço x resolução de problema por meio de busca E Métodos de busca iterativas como gradiente crescente e simulated annealing podem ser usadas para resolver problemas de APR E Buscam o espaço das políticas de ação diretamente, sem recorrer ao conceito intermediário de função valor ou função ação-valor E Viável apenas com ambiente muito pequenos E Não permitem aprendizagem durante utilização, mas apenas durante treinamento prévio
Aprendizagem por reforço x raciocínio baseado em conhecimento E Raciocínio baseado em conhecimento E pode ser usado por um agente aprendendo por reforço E junto a uma representação em intenção do problema E para: E interpretar percepções para identificar reforço e estado do ambiente E prever efeitos das ações E calcular utilidade
Aprendizagem por reforço x planejamento E APR pode ser combinado com planejamento hierárquico E A decomposição de um operador O na penúltima camada mais baixa do planejador é: E nem enlatada E nem construída usando planejamento E mas construída por uma agente de APR E Quando o agente APR: E executa uma serie de ações E a partir de uns dos estados satisfazendo a precondição P(O) E se o resultado é de fazer passar o ambiente por uns dos estados satisfazendo o efeito E(O) ele recebe um reforço + E senão, ele recebe um reforço -
Aprendizagem por reforço x aprendizagem conexionista e evolucionista E Redes neurais e algoritmos genéticos podem ser usados para resolver problemas de APR E Aprendem políticas de ação diretamente, sem recorrer ao conceito intermediário de função valor ou função açãovalor E Os pesos de uma rede neural podem ser ajustados em função da recepção de reforços positivos ou negativos E A função de fitness de um algoritmo genético pode ser definida em termos dos reforços positivos ou negativos
Tópicos avançados em aprendizagem por reforço E Aprendizagem por reforço hierárquico: E Idéia semelhante ao planejamento hierárquico E Tarefa do agente decomposta em camadas E O comportamento aprendido por reforço a uma camada mais baixa serve para execução de ação a camada acima E Aprendizagem por reforço relacional E Modelo intencional do ambiente E Baseado em programas lógicos ou árvores de decisão com variáveis lógicas E Fornecido como conhecimento prévio, e/ou E aprendido junto a função valor ou ação-valor E via programação em lógica indutiva E Aprendizagem por reforço multi-agentes
Leituras E Capítulo 22 do AIMA de Russell & Norvig www. cs. berkeley. edu/~russell/aima. html E Capítulo 13 de Machine Learning do Mitchell www. cs. cmu. edu/~tom/mlbook. html E Reinforcement Learning, livro de Sutton & Barbo http: //www-anw. cs. umass. edu/~rich/book/the-book. html E Reiforcement Learning: A Survey de Kaelbling, L. P. & Littman, M. L. www. cs. cmu. edu/afs/cs/project/jair/pub/volume 4/ kaelbling 96 a-html/rl-survey. html E ifile: An Application of Machine Learning to E-Mail Filtering, http: //citeseer. nj. nec. com/11099. html
- Slides: 38