VARUNA JAYASIRI

@vpj

Deeq Q Learning in Tensorflow

June 16, 2018

I coded a DQN agent to play Atari. It is a stand alone implementation. I went through the Open AI DQN so it's very similar to it. I coded this also in a literate fashion similar to my previous PPO implementation.

More...

Proximal Policy Optimization (PPO) in Tensorflow

June 3, 2018

I implemented a reinforcement learning agent using PPO to play Atari Breakout. It is a standalone implementation on TensorFlow.

I coded in a literate form with all the mathematical formula's etc, embedded in comments so that it can be used as a tutorial if any one wants to - and of course as a reference for my self.

More...

Turn TensorFlow functions into mathematical notations and diagrams

March 24, 2018

I started working on a bunch of helper classes to use TensorFlow on Jupyter notebooks.

They provide nice diagrams and mathematical formulas as outputs based on the TensorFlow operations. It helps you understand the code better, and also acts as an inline help when coding.

More...

Generative Adversarial Networks (Gaussian Distribution)

February 3, 2018

This is a very simple Generative Adversarial Network build with deeplearn.js on ObservableHQ.

I coded this as an experiment to try out ObservableHQ, because I've loved almost all the projects by its creators @jashkenas and @mbostock.

More...

Vanilla LSTM with numpy

October 8, 2017

I implemented a Long short-term memory (LSTM) module on numpy from scratch. This is for learning purposes. The network is trained with stochastic gradient descent with a batch size of 1 using AdaGrad algorithm (with momentum).

More...

Should we switch from CoffeeScript?

September 28, 2016

We are considering moving out codebase from CoffeeScript to TypeScript.

More...

Wallapatta editor spelling checker

April 30, 2016

I updated Wallapatta editor with a spellchecker.

More...

Open sourcing nearby.lk data models library

April 29, 2016

We did a re-write of the nearby.lk data model library, and we decided to open source the core of it. It supports JSON or YAML data files, and parses them based on a specification (like a schema).

More...

Page Breaks

April 27, 2016

In Wallaptta we model pagination as a cost minimization problem. That is, we try to find where to place page breaks so that there is no overflow and the cost is minimised. If the cost of adding a page break at a given point is know this can be easily solved with dynamic programming.

More...

A few node.js/Javascript performance tips

March 19, 2016

We want to share some node.js performance tips we found while working on Forestpin; specifically how to optimize runInContext, setting heap limits, memory usage with string slices, and joining strings.

More...
next