Skip to content

Instantly share code, notes, and snippets.

View danijar's full-sized avatar

Danijar Hafner danijar

View GitHub Profile
import argparse
import collections
import re
TOKEN_REGEX = re.compile(r'[A-Za-z]+')
BLACKLIST = set([
'pdf', 'and', 'the', 'proceedings', 'conference', 'ieee', 'for',
'about', 'details', 'data', 'with', 'arxiv', 'preprint', 'advances'])
def tokenize(line):
import random
import time
import threading
import matplotlib.pyplot as plt
class Plot:
def __init__(self):
plt.ion()

Char-RNN Sample

Parameters

dataset = ArxivAbstracts(
    categories='stat.ML cs.NE cs.LG math.OC',
    keywords='neural network deep')
max_length = 50
sampling_temperature = 0.5
algorithms:
- config:
| frame_skip: 6
| history: 6
| replay_capacity: 5e4
name: DQN
train_steps: 200000
type: DQN
envs:
- SimpleGather-v0
@danijar
danijar / relations_semeval_glove_not_found.txt
Created May 22, 2016 13:20
Words from the Semeval 2010 dataset not found in Glove
keygen
uprises
non-infected
counter-weight
pipetted
quispel
rooster-whistles
moisturisers
enfeoffing
pre-adolescents
import numpy as np
class Network:
def __init__(self, num_inputs, num_hidden, num_output,
init_weight_scale=0.5):
self.w1 = np.random.normal(
0, init_weight_scale, (num_inputs + 1, num_hidden))
self.w2 = np.random.normal(
@danijar
danijar / bench_gym_speed.sh
Created September 13, 2017 21:31
One-liner to benchmark speed of Gym environments
python -c "import gym,time;d=10000;e=gym.make('Ant-v1');s=time.time();e.reset();[e.reset() if e.step(e.action_space.sample())[2] else 0 for _ in range(d)];print(d/(time.time()-s),'FPS')"
@danijar
danijar / edit_dirs
Last active April 29, 2018 12:50
Text based tool move and delete directories
#!/usr/bin/python3
"""Move or delete directories via your text editor.
Installation:
- Install sh.py via `pip3 install sh`.
- Save this file into a directory in your $PATH, for example `~/bin`.
"""
import argparse
import tempfile
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
def gaussian_blur(image, diameter):
padding = [[0, 0]] + [[(diameter) // 2, (diameter - 1) // 2]] * 2 + [[0, 0]]
diameter = tf.to_float(diameter)
filter_ = tf.range(-(diameter - 1) // 2, (diameter - 1) // 2 + 1)
filter_ = tf.exp(-0.5 * filter_ ** 2 / (diameter / 4) ** 2) # 2 stds.
@danijar
danijar / tensorflow-agents-ppo-minitaur.py
Created October 23, 2017 14:28
Configuration for TensorFlow Agents PPO on MinitaurBulletEnv-v0
def minitaur_config():
# General
algorithm = ppo.PPOAlgorithm
num_agents = 10
eval_episodes = 30
use_gpu = False
# Environment
env = 'MinitaurBulletEnv-v0'
max_length = 1000
steps = 1e7 # 10M