Personal Projects

PaperWhiz - NLP-based recommender system

Apr. - Jun. 2023, Python

Github : https://github.com/yassine-rd/PaperWhiz

Report : https://github.com/yassine-rd/PaperWhiz/blob/master/assets/pdf/report.pdf

Web app : https://paperwhiz.streamlit.app/

PaperWhiz

In this project, I developed an NLP-based paper recommender system designed to recommend germane scientific papers tailored to a user’s specific interests.

  • Papers are scraped from “cs.CV”, “stat.ML”, “cs.LG” and “cs.AI” sections on the arXiv website, using the arXiv Python library that provides a wrapper around the original arXiv API.
  • EDA, data processing, and feature engineering are used to produce the best text data for the embedding process.
  • Hugging Face Sentence Transformer (all-MiniLM-L6-v2) is used to embed the text data with PyTorch.
  • The similarity between papers is calculated using cosine similarity, once by comparing titles and once by comparing abstracts.
  • Once similarity scores are calculated, the top 4 most similar papers will be recommended to the user, along with their abstracts and links to the full text.
  • Pipelines are set up to scrape new papers from the arXiv website every month, re-embed the new data collected when the pipeline is triggered, and re-train the model to keep it up to date using Github Actions and Hopsworks, leveraging its feature store and model registry.
  • Web application is built using Streamlit to interact with the recommender system and deployed on Streamlit Sharing.
  • Evaluation will be done using the Trubrics feedback component with Streamlit, enabling the collection of user feedback on paper recommendations.

Movie Sentiment Analysis

Feb. - Mar. 2023, Python

Github : https://github.com/yassine-rd/movie-sentiment-analysis

Report : https://github.com/yassine-rd/movie-sentiment-analysis/blob/master/assets/pdf/report.pdf

Web app : https://movie-sentiment.streamlit.app/

Movie Sentiment Analysis

This project consists of building a movie sentiment analysis system leveraging user critics’ reviews.

What I did:

  • Implemented a multinomial Naive Bayes algorithm to accurately classify movie reviews as either positive or negative using scikit-learn.
  • Embedded over 200,000 movie reviews using TF-IDF for feature extraction.
  • Deployed the model in a Python web application using Streamlit, which has been containerized with Docker.

My Personal Website

Jun. 2022 - Now, HTML, CSS, JavaScript

Github : https://github.com/yassine-rd/yassine-rd.github.io

Graduate Projects

Fish detection, tracking and counting using YOLOv4 and Darknet

Sep. - Feb. 2023, Python, C++

Github : https://github.com/yassine-rd/movie-sentiment-analysis

In this project, I built a computer vision system for tracking and counting two distinct fish species within an aquarium, using the YOLOv4 and YOLOv4-tiny object detection algorithms.

What I did :

  • Fine-tuned state-of-the-art pre-trained YOLOv4 model using the Darknet framework.
  • Developed algorithms for building the model and running inference model using TensorFlow.
  • Deployed the model on a Raspberry Pi using TensorFlow Lite.
  • Performed AI model quantization for edge devices to optimize computational efficiency and model size.