Tirth Patel

Artificial Intelligence & Machine Learning

About Me

Experience

GSoC'20 with PyMC3 at NumFOCUS

Student Developer

May 2020 - September 2020

PyMC3 is a probabilistic programming package for Python that allows users to fit Bayesian models using a variety of numerical methods, most notably Markov chain Monte Carlo (MCMC) and variational inference (VI). Its flexibility and extensibility make it applicable to a large suite of problems.

  • My goal for GSoC 2020 is to implement, test, and maintain a higher-level API for Gaussian Processes in PyMC4 using TensorFlow and TensorFlow Probability and write tutorials/articles and notebooks explaining their usage.
  • My work consists of implementing Gaussian Process Models and writing optimization methods like Newton’s Method and Powell’s Method to find the maximum a-posteriori of the models. My goal is also to implement at least one approximation technique when full GP modelling becomes impractical
  • Project Link
  • Blogs on the Project

Open Source Contributor

GitHub

October 2018 - Present

  • I have contributed to top OSS projects that fall under the Python Scientific Ecosystem.
  • I have made several contributions to scipy.stats module and been mentioned in THANKS.txt of the scipy library.
  • Contributed to: NumPy, SciPy, Scikit-Learn, PyMC3, and aima-python

Projects

Facial Composites

May 2019 - July 2019

Variational Auto-Encoders and Bayesian Optimization.

  • Facial composites are widely used in forensics to generate images of suspects. Since the victim or witness usually isn’t good at drawing, computer-aided generation is applied to reconstruct the face attacker. One of the most commonly used techniques is evolutionary systems that compose the final face from many predefined parts.

  • In this project, I implement an app for creating a facial composite that will be able to construct desired faces without explicitly providing databases of templates. I apply Variational Autoencoders, Gaussian processes, and Bayesian Optimization for this task.

  • Skills Applied: Bayesian Modelling, Bayesian Optimization, Gaussian Processes, Variational Auto Encoder, Variational Inference, Convolutional Neural Networks.

  • Frameworks Used: TensorFlow 1.x, NumPy, SciPy, matplotlib, GPy, GPyOpt
  • See the Project Here

Image Captioning

April 2019 - May 2019

LSTMs and Convolutional Neural Networks!

  • I have used TensorFlow’s pretrained InceptionNet as a encoder network and dynamic stacked LSTM as a decoder network. All the images provided as input are converted to vectors of a fixed length and this vectors are a input to the one-to-many LSTM that outputs a english caption for the image.
  • I have used finetuning using Keras for the task for about 30 epochs. It produces reasonable captions while testing on internet images. You can also test an image by uploading it to the internet and running the last couple of cells of the notebook.
  • Skills Applied: Convolutional Neural Networks, Long Short Term Memory, NLP, Image Preprocessing

  • Frameworks used: TensorFlow 1.x, NumPy, SciPy, scikit-learn
  • See the Project Here

Handwritten Digits Generator

January 2019 - February 2019

GANs and VAEs are just awesome!

  • I trained a Variational Auto Encoder from scratch for 100 epochs on a training set of 60,000 images and 3 and 30 dimensional latent space. The generator generated very clear fake handwritten images.

  • Skills Applied: Convolutional Neural Networks, Image Preprocessing, Bayesian Modelling, Variational Auto Encoders

  • Frameworks used: TensorFlow 1.x, NumPy, SciPy, matplotlib
  • See the Project Here

Talks and Publications

Searching in AI

February 2020

This article explores the famous graph traversals, namely, Depth First Search (DFS), Breadth First Search (BFS), Uniform Cost Search (Dijkstra’s algorithm), A-Star Search, Weighed A-Star Search and Learning Real Time A-Star Search algorithms with interesting visualizations.

My Blog Page - tirthasheshpatel.github.io

January 2020 - Present

I write about sciences that interest me.

Speaker at Data Driven Astronomy Workshop

October 2019

A talk on the impact of Data Science on Astronomy.

  • Delivered a 6 hour talk on how big data is used in astronomy to perform data analytics and machine learning methods to predict redshifts.
  • See GitHub Repository

HandCrafting an Artificial Neural Network in pure NumPy

February 2019

In this article, I have implemented a fully vectorized code for Artificial Neural Network with Dropout and L2 Regularization.

  • In this article, I have implemented a fully vectorized python code of an Artificial Neural Network tested on multiple datasets. Further, dropout and L2 regularization techniques are implemented and explained in detail.
  • Got 200+ claps (appreciation on medium).
  • Published in Towards Data Science.
  • See Article
  • See GitHub Repository

Education

Nirma University

B. Tech (Bachelor of Technology)

2018 - 2022

Computer Science and Engineering

Currently persuing my Bachelor’s degree in Computer Science and Engineering from Nirma University, Gujarat, India.