Visão Geral
Este Curso Reinforcement Learning foi elaborado como uma introdução completa ao Aprendizado por Reforço. É necessário um bom entendimento do aprendizado de máquina básico e uma base de probabilidades justas.
O "Reinforcement Learning" (Aprendizado por Reforço, em português) é um paradigma de aprendizado de máquina que se concentra na maneira como os agentes tomam decisões para maximizar uma recompensa cumulativa ao longo do tempo em um ambiente específico. É um dos três principais tipos de aprendizado de máquina, ao lado do aprendizado supervisionado e não supervisionado. O Aprendizado por Reforço é particularmente adequado para situações em que um agente precisa tomar uma série de ações sequenciais para alcançar um objetivo.
Os principais componentes do Aprendizado por Reforço:
- Agente: É a entidade que toma decisões e interage com o ambiente. Pode ser um programa de computador, um robô ou qualquer sistema que aprenda a realizar ações.
- Ambiente: Refere-se ao contexto em que o agente opera e no qual suas ações têm impacto. O ambiente fornece feedback ao agente na forma de recompensas ou penalidades, com base nas ações que o agente toma.
- Ações: São as escolhas que o agente faz em cada etapa. Essas ações podem ter diferentes consequências e impactar o estado futuro do ambiente.
- Estado: Representa uma descrição do ambiente em um determinado momento. O estado fornece informações sobre o contexto atual do ambiente e ajuda o agente a decidir qual ação tomar a seguir.
- Recompensa: É um feedback numérico que o agente recebe do ambiente após cada ação. A recompensa é usada para avaliar a qualidade das ações e direcionar o aprendizado do agente para maximizar as recompensas cumulativas.
O processo de aprendizado por reforço envolve o agente explorando o ambiente, tomando ações e aprendendo com a experiência. O objetivo é encontrar uma política, que é um conjunto de regras ou estratégias que determinam quais ações o agente deve tomar em cada estado para maximizar as recompensas ao longo do tempo.
Publico Alvo
- Cientistas de Dados e Engenheiros de Machine Learning: Profissionais que desejam aprofundar seus conhecimentos em aprendizado de máquina e inteligência artificial e aprender como aplicar o Aprendizado por Reforço em projetos práticos.
- Pesquisadores em IA: Aqueles que estão envolvidos em pesquisa acadêmica em aprendizado de máquina e desejam explorar as técnicas e algoritmos avançados do Aprendizado por Reforço.
- Engenheiros de Software: Desenvolvedores que desejam entender como implementar agentes de aprendizado por reforço em aplicativos e sistemas de software, como jogos, sistemas de controle e muito mais.
- Profissionais da Indústria de Jogos: Aqueles que trabalham na indústria de jogos podem usar o Aprendizado por Reforço para criar IA mais avançada para NPCs (personagens não-jogáveis) e sistemas de jogos.
- Pesquisadores em Robótica: Profissionais que estão interessados em desenvolver robôs autônomos e sistemas de controle baseados em aprendizado por reforço.
- Estudantes de Ciência da Computação e Engenharia: Alunos que desejam aprender sobre aprendizado de máquina e inteligência artificial e estão interessados em uma introdução ao Aprendizado por Reforço.
- Profissionais de Controle de Processos: Aqueles que trabalham em automação industrial e controle de processos podem aplicar o Aprendizado por Reforço para otimizar sistemas de controle.
- Tomadores de Decisão e Gerentes: Pessoas em cargos de liderança que desejam entender os princípios do Aprendizado por Reforço para tomar decisões informadas sobre sua aplicação nos negócios.
Pre-Requisitos
Aprendizado profundo básico: neurônios, tipos de camadas, redes, funções de perda, otimizadores, overfitting, Tensorflow
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico
K-Armed Bandit Problem
- Sequential Decision Making with Evaluative Feedback
- Learning Action Values
- Estimating Action Values Incrementally
- Optimistic initial values
- UCB Action Selection
- Contextual Bandits for Real World RL
Hands-on Lab: Understand expected values from different gambling games
Markov Decision Processes
- Examples of MDPs
- The Reward Hypothesis
- Continuing Tasks
- Episodic and Continuing Tasks
Hands-on Lab: Understand Markov Decision Processes by creating a classifier for thrash random writing
Value Functions and Bellman Equations
- Specifying Policies
- Value Functions
- Bellman Equation Derivation
- Optimal Policies
- Optimal Value Functions
- Using Optimal Value Functions to get Optimal Policies
Dynamic Programming
- Iterative Policy Evaluation
- Policy Iteration
- Efficiency of Dynamic Programming
Hands-on Lab: Implement the Bellman equations and Dynamic Programming for a grid world game
Monte Carlo for Prediction and Control
- What is Monte Carlo?
- Prediction
- Action Values
- Blackjack example
- Epsilon-soft policies
- Off-policy learning
Hands-on Lab:
- Implement the off-policy learning methods and compare them with the single policy ones for a grid world game
- Understand Markov Decision Processes by creating a classifier for thrash random writing
On-policy Prediction with Approximation
- Parameterized Functions
- Generalization and Discrimination
- Value Error Objective
- Gradient Descent
Hands-on Lab: Implement your own Flappy Bird AI that learn to play only from the environment
TENHO INTERESSE