ML Pipeline سير عمل التعلم الآلي

تكمن أهمية ML Pipeline  بأنها أحد المراحل المهمة في تطوير نظام التعلم الآلي. حيث أنها تساعد علماء البيانات و المهندسين في التحكم بالمشروع بجميع المراحل و ستساعد من بناء نماذج ذات دقة عالية و تسمح بالتوسع بالمستقبل.

جمع البيانات Data Collection

بعد تحديد الغرض من بناء نموذج أو مشروع تعلم الالة سواء كان لحل مشكلة أو لتحسين هدف تجاري ف تكون أول مرحلة يركز عليها المطور هو جمع البيانات وهي الركيزة الأولى التي يجب ان تأخذ الوقت الكافي من المشروع و ذلك لزيادة دقة النموذج بعد تدريبه. ضرورة التركيز بنوعية البيانات التي يتم جمعها أن تقوم بحل الهدف من النموذج و أن تكون صيغة البيانات مناسبة.
هناك العديد من المصادر التي تساعد في عملية جمع الببيانات:
١- مجموعة البيانات الجاهزه مثل kaggle و Roboflow
٢- تصفح الويب (Web Crawling): استخدام برامج لجمع البيانات من مواقع الويب المختلفة
٣- تجريف البيانات (Data Scraping): استخراج المعلومات من صفحات الويب بطريقة منظمة
٤- بناء مجموعة بيانات يدويا (Building a Dataset): تجميع البيانات في مجموعة بيانات موحدة من خلال البحث عن مصادر البيانات من خلال المواقع و حفظها
٥- استخدام واجهات برمجة التطبيقات (APIs): الحصول على البيانات من خدمات أو تطبيقات خارجية عبر API
٦- البيانات الناتجة عن عمليات الشركة أو الأنشطة: مثل جمع آراء العملاء عبر مراكز الاتصال
 

معالجة البيانات Data Processing

عند الانتهاء من جمع البيانات يأتي دور معالجتها و تنظيفها من أجل تجهيزها في تدريب النموذج model.  وهي عملية لضمان جاهزية البيانات و تؤثر في دقة النموذج.
١-  تنظيف البيانات Data Cleaning من خلال إزالة القيم المفقودة أو استبدالها بأخذ متوسط القيم, تصحيح صيغ البيانات, حذف السجلات المكررة
٢- معالجة القيم المتباينة Handling Outliers خلال تحليل البيانات قد تواجهك  قيم متطرفة (outliers) مثل متوسط المبيعات خلال اليوم ١٠٠٠ إلى ٢٠٠٠ ووجدت قيم ١٠ أو ١٠٠٠٠٠
٣- تحويل البيانات Data Transformation تحويل صيغة أو هيكلة البيانات إلى الصيغة المناسبة لاستخدامها في النموذج.  هناك أنواع لتحويل البيانات منها Data Normalization تطبيع البيانات, Format Conversion تحويل الصيغ و الترميز الأحادي One-Hot Encoding
 

هندسة الميزات Feature Engineering 

هندسة الميزات هي عملية تعديل أو حذف أو جمع بيانات بهدف إنشاء بيانات جديدة تساعد في تحسين و دقة النموذج و تقليل تحيز النتائج. 
 

 تقسيم البيانات Data Splitting

بعد الانتهاء من تجهيز البيانات و معالجتها يأتي الآن دور تقسيمها بنسب معينة من أجل استخدامها في تدريب النموذج و اختباره.
– مجموعة التدريب Training Set: الهدف منها لتدريب النموذج وتشكل نسبتها 70-80% من البيانات.
مجموعة التحقق Validation Set :  تستخدم لتقييم أداء النموذج خلال التدريب من خلال ضبط وتحسين الخوارزمية و نسبتها  10-15% من البيانات.
– مجموعة الاختبار Test Set:  توفر تقييم غير متحيز لأداء النموذج من خلال استخدام بيانات جديدة  و هذه يضمن قدرة النوذج على التوسع والتعميم, و نسبتها  10-15% من البيانات.
 
 

اختيار النموذج Model Selection

اختيار النموذج المناسب يعتمد على هدف المشروع و صيغة البيانات التي تم تجهيزها, و بالبداية نوضح أنواع  تعلم الآلة هي Supervised Learning  التعلم تحت المراقبة ,  Unsupervised Learning التعلم غير المراقب, Semi-Supervised Learning التعلم شبه المراقب و Reinforcement Learning التعلم التعزيزي.
سيتم شرح كل نوع منها مستقبلا بإذن الله  و سنذكر بعض الخوارزميات في هذه المقالة.
 

مهمة التصنيف Classification Tasks : وهي تستخدم تقنيات مختلفة لتحليل البيانات وتحديد الفئات  وبعض الخوارزميات المشهورة في مهمة التصنيف

– Support Vector Machines (SVM)
– Logistic Regression
– Decision Trees
 
مهمة الانحدار Regression Tasks: تستخدم بتقدير القيم العددية بدلاً من التصنيف الفئات, بعض الخوارزميات الشائعة:
– Linear Regression
– Random Forest
– Polynomial Regression
 

مهمة التجميع Clustering Tasks: الهدف هو تقسيم مجموعة البيانات إلى مجموعات clusters على أن تكون العناصر داخل كل مجموعة متشابهة قدر الإمكان مثل:

– K-Means

– Hierarchical Clustering
 

 تدريب النموذج و تكييفه  Model Training and Fitting

 هي عملية يتم فيها تغذية خوارزميات تعلم الآلة  بالبيانات التي تم تجهيزها بهدف تعليم النموذج على البيانات و اكتشاف الأنماط  والاتجاهات. يتم تعديل وزن النموذج model weights  بناءً على الأخطاء التي تظهر أثناء التعلم، مما يمكنه من تحسين دقته مع مرور الوقت.الهدف هو تعليم النموذج كيفية التنبؤ بالنتائج بناءً على البيانات المدخلة و تعديل parameters المعلمات لتقليل نسبة الخطأ ين توقعاته والنتائج الفعلية.

تقييم النموذج Model Evaluation

تقييم أداء النموذج من خلال استخدام بيانات الاختبار و التحقق باستخدام بعض المقاييس منها accuracy, Recall  and F1 score 

نشر النموذج و مراقبته Deployment and Monitoring

رفع النموذج في بيئة الإنتاج الفعلية حيث يمكنه التعامل مع بيانات جديدة و تقديم النتائج و التوقعات. و تكمن أهميه متابعة وقياس أداء النموذج بعد نشره للتأكد من أنه يعمل كما هو متوقع و يتم تحسسينه  بناء على النتائج، قد يحتاج النموذج إلى إعادة التدريب  باستخدام بيانات جديدة لضمان استمرارية دقة الأداء.