This project implements a machine learning-based system to classify customer support tickets into categories and predict their priority levels. It is designed as part of Task 2 of the Machine Learning Internship.
The system takes a support query as input and predicts:
- Ticket Category (e.g., Technical, Billing, Product Inquiry)
- Priority Level (High, Medium, Low)
The project uses Natural Language Processing (NLP) techniques and a simple yet effective machine learning pipeline.
- Text preprocessing and cleaning
- Feature extraction using TF-IDF
- Ticket category classification
- Priority prediction
- Confidence score for predictions
- Interactive web interface using Streamlit
- Python
- Pandas
- Scikit-learn
- Streamlit
FUTURE_ML_02/ │ ├── data/ │ └── customer_support_tickets.csv │ ├── outputs/ │ ├── src/ │ ├── task2.py │ └── app.py │ ├── README.md └── .gitignore
- Text input is cleaned and preprocessed.
- TF-IDF converts text into numerical features.
- Two Logistic Regression models are trained:
- One for category classification
- One for priority prediction
- Predictions are generated along with confidence scores.
- Results are displayed using a Streamlit web interface.
source ../FUTURE_ML_01/ml_env/bin/activate
pip install pandas scikit-learn streamlit
streamlit run src/app.py
Input:
My payment failed but money was deducted
Output:
Category: Billing Priority: High
- Applied NLP techniques for real-world text data
- Built a classification system for operational use
- Developed an interactive ML application
- Understood how to convert models into usable tools
- Improve dataset quality and size
- Add deep learning models (LSTM / BERT)
- Deploy the application online
- Add real-time API integration
Samarpit Gujral