Skip to content

Instantly share code, notes, and snippets.

View Kaixhin's full-sized avatar
⚗️

Kai Arulkumaran Kaixhin

⚗️
View GitHub Profile
@Kaixhin
Kaixhin / lstms.py
Last active June 18, 2021 01:35
Collection of LSTMs
# Collection of LSTM cells (including forget gates)
# https://en.wikipedia.org/w/index.php?title=Long_short-term_memory&oldid=784163987
import torch
from torch import nn
from torch.nn import Parameter
from torch.nn import functional as F
from torch.nn.modules.utils import _pair
from torch.autograd import Variable
@Kaixhin
Kaixhin / main.py
Last active October 20, 2017 20:19
Device-agnostic PyTorch code
import torch
def cast(cuda):
if cuda:
return lambda x: x.cuda()
else:
return lambda x: x
@Kaixhin
Kaixhin / transformer.py
Created April 7, 2018 21:34
The Annotated Transformer
"""
The Annotated Transformer
http://nlp.seas.harvard.edu/2018/04/03/attention.html
Note: Only includes basic example, not real world example or multi-GPU training
"""
import numpy as np
import torch
import torch.nn as nn
@Kaixhin
Kaixhin / mcts.py
Last active May 23, 2018 22:53
Introduction to Monte Carlo Tree Search
"""
Introduction to Monte Carlo Tree Search
http://jeffbradberry.com/posts/2015/09/intro-to-monte-carlo-tree-search/
"""
from copy import deepcopy
import datetime
from math import log, sqrt
from random import choice
@Kaixhin
Kaixhin / acn.py
Created November 5, 2018 18:46
Associative Compression Networks
import os
import torch
from torch import nn, optim
from torch.nn import functional as F
from torch.utils.data import DataLoader
from torchvision import datasets, transforms
from torchvision.utils import save_image
class Encoder(nn.Module):
@Kaixhin
Kaixhin / plot.py
Last active March 26, 2020 16:26
Tensor plotting functions
from matplotlib import pyplot as plt
from mpl_toolkits import mplot3d
def scatter(X, Y, c=None, ax=None):
ax = plt.axes() if ax is None else ax
ax.scatter(X.numpy(), Y.numpy(), c=None if c is None else c.numpy())
return ax
def contour(X, Y, Z, levels=None, ax=None):
ax = plt.axes() if ax is None else ax