top of page

About Me

A driven professional who has successfully attained a Master's degree in Artificial Intelligence from Boston University. With a strong interest in software development, machine learning, and artificial intelligence, I am dedicated to utilizing my programming and research skills to create practical solutions in these fields.

As an enterprising and highly organized individual, I constantly strive to improve myself and expand my knowledge. I believe in the power of continuous learning and push myself to stay updated with the latest advancements in technology. Problem-solving is a skill that I thoroughly enjoy and apply to every aspect of my work.

Beyond my academic pursuits, I am an avid sports enthusiast. Football and cricket are my favorite sports, and through them, I have developed a competitive spirit that drives me to face challenges head-on without backing down. 

Education

2022 - 2023 

MS in Artificial Intelligence

Boston University

Principles of Machine Learning (CS542) | Artificial Intelligence (CS640) | Deep Learning (CS523) | Image and Video Computing (CS585) | Special Topics in Data Science (DS593) | Spark! Machine Learning X-Lab Practicum (CS549) | Introduction to Natural Language Processing (CS505) | Data Science Tools and Applications (CS506)

3.5/4.0

2017-2021

B.E. in Computer Science

Bangalore Institute of Technology

Programming in C | Data Structures & Applications | Computer Organization | Unix & Shell Programming | Object Oriented Concepts | Design & Analysis of Algorithms |Microprocessors & Microcontrollers | Computer Networks | Database Management System | Artificial Intelligence | Advanced Java | Cryptography , Network Security & Cyber Security | Computer Graphics & Visualization | System Software & Compiler Design | Web Technology & its Applications | Advanced Computer Architecture | Machine Learning | Storage Area Networks | IOT & its Applications | Big Data Analytics 

8.35/10.0

Extractive summarization

Recent Projects

Extractive Summarization by Fine-tuning BERT              Nov - Dec 2023

(NLP | LLM)
  • In the dynamic landscape of natural language processing, large language models (LLMs) have emerged as transformative forces, revolutionizing tasks across various domains.

  • Among these, BERT, a pre-trained transformer-based model, has showcased remarkable success in diverse NLP tasks, including information retrieval, question answering, and text generation.

  • There are two main types of document summarization tasks: abstractive summarization, in which target summaries may contain novel words or phrases that require intricate text rewriting operations, and the second approach which we try to implement is extractive summarization.

  • Extractive summarization, a crucial task in NLP, involves generating concise document summaries by selectively picking pivotal information from the source text.

  • In this project, we aimed to replicate and extend the work presented by Yang Liu in ”Fine-tune BERT for Extractive Summarization”.

  • A significant step in our model involves the fine-tuning of BERT for extractive summarization, a process that necessitates the imposition of summarization-specific layers on top of BERT outputs.

  • Our fine-tuning strategy utilizes three types of summarization layers, which are a Simple Linear Classifier, a Transformer network, and an LSTM network (RNN).

  • Our evaluations made use of the CNN/DailyMail news highlights dataset, as it provides a robust benchmark for extractive summarization tasks. The ROUGE metric is used to compare our generated summarized candidate sentences to the gold sentences.

  • BERTSUM + Simple Classifier: The Simple Classifier comprises a linear layer added to the BERT outputs, utilizing a sigmoid function to predict scores for each sentence. The model is trained using binary cross-entropy loss against gold labels.

  • BERTSUM + Transformer: The Inter-sentence Transformer adopts a more sophisticated approach by incorporating additional Transformer layers exclusively dedicated to sentence representations. The transformation process involves the application of multiple Transformer layers to sentence representations. The model also employs layer normalization and multi-head attention operations.

  • BERTSUM + LSTM(RNN): Finally, a Long Short-Term Memory layer over the BERT outputs to harness the unique capabilities of Recurrent Neural Networks for learning summarization-specific features.

  • The first image from the top on the right shows us the architecture that has been used. Primarily focusing on tokenization, the pre-trained BERT model and downwards to our summarization-specific layers. 

  • The second set of images shows us how the 3 summarization layers look like on top of BERT.

  • The third set of images is the manual comparison of a single generated candidate sentence, placed on the left, and the gold sentence, placed on the right.

  • Finally, the best transformer model that came closest to the author’s results in terms of Rouge scores had many of its hyper-parameters tweaked. The dropout is set to 0.05 to help the model learn the complex patterns of the training dataset, a batch size of 4096 was used, train steps were set to 22k, made use of 12 multi-attention heads and used 8 inter sentence transformer layers. The results of these can be seen in the last image and you can see a sample text summarization against the gold summarization by hovering over the image.

Screenshot 2023-12-27 at 10.21_edited.jp
Screenshot 2023-12-27 at 11_edited_edite
Screenshot 2023-12-27 at 11_edited.jpg
Amazon_Reviews

Amazon Reviews Classification                                                    Nov 2023

