Skip to content

shreyeah11/Intelligent-SMS-Categorization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“© Intelligent SMS Categorization using Machine Learning

An intelligent system that automatically categorizes SMS messages using Machine Learning and Natural Language Processing (NLP).
The project goes beyond traditional spam filtering by organizing messages into multiple meaningful categories, helping users manage their inbox efficiently.

This project was developed as part of an academic seminar in the Machine Learning / NLP domain.


πŸš€ Features

1️⃣ Multi-class SMS categorization
2️⃣ Categories: Personal, Transactions, Promotions, Star, Spam
3️⃣ Automatic classification using ML algorithms
4️⃣ Reduced inbox clutter and improved message visibility
5️⃣ Highlights important messages like OTPs and bank alerts
6️⃣ Protects users from spam and phishing SMS
7️⃣ User-centric and scalable design


πŸ“‚ Tech Stack

1️⃣ Python β€” Core programming language
2️⃣ Machine Learning β€” Model training and prediction
3️⃣ Natural Language Processing (NLP) β€” Text analysis
4️⃣ Scikit-learn β€” ML algorithms and evaluation
5️⃣ Pandas & NumPy β€” Data processing
6️⃣ Frontend β€” (Optional UI module)
7️⃣ Backend β€” Model integration and logic


πŸ“Έ Screenshot

SMS Categorization UI
Click the screenshot to view full size.


πŸ“ Folder Structure

sms-categorization/
β”œβ”€ sms-frontend/
β”‚ └─ (UI components)
β”œβ”€ sms-backend/
β”‚ β”œβ”€ data/
β”‚ β”œβ”€ preprocessing/
β”‚ β”œβ”€ models/
β”‚ β”œβ”€ train_model.py
β”‚ └─ predict.py
β”œβ”€ assets/
β”‚ └─ screenshot.png
β”œβ”€ .gitignore
└─ README.md

πŸ› οΈ How to Run Locally

1️⃣ Clone or download the repository
2️⃣ Navigate to the backend folder
3️⃣ Install dependencies

pip install -r requirements.txt

4️⃣ Train or load the model 5️⃣ Run the classification script to categorize SS

🎨 Customization

  • 🧠 ML Algorithms: Naive Bayes, Logistic Regression, SVM, Decision Tree
  • πŸ“Š Feature Extraction: Bag-of-Words, TF-IDF
  • πŸ“ SMS Categories: Personal, Transactions, Promotions, Star, Spam
  • βš™οΈ Model Settings: Training parameters and thresholds
  • 🌍 Dataset: Size and language support

πŸ“Œ Purpose of This Project

1️⃣ Demonstrate the practical application of Machine Learning and NLP in real-world SMS management
2️⃣ Move beyond traditional binary spam filtering to multi-class SMS categorization
3️⃣ Improve user experience by organizing messages into meaningful categories
4️⃣ Reduce inbox clutter and prevent missing important messages such as OTPs and bank alerts
5️⃣ Build an academic and portfolio-ready Machine Learning project


🧠 Algorithms Used

  • Naive Bayes β€” Efficient and fast for text-based classification
  • Logistic Regression β€” Probabilistic classification using One-vs-Rest for multi-class SMS categorization
  • Decision Tree β€” Rule-based classification for interpretable results
  • Support Vector Machine (SVM) β€” High-accuracy classification for high-dimensional text data

Models are evaluated using standard metrics such as accuracy, precision, recall, and F1-score.


βš–οΈ Advantages & Limitations

βœ… Advantages

  • Automatically organizes SMS into Personal, Transactions, Promotions, Star, and Spam
  • Improves productivity by reducing manual message sorting
  • Enhances security by

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •