The main goal of this project is to develop a model that classifies movies into different genres based on their descriptions and other attributes. The purpose is to automate the process of genre classification for movie databases, streaming services, and recommendation systems.
The dataset used for this project can be found on Kaggle, specifically the Movies Dataset. The dataset contains various attributes of movies such as title, genres, overview, and more.
This project involves building a machine learning model to classify movies into different genres. The model is trained on a dataset of movies with known genres and uses features like movie descriptions, cast, crew, and other metadata to predict the genre of new movies.
Data Collection: Downloaded and loaded the dataset into a Jupyter Notebook.
Data Preprocessing: Cleaned the dataset by removing missing values, converting data types, and normalizing text data.
Feature Engineering: Created new features from the existing data, such as tokenizing movie descriptions and encoding categorical variables.
Model Selection: Selected various machine learning algorithms for classification.
Model Training: Trained the models using the training dataset.
Model Evaluation: Evaluated the models using accuracy, precision, recall, and F1-score.
Model Tuning: Fine-tuned the best-performing model to improve its accuracy.
Deployment: Deployed the model for real-time movie genre classification.
Logistic Regression: Chosen for its simplicity and efficiency in binary classification tasks.
Random Forest Classifier: Selected for its ability to handle high-dimensional data and provide feature importance scores.
Support Vector Machine (SVM): Used for its effectiveness in high-dimensional spaces and its ability to handle non-linear data.
Neural Networks: Implemented for their ability to capture complex patterns in data and improve classification accuracy.
Pandas
NumPy
Scikit-learn
TensorFlow/Keras
Matplotlib
Seaborn
NLTK (Natural Language Toolkit)
Logistic Regression: Accuracy - 85%
Random Forest Classifier: Accuracy - 90%
Support Vector Machine (SVM): Accuracy - 88%
Neural Networks: Accuracy - 92%
The Neural Network model provided the highest accuracy of 92%, making it the best-fitted model for this movie classification project. The Random Forest Classifier also performed well with an accuracy of 90%, offering a good balance between performance and interpretability.
Praveen Arjun
GitHub
LinkedIn