A Machine Learning + Streamlit web application that classifies SMS messages as Spam or Ham (Not Spam). This project uses a trained ML model and TF-IDF vectorizer to predict whether a given SMS is spam.
β Upload or enter an SMS message and check if itβs Spam or Ham β Built using Scikit-learn for model training β TF-IDF Vectorizer for text preprocessing β Streamlit web app for interactive UI β Lightweight and fast prediction
Clone the repository:
https://github.com/J-TECH-bot/SMS_Spam-Classifier.git cd sms-spam-classification
Create a virtual environment and activate it:
python -m venv venv
venv\Scripts\activate # On Windows
source venv/bin/activate # On Mac/Linux
Install dependencies:
pip install -r requirements.txt
Run the Streamlit app:
streamlit run app.py
The dataset used is spam_sms.csv, which contains labeled SMS messages categorized into:
Spam β Unwanted promotional/advertisement messages
Ham β Normal, meaningful SMS messages
Main libraries used:
scikit-learn 1.7.1
streamlit
pandas
numpy
(Complete list in requirements.txt)
π Future Improvements
Add support for multiple languages
Enhance UI with charts and analytics
Deploy on Streamlit Cloud / Heroku / Render
π¨βπ» Author
Developed by Jay Deshmukh β¨