O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Reinforcement Learning
Introdução ao Aprendizado por Reforço
Italo Lelis de Carvalho | @italohdc | hello@italolelis.com
. ...
Aprendizado
Supervisionado
Aprendizado
Não-Supervisionado
Aprendizado
por Reforço
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
A
AB
B
Treinamento Classificação
A...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
Maçã
Treinamento Classificação
Maç...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
YOLO 2.0 Open source real-time ima...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
A
AB
B
Treinamento Classificação
I...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
Maçã
Treinamento Classificação
Ide...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
Fonte: https://www.kahuna.com/blog...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
Reinforcement Learning
Aprendizado...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
Atari Games
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
- Reconhecimento
de objetos
- Reco...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
[1]
Watkins, Christo...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
[1]
Watkins, Christo...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
Catch the Ball
Q-Lea...
Learn Snake
Teaching an AI to play Snake using Reinforcement Learning
Q-Learning
- não precisa instalar
- roda direto no navegador
- funciona “out-of-the-box”
Learn Snake
> Q-Table
> Algoritmo
> Ações
> Recompensas
> Estados
Q-Table
Uma Q-Table é uma tabela com uma lista
de estado...
Q-Table
Uma Q-Table é uma tabela com uma lista
de estados e a probabilidade de sucesso
para cada ação que o agente pode to...
Algoritmo
1. Descobrir qual o estado atual
2. Executar a melhor ação para o estado
3. Receber recompensa pela ação executa...
UP
DOWN
LEFT RIGHT
Ações DisponíveisLearn Snake
> Q-Table
> Algoritmo
> Ações
> Recompensas
> Estados
+1 -1
0
pegar a maçã bater na própria cauda
qualquer outra situação
RecompensasLearn Snake
> Q-Table
> Algoritmo
> Ações
>...
Estados
Os estados são salvos no código
na forma de um dicionário
Cada estado possui um “nome”
que contém suas respectivas...
Estados
Como o dicionário é armazenado
no código...
Os estados são salvos no código
na forma de um dicionário
Cada estado ...
Estados
Como o dicionário é armazenado
no código...
Os estados são salvos no código
na forma de um dicionário
Cada estado ...
Algoritmo
1. Descobrir qual o estado atual
2. Executar a melhor ação para o estado
3. Receber recompensa pela ação executa...
Algoritmo
1. Descobrir qual o estado atual
2. Executar a melhor ação para o estado
3. Receber recompensa pela ação executa...
Learn Snake
> Q-Table
> Algoritmo
> Ações
> Recompensas
> Estados
+1
5. 0.650.8 0.8
0
Novo valor:
0.93
Taxa de Aprendizage...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
> Algoritmo Genético...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
> Algoritmo Genético...
> Aprendizado
Supervisionado
> Aprendizado
Não-Supervisionado
> Aprendizado por Reforço
>> Q-Learning
> Algoritmo Genético...
Rescue Maze
2º Lugar RoboCup Holanda 2013
1º Lugar Competição Brasileira de Robótica
#Arduino #Tremaux #A_Star_Algorithm
C...
Próximos SlideShares
Carregando em…5
×

Reinforcement Learning | Um pequeno panorama do Aprendizado por Reforço

38 visualizações

Publicada em

Reinforcement Learning (Aprendizado por Reforço) é um importante método de Machine Learning (Aprendizado de Máquina) na qual um agente aprende a se comportar interagindo com um ambiente e analisando os resultados obtidos.

Serão apresentadas algumas técnicas de Reinforcement Learning (com ênfase no Q-Learning) e a sua aplicação em alguns cenários simples.

