In this practical assignment, I have worked with the Fashion-MNIST dataset to implement several neural network-based models. The tasks involve reducing data dimensionality, training an autoencoder, and visualizing latent representations using PCA and t-SNE.
- I implemented the PCA algorithm and applied it to the test set.
- I applied PCA and t-SNE to visualize the data in 2D.
- I trained a stacked autoencoder and used its encoder for classification.
- I used PCA and t-SNE to visualize encoded test set data.
- I added a classification layer on top of the encoder to predict image labels.
I have fine-tuned a pre-trained ResNet50 model for the CIFAR-10 image classification task. This involved loading the dataset, configuring the model for transfer learning, and evaluating its performance.
In this part, I implemented a convolutional neural network (CNN) from scratch to classify images from the Fashion-MNIST dataset. The process included:
- Loading and splitting the dataset.
- Implementing the CNN model using PyTorch.
- Training, validating, and testing the model, with metrics tracking.
I have built and trained models for time series prediction, exploring and comparing three architectures: Simple RNN, GRU, and LSTM. I evaluated their performance and analyzed which model performed best and why.
I implemented text generation at the character level using recurrent neural networks (RNNs). This involved training RNNs and LSTMs, fine-tuning the models, and generating coherent text sequences from the learned models.
I have implemented a Masked Language Model (MLM) in PyTorch from scratch and compared it with a pre-trained RoBERTa model using HuggingFace's Trainer API.
I fine-tuned the RoBERTa model for a part-of-speech tagging task on the Parsig dataset. I leveraged RoBERTa's attention mechanisms to accurately predict and label the grammatical roles of words in a sentence.
In this task, I employed the DeepWalk technique to perform graph embedding on the small version of the Movielens dataset, transforming the movie data into vector space for downstream tasks.
I have implemented an autoregressive likelihood model for image generation. The model learned the conditional probability distribution of each pixel given its preceding ones. I also explored the benefits and limitations of such models.
I built and trained a basic Generative Adversarial Network (GAN) to generate handwritten digits from the MNIST dataset. Additionally, I implemented a Conditional GAN (CGAN) where image generation is conditioned on the digit labels.
I implemented and trained a Variational Autoencoder (VAE) on the Fashion-MNIST dataset. This task involved exploring how the VAE's latent space captures data variance, allowing for both reconstruction and sampling of new fashion items.
I implemented the Deep Q-Learning (DQN) algorithm to control a lunar lander in OpenAI's Gym environment. The key aspects of this project included:
- Training an agent to safely land the lunar module.
- Using experience replay and target networks for stable training.
- Tuning hyperparameters and evaluating the model's performance.