Selected Projects
Below is a non-exhaustive list of my non-research projects. You can also check out a complete list of my projects here.
Contrastive Learning-based Few-shot Image Classification [Code]
- Defined a custom contrastive loss and trained a few-shot version of Siamese Networks to do n-way k-shot image classification by mapping the image similarity task into a fully-supervised classification learning task.
- Libraries/Framework: Numpy, Matplotlib, PyTorch, and TorchVision
Molecule Graph Generation [Code]
- Implemented Graph Convolutional Networks-based Variational Graph AutoEncoders to generate new molecular graphs that possess similar statistical distribution as that of the learned distribution of molecular graphs (used to train the model).
- Libraries/Framework used: PyTorch, PyTorch Geometric, Numpy, and NetworkX
Text-to-Image Generation using GANs [Code]
- Implemented a Stage-wise StackGAN model capable of producing photo-realistic images conditioned on text descriptions. It is also able to contain necessary details and vivid object parts while generating high-quality images.
- Given the text description, the Stage-1 GAN forms the primitive shape and colors of the object. It puts less emphasis on the quality of the image being formed, thereby yielding a low-resolution image.
The Stage-2 GAN takes Stage-1 results and text descriptions as inputs and generates high-resolution images with photo-realistic details and thus can rectify defects in Stage-1 results and add compelling details with the refinement
process.- Libraries/Framework: Keras, Tensorflow, Numpy, Pandas, and Matplotlib
An Unsupervised Approach to Generate Sentence Embeddings [Code]
- Trained a simple contrastive learning-based framework to perform text similarity, where sentences with similar semantic features attain higher similarity scores.
- Used a pre-trained BERT model to generate two different, yet semantically similar representations for each input sentence with minimal variation.
To compute the degree of similarity between these latent representations, employed a cosine
similarity-based contrastive metric.- Libraries/Framework: Scikit-learn, Tensorflow, Numpy, Pandas, and Transformers
Zero-shot Question Answering with Large Language Models [Code]
- Implemented a zero-shot question-answering system that, for each question
q
with available answer optionsa
,b
, andc
, computes each option’s score as the negative log-likelihood under the language model conditioned on the question and then returns the option with the highest score as the most probable answer to the questionq
. - Libraries/Framework: Transformers, Numpy, and Tensorflow