Publicada em: Software
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Reinforcement Learning | Um pequeno panorama do Aprendizado por Reforço

  1. 1. Reinforcement Learning Introdução ao Aprendizado por Reforço Italo Lelis de Carvalho | @italohdc | hello@italolelis.com . . .
  2. 2. Aprendizado Supervisionado Aprendizado Não-Supervisionado Aprendizado por Reforço
  3. 3. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço A AB B Treinamento Classificação A B Identificação B A A B Aprendizado Supervisionado Classificação Regressão a saída é uma categoria ( A, B, C... ) a saída é um valor real ( dólar, peso... )
  4. 4. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço Maçã Treinamento Classificação Maçã Laranja Identificação Aprendizado Supervisionado Maçã Laranja Laranja Laranja Laranja Maçã Maçã
  5. 5. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço
  6. 6. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço YOLO 2.0 Open source real-time image recognition
  7. 7. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço A AB B Treinamento Classificação Identificação Aprendizado Não-Supervisionado Clusterização Associação agrupamento de dados semelhantes regra de associação entre os dados
  8. 8. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço Maçã Treinamento Classificação Identificação Aprendizado Não-Supervisionado Maçã Laranja Laranja
  9. 9. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço Fonte: https://www.kahuna.com/blog/3-gifs-that-explain-the-power-of-machine-learning/ Descoberta Consideração Avaliação Compra Pontos de Interação Trajetória do Cliente Como ferramenta de Marketing: Permite aprender os passos do consumidor até a compra do produto...
  10. 10. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço Reinforcement Learning Aprendizado por Reforço
  11. 11. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço
  12. 12. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço
  13. 13. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço Atari Games
  14. 14. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço
  15. 15. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço - Reconhecimento de objetos - Recompensa por seguir leis de trânsito - Punição por desobedecer leis de trânsito Carro Autônomo
  16. 16. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning [1] Watkins, Christopher JCH, and Peter Dayan. "Q-learning." Machine learning 8.3-4 (1992): 279-292 Q-Learning é uma forma simples de agentes aprenderem a se comportarem de forma ótima em um domínio Markoviano ”“ Watkins, 1989 [1] Q-Learning
  17. 17. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning [1] Watkins, Christopher JCH, and Peter Dayan. "Q-learning." Machine learning 8.3-4 (1992): 279-292 Q-Learning é uma forma simples de agentes aprenderem a se comportarem de forma ótima em um domínio Markoviano ”“ Watkins, 1989 [1] 0.8 0.10.1 . . . Cadeia de Markov
  18. 18. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning Catch the Ball Q-Learning é uma forma simples de agentes aprenderem a se comportarem de forma ótima em um domínio Markoviano ”“ Watkins, 1989 [1]
  19. 19. Learn Snake Teaching an AI to play Snake using Reinforcement Learning Q-Learning
  20. 20. - não precisa instalar - roda direto no navegador - funciona “out-of-the-box”
  21. 21. Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados Q-Table Uma Q-Table é uma tabela com uma lista de estados e a probabilidade de sucesso para cada ação que o agente pode tomar naquele estado Exemplo de uma Q-Table (a melhor ação a ser tomada está em azul)
  22. 22. Q-Table Uma Q-Table é uma tabela com uma lista de estados e a probabilidade de sucesso para cada ação que o agente pode tomar naquele estado Exemplo de uma Q-Table (a melhor ação a ser tomada está em azul) Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  23. 23. Algoritmo 1. Descobrir qual o estado atual 2. Executar a melhor ação para o estado 3. Receber recompensa pela ação executada 4. Descobrir o novo estado após executada a ação 5. Atualizar Q-Table com as informações obtidas Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados 5.
  24. 24. UP DOWN LEFT RIGHT Ações DisponíveisLearn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  25. 25. +1 -1 0 pegar a maçã bater na própria cauda qualquer outra situação RecompensasLearn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  26. 26. Estados Os estados são salvos no código na forma de um dicionário Cada estado possui um “nome” que contém suas respectivas informações Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  27. 27. Estados Como o dicionário é armazenado no código... Os estados são salvos no código na forma de um dicionário Cada estado possui um “nome” que contém suas respectivas informações Exemplo de uma Q-Table no código Nome do Estado Informações sobre as ações Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  28. 28. Estados Como o dicionário é armazenado no código... Os estados são salvos no código na forma de um dicionário Cada estado possui um “nome” que contém suas respectivas informações Exemplo de uma Q-Table no código Nome do Estado Informações sobre as ações Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados
  29. 29. Algoritmo 1. Descobrir qual o estado atual 2. Executar a melhor ação para o estado 3. Receber recompensa pela ação executada 4. Descobrir o novo estado após executada a ação 5. Atualizar Q-Table com as informações obtidas Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados direita +1 5.
  30. 30. Algoritmo 1. Descobrir qual o estado atual 2. Executar a melhor ação para o estado 3. Receber recompensa pela ação executada 4. Descobrir o novo estado após executada a ação 5. Atualizar Q-Table com as informações obtidas Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados direita +1 +1 5. 0.650.8 0.8 0 Novo valor: 0.93
  31. 31. Learn Snake > Q-Table > Algoritmo > Ações > Recompensas > Estados +1 5. 0.650.8 0.8 0 Novo valor: 0.93 Taxa de Aprendizagem 65% 0.65 Valor Mantido Valor Mantido Valor a ser atualizado Valor a ser atualizado 20% 0.2
  32. 32. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning > Algoritmo Genético Algoritmo Genético Mar I/O
  33. 33. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning > Algoritmo Genético by Ivan Seidel
  34. 34. > Aprendizado Supervisionado > Aprendizado Não-Supervisionado > Aprendizado por Reforço >> Q-Learning > Algoritmo Genético Genomas
  35. 35. Rescue Maze 2º Lugar RoboCup Holanda 2013 1º Lugar Competição Brasileira de Robótica #Arduino #Tremaux #A_Star_Algorithm Cinto de Auxílio a Deficientes Visuais FEBRACE 2014 Interação Humano-Robô usando Realidade Virtual #Unity #RealidadeVirtual #Voronoi Italo Lelis Estudante de Engenharia de Controle e Automação, UFMG italohdc italolelis.com 3x

×