تهانينا! لقد نشرت نموذج أحادي القرن. يجب أن يعمل نموذجك على مدار 24 ساعة طوال أيام الأسبوع بدون أي مشكلات. للتأكد من القيام بذلك، يجب عليك مراقبة مسار التعلم الآلي (ML).
كتابة مخطط بيانات للتحقق من صحة البيانات الأولية
لمراقبة بياناتك، يجب التحقق منها باستمرار مقابل القيم الإحصائية عن طريق كتابة القواعد التي يجب أن تتوافق البيانات معها. هذه المجموعة من القواعد تُسمى مخطط البيانات. تعريف مخطط البيانات باتباع الخطوات التالية:
فهم نطاق الميزات وتوزيعها بالنسبة إلى التصنيف ميزات، فهم مجموعة القيم المحتملة.
قم بترميز فهمك في مخطط البيانات. فيما يلي أمثلة على القواعد:
- تأكَّد من أنّ التقييمات التي يرسلها المستخدمون تتراوح دائمًا بين 1 و5.
- التحقّق من أنّ كلمة the هي الأكثر تكرارًا (بالنسبة إلى النص باللغة الإنجليزية الجديدة).
- التأكد من أن كل خاصية فئوية قد تم تعيينها على قيمة من مجموعة ثابتة من القيم المحتملة.
اختبر بياناتك مقابل مخطط البيانات. يجب أن يرصد مخططك البيانات أخطاء مثل:
- الِقَيم الشاذة
- قيم غير متوقعة للمتغيرات الفئوية
- توزيعات غير متوقعة للبيانات
كتابة اختبارات الوحدة للتحقّق من صحة هندسة الميزات
وعلى الرغم من أن البيانات الأولية قد تجتاز مخطط البيانات، لا يتم تدريب النموذج على البيانات الأولية. وإنما يتدرب النموذج على البيانات التي تم تمييزها الهندسة. على سبيل المثال، يتدرب النموذج على الخصائص العددية التي تمت تسويتها بدلاً من البيانات الرقمية الأولية. نظرًا لأن البيانات المصممة بطريقة هندسية يمكن أن تكون عن بيانات الإدخال الأولية، يجب عليك التحقق من البيانات المُعدَّلة الهندسية بشكل منفصل عن عمليات التحقق على بيانات الإدخال الأولية.
اكتب اختبارات الوحدة بناءً على فهمك للبيانات الهندسية الخصائص. على سبيل المثال، يمكنك كتابة اختبارات الوحدة للتحقق من الشروط مثل التالي:
- يتم قياس جميع الميزات الرقمية، على سبيل المثال، بين 0 و1.
- ترميز واحد فعال تحتوي المتجهات على أصفار واحدة 1 وN-1 فقط.
- تتوافق عمليات توزيع البيانات بعد التحويل مع التوقعات. على سبيل المثال، إذا قمت بالتسوية باستخدام درجات Z، فإن متوسط يجب أن تكون درجات Z 0.
- القيم الشاذّة تتم معالجتها، مثلاً من خلال تحجيم أو الاقتصاص والدمج
التحقّق من مقاييس شرائح البيانات المهمة
يحجب الكل الناجح أحيانًا مجموعة فرعية غير ناجحة. أو بعبارةٍ أخرى، فإن النموذج الذي يحتوي على مقاييس إجمالية رائعة قد يستمر في طرح تنبؤات سيئة لمواقف معينة. على سبيل المثال:
يحقّق نموذج أحادي القرن أداءً جيدًا بشكل عام، ولكنه سيئ الأداء عندما عمل تنبؤات بشأن الصحراء الكبرى.
إذا كنت من المهندسين الراضين عن الحصول على وظيفة AUC رائعة، قد لا تلاحظ مشكلات النموذج في الصحراء الكبرى. في حال الرغبة في أهمية التنبؤات الجيدة لكل منطقة، فإنك بحاجة إلى تتبع الأداء لكل منطقة. مجموعات فرعية من البيانات، مثل المجموعة المقابلة إلى الصحراء الكبرى، تسمى شرائح البيانات.
تحديد شرائح البيانات المهمة. ثم قارن مقاييس النموذج لشرائح البيانات هذه بمقاييس مجموعة البيانات بأكملها. التحقق من أداء نموذجك بشكل جيد على مستوى جميع شرائح البيانات يساعد على إزالة التحيز. عرض الإنصاف: التقييم من أجل الانحياز لمزيد من المعلومات.
استخدام مقاييس واقعية
لا تقيس مقاييس النماذج بالضرورة التأثير الفعلي لنموذجك. على سبيل المثال، قد يؤدي تغيير معلَمة فائقة إلى زيادة قيمة AUC للنموذج، ولكن مدى هل أثر التغيير على تجربة المستخدم؟ لقياس التأثير في العالم الحقيقي، تحتاج إلى لتحديد مقاييس منفصلة. على سبيل المثال، يمكنك عمل استطلاع لمستخدمي نموذجك لتأكيد أنهم رأوا وحيد القرن عندما تنبأ النموذج بأن يريد.
التحقق من وجود انحراف في عرض التدريب
الانحراف في عرض التدريب تعني أن بيانات إدخالك أثناء التدريب تختلف من بيانات الإدخال في العرض. ويوضّح الجدول التالي نوعان مهمان من الانحراف:
النوع | التعريف | مثال | الحل |
---|---|---|---|
انحراف المخطط | لا تتوافق بيانات إدخال التدريب والعرض مع المخطط نفسه. | تغيُّر تنسيق بيانات العرض أو توزيعها بينما يستمر النموذج في التدرّب على البيانات القديمة. | استخدِم المخطط نفسه للتحقّق من صحة بيانات التدريب والعرض. التأكد من التحقق بشكل منفصل من الإحصائيات التي لم يتم التحقق منها بواسطة مخططك، مثل كسر القيم المفقودة |
انحراف الميزة | تختلف البيانات الهندسية بين التدريب والعرض. | تختلف رموز هندسة الميزات بين التطبيق والعرض، إنتاج بيانات هندسية مختلفة. | على غرار انحراف المخطّط، طبِّق القواعد الإحصائية نفسها على عملية التدريب وعرض البيانات الهندسية. تتبُّع الرقم الخصائص المحرفة التي تم اكتشافها، ونسبة الأمثلة المحرفة لكل ميزة. |
يمكن أن تكون أسباب انحراف عرض التدريب خفية. ضع في اعتبارك دائمًا البيانات المتوفرة لنموذجك في وقت التنبؤ. أثناء التدريب، استخدِم فقط الميزات التي ستتوفّر لك عند العرض.
تمرين: التحقق من فهمك
لنفترض أن لديك متجرًا على الإنترنت وتريد التنبؤ الأرباح التي ستحققها في يوم معين هدف التعلم الآلي هو التنبؤ يوميًا إلى الأرباح باستخدام عدد العملاء كميزة.
الإجابة: المشكلة هي أنك لا تعرف عدد العملاء في وقت التنبؤ، قبل أن تبدأ مبيعات اليوم مكتملة. إذًا، هذه الميزة ليست مفيدة حتى لو كانت على توقّعات قوية لأرباحك اليومية. ذات صلة، عندما وتطبيق نموذج والحصول على مقاييس تقييم مذهلة (مثل 0.99 AUC)، فابحث عن هذه الأنواع من الميزات التي يمكن أن تمتد إلى التسمية الخاصة بك.
التحقّق من تسريب التصنيفات
يعني تسرُّب التصنيفات أنّ تصنيفات الحقائق الواقعية التي تحاول التنبؤ بها دخلت دون قصد ميزات التدريب الخاصة بك. التصنيف يكون من الصعب جدًا اكتشاف تسرُّب المياه.
تمرين: التحقق من فهمك
لنفترض أنك أنشأت نموذج تصنيف ثنائي للتنبؤ بما إذا كان مريض جديد بالمستشفى مصاب بالسرطان. يستخدم النموذج ميزات مثل ما يلي:
- عمر المريض
- جنس المريض
- الحالات الطبية السابقة
- اسم المستشفى
- العلامات الحيوية
- نتائج الاختبار
- الوراثة
في ما يلي التسمية:
- منطقية: هل يعاني المريض من السرطان؟
وتقوم بتقسيم البيانات بعناية، لضمان أن مجموعة التدريب الخاصة بك جيدة معزولة عن مجموعة التحقق ومجموعة الاختبار. ينفّذ النموذج جيدًا بشكل كبير في مجموعة التحقّق ومجموعة الاختبار المقاييس هي رائع. للأسف، يحقّق النموذج أداء ضعيفًا على المرضى الجدد. في العالم الحقيقي.
الإجابة: من ميزات هذا النموذج اسم المستشفى. بعض المستشفيات متخصصة في علاج السرطان. أثناء التدريب، يجب أن سرعان ما أن المرضى المعينين في مستشفيات معينة من المحتمل إصابتهم بالسرطان. لذلك، أصبح اسم المستشفى ميزة ذات تأثير كبير.
في وقت الاستنتاج، لم يتم تعيين معظم المرضى إلى المستشفى بعد. ففي نهاية الأمر، كان الغرض من النموذج هو تشخيص وجود أو غياب السرطان ومن ثم استخدام هذا التشخيص لتحديد المريض إلى المستشفى المناسب. وبالتالي، أثناء الاستنتاج، لم تكن ميزة اسم المستشفى متاحة بعد وتم إجبار النموذج والاعتماد على ميزات أخرى.
مراقبة عمر النموذج على مستوى المسار
إذا تطورت بيانات العرض بمرور الوقت، ولكن لم تتم إعادة تدريب النموذج بانتظام، ستلاحظ انخفاضًا في جودة النموذج. تتبع الوقت منذ إنشاء النموذج إعادة التدريب على البيانات الجديدة وتعيين حد أدنى للتنبيهات. بالإضافة إلى مراقبة عمر النموذج عند العرض، يجب مراقبة عمر النموذج خلال عملية التنفيذ لاصطياد أكشاك خطوط الأنابيب.
اختبار أنّ قيم القيم المقدّرة للنموذج ونتائجه مستقرة رقميًا
أثناء تدريب النموذج، يجب ألا تكون قيم الترجيح ومخرجات الطبقة هي NaN (ليس رقمًا) أو Inf (غير محدود). اكتب اختبارات للتحقق من قيم NaN وInf للأوزان ومخرجات الطبقات. إضافةً إلى ذلك، اختبِر أنّ أكثر من نصف مخرجات الطبقة ليست صفرًا.
مراقبة أداء النموذج
أداة التنبؤ بمظهر وحيد القرن حققت رواجًا أكثر من المتوقع. انتهى والحصول على الكثير من طلبات التنبؤ والمزيد من بيانات التدريب. تعتقد أمرًا رائعًا حتى تدرك أن نموذجك يستغرِق المزيد والمزيد من الذاكرة ووقت التدريب. وأنك قررت مراقبة أداء نموذجك من خلال اتباع الخطوات التالية:
- تتبُّع أداء النموذج حسب إصدارات الرمز البرمجي والنموذج والبيانات وهذا التتبع بتحديد السبب الدقيق لأي تدهور في الأداء.
- اختبار خطوات التدريب في الثانية لإصدار نموذج جديد مقابل عن الإصدار السابق مقابل حد ثابت
- يمكنك رصد حالات تسرُّب الذاكرة من خلال ضبط حدّ لاستخدام الذاكرة.
- يمكنك تتبُّع أوقات استجابة واجهة برمجة التطبيقات وتتبُّع النسبة المئوية الخاصة بها. بينما ردّ واجهة برمجة التطبيقات الأوقات التي قد تكون خارجة عن سيطرتك، والاستجابة البطيئة قد تتسبب في مقاييس سيئة في العالم الحقيقي.
- مراقبة عدد طلبات البحث التي تمت الإجابة عنها في الثانية الواحدة.
اختبار جودة النموذج المباشر على البيانات المعروضة
لقد تحققت من صحة النموذج. ولكن ماذا لو سيناريوهات العالم الحقيقي، مثل وحيد القرن السلوك، التغيير بعد تسجيل بيانات التحقق من الصحة؟ فإن جودة فسوف ستنخفض أهمية النموذج المعروض. ومع ذلك، فإن اختبار جودة العرض أمر صعب لأن لا يتم دائمًا تصنيف البيانات الواقعية. إذا لم يتم تصنيف بيانات العرض، ضع هذه الاختبارات:
استقصاء النماذج التي تظهر انحيازًا إحصائيًا مهمًا في التوقعات. عرض التصنيف: التوقّع الانحياز:
تتبع المقاييس الواقعية لنموذجك. على سبيل المثال، إذا كنت تصنف المحتوى غير المرغوب فيه، قارن توقعاتك بالمحتوى غير المرغوب فيه الذي أبلغ عنه المستخدم.
الحد من التباعد المحتمل بين بيانات التدريب والتقديم عن طريق تعرض إصدارًا جديدًا من النموذج على جزء صغير من طلبات البحث. أثناء التحقق من صحة نموذج العرض الجديد، يتم تدريجيًا تبديل جميع الطلبات إلى الإصدار الجديد.
باستخدام هذه الاختبارات، تذكر مراقبة كل من التدهور المفاجئ والبطيئ في جودة التنبؤ.
التوزيع العشوائي
إتاحة إمكانية إعادة إنتاج مسار إنشاء البيانات لنفترض أنك تريد إضافة ميزة لمعرفة مدى تأثيرها في جودة النموذج. لإجراء تجربة عادلة، يجب أن متطابقة باستثناء هذه الميزة الجديدة. من هذا المنطلق، تأكد من إمكانية إجراء أي توزيع عشوائي في إنشاء البيانات حتمية:
- التعرّف على أدوات إنشاء الأرقام العشوائية (RNG). يضمن البذور أن RNG وتُخرج القيم نفسها بنفس الترتيب في كل مرة تقوم فيها بتشغيلها، مع إعادة إنشاء مجموعة البيانات لديك.
- استخدِم مفاتيح تجزئة ثابتة. التجزئة هي طريقة شائعة لتقسيم أو عينة من البيانات. يمكنك تجزئة كل مثال، واستخدام العدد الصحيح الناتج ينبغي أن تقرر في أي قسم وضع المثال. المدخلات إلى دالة التجزئة في كل مرة تقوم فيها بتشغيل برنامج إنشاء البيانات. لا تستخدم الوقت الحالي أو رقم عشوائي في التجزئة، على سبيل المثال، إذا كنت تريد إعادة إنشاء علامات التجزئة عند الطلب.
تنطبق الأساليب السابقة على أخذ العينات وتقسيم البيانات.
اعتبارات التجزئة
تخيل مرة أخرى أنك كنت تجمع طلبات البحث وتستخدم التجزئة لتضمين أو استبعاد طلبات بحث إذا استخدم مفتاح التجزئة الاستعلام فقط، عليك دائمًا تضمين ما يلي على مستوى أيام متعددة من البيانات طلب البحث هذا أو دائمًا تستبعده. تضمين أو استبعاد دائمًا الاستعلام سيئ للأسباب التالية:
- ستشاهد مجموعة التدريب مجموعة أقل تنوعًا من الطلبات.
- ستكون مجموعات التقييم لديك صعبة بشكل مصطنع، لأنها لن مع بيانات التدريب لديك. في الواقع، في وقت العرض، بعض حركة الزيارات المباشرة في بيانات التدريب، وبالتالي والتقييم يجب أن يعكس ذلك.
بدلاً من ذلك، يمكنك التجزئة بناءً على طلب البحث + التاريخ، ما يؤدي إلى اختلاف عملية التجزئة. كل يوم
![الشكل 7. تصور متحرك يوضح كيف أن التجزئة فقط
يتسبب الاستعلام في نقل البيانات إلى نفس مجموعة البيانات كل يوم، ولكن التجزئة
في الاستعلام بالإضافة إلى وقت الاستعلام إلى تفاوت البيانات
البيانات كل يوم. المجموعات الثلاث هي "التدريب" و"التقييم" و
تم تجاهله.](https://developers.google.cn/static/machine-learning/crash-course/images/hashing_on_query.gif?authuser=19&hl=ar)