- Project Overview
- Features
- Installation
- Usage
- Dataset
- Model
- Sentiment Analysis
- Technologies Used
- Contributing
- License
- Acknowledgements
This project aims to create a movie recommendation system that incorporates sentiment analysis to improve the accuracy of recommendations. The system uses user reviews and ratings to recommend movies that the user is likely to enjoy. The sentiment analysis component helps in understanding the emotions conveyed in the reviews to further refine the recommendations.
- Personalized movie recommendations based on user ratings and reviews.
- Sentiment analysis on user reviews to enhance recommendation accuracy.
- Interactive user interface to input ratings and reviews.
- Visualization of recommendation results.
To set up this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/AmulyaShetty11/Movie-Recommendation-System-with-Sentiment-Analysis.git cd Movie-Recommendation-System-with-Sentiment-Analysis
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
- On Windows:
venv\Scripts\activate
- On macOS and Linux:
source venv/bin/activate
- On Windows:
-
Install the required dependencies:
pip install -r requirements.txt
To run the project, follow these steps:
-
Start the application:
python app.py
-
Open your web browser and navigate to:
http://localhost:5000
-
Interact with the application:
- Input your movie ratings and reviews.
- Get personalized movie recommendations.
The dataset used in this project includes user ratings and reviews of movies. You can download the dataset from MovieLens or any other similar source.
The recommendation system utilizes collaborative filtering and content-based filtering techniques to provide movie recommendations. The sentiment analysis model is built using natural language processing (NLP) techniques to analyze the sentiment of user reviews.
The sentiment analysis component uses pre-trained NLP models to determine the sentiment of user reviews. This analysis helps in understanding the user's emotional response to movies, which in turn improves the accuracy of recommendations.
- Programming Language: Python
- Web Framework: Flask
- Data Processing: Pandas, NumPy
- Machine Learning: Scikit-learn, TensorFlow/Keras
- Natural Language Processing: NLTK, TextBlob, or similar libraries
- Visualization: Matplotlib, Seaborn
- Database: SQLite or any other suitable database
Contributions are welcome! If you would like to contribute to this project, please follow these steps:
- Fork the repository
- Create a new branch:
git checkout -b feature/YourFeature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/YourFeature
- Open a pull request
This project is licensed under the MIT License. See the LICENSE file for more details.
- Thanks to the MovieLens for providing the movie rating dataset.
- Special thanks to the developers of the libraries and tools used in this project.