# π Offensive Message Detection in Arabic Darija
This project focuses on building a **classification model** to determine whether a message is **offensive** or **not** in **Arabic Darija**.
The model has practical applications, such as:
β
**Filtering offensive comments**
β
**Detecting hate speech & harmful content**
---
## π Project Steps
### π 1. Data Gathering
- π₯ Collected a **high-quality dataset** with labeled offensive and non-offensive messages.
- π Found an existing **Data set** online for reference.
### π 2. Exploratory Data Analysis (EDA)
- Used **Pandas** to analyze and clean the dataset.
- Identified missing values, text patterns, and class imbalances.
### π 3. Feature Engineering
- Converted text data into numerical form using **Vectorization (TF-IDF / CountVectorizer)**.
### π― 4. Model Selection
- Selected **Logistic Regression** as the classification model.
### βοΈ 5. Splitting Data
- Split the dataset into **training (80%)** and **testing (20%)** for evaluation.
### π 6. Model Evaluation
- Measured accuracy, precision, recall, and F1-score to validate performance.
### π 7. Running Custom Tests
- Tested the model with **real-world Arabic Darija messages** to assess its accuracy.
---
## π Future Improvements
πΉ Train with a **larger dataset** for better accuracy.
πΉ Experiment with **deep learning models (LSTMs, Transformers)** for improved results.
πΉ Deploy the model as an **API** for real-time detection.
---
## π Tech Stack Used
- π **Python**
- π **Pandas, NumPy**
- π€ **Scikit-learn**
- π **NLTK / Text Preprocessing Libraries**
---
## π’ Contributions & Feedback
Feel free to contribute, suggest improvements, or test the model! π