This project offers a platform for movie recommendations, search, and ratings, utilizing advanced machine learning models and modern web technologies.
This platform provides users with personalized movie recommendations, an interactive chatbot for recommendations, and a search feature based on movie descriptions. It leverages a combination of neural networks, hybrid recommenders, and natural language processing techniques to deliver an engaging user experience.
- Neural Network (Behavior Sequence Transformer): Utilizes a transformer-based neural network to recommend movies based on user behavior sequences. (Q. Chen, Z. Huan , L. Wei, H. Pipei și O. Wenwu , „Behavior sequence transformer for e-commerce recommendation in Alibaba”, 2019)
- Hybrid Recommender: Combines content-based filtering and collaborative filtering to enhance recommendation accuracy.
- Classifier (LSTM): Uses a Long Short-Term Memory (LSTM) network to classify user inputs and provide movie recommendations.
- Recommendation Criteria:
- Random movie
- Genre-specific recommendations
- Director-specific recommendations
- Similarity with another movie
- Description-Based Search: Implements TF-IDF encoding combined with a Nearest Neighbor algorithm to allow users to search for movies based on descriptions.
- Flask: A lightweight WSGI web application framework for Python.
- Firebase Authentication + JSON Web Token (JWT): Handles user authentication securely.
- Firebase Firestore: A flexible, scalable database for storing user data and movie information.
- TensorFlow: An open-source machine learning framework for developing and training models.
- Scikit-learn: A library for machine learning in Python, used for implementing various algorithms.
- React: A JavaScript library for building user interfaces.
- Vite: A build tool that provides a faster and leaner development experience for modern web projects.
This project is licensed under the MIT License. See the LICENSE file for details.