يتم تطبيق فهم اللغة الطبيعية في مجموعة واسعة من حالات الاستخدام ، من روبوتات المحادثة والمساعدات الافتراضية ، إلى الترجمة الآلية وتلخيص النص. لضمان تشغيل هذه التطبيقات بمستوى أداء متوقع ، من المهم أن تكون البيانات في بيئات التدريب والإنتاج من نفس التوزيع. عندما تختلف البيانات المستخدمة للاستدلال (بيانات الإنتاج) عن البيانات المستخدمة أثناء تدريب النموذج ، فإننا نواجه ظاهرة تُعرف باسم انحراف البيانات. عند حدوث انحراف في البيانات ، لم يعد النموذج ذا صلة بالبيانات في الإنتاج ومن المحتمل أن يكون أداؤه أسوأ من المتوقع. من المهم مراقبة بيانات الاستدلال باستمرار ومقارنتها بالبيانات المستخدمة أثناء التدريب.
يمكنك استخدام الأمازون SageMaker لبناء نماذج التعلم الآلي (ML) وتدريبها ونشرها بسرعة على أي نطاق. كإجراء استباقي ضد تدهور النموذج ، يمكنك استخدامه الأمازون SageMaker نموذج مراقب لمراقبة جودة نماذج ML الخاصة بك باستمرار في الوقت الفعلي. باستخدام Model Monitor ، يمكنك أيضًا تكوين التنبيهات لإخطار الإجراءات وتشغيلها في حالة ملاحظة أي انحراف في أداء النموذج. يمكّنك الاكتشاف المبكر والاستباقي لهذه الانحرافات من اتخاذ إجراءات تصحيحية ، مثل جمع بيانات جديدة للتدريب على الحقيقة الأرضية ، ونماذج إعادة التدريب ، ومراجعة أنظمة المنبع ، دون الحاجة إلى مراقبة النماذج يدويًا أو إنشاء أدوات إضافية.
يوفر Model Monitor أربعة أنواع مختلفة من إمكانيات المراقبة لاكتشاف انحراف النموذج وتخفيفه في الوقت الفعلي:
- جودة البيانات – يساعد على اكتشاف التغيير في مخططات البيانات والخصائص الإحصائية للمتغيرات المستقلة والتنبيهات عند اكتشاف الانحراف.
- جودة النموذج – لمراقبة خصائص أداء النموذج مثل الدقة أو الدقة في الوقت الفعلي، يتيح لك Model Monitor استيعاب تسميات الحقيقة الأساسية التي تم جمعها من تطبيقاتك. يقوم Model Monitor تلقائيًا بدمج معلومات الحقيقة الأساسية مع بيانات التنبؤ لحساب مقاييس أداء النموذج.
- تحيز النموذج -تم دمج مراقب النموذج مع توضيح Amazon SageMaker لتحسين الرؤية في التحيز المحتمل. على الرغم من أن بياناتك أو نموذجك الأولي قد لا يكون متحيزًا، إلا أن التغييرات في العالم قد تتسبب في تطور التحيز بمرور الوقت في النموذج الذي تم تدريبه بالفعل.
- شرح النموذج - ينبهك اكتشاف الانجراف عند حدوث تغيير في الأهمية النسبية لنسب الميزات.
في هذا المنشور ، نناقش أنواع انحراف جودة البيانات التي تنطبق على البيانات النصية. نقدم أيضًا طريقة لاكتشاف انحراف البيانات في البيانات النصية باستخدام Model Monitor.
انجراف البيانات في البرمجة اللغوية العصبية
يمكن تصنيف انجراف البيانات إلى ثلاث فئات اعتمادًا على ما إذا كان تحول التوزيع يحدث على جانب الإدخال أو على جانب الإخراج، أو ما إذا كانت العلاقة بين المدخلات والمخرجات قد تغيرت.
التحول المتغير
في باقة التحول المتغيريتغير توزيع المدخلات مع مرور الوقت، ولكن التوزيع المشروط ف(ص|س) لا يتغير. يسمى هذا النوع من الانجراف التحول المتغير لأن المشكلة تنشأ بسبب تحول في توزيع المتغيرات المشتركة (الميزات). على سبيل المثال ، في نموذج تصنيف البريد الإلكتروني العشوائي ، قد يختلف توزيع بيانات التدريب (مجموعة البريد الإلكتروني) عن توزيع البيانات أثناء التسجيل.
تحول التسمية
بينما يركز التحول المتغير على التغييرات في توزيع الميزات، تحول التسمية يركز على التغييرات في توزيع متغير الفئة. هذا النوع من التحول هو في الأساس عكس التحول المتغير. قد يكون التفكير في مجموعة بيانات غير متوازنة طريقة بديهية للتفكير فيها. إذا كانت نسبة الرسائل غير المرغوب فيها إلى الرسائل غير المرغوب فيها في مجموعة التدريب لدينا هي 50٪ ، ولكن في الواقع 10٪ من رسائل البريد الإلكتروني ليست بريدًا عشوائيًا ، فإن توزيع التسمية المستهدفة قد تغير.
تحول المفهوم
تحول المفهوم يختلف عن المتغير المشترك وتحول التسمية من حيث أنه لا يتعلق بتوزيع البيانات أو توزيع الفئة ، ولكنه يرتبط بدلاً من ذلك بالعلاقة بين المتغيرين. على سبيل المثال ، غالبًا ما يستخدم مرسلو البريد الإلكتروني العشوائي مجموعة متنوعة من المفاهيم لتمرير نماذج عامل تصفية البريد العشوائي ، وقد يتغير مفهوم رسائل البريد الإلكتروني المستخدمة أثناء التدريب بمرور الوقت.
الآن بعد أن فهمنا الأنواع المختلفة لانحراف البيانات ، دعنا نرى كيف يمكننا استخدام Model Monitor لاكتشاف التحول المتغير في البيانات النصية.
حل نظرة عامة
على عكس البيانات الجدولية ، المنظمة والمقيدة ، فإن البيانات النصية معقدة وعالية الأبعاد وشكل حر. لاكتشاف الانجراف بكفاءة في البرمجة اللغوية العصبية ، نعمل مع حفلات الزفاف وهي تمثيلات ذات أبعاد منخفضة للنص. يمكنك الحصول على حفلات الزفاف باستخدام نماذج لغة مختلفة مثل Word2Vec والنماذج القائمة على المحولات مثل بيرت. تعرض هذه النماذج بيانات عالية الأبعاد في مساحات منخفضة الأبعاد مع الحفاظ على المعلومات الدلالية للنص. النتائج هي نواقل كثيفة وذات مغزى للسياق ، والتي يمكن استخدامها لمختلف المهام النهائية ، بما في ذلك مراقبة انحراف البيانات.
في حلنا ، نستخدم حفلات الزفاف لاكتشاف التحول المتغير للجمل الإنجليزية. نحن نستخدم Model Monitor لتسهيل المراقبة المستمرة لمصنف النص الذي يتم نشره في بيئة الإنتاج. يتكون نهجنا من الخطوات التالية:
- صقل نموذج BERT باستخدام SageMaker.
- انشر مصنف BERT دقيق الضبط كنقطة نهاية في الوقت الحقيقي مع التقاط البيانات تمكين.
- قم بإنشاء مجموعة بيانات أساسية تتكون من عينة من الجمل المستخدمة لتدريب مصنف BERT.
- إنشاء وظيفة مراقبة SageMaker المخصصة لحساب تشابه جيب التمام بين البيانات التي تم التقاطها في الإنتاج ومجموعة البيانات الأساسية.
يوضح الرسم التخطيطي التالي سير عمل الحل:
صقل نموذج BERT
في هذا المنشور ، نستخدم مجموعة القبول اللغوي (CoLA)، مجموعة بيانات من 10,657 جملة إنجليزية مصنفة على أنها نحوية أو غير نحوية من الأدبيات اللغوية المنشورة. نحن نستخدم تدريب SageMaker لضبط نموذج BERT باستخدام مجموعة بيانات CoLa من خلال تحديد فئة مقدر PyTorch. لمزيد من المعلومات حول كيفية استخدام SDK مع PyTorch ، راجع استخدم PyTorch مع SageMaker Python SDK. استدعاء fit()
طريقة المقدر يبدأ العمل التدريبي:
انشر النموذج
بعد تدريب نموذجنا ، قمنا باستضافته على نقطة نهاية SageMaker. لجعل نقطة النهاية تقوم بتحميل النموذج وخدمة التنبؤات ، نقوم بتنفيذ بعض الطرق في Train_deploy.py:
- model_fn () - يقوم بتحميل النموذج المحفوظ وإرجاع كائن نموذج يمكن استخدامه لخدمة النموذج. يقوم الخادم النموذجي SageMaker PyTorch بتحميل نموذجنا عن طريق استدعاء
model_fn
. - input_fn () - يقوم بإلغاء تسلسل مدخلات التنبؤ وإعداده. في هذا المثال ، يتم تسلسل نص الطلب أولاً إلى JSON ثم إرساله إلى نقطة نهاية خدمة النموذج. لذلك ، في
input_fn()
، نقوم أولاً بإلغاء تسلسل نص طلب بتنسيق JSON وإرجاع الإدخال بتنسيقtorch.tensor
، كما هو مطلوب لـ BERT. - التنبؤ_fn () - يقوم بالتنبؤ ويعيد النتيجة.
تمكين التقاط بيانات مراقب النموذج
نحن نمكن نموذج مراقب التقاط البيانات لتسجيل بيانات الإدخال في ملف خدمة تخزين أمازون البسيطة (Amazon S3) للرجوع إليه لاحقًا:
ثم نقوم بإنشاء نقطة نهاية SageMaker في الوقت الفعلي مع النموذج الذي تم إنشاؤه في الخطوة السابقة:
الإستنباط
نقوم بتشغيل التنبؤ باستخدام كائن التوقع الذي أنشأناه في الخطوة السابقة. قمنا بتعيين جهاز تسلسل JSON ومزيل التسلسل ، والذي يتم استخدامه بواسطة نقطة نهاية الاستدلال:
يتم تكوين نقطة النهاية في الوقت الفعلي لالتقاط البيانات من الطلب ، ويتم تخزين الاستجابة والبيانات في Amazon S3. يمكنك عرض البيانات التي تم التقاطها في جدول المراقبة السابق.
أنشئ خطًا أساسيًا
نستخدم نموذج BERT دقيقًا لاستخراج ميزات تضمين الجملة من بيانات التدريب. نحن نستخدم هذه المتجهات كمدخلات ميزة عالية الجودة لمقارنة مسافة جيب التمام لأن BERT تنتج تمثيلًا ديناميكيًا للكلمات مع السياق الدلالي. أكمل الخطوات التالية للحصول على تضمين الجملة:
- استخدم رمز BERT المميز للحصول على معرفات الرمز المميز لكل رمز مميز (
input_id
) في جملة الإدخال والقناع للإشارة إلى العناصر في تسلسل الإدخال هي الرموز المميزة مقابل عناصر الحشو (attention_mask_id
). نحن نستخدم BERTtokenizer.encode_plus
وظيفة للحصول على هذه القيم لكل جملة إدخال:
input_ids
و attention_mask_ids
يتم تمريرها إلى النموذج وجلب الحالات المخفية للشبكة. ال hidden_states
لها أربعة أبعاد بالترتيب التالي:
- رقم الطبقة (BERT بها 12 طبقة)
- رقم الدفعة (جملة واحدة)
- فهارس رمز كلمة
- الوحدات المخفية (768 ميزة)
- استخدم آخر طبقتين مخفيتين للحصول على متجه واحد (تضمين الجملة) عن طريق حساب متوسط جميع رموز الإدخال في الجملة:
- قم بتحويل تضمين الجملة كمصفوفة NumPy وتخزينها في موقع Amazon S3 كخط أساس يستخدمه Model Monitor:
نص التقييم
يوفر Model Monitor حاوية مسبقة الصنع مع القدرة على تحليل البيانات الملتقطة من نقاط النهاية لمجموعات البيانات المجدولة. إذا كنت تريد إحضار الحاوية الخاصة بك ، فإن Model Monitor يوفر نقاط امتداد يمكنك استخدامها. عندما تقوم بإنشاء ملف MonitoringSchedule
، يبدأ Model Monitor في النهاية مهام المعالجة. لذلك ، يجب أن تكون الحاوية على دراية بعقد عمل المعالجة. نحتاج إلى إنشاء برنامج نصي تقييم متوافق مع الحاوية مدخلات العقد و النتائج.
يستخدم Model Monitor رمز التقييم على جميع العينات التي تم التقاطها أثناء جدول المراقبة. لكل نقطة بيانات استدلال ، نحسب تضمين الجملة باستخدام نفس المنطق الموصوف سابقًا. يتم استخدام تشابه جيب التمام كمقياس مسافة لقياس تشابه نقطة بيانات الاستدلال ودمج الجملة في خط الأساس. رياضيًا ، يقيس زاوية جيب التمام بين متجهي تضمين جملتين. تشير درجة التشابه العالية لجيب التمام إلى حفلات زفاف مماثلة في الجملة. تشير درجة تشابه جيب التمام الأقل إلى انحراف البيانات. نحسب متوسط جميع درجات تشابه جيب التمام ، وإذا كانت أقل من الحد الأدنى ، يتم تسجيلها في تقرير الانتهاك. بناءً على حالة الاستخدام ، يمكنك استخدام مقاييس المسافة الأخرى مثل manhattan
or euclidean
لقياس التشابه في زخرفة الجملة.
يوضح الرسم البياني التالي كيف نستخدم SageMaker Model Monitoring لتحديد خط الأساس واكتشاف انحراف البيانات باستخدام تشابه مسافة جيب التمام.
فيما يلي رمز احتساب الانتهاكات ؛ البرنامج النصي الكامل للتقييم متاح على GitHub جيثب::
قياس انحراف البيانات باستخدام Model Monitor
في هذا القسم ، نركز على قياس انحراف البيانات باستخدام Model Monitor. يتم تشغيل الشاشات المبنية مسبقًا في Model Monitor بواسطة ديكو، وهي مكتبة مبنية على Apache Spark لتحديد اختبارات الوحدة للبيانات ، والتي تقيس جودة البيانات في مجموعات البيانات الكبيرة. لا تحتاج إلى ترميز للاستفادة من إمكانيات المراقبة المبنية مسبقًا. لديك أيضًا المرونة في مراقبة النماذج عن طريق الترميز لتوفير تحليل مخصص. يمكنك جمع ومراجعة جميع المقاييس المنبعثة من Model Monitor في أمازون ساجميكر ستوديو، حتى تتمكن من تحليل أداء النموذج بشكل مرئي دون كتابة تعليمات برمجية إضافية.
في سيناريوهات معينة ، على سبيل المثال عندما تكون البيانات غير مجدولة ، فإن مهمة المعالجة الافتراضية (مدعومة من ديكو) لا يكفي لأنه يدعم مجموعات البيانات المجدولة فقط. قد لا تكون الشاشات المبنية مسبقًا كافية لإنشاء مقاييس معقدة لاكتشاف الانجرافات ، وقد تستلزم إحضار المقاييس الخاصة بك. في الأقسام التالية ، نصف الإعداد لإحضار المقاييس الخاصة بك عن طريق إنشاء حاوية مخصصة.
قم ببناء حاوية Model Monitor المخصصة
نستخدم السيناريو التقييم من القسم السابق لبناء حاوية Docker ودفعها إلى سجل الأمازون المرنة للحاويات (أمازون ECR):
عندما تكون حاوية Docker الخاصة بالعميل في Amazon ECR ، يمكننا جدولة مهمة مراقبة النموذج وإنشاء تقرير بالمخالفات ، كما هو موضح في الأقسام التالية.
جدولة مهمة مراقبة النموذج
لجدولة مهمة مراقبة النموذج ، نقوم بإنشاء مثيل لـ Model Monitor وفي image_uri
، نشير إلى حاوية Docker التي أنشأناها في القسم السابق:
نقوم بجدولة مهمة المراقبة باستخدام create_monitoring_schedule
API. يمكنك جدولة مهمة المراقبة على أساس كل ساعة أو على أساس يومي. يمكنك تكوين الوظيفة باستخدام ملف destination
المعلمة ، كما هو موضح في الكود التالي:
لوصف وسرد جدول المراقبة وتشغيله ، يمكنك استخدام الأوامر التالية:
تقرير انتهاك انحراف البيانات
عند اكتمال مهمة مراقبة النموذج ، يمكنك الانتقال إلى مسار الوجهة S3 للوصول إلى تقارير الانتهاك. يحتوي هذا التقرير على جميع المدخلات التي متوسط درجات جيب التمام (avg_cosine_score
) أقل من الحد الذي تم تكوينه كمتغير بيئة THRESHOLD:0.5
في ال ModelMonitor نموذج. هذا مؤشر على أن البيانات التي لوحظت أثناء الاستدلال تنجرف إلى ما وراء خط الأساس المحدد.
يوضح الكود التالي تقرير الانتهاك الناتج:
أخيرًا ، بناءً على هذه الملاحظة ، يمكنك تكوين نموذجك لإعادة التدريب. يمكنك أيضًا تمكين خدمة إعلام أمازون البسيطة (Amazon SNS) لإرسال تنبيهات عند حدوث انتهاكات.
وفي الختام
يُمكّنك Model Monitor من الحفاظ على الجودة العالية لنماذجك في الإنتاج. في هذا المنشور ، سلطنا الضوء على التحديات المتعلقة بمراقبة انجراف البيانات على البيانات غير المهيكلة مثل النص ، وقدمنا نهجًا بديهيًا لاكتشاف انحراف البيانات باستخدام برنامج نصي مخصص للمراقبة. يمكنك العثور على الكود المرتبط بالمنشور فيما يلي مستودع جيثب. بالإضافة إلى ذلك ، يمكنك تخصيص الحل لاستخدام مقاييس المسافة الأخرى مثل الحد الأقصى لمتوسط التباين (MMD) ، مقياس مسافة غير حدودي لحساب التوزيع الهامشي بين توزيع المصدر والهدف على المساحة المضمنة.
حول المؤلف
فيكرام إيلانجو هو مهندس حلول متخصص في الذكاء الاصطناعي / التعلم الآلي في Amazon Web Services ، ومقرها في فرجينيا ، الولايات المتحدة الأمريكية. يساعد Vikram عملاء الصناعة المالية والتأمينية في التصميم والقيادة الفكرية لبناء ونشر تطبيقات التعلم الآلي على نطاق واسع. يركز حاليًا على معالجة اللغة الطبيعية ، والذكاء الاصطناعي المسؤول ، وتحسين الاستدلال وتوسيع ML عبر المؤسسة. في أوقات فراغه ، يستمتع بالسفر والتنزه والطهي والتخييم مع عائلته.
راغو راميشا هو مهندس حلول ML مع فريق Amazon SageMaker Service. يركز على مساعدة العملاء على ترحيل أعباء عمل إنتاج ML إلى SageMaker على نطاق واسع. وهو متخصص في مجالات التعلم الآلي والذكاء الاصطناعي ورؤية الكمبيوتر ، وهو حاصل على درجة الماجستير في علوم الكمبيوتر من جامعة UT Dallas. في أوقات فراغه يستمتع بالسفر والتصوير.
توني تشن هو مهندس حلول التعلم الآلي في Amazon Web Services ، مما يساعد العملاء على تصميم إمكانات تعلم آلي قوية وقابلة للتطوير في السحابة. بصفته عالم بيانات سابقًا ومهندس بيانات ، فقد استفاد من خبرته للمساعدة في معالجة بعض أكثر المشكلات تحديًا التي تواجهها المؤسسات مع تفعيل التعلم الآلي.
- '
- "
- 100
- 11
- 7
- من نحن
- الوصول
- حسابي
- في
- الإجراءات
- إضافي
- AI
- الكل
- سابقا
- بالرغم ان
- أمازون
- الأمازون SageMaker
- أمازون ويب سيرفيسز
- تحليل
- أباتشي
- أباتشي سبارك
- ذو صلة
- التطبيقات
- متاح
- المتوسط
- AWS
- خط الأساس
- الجسدي
- نساعدك في بناء
- ابني
- معدات التخييم
- الحالات
- سبب
- التحديات
- تغيير
- chatbots
- تصنيف
- سحابة
- الكود
- البرمجة
- جمع
- مجمع
- إحصاء
- علوم الكمبيوتر
- رؤية الكمبيوتر
- وعاء
- يحتوي
- متواصل
- عقد
- الطهي
- خلق
- العملاء
- دالاس
- البيانات
- جودة البيانات
- عالم البيانات
- تصميم
- كشف
- تطوير
- مختلف
- بحث
- مسافة
- عامل في حوض السفن
- حاوية عامل الميناء
- لا
- المجالات
- قيادة
- أثناء
- ديناميكي
- في وقت مبكر
- البريد الإلكتروني
- لقاء
- نقطة النهاية
- مهندس
- عربي
- مشروع
- البيئة
- أنشئ
- مثال
- الخبره في مجال الغطس
- الوجه
- للعائلات
- الميزات
- المميزات
- مالي
- الاسم الأول
- مرونة
- تركز
- ركز
- النموذج المرفق
- إلى الأمام
- مجانًا
- وظيفة
- توليد
- GitHub جيثب:
- وجود
- مساعدة
- يساعد
- مرتفع
- سلط الضوء
- المشي لمسافات طويلة
- الصفحة الرئيسية
- كيفية
- كيفية
- HTTPS
- صورة
- تنفيذ
- أهمية
- بما فيه
- العالمية
- معلومات
- التأمين
- قطاع التأمين
- IT
- وظيفة
- المشــاريــع
- ملصقات
- لغة
- كبير
- آخر
- تطلق
- القيادة
- تعلم
- مستوى
- روافع
- المكتبة
- علم اللغة
- قائمة
- أدب
- تحميل
- موقع
- آلة التعلم
- الترجمة الآلية
- قناع
- قياس
- المقاييس
- ML
- نموذج
- عارضات ازياء
- مراقبة
- الأكثر من ذلك
- اللغة الطبيعية
- معالجة اللغات الطبيعية
- شبكة
- البرمجة اللغوية العصبية
- إعلام
- عروض
- طلب
- المنظمات
- أخرى
- أداء
- تصوير
- دقة
- تنبؤ
- تنبؤات
- يقدم
- المشكلة
- الإنتــاج
- تنفيذ المشاريع
- تزود
- ويوفر
- بايثون
- pytorch
- جودة
- نطاق
- في الوقت الحقيقي
- واقع
- سجل
- تقرير
- التقارير
- استجابة
- النتائج
- إعادة التدريب
- عائدات
- عكس
- مراجعة
- يجري
- تشغيل
- sagemaker
- حجم
- التحجيم
- علوم
- الإستراحة
- خدمات
- خدمة
- طقم
- نقل
- مماثل
- الاشارات
- So
- الحلول
- الفضاء
- المساحات
- البريد المزعج
- تتخصص
- المحافظة
- تخزين
- متجر
- الدعم
- أنظمة
- الهدف
- تجربه بالعربي
- الاختبار
- اختبارات
- العالم
- فكر
- قيادة الفكر
- الوقت
- رمز
- الرموز
- تيشرت
- شعلة
- حركة المرور
- قادة الإيمان
- خدمات ترجمة
- الولايات المتحدة الأميركية
- المزيد
- فرجينيا
- افتراضي
- رؤية
- رؤيتنا
- انتظر
- الويب
- خدمات ويب
- ويكيبيديا
- بدون
- للعمل
- سير العمل
- العالم
- جاري الكتابة