(Data Analytics | Machine Learning)
  • The goal of this competition is to predict the star rating associated with user reviews from Amazon Movie Reviews using the available features. Allowed to use any methods except neural networks/deep learning.

  • The First step was to explore the dataset and find insights on what can help clean the dataset or make it consistent for our task at hand, which is a multiclass classification task.

  • Passed the ‘Text’ and ‘Summary’ columns to my preprocess function which performed lowercasing, contractions (‘don’t’ to ‘do not’), removed punctuations, removed stop words and performed lemmatization.

  • Noticed an imbalanced dataset with a ‘Score’ of 5 having the most training examples and removed 15,000 random samples from the rows with a score of 5. Also, performed oversampling on the dataset for ‘Score’ 1 through 4 by creating 10,000 new data points for each score or by doubling the number of data points, whichever is minimum. Hover over the image on the right to see the change in the distribution.

  • The process of oversampling was done in a way such that for each data point we kept all fields the same except for the ‘Text’ and ‘Summary’ columns which we paraphrased using Wordnet’s synonym finder to generalize better.

  • Features we extracted are sentiment intensity scores using vaderSentiment, HelpfulnessNumerator and HelpfulnessDenominator, UserAvgScore based on each UserId and ProductAvgScore based on ProductId, ReviewLength and TFIDF for numerical representations.

  • We found the TFIDF and CountVectorizer values for the ‘Text’ column and used PCA to reduce dimensionality to 2 components. This enabled us to visualize the distinct grouping between each class of our ‘Score’ output labels. As shown, the figure demonstrates, TFIDF seemed to categorize each class more distinctly and hence we decided to use TFIDF to represent our ‘Text’ and ‘Summary’ columns.

  • Finally, we standardized the ‘SentimentScore’ and the ‘ReviewLength’ columns of the dataframe using sklearn’s StandardScaler, which standardizes features by removing the mean and scaling to unit variance.

  • Moving on to the modeling stage, the logistic regression classifier and the results obtained were decent with an RMSE of 0.84 on the validation test. Upon printing performance metrics, we could see that the model is particularly doing well on ‘Score’ 5.0 and second best on a score of 
1.0. 


  • Next, I used an ensemble of 3 classifiers namely, random forest, logistic regression and support vector machine. The final prediction was a weighted average with random forest and SVM having equal weights of 0.4 and a weight of 0.2 was multiplied by the logistic 
regression prediction. The model performed below average yet again with an RMSE of 1.10. 


  • We also tried just a linear regression model which had its final predicted value rounded off. This model performed the best among the 
models I had tried before with an RMSE of 0.58 and the classifier did well on ‘Score’ 5 and 1, with decent results for other ‘Score’. 


  • Finally, the model that worked best was by using the predictions from a linear regression classifier as a feature in the original data frame and using logistic regression as the final classifier. This achieved an RMSE score of 0.218 and an accuracy of 0.95, probably indicating 
overfitting but worked best for me. 
     

Screenshot 2023-12-28 at 5_edited_edited
Screenshot 2023-12-28 at 5.48_edited.jpg
Screenshot 2023-12-28 at 6.06_edited.png
Screenshot 2023-12-28 at 6_edited_edited
Screenshot 2023-12-28 at 7.55.50 PM.png
Screenshot 2023-12-28 at 7_edited_edited
HarvardHerbaria

Machine Learning X-Lab Practicum(CS 549)                   Feb - May 2023

(Computer Vision | MLOps | Data Analytics | Transformer Models)       
  • Harvard Herbaria aims to aid botanists and climate scientists in capturing patterns in plant life. 

  • The herbarium specimens are pressed plant samples stored on paper. The specimen labels are handwritten and date back to the early 1900s. The labels contain the curator's name, their institution, the species and genus, and the date the specimen was collected.

  • Thorough exploratory data analysis (EDA) was undertaken on the GBIF dataset, which encompasses a collection of Herbaria specimens.

  • Since the labels are handwritten, they are not readily accessible from an analytical standpoint. The data, at this time, cannot be analyzed to study the impact of climate on plant life.

  • The project consists of three tasks. For the primary task, we deploy a TrOCR transformer model to recognize text and digitize herbaria specimens as shown in the image on top. To further enhance the accuracy of the task, post the optical character recognition task we make use of a named entity recognition model to match with the specie name using TaxoNerd.

  • The secondary task involves establishing a curated labeled dataset of 120K images scraped from a GBIF dataset by filtering the genera based on a New England dataset that captures the most common genera, and the labels in these images have been detected and masked using the KerasOCR pipeline(CRAFT text detector + RCNN), as shown in the bottom image. Finally, we implemented a multi-class image classifier using the IELT model to classify the 1051 genera.

  • The tertiary task involves identifying the phenology of the plant under consideration, an instance segmentation task classifying buds, flowers and fruits of the plant with some confidence using Swin-transformer model, as shown in the middle image.

Screenshot 2023-05-25 at 12.45_edited.jp
Screenshot 2023-05-25 at 12.51.38 PM.png
KerasOCR and masking
Screenshot 2023-05-25 at 12.48.18 PM.png
Screenshot 2023-05-25 at 12.48.18 PM.png
TrOCR transcribing text
StocksChatbot

Rasa Stocks Chatbot                                                          Mar - May 2023

