From 443458e812f0cabd38847c16ab6bf47689e15bd8 Mon Sep 17 00:00:00 2001 From: Varuna Jayasiri Date: Thu, 10 Dec 2020 08:42:06 +0530 Subject: [PATCH] summaries --- labml_nn/capsule_networks/__init__.py | 11 +++++++++++ labml_nn/capsule_networks/mnist.py | 5 +++++ labml_nn/gan/__init__.py | 5 +++++ labml_nn/gan/cycle_gan.py | 7 +++++++ labml_nn/gan/dcgan.py | 5 +++++ labml_nn/gan/simple_mnist_experiment.py | 5 +++++ labml_nn/lstm/__init__.py | 5 +++++ labml_nn/optimizers/__init__.py | 7 +++++++ labml_nn/optimizers/ada_belief.py | 5 +++++ labml_nn/optimizers/adam.py | 5 +++++ labml_nn/optimizers/adam_warmup.py | 7 +++++++ labml_nn/optimizers/amsgrad.py | 5 +++++ labml_nn/optimizers/configs.py | 7 +++++++ labml_nn/optimizers/mnist_experiment.py | 5 +++++ labml_nn/optimizers/noam.py | 8 ++++++++ labml_nn/optimizers/performance_test.py | 5 +++++ labml_nn/optimizers/radam.py | 5 +++++ labml_nn/recurrent_highway_networks/__init__.py | 5 +++++ labml_nn/rl/__init__.py | 10 +++++++++- labml_nn/rl/dqn/__init__.py | 10 ++++++++++ labml_nn/rl/dqn/experiment.py | 5 +++++ labml_nn/rl/dqn/model.py | 5 +++++ labml_nn/rl/dqn/replay_buffer.py | 5 +++++ labml_nn/rl/game.py | 5 +++++ labml_nn/rl/ppo/__init__.py | 6 ++++++ labml_nn/rl/ppo/experiment.py | 5 +++++ labml_nn/rl/ppo/gae.py | 5 +++++ labml_nn/sketch_rnn/__init__.py | 7 +++++++ 28 files changed, 169 insertions(+), 1 deletion(-) diff --git a/labml_nn/capsule_networks/__init__.py b/labml_nn/capsule_networks/__init__.py index 9a3ad02a..44db731f 100644 --- a/labml_nn/capsule_networks/__init__.py +++ b/labml_nn/capsule_networks/__init__.py @@ -1,8 +1,19 @@ """ +--- +title: Capsule Networks +summary: > + PyTorch implementation/tutorial of Capsule Networks. + Capsule networks is neural network architecture that embeds features + as capsules and routes them with a voting mechanism to next layer of capsules. +--- + # Capsule Networks This is an implementation of [Dynamic Routing Between Capsules](https://arxiv.org/abs/1710.09829). +Capsule networks is neural network architecture that embeds features as capsules and routes them +with a voting mechanism to next layer of capsules. + Unlike in other implementations of models, we've included a sample, because it is difficult to understand some of the concepts with just the modules. [This is the annotated code for a model that use capsules to classify MNIST dataset](mnist.html) diff --git a/labml_nn/capsule_networks/mnist.py b/labml_nn/capsule_networks/mnist.py index ea4df6ab..a0eb137d 100644 --- a/labml_nn/capsule_networks/mnist.py +++ b/labml_nn/capsule_networks/mnist.py @@ -1,4 +1,9 @@ """ +--- +title: Classify MNIST digits with Capsule Networks +summary: Code for training Capsule Networks on MNIST dataset +--- + # Classify MNIST digits with Capsule Networks This paper implements the experiment described in paper diff --git a/labml_nn/gan/__init__.py b/labml_nn/gan/__init__.py index 6f809aad..4baf29f4 100644 --- a/labml_nn/gan/__init__.py +++ b/labml_nn/gan/__init__.py @@ -1,4 +1,9 @@ """ +--- +title: Generative Adversarial Networks (GAN) +summary: A simple PyTorch implementation/tutorial of Generative Adversarial Networks (GAN) loss functions. +--- + # Generative Adversarial Networks (GAN) This is an implementation of diff --git a/labml_nn/gan/cycle_gan.py b/labml_nn/gan/cycle_gan.py index 573a674b..d4983628 100644 --- a/labml_nn/gan/cycle_gan.py +++ b/labml_nn/gan/cycle_gan.py @@ -1,4 +1,11 @@ """ +--- +title: Cycle GAN +summary: > + A simple PyTorch implementation/tutorial of Cycle GAN introduced in paper + Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. +--- + # Cycle GAN This is an implementation of paper diff --git a/labml_nn/gan/dcgan.py b/labml_nn/gan/dcgan.py index 6ffb1225..1525e8d6 100644 --- a/labml_nn/gan/dcgan.py +++ b/labml_nn/gan/dcgan.py @@ -1,4 +1,9 @@ """ +--- +title: Deep Convolutional Generative Adversarial Networks (DCGAN) +summary: A simple PyTorch implementation/tutorial of Deep Convolutional Generative Adversarial Networks (DCGAN). +--- + # Deep Convolutional Generative Adversarial Networks (DCGAN) This is an implementation of paper diff --git a/labml_nn/gan/simple_mnist_experiment.py b/labml_nn/gan/simple_mnist_experiment.py index b801946a..a7bd3163 100644 --- a/labml_nn/gan/simple_mnist_experiment.py +++ b/labml_nn/gan/simple_mnist_experiment.py @@ -1,4 +1,9 @@ """ +--- +title: Generative Adversarial Networks experiment with MNIST +summary: This experiment generates MNIST images using multi-layer perceptron. +--- + # Generative Adversarial Networks experiment with MNIST """ diff --git a/labml_nn/lstm/__init__.py b/labml_nn/lstm/__init__.py index 181985bf..dd9151f9 100644 --- a/labml_nn/lstm/__init__.py +++ b/labml_nn/lstm/__init__.py @@ -1,4 +1,9 @@ """ +--- +title: Long Short-Term Memory (LSTM) +summary: A simple PyTorch implementation/tutorial of Long Short-Term Memory (LSTM) modules. +--- + # Long Short-Term Memory (LSTM) """ diff --git a/labml_nn/optimizers/__init__.py b/labml_nn/optimizers/__init__.py index 81f5b473..4c37ac4f 100644 --- a/labml_nn/optimizers/__init__.py +++ b/labml_nn/optimizers/__init__.py @@ -1,4 +1,11 @@ """ +--- +title: Optimizers +summary: > + A set of PyTorch implementations/tutorials of popular gradient descent based optimizers. + Currently includes Adam, AMSGrad and RAdam optimizers. +--- + # Optimizers ## Optimizer Implementations diff --git a/labml_nn/optimizers/ada_belief.py b/labml_nn/optimizers/ada_belief.py index 27d8c848..c149c983 100644 --- a/labml_nn/optimizers/ada_belief.py +++ b/labml_nn/optimizers/ada_belief.py @@ -1,4 +1,9 @@ """ +--- +title: AdaBelief optimizer +summary: A simple PyTorch implementation/tutorial of AdaBelief optimizer. +--- + This is based from AdaBelief official implementation https://github.com/juntang-zhuang/Adabelief-Optimizer """ diff --git a/labml_nn/optimizers/adam.py b/labml_nn/optimizers/adam.py index e8e59a18..ab2a87a6 100644 --- a/labml_nn/optimizers/adam.py +++ b/labml_nn/optimizers/adam.py @@ -1,4 +1,9 @@ """ +--- +title: Adam Optimizer +summary: A simple PyTorch implementation/tutorial of Adam optimizer +--- + # Adam Optimizer This is an implementation of popular optimizer *Adam* from paper diff --git a/labml_nn/optimizers/adam_warmup.py b/labml_nn/optimizers/adam_warmup.py index df4d59f9..76ecda43 100644 --- a/labml_nn/optimizers/adam_warmup.py +++ b/labml_nn/optimizers/adam_warmup.py @@ -1,3 +1,10 @@ +""" +--- +title: Adam optimizer with warm-up +summary: A simple PyTorch implementation/tutorial of Adam optimizer with warm-up. +--- +""" + from typing import Dict from labml_nn.optimizers import WeightDecay diff --git a/labml_nn/optimizers/amsgrad.py b/labml_nn/optimizers/amsgrad.py index e9316649..e1361ec2 100644 --- a/labml_nn/optimizers/amsgrad.py +++ b/labml_nn/optimizers/amsgrad.py @@ -1,4 +1,9 @@ """ +--- +title: AMSGrad Optimizer +summary: A simple PyTorch implementation/tutorial of AMSGrad optimizer. +--- + # AMSGrad This is an implementation of the paper diff --git a/labml_nn/optimizers/configs.py b/labml_nn/optimizers/configs.py index d9ab8f89..4a60f191 100644 --- a/labml_nn/optimizers/configs.py +++ b/labml_nn/optimizers/configs.py @@ -1,3 +1,10 @@ +""" +--- +title: Configurable optimizer module +summary: This implements a configurable module for optimizers. +--- +""" + from typing import Tuple import torch diff --git a/labml_nn/optimizers/mnist_experiment.py b/labml_nn/optimizers/mnist_experiment.py index 5aeac379..cd3338d9 100644 --- a/labml_nn/optimizers/mnist_experiment.py +++ b/labml_nn/optimizers/mnist_experiment.py @@ -1,4 +1,9 @@ """ +--- +title: MNIST example to test the optimizers +summary: This is a simple MNIST example with a CNN model to test the optimizers. +--- + # MNIST example to test the optimizers """ import torch.nn as nn diff --git a/labml_nn/optimizers/noam.py b/labml_nn/optimizers/noam.py index 04514861..e0d0d2f4 100644 --- a/labml_nn/optimizers/noam.py +++ b/labml_nn/optimizers/noam.py @@ -1,3 +1,11 @@ +""" +--- +title: Noam optimizer from Attention is All You Need paper +summary: > + This is a tutorial/implementation of Noam optimizer. + Noam optimizer has a warm-up period and then an exponentially decaying learning rate. +--- +""" from typing import Dict from labml_nn.optimizers import WeightDecay diff --git a/labml_nn/optimizers/performance_test.py b/labml_nn/optimizers/performance_test.py index 026ed06c..0d2118b2 100644 --- a/labml_nn/optimizers/performance_test.py +++ b/labml_nn/optimizers/performance_test.py @@ -1,4 +1,9 @@ """ +--- +title: Test performance of Adam implementations +summary: This experiment compares performance of Adam implementations. +--- + # Performance testing Adam ``` diff --git a/labml_nn/optimizers/radam.py b/labml_nn/optimizers/radam.py index a9796209..1554b1f6 100644 --- a/labml_nn/optimizers/radam.py +++ b/labml_nn/optimizers/radam.py @@ -1,4 +1,9 @@ """ +--- +title: RAdam optimizer +summary: A simple PyTorch implementation/tutorial of RAdam optimizer. +--- + Based on https://github.com/LiyuanLucasLiu/RAdam """ diff --git a/labml_nn/recurrent_highway_networks/__init__.py b/labml_nn/recurrent_highway_networks/__init__.py index 6ba609ec..c05f4908 100644 --- a/labml_nn/recurrent_highway_networks/__init__.py +++ b/labml_nn/recurrent_highway_networks/__init__.py @@ -1,4 +1,9 @@ """ +--- +title: Recurrent Highway Networks +summary: A simple PyTorch implementation/tutorial of Recurrent Highway Networks. +--- + # Recurrent Highway Networks This is an implementation of [Recurrent Highway Networks](https://arxiv.org/abs/1607.03474). diff --git a/labml_nn/rl/__init__.py b/labml_nn/rl/__init__.py index 192981da..aef6bf36 100644 --- a/labml_nn/rl/__init__.py +++ b/labml_nn/rl/__init__.py @@ -1,5 +1,13 @@ """ -# RL Algorithms +--- +title: Reinforcement Learning Algorithms +summary: > + This is a collection of PyTorch implementations/tutorials of reinforcement learning algorithms. + It currently includes Proximal Policy Optimization, Generalized Advantage Estimation, and + Deep Q Networks. +--- + +# Reinforcement Learning Algorithms * [Proximal Policy Optimization](ppo) * [This is an experiment](ppo/experiment.html) that runs a PPO agent on Atari Breakout. diff --git a/labml_nn/rl/dqn/__init__.py b/labml_nn/rl/dqn/__init__.py index d3ac73e1..69899bc5 100644 --- a/labml_nn/rl/dqn/__init__.py +++ b/labml_nn/rl/dqn/__init__.py @@ -1,4 +1,14 @@ """ +--- +title: Deep Q Networks (DQN) +summary: > + This is a PyTorch implementation/tutorial of Deep Q Networks (DQN) from paper + Playing Atari with Deep Reinforcement Learning. + This includes dueling network architecture, a prioritized replay buffer and + double-Q-network training. +--- + + # Deep Q Networks (DQN) This is an implementation of paper diff --git a/labml_nn/rl/dqn/experiment.py b/labml_nn/rl/dqn/experiment.py index b08043a2..9bbd9509 100644 --- a/labml_nn/rl/dqn/experiment.py +++ b/labml_nn/rl/dqn/experiment.py @@ -1,4 +1,9 @@ """ +--- +title: DQN Experiment with Atari Breakout +summary: Implementation of DQN experiment with Atari Breakout +--- + # DQN Experiment with Atari Breakout This experiment trains a Deep Q Network (DQN) to play Atari Breakout game on OpenAI Gym. diff --git a/labml_nn/rl/dqn/model.py b/labml_nn/rl/dqn/model.py index b41fc690..83858ad5 100644 --- a/labml_nn/rl/dqn/model.py +++ b/labml_nn/rl/dqn/model.py @@ -1,4 +1,9 @@ """ +--- +title: Deep Q Network (DQN) Model +summary: Implementation of neural network model for Deep Q Network (DQN). +--- + # Deep Q Network (DQN) Model """ diff --git a/labml_nn/rl/dqn/replay_buffer.py b/labml_nn/rl/dqn/replay_buffer.py index ed52857a..c0d4371a 100644 --- a/labml_nn/rl/dqn/replay_buffer.py +++ b/labml_nn/rl/dqn/replay_buffer.py @@ -1,4 +1,9 @@ """ +--- +title: Prioritized Experience Replay Buffer +summary: Annotated implementation of prioritized experience replay using a binary segment tree. +--- + # Prioritized Experience Replay Buffer This implements paper [Prioritized experience replay](https://arxiv.org/abs/1511.05952), diff --git a/labml_nn/rl/game.py b/labml_nn/rl/game.py index af8743ea..76efee8e 100644 --- a/labml_nn/rl/game.py +++ b/labml_nn/rl/game.py @@ -1,4 +1,9 @@ """ +--- +title: Atari wrapper with multi-processing +summary: This implements the Atari games with multi-processing. +--- + # Atari wrapper with multi-processing """ import multiprocessing diff --git a/labml_nn/rl/ppo/__init__.py b/labml_nn/rl/ppo/__init__.py index e53df9c7..f4b0ee56 100644 --- a/labml_nn/rl/ppo/__init__.py +++ b/labml_nn/rl/ppo/__init__.py @@ -1,4 +1,10 @@ """ +--- +title: Proximal Policy Optimization (PPO) +summary: > + An annotated implementation of Proximal Policy Optimization (PPO) algorithm in PyTorch. +--- + # Proximal Policy Optimization (PPO) This is a an implementation of [Proximal Policy Optimization - PPO](https://arxiv.org/abs/1707.06347). diff --git a/labml_nn/rl/ppo/experiment.py b/labml_nn/rl/ppo/experiment.py index 2fa60dc3..4f846089 100644 --- a/labml_nn/rl/ppo/experiment.py +++ b/labml_nn/rl/ppo/experiment.py @@ -1,4 +1,9 @@ """ +--- +title: PPO Experiment with Atari Breakout +summary: Annotated implementation to train a PPO agent on Atari Breakout game. +--- + # PPO Experiment with Atari Breakout This experiment trains Proximal Policy Optimization (PPO) agent Atari Breakout game on OpenAI Gym. diff --git a/labml_nn/rl/ppo/gae.py b/labml_nn/rl/ppo/gae.py index 67de7341..17e354bc 100644 --- a/labml_nn/rl/ppo/gae.py +++ b/labml_nn/rl/ppo/gae.py @@ -1,4 +1,9 @@ """ +--- +title: Generalized Advantage Estimation (GAE) +summary: A PyTorch implementation/tutorial of Generalized Advantage Estimation (GAE). +--- + # Generalized Advantage Estimation (GAE) This is an implementation of paper [Generalized Advantage Estimation](https://arxiv.org/abs/1506.02438). diff --git a/labml_nn/sketch_rnn/__init__.py b/labml_nn/sketch_rnn/__init__.py index b736f67f..2ddb337c 100644 --- a/labml_nn/sketch_rnn/__init__.py +++ b/labml_nn/sketch_rnn/__init__.py @@ -1,4 +1,11 @@ """ +--- +title: Sketch RNN +summary: > + This is an annotated PyTorch implementation of the Sketch RNN from paper A Neural Representation of Sketch Drawings. + Sketch RNN is a sequence-to-sequence model that generates sketches of objects such as bicycles, cats, etc. +--- + # Sketch RNN This is an annotated implementation of the paper