Aprendizagem de reforço profundo em Pytorch
Este repositório contém todos os algoritmos RL sem modelo e baseados em modelos (chegando) em Pytorch. (Também pode conter algumas idéias de pesquisa em que estou trabalhando atualmente)
Para C ++ versão de pytorch-rl: pytorch-rl-cpp
O que é?
O Pytorch-RL implementa alguns algoritmos de aprendizado de reforço profundo de última geração em Pytorch, especialmente aqueles preocupados com espaços de ação contínuos. Você pode treinar seu algoritmo com eficiência na CPU ou GPU. Além disso, o Pytorch-RL trabalha com a academia OpenAI pronta para uso. Isso significa que é fácil avaliar e brincar com algoritmos diferentes. Claro que você pode estender o Pytorch-RL de acordo com suas próprias necessidades. TL: DR: Pytorch-RL facilita a execução de algoritmos de aprendizado de reforço profundo de ponta.
Instalação
Instale o Pytorch-RL da Pypi (recomendado):
PIP Instale Pytorch-Policy
Dependências
- Pytorch
- Academia (Openai)
- Mujoco-Py (para a simulação de física e a robótica ENV na academia)
- Pybullet (em breve)
- MPI (suportado apenas com instalação de back -end de back -end)
- Tensorboardx (https://github.com/lanpa/tensorboardx)
Algoritmos RL
- DQN (com Double Q Learning)
- Ddpg
- DDPG com ela (para os ambientes de busca do Openai)
- Aprendizagem de reforço herárquico
- Experiência priorizada Replay + DDPG
- DDPG com reprodução de experiência em retrospectiva priorizada (pesquisa)
- Mapa neural com A3C (em breve)
- Rainbow DQN (em breve)
- PPO (https://github.com/ikostrikov/pytorch-a2c-ppo-acktr)
- Ela com atenção própria para a substituição de objetivos (pesquisa)
- A3C (em breve)
- Acer (em breve)
- Darla
- TDM
- Modelos mundiais
- Soft ator-crítico
- Exploração orientada ao empoderamento (implementação do TensorFlow: https://github.com/navneet-nmk/empowerment-driven-exploration)
Ambientes
- Saia
- Pong (em breve)
- Manipulação de mão Tarefa robótica
- Buscar uma tarefa robótica de alcance
- Tarefa robótica de alcance à mão
- Bloco Manipulação Tarefa Robótica
- Vingança de Montezuma (pesquisa atual)
- Armadilha
- Gravitar
- Trava
- Super Mario Bros (siga as instruções para instalar o ginásio https://github.com/openai/tro)
- Desafio de Nips de próteses OpenSim (https://www.crowdai.org/challenges/nips-2018-ai-for-prosthetics-challenge)
Modelagem de Meio Ambiente (para Exploração e Adaptação de Domínio)
Vários truques de treinamento de GaN foram usados devido à instabilidade no treinamento de geradores e discriminadores. Consulte https://github.com/soumith/ganhacks para obter mais informações.
Mesmo depois de usar os truques, era realmente difícil treinar um gan para convergência. No entanto, após o uso de normalização espectral (https://arxiv.org/abs/1802.05957), o infogan foi treinado para convergência.
Para tarefas de tradução de imagem para imagens com Gans e VAEs em geral, o treinamento com a conexão SKIP realmente ajuda o treinamento.
- beta-vas
- Infogan
- CVAE-GAN
- Modelos generativos baseados em fluxo (pesquisa)
- Sagan
- Frequentar sequencial, inferir, repetir
- Exploração orientada a curiosidade
- Ruído de espaço de parâmetro para exploração
- Rede barulhenta
Referências
- Jogando Atari com profundo aprendizado de reforço, Mnih et al., 2013
- Controle no nível humano através do aprendizado de reforço profundo, Mnih et al., 2015
- Aprendizagem de reforço profundo com duplo q-learning, Van Hasselt et al., 2015
- Controle contínuo com aprendizado de reforço profundo, Lillicrap et al., 2015
- CVAE-GAN: geração de imagens de grão fino através de treinamento assimétrico, Bao et al., 2017
- Beta-vas: Aprendendo conceitos visuais básicos com uma estrutura variacional restrita, Higgins et al., 2017
- Replay Experience Replay, Andrychowicz et al., 2017
- InfoGan: Learning de representação interpretável por maximizar as redes adversárias generativas, Chen et al., 2016
- Modelos Mundiais, Ha et al., 2018
- Normalização espectral para redes adversárias generativas, Miyato et al., 2018
- Redes adversárias generativas de auto-distribuição, Zhang et al., 2018
- Exploração orientada por curiosidade por previsão auto-supervisionada, Pathak et al., 2017
- Ator-ator mole: Aprendizagem de reforço profundo da entropia máxima da política fora da política com um ator estocástico, Haarnoja et al., 2018
- Ruído de espaço de parâmetro para exploração, Plappert et al., 2018
- Rede Noisy de Exploração, Fortunato et al., 2018
- Algoritmos de otimização de políticas proximais, Schulman et al., 2017
- Controle em tempo real não supervisionado por meio de empoderamento variacional, Karl et al., 2017
- Informação mútua Estimativa neural, Belghazi et al., 2018
- Exploração orientada ao empoderamento usando estimativa de informações mútuas, Kumar et al., 2018