Skip to content

fahmizainal17/Recommendation_Engine_Project

Repository files navigation

🎥 Recommendation Engine Project wakatime


📋 Overview

The Recommendation Engine Project is a Streamlit-based web application that demonstrates the implementation of content-based filtering for recommendation systems. It showcases two key applications:

  • 🎥 Movie Recommender System: Recommends movies based on metadata such as genres, cast, and directors.
  • 🌍 Job Recommender System: Recommends jobs by analyzing textual features like job descriptions and titles.

This project highlights the power of data-driven recommendations and provides an interactive way to explore content-based recommendation systems.


Table of Contents

  1. 🎯 Objectives
  2. 🔧 Technologies Used
  3. 🗂️ Directory Structure
  4. 📁 Features
  5. 🔄 Project Workflow
  6. 🎉 Conclusion
  7. 📚 References
  8. 📜 License

🎯 Objectives

  • Build an interactive platform to demonstrate content-based filtering in real-world applications.
  • Provide a hands-on experience for users to explore recommendation results dynamically.
  • Use metadata and textual data effectively for generating recommendations.

🔧 Technologies Used

Python
Streamlit

Other libraries:

  • Pandas
  • Scikit-learn
  • Numpy

🗂️ Directory Structure

.
├── LICENSE
├── README.md
├── app
│   ├── 1_Introduction_🎉.py
│   ├── component.py
│   ├── pages
│       ├── 2_Movies_Recommendation_System_🍿.py
│       └── 3_Jobs_Recommendations_System_🌍.py
├── artifacts
│   ├── movie_list.pkl
│   └── similarity.pkl.gz
├── assets
│   ├── Job_Recommender_Background.png
│   ├── movie_background.jpg
├── datasets
│   ├── tmdb_5000_credits.csv
│   ├── tmdb_5000_movies.csv
│   ├── Synthetic_Job_Postings_Data.csv
│   └── Synthetic_Resumes_Data.csv
└── requirements.txt

📁 Features

1. 🎥 Movie Recommender System

  • Uses content-based filtering.
  • Recommends movies by analyzing metadata (e.g., genres, directors, cast).
  • Allows users to select a movie and receive similar recommendations.

2. 🌍 Job Recommender System

  • Based on TF-IDF vectorization of job titles and descriptions.
  • Provides job recommendations tailored to user input.

🔄 Project Workflow

  1. 📂 Environment Setup:

    • Install dependencies using requirements.txt.
  2. 🔍 Data Processing:

    • Process datasets (TMDb movies, synthetic job postings) for feature extraction.
  3. 🧠 Model Development:

    • Create similarity matrices using content-based techniques like cosine similarity and TF-IDF.
  4. 🚀 Web App Development:

    • Build dynamic dashboards using Streamlit for both recommendation systems.
  5. 🌐 Deployment:

    • Deploy the app using Streamlit's cloud services.

🎉 Conclusion

This project demonstrates how content-based filtering can be applied effectively in different domains like movies and jobs. The interactive application enables users to explore recommendations dynamically and learn about the underlying algorithms.


📚 References


📜 License

Fahmi Zainal Custom License
Unauthorized copying, distribution, or modification of this project is prohibited. For inquiries, contact the project owner.

Releases

No releases published

Packages

No packages published