طارق بن جعبل طعيمان

مهندس ذكاء اصطناعي

0%

الرئيسيةالمشاريعتعلم الآلةكشف البريد المزعج (Spam Detection)
تعلم الآلة
مشروع عملي احترافي

كشف البريد المزعج (Spam Detection)

نموذج يميز بين البريد الطبيعي والمزعج باستخدام NLP و ML

مبتدئ
1-2 أسبوع
4 مهارات

مقدمة المشروع

في هذا المشروع العملي، ستتعلم كيفية نموذج يميز بين البريد الطبيعي والمزعج باستخدام nlp و ml. هذا المشروع مصمم خصيصاً لمستوى مبتدئويستغرق تقريباً 1-2 أسبوع لإكماله بشكل كامل.

سنتبع منهجية CRISP-DM (Cross-Industry Standard Process for Data Mining) المعترف بها عالمياً، والتي تضمن بناء مشروع احترافي قابل للتطبيق في بيئة الإنتاج.

ماذا ستتعلم؟

تطبيق Text Preprocessing (Tokenization, Stopwords)
فهم TF-IDF و Bag of Words
استخدام Naive Bayes للتصنيف النصي
قياس الأداء بـ Precision, Recall, F1-Score
منهجية CRISP-DM

خطوات العمل التفصيلية

اتبع هذه الخطوات الست لبناء مشروع احترافي

1
📊

Business Understanding

فهم المشكلة

تحديد الأهداف والمتطلبات من منظور الأعمال

الخطوات العملية:

تحديد تأثير البريد المزعج - 45% من emails عالمياً spam. تكلفة معالجة spam تصل لمليارات سنوياً. تحديد أهداف النموذج: Precision عالي (تجنب False Positives)، Recall جيد (التقاط أكبر عدد من spam). دراسة خصائص البريد المزعج: الكلمات المشبوهة، الروابط، الأرقام، الـ urgency.

2
🔍

Data Understanding

فهم البيانات

جمع البيانات الأولية والتعرف عليها وتحديد جودتها

الخطوات العملية:

تحميل SMS Spam Collection Dataset (5,574 رسالة). استكشاف التوزيع: 87% ham, 13% spam - بيانات غير متوازنة. تحليل طول الرسائل: spam عادة أطول. استخراج الكلمات الأكثر تكراراً في كل فئة. رسم Word Clouds لـ spam و ham.

3
🧹

Data Preparation

تحضير البيانات

تنظيف وتحويل البيانات لتكون جاهزة للنمذجة

الخطوات العملية:

تنظيف النص: إزالة HTML tags، URLs، أرقام الهواتف. تحويل النص إلى lowercase. Tokenization باستخدام NLTK. إزالة Stop Words العربية والإنجليزية. تطبيق Stemming/Lemmatization. تحويل النص إلى vectors باستخدام TF-IDF و Bag of Words. معالجة Class Imbalance باستخدام SMOTE أو Class Weights.

4
⚙️

Modeling

بناء النموذج

اختيار وتطبيق تقنيات النمذجة المناسبة

الخطوات العملية:

بناء Baseline مع Naive Bayes (مناسب للنصوص). تطبيق Logistic Regression مع TF-IDF. بناء Linear SVM. تجربة Random Forest و XGBoost. استخدام N-grams (unigrams, bigrams) لالتقاط السياق. تطبيق GridSearchCV لضبط Hyperparameters.

5

Evaluation

التقييم

تقييم النموذج والتأكد من تحقيق الأهداف

الخطوات العملية:

حساب Accuracy, Precision, Recall, F1-Score. رسم Confusion Matrix وتحليلها: كم False Positive/Negative؟ حساب ROC-AUC. تحليل الرسائل المصنفة خطأ. Feature Importance: أهم الكلمات التي تشير لـ spam. Cross-Validation للتأكد من استقرار الأداء.

6
🚀

Deployment

النشر

نشر النموذج في بيئة الإنتاج

الخطوات العملية:

بناء API بـ FastAPI يستقبل رسالة نصية ويعيد التصنيف. إنشاء واجهة ويب بسيطة لإدخال الرسائل واختبارها. إضافة Explanation: عرض الكلمات التي أدت للتصنيف. حفظ النموذج بـ pickle. كتابة Documentation. Deploy على Heroku أو Streamlit Cloud.

المصادر والأدوات

SMS Spam Collection Dataset
NLTK Documentation
Text Classification Guide

المهارات المطلوبة

Text ClassificationNLPNaive BayesTF-IDF

إحصائيات سريعة

المستوىمبتدئ
المدة1-2 أسبوع
المهارات4
الخطوات6
العودة للمشاريع