Logo Lanfrica

esmail830/Sudan-Faults-Classification

Domain:

digital infrastructure

Record type:

model
Creator:
esm
Host:
مشروع لتصنيف بلاغات الأعطال باستخدام تعلم الآلة # ⚡ Sudan Electricity Faults Classification تطبيق **تعلم الآلة (Machine Learning)** لتصنيف بلاغات الأعطال في الشركة السودانية لتوزيع الكهرباء بالاعتماد على **النصوص الوصفية** للبلاغات. --- ## 🎯 الهدف - أتمتة عملية فرز البلاغات النصية. - مساعدة موظفي الكول سنتر في تحديد نوع العطل بسرعة. - تحسين زمن الاستجابة وتقليل الأخطاء البشرية. --- ## ⚙️ المميزات - تصنيف الأعطال بناءً على النص العربي. - استخدام خوارزمية **Logistic Regression**. - دعم اللغة العربية (UTF-8). - عرض تقرير الأداء (الدقة – الاستدعاء – F1-score). - مصفوفة الارتباك (Confusion Matrix) لقياس أداء النموذج. --- ## 🛠️ المتطلبات - Python 3.8 أو أحدث - المكتبات المطلوبة: ```bash pip install pandas numpy scikit-learn matplotlib seaborn joblib ``` --- ## 🚀 طريقة التشغيل 1. ضع ملف البيانات `sudan_faults_text.csv` في مجلد المشروع. 2. شغل ملف التدريب: ```bash python train_model.py ``` 3. بعد التدريب، حيتم حفظ الملفات: - `model_faults1.pkl` → النموذج المدرب - `tfidf_faults1.pkl` → محول النصوص - `label_encoder1.pkl` → مشفر التصنيفات 4. جرب التنبؤ ببلاغ جديد داخل الكود: ```python new_text = ["المحول ما بشغل المنطقة كلها"] ``` --- ## 📊 مثال نتيجة ``` ✅ تم تدريب النموذج بالنجاح 🎯 الدقة: 0.87 🔮 العطل المتوقع: عطل محول ``` --- ## 📂 هيكل المشروع ``` Sudan-Faults-Classification/ │── main.py # الكود الرئيسي للتدريب والتجربة │── sudan_faults_text.csv # البيانات النصية للأعطال │── model_faults1.pkl # النموذج المدرب (يُنشأ بعد التشغيل) │── tfidf_faults1.pkl # محول النصوص (يُنشأ بعد التشغيل) │── label_encoder1.pkl # مشفر الأعطال (يُنشأ بعد التشغيل) │── README.md # ملف التوثيق ``` --- ✍️ *تم تطوير المشروع بواسطة: إسماعيل (2025)*