Welcome to the Amazon Alexa Sentiment Analysis project! 🎉 This project focuses on extracting and analyzing customer feedback from Amazon Alexa to understand user sentiments better. Using Natural Language Processing (NLP) techniques, we've classified feedback as positive or negative, providing valuable insights into customer satisfaction and product improvement.
This end-to-end project involves:
- Analyzing real customer feedback data from Amazon Alexa 📊
- Rating feedback on a scale of 1 to 5 ⭐
- Classifying sentiments into Positive 😊 and Negative 😟 categories
- Visualizing the distribution of sentiments and other key insights 📊
The project utilizes a combination of Python libraries for data processing, NLP, machine learning, and web development:
- pandas, numpy: For efficient data handling and manipulation
- matplotlib, seaborn, WordCloud: For creating insightful and visually appealing charts and word clouds
- nltk: Used for text preprocessing, including tokenization, stemming (via
PorterStemmer
), and stopword removal
- RandomForestClassifier 🌲
- DecisionTreeClassifier 🌳
- XGBClassifier 🚀
- train_test_split: Splitting data into training and testing sets
- cross_val_score, GridSearchCV: For cross-validation and hyperparameter tuning
- accuracy_score, confusion_matrix: For evaluating model performance
- HTML, CSS, JavaScript: For frontend development
- Flask API: To create a web server for model deployment and interaction
-
Comprehensive Data Cleaning & Preprocessing
- Removing noise, stopwords, and performing text normalization
- Generating word clouds for a visual representation of frequent terms
-
Advanced Model Training
- Implemented multiple machine learning models for sentiment classification
- Used grid search and cross-validation for model optimization
-
Interactive Visualizations
- Developed charts to show the distribution of sentiment scores
- Visual representation of the most common words in positive and negative feedback
-
Web Application Integration
- Created a user-friendly interface for interacting with the sentiment analysis models
- Real-time sentiment feedback based on user input
data/
: Contains datasets used for analysisnotebooks/
: Jupyter notebooks with detailed steps of data processing, model training, and evaluationstatic/
andtemplates/
: Files related to the web application (HTML, CSS, JavaScript)app.py
: Flask application script to run the web servermodels/
: Trained models saved for deployment
To run this project locally:
- Clone the repository:
git clone https://github.com/yourusername/amazon-alexa-sentiment-analysis.git
- Install required dependencies:
pip install -r requirements.txt
- Run the Flask application:
python app.py
- Visit
http://127.0.0.1:5000
in your browser to interact with the web application.
- Video Demonstration: Watch Here 🎥
- Project Documentation: Read More 📚
- GitHub Repository: Explore Here 💻
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
Feel free to reach out if you have any questions or suggestions!
- Email: waqas56jb@gmail.com
- LinkedIn: https://www.linkedin.com/in/waqas-naveed-630297247/
This GitHub repository description provides a clear overview of the project, detailed information on the tech stack and features, and guidance on how to get started. It's designed to help others understand, use, and contribute to your project effectively.