Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/junioralive/sms-spam-detection
An interactive SMS Spam Detection application using Streamlit and machine learning. This app allows users to classify messages as spam or ham and view performance metrics for different models.
https://github.com/junioralive/sms-spam-detection
classification data-science machine-learning nlp sms-or-ham sms-spam sms-spam-classification sms-spam-detection spam-detection streamlit text-analytics
Last synced: 7 days ago
JSON representation
An interactive SMS Spam Detection application using Streamlit and machine learning. This app allows users to classify messages as spam or ham and view performance metrics for different models.
- Host: GitHub
- URL: https://github.com/junioralive/sms-spam-detection
- Owner: junioralive
- Created: 2024-07-12T05:59:19.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-16T08:03:39.000Z (6 months ago)
- Last Synced: 2024-11-14T01:38:35.874Z (2 months ago)
- Topics: classification, data-science, machine-learning, nlp, sms-or-ham, sms-spam, sms-spam-classification, sms-spam-detection, spam-detection, streamlit, text-analytics
- Language: Python
- Homepage: https://sms-spam-detection-junioralive.streamlit.app/
- Size: 2.8 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SMS Spam Detection
## Kaggle
Find my work on kaggle : [Kaggle link](https://www.kaggle.com/code/junioralive/top-10-algorithms-ham-or-spam-classifiers)
## Overview
This application leverages multiple machine learning models to accurately classify SMS messages as either spam or ham (non-spam). The application provides an interactive interface for users to input SMS text to receive instant predictions. It also includes a detailed analysis section showcasing the performance metrics of each deployed model.
## Features
- **Spam Prediction**: Users can input an SMS text and get predictions on whether the message is spam or ham.
- **Model Performance**: Displays detailed performance metrics for each model, including accuracy, classification reports, and confusion matrices.## Models Used
- Logistic Regression
- Support Vector Machine (SVM)
- Random Forest Classifier
- Gradient Boosting Classifier
- Multinomial Naive Bayes## Installation
To set up and run this application locally, follow the steps below:
### 1. Clone the Repository
```bash
git clone https://github.com/junioralive/sms-spam-detection.git
cd sms-spam-detection
```### 2. Create and Activate a Virtual Environment
For Windows:
```bash
python -m venv venv
venv\Scripts\activate
```For macOS and Linux:
```bash
python3 -m venv venv
source venv/bin/activate
```### 3. Install Dependencies
```bash
pip install -r requirements.txt
```### 4. Download NLTK Resources
Before running the application, download the required NLTK resources by executing the following Python commands:
```python
import nltk
nltk.download('wordnet')
nltk.download('stopwords')
```## Running the App
To run the app, use the following command in the project directory:
```bash
streamlit run app.py
```Visit `http://localhost:8501` in your web browser to interact with the application.
## Contributing
Contributions are welcome! Here are a few ways you can help improve the project:
- Report bugs.
- Propose new features.
- Submit pull requests for bug fixes or new functionalities.
- Improve documentation.## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.