في مجال التعلم الآلي، وخاصة عند العمل مع منصات مثل Google Cloud Machine Learning، يعد تحضير البيانات وتنظيفها خطوة بالغة الأهمية تؤثر بشكل مباشر على أداء ودقة النماذج التي تقوم بتطويرها. تتضمن هذه العملية عدة مراحل، تم تصميم كل منها لضمان أن تكون البيانات المستخدمة للتدريب عالية الجودة وذات صلة ومناسبة لمهمة التعلم الآلي المقصودة. دعنا نفكر في الخطوات الشاملة المتضمنة في تحضير البيانات وتنظيفها قبل تدريب نموذج التعلم الآلي.
فهم أهمية إعداد البيانات وتنظيفها
يعد إعداد البيانات وتنظيفها من الخطوات الأساسية في خط أنابيب التعلم الآلي. يمكن أن تؤثر جودة بياناتك بشكل كبير على أداء نماذج التعلم الآلي الخاصة بك. يمكن أن تؤدي البيانات المعدة بشكل سيئ إلى نماذج غير دقيقة، في حين يمكن للبيانات المعدة جيدًا أن تعزز دقة النموذج وتقلل من وقت التدريب وتحسن من قابلية تفسير النتائج. عملية إعداد البيانات وتنظيفها متكررة وقد تتطلب إعادة النظر فيها عدة مرات طوال دورة حياة تطوير النموذج.
خطوات إعداد البيانات وتنظيفها
1. جمع البيانات ودمجها
تتمثل الخطوة الأولى في إعداد البيانات في جمع البيانات من مصادر مختلفة. وقد يشمل ذلك قواعد البيانات وجداول البيانات وواجهات برمجة التطبيقات وكشط الويب وأجهزة إنترنت الأشياء والمزيد. بمجرد جمع البيانات، يجب دمجها في مجموعة بيانات واحدة. أثناء التكامل، من المهم التأكد من أن البيانات من مصادر مختلفة متوافقة ومتسقة. قد يتضمن هذا حل مشكلات مثل تنسيقات البيانات المختلفة ووحدات القياس وأنواع البيانات.
مثال: لنفترض أنك تقوم ببناء نموذج تنبؤي لانخفاض عدد العملاء باستخدام بيانات من أقسام متعددة مثل المبيعات والدعم والتسويق. ستحتاج إلى دمج مجموعات البيانات هذه في مجموعة بيانات متماسكة تمثل رؤية شاملة لرحلة العميل.
2. تنظيف البيانات
تتضمن عملية تنظيف البيانات تحديد الأخطاء والتناقضات في مجموعة البيانات وتصحيحها. تعد هذه الخطوة ضرورية لضمان دقة البيانات وموثوقيتها. تتضمن مهام تنظيف البيانات ما يلي:
- معالجة القيم المفقودة:قد تحدث البيانات المفقودة نتيجة لأسباب مختلفة مثل أخطاء إدخال البيانات أو عطل في المعدات أو تلف البيانات. تتضمن الاستراتيجيات الشائعة للتعامل مع القيم المفقودة ما يلي:
- شطب:إزالة السجلات التي تحتوي على قيم مفقودة إذا كانت قليلة ولا تؤثر بشكل كبير على مجموعة البيانات.
- بتر:ملء القيم المفقودة باستخدام الأساليب الإحصائية مثل المتوسط أو الوسيط أو المنوال، أو استخدام تقنيات أكثر تطوراً مثل أقرب جيران K أو استنباط الانحدار.
- إزالة التكرارات:قد تؤدي السجلات المكررة إلى تحريف التحليل ويجب تحديدها وإزالتها. وهذا مهم بشكل خاص في مجموعات البيانات حيث يجب أن يمثل كل سجل كيانًا فريدًا.
- تصحيح التناقضات:يتضمن ذلك توحيد إدخالات البيانات التي يجب أن تكون موحدة، مثل تنسيقات التاريخ، أو العلامات التصنيفية، أو حالة النص.
مثال: في مجموعة بيانات تحتوي على معلومات العملاء، قد تواجه قيمًا مفقودة في عمود "العمر". يمكنك اختيار ملء هذه القيم المفقودة بالعمر المتوسط لمجموعة البيانات للحفاظ على التوزيع.
3. تحويل البيانات
تتضمن عملية تحويل البيانات تحويل البيانات إلى تنسيق مناسب للتحليل والنمذجة. قد تتضمن هذه الخطوة ما يلي:
- التطبيع والتوحيد القياسي:تُستخدم هذه التقنيات لتوسيع الميزات الرقمية إلى نطاق أو توزيع مشترك، وهو أمر مهم بشكل خاص للخوارزميات الحساسة لتوسيع الميزات، مثل آلات الدعم المتجهة أو التجميع باستخدام طريقة K-Means.
- تطبيع:إعادة قياس الميزات إلى نطاق [0، 1] باستخدام مقياس الحد الأدنى والحد الأقصى.
- التقييس:تحويل الميزات للحصول على متوسط يساوي 0 وانحراف معياري يساوي 1.
- ترميز المتغيرات الفئوية:تتطلب خوارزميات التعلم الآلي إدخالاً رقميًا. لذلك، يجب تحويل المتغيرات التصنيفية إلى قيم رقمية. تتضمن التقنيات ما يلي:
- ترميز التسمية:تعيين عدد صحيح فريد لكل فئة.
- ترميز واحد ساخن:إنشاء أعمدة ثنائية لكل فئة، وهو أمر مفضل عندما لا تكون هناك علاقة ترتيبية بين الفئات.
- هندسة الميزات:إنشاء ميزات جديدة أو تعديل الميزات الموجودة لتحسين أداء النموذج. وقد يتضمن ذلك:
- ميزات متعددة الحدود:إنشاء مصطلحات التفاعل أو مصطلحات متعددة الحدود من الميزات الموجودة.
- Binning:تحويل المتغيرات المستمرة إلى متغيرات فئوية عن طريق تجميعها في صناديق.
مثال: في مجموعة بيانات تحتوي على عمود "مدينة" يحتوي على بيانات تصنيفية، قد تستخدم تشفيرًا أحاديًا لإنشاء أعمدة ثنائية لكل مدينة، مما يسمح للنموذج بتفسيرها كمدخلات رقمية.
4. تقليل المعلومات
تُستخدم تقنيات تقليل البيانات لتقليل حجم البيانات مع الحفاظ على سلامتها. ويمكن أن يؤدي هذا إلى تحسين الكفاءة الحسابية وأداء النموذج. تتضمن الأساليب ما يلي:
- تخفيض الأبعاد:يتم استخدام تقنيات مثل تحليل المكونات الأساسية (PCA) أو تضمين الجار العشوائي الموزع t (t-SNE) لتقليل عدد الميزات مع الحفاظ على التباين أو البنية في البيانات.
- اختيار ميزة:تحديد والاحتفاظ فقط بالميزات الأكثر صلة استنادًا إلى الاختبارات الإحصائية أو تحليل الارتباط أو مقاييس الأهمية المستندة إلى النموذج.
مثال: إذا كانت مجموعة البيانات تحتوي على 100 ميزة، فيمكن استخدام تحليل مكونات البيانات الرئيسية لتقليل ذلك إلى مجموعة أصغر من المكونات الأساسية التي تلتقط غالبية التباين، وبالتالي تبسيط النموذج دون فقدان كبير للمعلومات.
5. تقسيم البيانات
قبل تدريب نموذج التعلم الآلي، من الضروري تقسيم البيانات إلى مجموعات منفصلة للتدريب والتحقق والاختبار. وهذا يضمن إمكانية تقييم أداء النموذج على بيانات غير مرئية، مما يقلل من خطر الإفراط في التجهيز.
- عدة التدريبات:الجزء من البيانات المستخدم لتدريب النموذج.
- مجموعة التحقق من الصحة:مجموعة فرعية منفصلة تستخدم لضبط معلمات النموذج واتخاذ القرارات بشأن بنية النموذج.
- مجموعة الاختبار:مجموعة فرعية نهائية تستخدم لتقييم أداء النموذج بعد التدريب والتحقق من صحته.
الممارسة الشائعة هي استخدام تقسيم 70-15-15، ولكن هذا يمكن أن يختلف اعتمادًا على حجم مجموعة البيانات والمتطلبات المحددة للمشروع.
6. زيادة البيانات
بالنسبة لأنواع معينة من البيانات، وخاصة الصور والنصوص، يمكن استخدام زيادة البيانات لزيادة حجم مجموعة البيانات التدريبية بشكل مصطنع من خلال إنشاء إصدارات معدلة من البيانات الموجودة. يمكن أن يساعد هذا في تحسين قوة النموذج وتعميمه. تتضمن التقنيات ما يلي:
- تكبير الصورة:تطبيق التحويلات مثل التدوير والتدرج والانعكاس وتعديل الألوان لإنشاء عينات تدريب جديدة.
- تكبير النص:استخدام تقنيات مثل استبدال المرادفات، أو الإدراج العشوائي، أو الترجمة العكسية لتوليد بيانات نصية جديدة.
على سبيل المثال: في مهمة تصنيف الصور، يمكنك تطبيق عمليات تدوير وقلب عشوائية على الصور لإنشاء مجموعة تدريب أكثر تنوعًا، مما يساعد النموذج على التعميم بشكل أفضل للبيانات غير المرئية.
أدوات ومنصات لإعداد البيانات وتنظيفها
توفر Google Cloud العديد من الأدوات والخدمات التي تسهل إعداد البيانات وتنظيفها:
- إعداد بيانات Google Cloud:أداة مرئية لاستكشاف البيانات وتنظيفها وإعدادها للتحليل. توفر واجهة سهلة الاستخدام واقتراحات آلية لتبسيط عملية إعداد البيانات.
- الاستعلام الشامل:مستودع بيانات بدون خوادم ومدار بالكامل يسمح بإجراء استعلامات SQL سريعة على مجموعات بيانات كبيرة. ويمكن استخدامه لمعالجة البيانات مسبقًا وتنظيفها قبل إدخالها في نماذج التعلم الآلي.
- سحابة داتالاب:أداة تفاعلية لاستكشاف البيانات وتحليلها وتصورها، والتي يمكن استخدامها لإعداد البيانات وتنظيفها باستخدام Python وSQL.
- تدفق البيانات السحابية:خدمة مُدارة بالكامل لمعالجة البيانات المتدفقة والدفعية، والتي يمكن استخدامها لبناء خطوط أنابيب إعداد البيانات المعقدة.
تُعد عملية إعداد البيانات وتنظيفها عنصرًا أساسيًا في سير عمل التعلم الآلي. وهي تتضمن خطوات متعددة، بما في ذلك جمع البيانات وتنظيفها وتحويلها وتقليصها وتقسيمها وزيادتها. تتطلب كل خطوة دراسة متأنية وتطبيق التقنيات المناسبة لضمان جودة البيانات ومناسبتها لتدريب نماذج التعلم الآلي القوية والدقيقة. من خلال الاستفادة من الأدوات والمنصات مثل تلك التي تقدمها Google Cloud، يمكن لعلماء البيانات ومهندسي التعلم الآلي تبسيط هذه العملية وتحسينها، مما يؤدي في النهاية إلى تطوير نماذج أكثر فعالية وكفاءة.
أسئلة وأجوبة أخرى حديثة بخصوص EITC/AI/GCML تعلم الآلة على Google Cloud:
- ما هي معايير اختيار الخوارزمية الصحيحة لمشكلة معينة؟
- إذا كان أحد يستخدم نموذج Google ويقوم بتدريبه على مثيله الخاص، فهل يحتفظ Google بالتحسينات التي تم إجراؤها من بيانات التدريب؟
- كيف يمكن للمرء أن يعرف نموذج التعلم الآلي الذي يجب استخدامه، قبل تدريبه؟
- ما هي مهمة الانحدار؟
- كيف يمكن الانتقال بين جداول Vertex AI و AutoML؟
- هل من الممكن استخدام Kaggle لتحميل البيانات المالية وإجراء التحليل الإحصائي والتنبؤ باستخدام النماذج القياسية الاقتصادية مثل R-squared أو ARIMA أو GARCH؟
- هل يمكن استخدام التعلم الآلي للتنبؤ بخطر الإصابة بأمراض القلب التاجية؟
- ما هي التغييرات الفعلية بسبب إعادة تسمية Google Cloud Machine Learning إلى Vertex AI؟
- ما هي مقاييس تقييم أداء النموذج؟
- ما هو الانحدار الخطي؟
عرض المزيد من الأسئلة والأجوبة في EITC/AI/GCML Google Cloud Machine Learning