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/
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/
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
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.