Vithursan Thangarasa bio photo

Vithursan Thangarasa

I'm from Toronto, Canada. Currently in the San Francisco Bay Area, California. Passionate about machine learning, computer vision, technology and basketball.

Twitter   Google Scholar LinkedIn Github E-Mail

Some Code I've Written

It all started when I took my first computer science class in highschool, and going through the many trials and tribulations of programming. Since then, I’ve been enjoying coding and here you can find some of the programs I’ve written.


  • Self-Paced Learning with Adaptive Deep Visual Embeddings (SPL-ADVisE)
    Randomized mini-batches might not be an optimal training curriculum for deep networks. Our paper comes up with an insightful and general method for adaptive curriculum creation by extending self-paced learning with diversity. We show state-of-the-art convergence speeds to optimal test performance on MNIST, FashionMNIST, CIFAR-10 and CIFAR-100. From our BMVC 2018 paper.

  • Magnet Loss for Deep Metric Learning
    PyTorch implementation of the Magnet Loss based on the paper Metric Learning with Adaptive Density Discrimination by Oren Rippel, Piotr Dollar, Manohar Paluri, Lubomir Bourdev from Facebook AI Research (FAIR). From ICLR 2016.

  • VAE with Gumbel-Softmax
    TensorFlow implementation of a Variational Autoencoder with Gumbel-Softmax Distribution based on the papers from Google Brain and DeepMind: Categorical Reparametrization with Gumbel-Softmax by Maddison, Mnih and Teh, The Concrete Distribution: A Continuous Relaxation of Discrete Random Variables by Jang, Gu and Poole, and REBAR: Low-variance, unbiased gradient estimates for discrete latent variable models by Tucker, Mnih, Maddison and Sohl-Dickstein.



  • Ackermann Quicksort
    A comparative analysis of recursion in C and Python for the Ackermann function and Quicksort algorithm.