(Natural Language Processing | ML)
  • In the current dynamic landscape, conversational assistant chatbots have emerged as a practical solution to address the investment requirements of customers. It is crucial for forward-thinking organizations to embrace this technology to maintain a competitive edge and effectively cater to the needs of younger target audiences.

  • By leveraging chatbot capabilities, companies can provide tailored investment guidance, deliver real-time stock information, and offer personalized portfolio management recommendations in a natural and interactive conversational format.

  • We have meticulously defined the intents, entities, slots, actions, and stories necessary to establish the main functionalities of our chatbot.

  • Our custom NLU pipeline has been designed to incorporate crucial pre-processing steps, intent classification, and entity extraction while leveraging a BERT model to generate contextually appropriate responses.

  • In order to provide users with real-time market data, facilitate trade execution, and enable historical data analysis, we have explored the Alpaca API.

  • Additionally, the Alpha Vantage API plays a key role in performing comprehensive technical analysis, generating valuable insights for users, and managing portfolios efficiently.

  • For further enhancement of the Chabot, we make a proposal that will help the chatbot generalize better in their responses. Rasa offers the capability to externalize response generation and decouple it from dialogue learning.

  • In this approach, when the assistant intends to send a message to the user, it will make a POST request to an external HTTP server.

  • At this endpoint, a pre-trained GPT-2 model is employed and fine-tuned on a custom dataset that is created by aggregating Daily Financial News for over 6000 stocks, historical stock prices and earnings data for the US market, as well as scraped web data for extracting stock terminologies and their corresponding definitions.

MSRF

Medical Image Segmentation                                            Apr - May 2023

(Image Segmentation | Image Processing)
  • Medical image segmentation is crucial for clinical diagnosis as it aids in identifying regions of interest for lesion assessment and detecting missed lesions. It plays a vital role in disease prevention, therapy planning, and treatment improvement. However, developing robust algorithms for automated medical image segmentation requires a large number of high-quality labeled and annotated datasets.

  • Successfully implemented the code provided by the authors of the research paper titled "Multi-Scale Residual Fusion Network for Biomedical Image Segmentation" on the CVC-CliniDB dataset, achieving an impressive Dice score of 0.72.

  • Building upon their source code, we applied our innovative techniques and strategies to further enhance the model's performance, resulting in an enhanced Dice score of 0.78.

  • We employed a combination of advanced image processing techniques, including Gaussian blur followed by non-maximum suppression, to effectively extract high-quality edges from biomedical images. This approach surpassed the conventional Canny edge detection method, offering superior edge response outputs and elevating the overall quality of segmentation results, which can be observed if you hover over the second image.

  • Leveraged the power of dilated convolutions within our model architecture, enabling the capture of extensive global contextual information.

  • By incorporating additional layers into the MSRF sub-network, we significantly increased the model's depth while maintaining a negligible impact on computational time.

  • These enhancements contributed to notable improvements in performance, empowering more accurate biomedical image segmentation of polyps.

Canny.png
Non_max_new.jpg
Screenshot 2023-04-28 at 3.51.10 AM.png
Screenshot 2023-04-28 at 3.51.44 AM.png
Smart Farmer

Smart Farmer Application Driven by AI                    Aug 2020 - Jan 2021

(Computer Vision | ML | NLP | Full Stack Development )
  • A comprehensive web and mobile application that incorporates advanced technologies to assist farmers in making informed decisions and optimizing their agricultural practices. 

  • Crop Health Prediction- Our flagship feature is a crop health component that utilizes a VGG16 pre-trained model and a CNN model to accurately identify crop diseases. With an impressive accuracy of 97%, this component analyzes uploaded images to determine if a crop is healthy or diseased. It provides crucial information about the identified disease and offers recommendations for overcoming it. 

  • Crop Price Prediction- Utilizing decision tree regression, this module predicts the future value of crops based on historical data, including rainfall, temperature, and pH values. It assists farmers in making informed decisions regarding crop selection and market trends.

  • Resource Locator-  By leveraging the Google Maps API, this module identifies the nearest resource repository based on the user's current location. It streamlines the process of accessing agricultural resources and support services.

  • Weather Information- This module utilizes the Microsoft Azure weather API to provide current and future weather conditions. 

  • Crop to Cultivate- Using linear regression, this module recommends the most suitable crop based on the user's location, season, weather, and soil information. 

  • Check Irrigation- By calculating irrigation requirements using a formula based on weather data, this component helps farmers avoid over-irrigation. It recommends the appropriate amount of water needed for their crops, improving water management practices.

  • Upload Image- This component allows users to upload crop images and associated details, which are stored in the Firebase database.

  • FAQ Chatbot- Implemented using Microsoft Azure's bot services, the chatbot module offers interactive assistance to users. It addresses frequently asked questions related to the agricultural industry, providing valuable information and guidance.

  • Best Suited Crop- By employing decision tree regression, this module determines the best crop to cultivate based on input factors such as temperature, humidity, pH, and rainfall. It aids farmers in selecting crops with a higher probability of success.

  • By integrating these powerful modules, our application enhances agricultural productivity, minimizes human error, and uplifts the lives of farmers. Our platform serves as a comprehensive guide for farmers, empowering them with data-driven insights and innovative tools for efficient crop production.
     

home.png
architecture.png