استخدام وضع المبتدئ لتدريب Personalizer دون التأثير على تطبيقك الحالي

هام

اعتبارا من 20 سبتمبر 2023، لن تتمكن من إنشاء موارد Personalizer جديدة. يتم إيقاف خدمة Personalizer في 1 أكتوبر 2026.

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

ما وضع المبتدئ؟

على غرار كيف يمكن للمتدرب تعلم حرفة من خلال مراقبة خبير، يمكن وضع المبتدئ Personalizer من التعلم من خلال مراقبة القرارات التي يتخذها المنطق الحالي لتطبيقك. يتدرب نموذج Personalizer عن طريق محاكاة نفس ناتج القرار مثل التطبيق. مع كل استدعاء لـ Rank API، يمكن لـ Personalizer التعلم دون التأثير على المنطق والنتائج الحالية. تساعدك المقاييس، المتوفرة من مدخل Microsoft Azure وواجهة برمجة التطبيقات، على فهم الأداء كما يتعلم النموذج. على وجه التحديد، مدى مطابقة تخصيص المنطق الموجود (المعروف أيضا باسم نهج الأساس).

بمجرد أن يتمكن Personalizer من مطابقة المنطق الحالي 60-80٪ من الوقت بشكل معقول، يمكنك تغيير السلوك من وضع المبتدئ إلى الوضع عبر الإنترنت. في ذلك الوقت، يقوم Personalizer بإرجاع أفضل الإجراءات في واجهة برمجة تطبيقات Rank كما يحددها النموذج الأساسي ويمكنه معرفة كيفية اتخاذ قرارات أفضل من نهج الأساس الخاص بك.

لماذا تستخدم وضع المبتدئ؟

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

السببان الرئيسيان لاستخدام وضع المبتدئ هما:

  • التخفيف من البدايات الباردة: يساعد وضع المبتدئ على التخفيف من تكلفة تدريب نموذج "جديد" في الإنتاج من خلال التعلم دون الحاجة إلى اتخاذ قرارات غير متعلمة. يتعلم النموذج محاكاة منطق التطبيق الحالي.
  • التحقق من صحة ميزات الإجراء والسياق: قد تكون ميزات السياق والعمل غير كافية أو غير دقيقة أو دون المستوى الأمثل. إذا كانت هناك ميزات قليلة جدًا أو كثيرة جدًا أو غير صحيحة أو صاخبة أو مشوهة، فستواجه Personalize صعوبة في تدريب نموذج جيد الأداء. يمكنك إجراء تقييم للميزات أثناء العمل في وضع المبتدئ من اكتشاف مدى فعالية الميزات في تدريب Personalizer ويمكنه تحديد مجالات لتحسين جودة الميزات.

متى يجب استخدام وضع المبتدئ؟

استخدم وضع المبتدئ لتدريب Personalizer لتحسين فعاليته من خلال السيناريوهات التالية مع ترك تجربة المستخدمين غير متأثرة بـ Personalizer:

  • أنت تقوم بتنفيذ Personalizer في سيناريو جديد.
  • لقد أجريت تغييرات رئيسية على ميزات السياق أو الإجراء.

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

من يجب أن يستخدم وضع المبتدئ؟

يُفيد وضع المبتدئ المطورين وعلماء البيانات وصناع القرار في الأعمال:

  • يمكن للمطورين استخدام وضع المبتدئ لضمان تنفيذ واجهات برمجة التطبيقات Rank and Reward بشكل صحيح في التطبيق، وأن الميزات التي يتم إرسالها إلى Personalizer خالية من الأخطاء والأخطاء الشائعة. تعرف على المزيد حول إنشاء ميزات سياق وإجراء جيدة.

  • يمكن لعلماء البيانات استخدام وضع المبتدئ للتحقق من أن الميزات فعالة في تدريب نماذج Personalizer. أي أن الميزات تحتوي على معلومات مفيدة تسمح ل Personalizer بمعرفة منطق القرار الحالي.

  • يمكن لصانعي القرار في الأعمال استخدام وضع المبتدئ لتقييم إمكانات Personalizer لتحسين النتائج (أي المكافآت) مقارنة بمنطق الأعمال الحالي. على وجه التحديد، ما إذا كان يمكن لـ Personalizer التعلم من البيانات المتوفرة قبل الانتقال إلى الوضع عبر الإنترنت أم لا. وهذا يسمح لهم لاتخاذ قرار مستنير حول التأثير على تجربة المستخدم، حيث تكون الإيرادات الحقيقية ورضا المستخدم على المحك.

مقارنة السلوكيات - وضع المبتدئ ووضع المتصل

يختلف التعلّم عندما يكون في وضع المبتدئ عن وضع المتصل بالطرق التالية.

المساحة Apprentice mode وضع المتصل
التأثير على تجربة المستخدم لن تتغير تجربة المستخدمين ومقاييس الأعمال. يتم تدريب Personalizer من خلال مراقبة الإجراءات الأساسية لمنطق التطبيق الحالي، دون التأثير عليها. قد تتغير تجربة المستخدمين لديك حيث يتم اتخاذ القرار بواسطة Personalizer وليس الإجراء الأساسي الخاص بك.
سرعة التعلم سيتعلم Personalizer ببطء أكبر عندما يكون في وضع المبتدئ مقارنة بالتعلم في الوضع عبر الإنترنت. يمكن أن يتعلم وضع المبتدئ فقط من خلال مراقبة المكافآت التي تم الحصول عليها من خلال الإجراء الافتراضي دون استكشاف، ما يحد من مقدار ما يمكن أن يتعلمه Personalizer. يتعلم بشكل أسرع لأنه يمكنه استغلال أفضل إجراء من النموذج الحالي واستكشاف الإجراءات الأخرى للحصول على نتائج محتملة أفضل.
فعالية التعلم "الحد الأقصى" يمكن أن يقوم Personalizer فقط بتقريب أداء المنطق الحالي للتطبيق الخاص بك ولا يتجاوزه أبدا (متوسط المكافأة الإجمالية التي حققها الإجراء الأساسي). من غير المحتمل أن يحقق Personalizer تطابقا بنسبة 100٪ مع منطق التطبيق الحالي، ويوصى بمجرد تحقيق مطابقة بنسبة 60٪-80٪، يجب تبديل Personalizer إلى الوضع عبر الإنترنت. يجب أن يتجاوز Personalizer أداء منطق التطبيق الأساسي. إذا توقف أداء Personalizer بمرور الوقت، يمكنك إجراء تقييم دون اتصال وتقييم الميزات لمتابعة تحسينات إضافية.
القيمة المرجعة لتصنيف واجهة برمجة التطبيقات لـ rewardActionId سيكون rewardActionId دائمًا معرف الإجراء الافتراضي. أي، الإجراء الذي ترسله باعتباره الإجراء الأول في طلب Rank API JSON. بمعنى آخر، لا تقوم Rank API بأي شيء مرئي لتطبيقك أثناء وضع المبتدئ. سيكون rewardActionId أحد المعرفين المقدمين في استدعاء Rank API كما يحدده نموذج Personalizer.
التقييمات يحتفظ Personalizer بمقارنة إجمالي المكافآت التي يتلقاها منطق التطبيق الحالي الخاص بك، وسيحصل Personalizer على إجمالي المكافآت إذا كان في وضع متصل في تلك المرحلة. تتوفر هذه المقارنة لعرضها في جزء Monitor لمورد Personalizer في مدخل Microsoft Azure. قيّم فعالية Personalizer من خلال تشغيل التقييمات دون اتصال، والتي تتيح لك مقارنة إجمالي المكافآت التي حققها Personalizer مقابل المكافآت المحتملة لأساس التطبيق.

لاحظ أنه من غير المحتمل أن يحقق Personalizer تطابق أداء بنسبة 100٪ مع منطق الأساس للتطبيق، ولن يتجاوزه أبدا. يجب أن تكون مطابقة الأداء بنسبة 60٪-80٪ كافية لتبديل Personalizer إلى الوضع عبر الإنترنت، حيث يمكن ل Personalizer معرفة قرارات أفضل وتجاوز أداء منطق الأساس للتطبيق الخاص بك.

قيود وضع المبتدئ

يدرب "وضع المبتدئ" نموذج Personalizer من خلال محاولة تقليد المنطق الأساسي للتطبيق الحالي، باستخدام ميزات السياق والعمل الموجودة في استدعاءات Rank. ستؤثر العوامل التالية على قدرة وضع المبتدئ على التعلم.

السيناريوهات التي قد لا يكون فيها وضع المبتدئ مناسباً:

المحتوى المُختار تحريرياً:

في بعض السيناريوهات مثل الأخبار أو الترفيه، يمكن تعيين العنصر الأساسي يدويا من قِبل فريق تحرير. هذا يعني أن البشر يستخدمون معرفتهم حول العالم الأوسع، وفهم ما قد يكون محتوى جذاباً، لاختيار مقالات أو وسائط محددة من مجموعة، والإشارة إليها على أنها مقالات "مفضلة" أو "أسطورية". لأن هذه المحررات ليست خوارزمية، ويمكن أن تكون العوامل التي يعتبرها المحررون ذاتية وربما غير مرتبطة بميزات السياق أو الإجراء. في هذه الحالة، قد يواجه وضع المبتدئ صعوبة في التنبؤ بالإجراء الأساسي. في هذه الحالات يمكنك:

  • اختبار Personalizer في الوضع عبر الإنترنت: ضع في اعتبارك وضع Personalizer في الوضع عبر الإنترنت للوقت أو في اختبار A/B إذا كانت لديك البنية الأساسية، ثم قم بتشغيل تقييم غير متصل لتقييم الفرق بين منطق الأساس للتطبيق و Personalizer.
  • أضف اعتبارات وتوصيات تحريرية كميزات: اسأل المحررين عن العوامل التي تؤثر على اختياراتهم، وتحقق مما إذا كان يمكنك إضافة هذه الميزات كميزات في السياق والإجراء. على سبيل المثال، قد يسلط المحررون في شركة وسائط الضوء على المحتوى عندما يكون أحد المشاهير في كثير من الأحيان في الأخبار: يمكن إضافة هذه المعرفة كميزة سياق.

العوامل التي من شأنها تحسين وضع المبتدئ وتسريعه

إذا كان وضع المبتدئ يتعلم ويحقق أداء مطابقا فوق الصفر، ولكن الأداء يتحسن ببطء (لا يصل إلى 60٪ إلى 80٪ من المكافآت المتطابقة في غضون أسبوعين)، فمن الممكن أن يتم إرسال القليل جدا من البيانات إلى Personalizer. قد تساعد الخطوات التالية في تسهيل التعلم الأسرع:

  1. إضافة ميزات تمييزية: يمكنك إجراء فحص مرئي للإجراءات في استدعاء Rank وميزاته. هل يحتوي الإجراء الأساسي على ميزات تمييزية عن الإجراءات الأخرى؟ إذا كانت تبدو متشابهة في الغالب، أضف المزيد من الميزات التي ستزيد من تنوع قيم الميزات.
  2. تقليل الإجراءات لكل حدث: سيستخدم Personalizer إعداد "النسبة المئوية لاستدعاءات Rank لاستخدامها في الاستكشاف" لاكتشاف التفضيلات والاتجاهات. عندما يكون لاستدعاء Rank المزيد من الإجراءات، تقل فرصة اختيار أي إجراء معين للاستكشاف. يمكن أن يكون تقليل عدد الإجراءات المرسلة في كل استدعاء Rank إلى رقم أصغر (أقل من 10) تعديلاً مؤقتًا قد يشير إلى ما إذا كان وضع المتدرب لديه بيانات كافية للتعلم أم لا.

استخدام وضع المبتدئ للتدريب مع البيانات التاريخية

إذا كان لديك قدر كبير من البيانات التاريخية التي ترغب في استخدامها لتدريب Personalizer، فيمكنك استخدام وضع المبتدئين لإعادة تشغيل البيانات من خلال Personalizer.

أعد Personalizer في وضع المبتدئ وأنشئ برنامجاً نصياً يستدعي Rank مع الإجراءات وميزات السياق من بيانات المحفوظات. استدعاء واجهة برمجة تطبيقات Reward استناداً إلى حسابات السجلات في هذه البيانات. قد تحتاج إلى ما يقرب من 50000 حدث تاريخي لرؤية Personalizer يحقق تطابقا بنسبة 60-80٪ مع منطق الأساس للتطبيق الخاص بك. قد تتمكن من تحقيق نتائج مرضية مع أحداث أقل أو أكثر.

عند التدريب من البيانات التاريخية، يوصى بأن تتطابق البيانات المرسلة في [ميزات السياق والإجراءات، وتخطيطها في JSON المستخدم لطلبات الرتبة، وحساب المكافأة في مجموعة بيانات التدريب هذه]، مع البيانات [ميزات وحساب المكافأة] المتوفرة من تطبيقك الحالي.

تميل البيانات غير المتصلة والسابقة إلى أن تكون أكثر اكتمالا و noisier ويمكن أن تختلف في التنسيق عن سيناريو الإنتاج (أو عبر الإنترنت). في حين أن التدريب من البيانات التاريخية ممكن، قد تكون النتائج من القيام بذلك غير حاسمة ولا تعد بالضرورة مؤشرا جيدا لمدى جودة تعلم Personalizer في الوضع عبر الإنترنت، خاصة إذا كانت الميزات تختلف بين البيانات التاريخية والسيناريو الحالي.

استخدام "وضع المبتدئ" مقابل اختبارات A/B

من المفيد فقط إجراء اختبارات A/B لعلاجات Personalizer بمجرد التحقق من صحتها والتعلم في الوضع عبر الإنترنت، نظرا لأنه في وضع المبتدئ، يتم استخدام الإجراء الأساسي فقط، ويتم تعلم المنطق الحالي. وهذا يعني أساسا أن Personalizer يعيد عمل ذراع "التحكم" لاختبار A/B الخاص بك، ومن ثم فإن اختبار A/B في وضع المبتدئ ليس له قيمة.

بمجرد أن يكون لديك حالة استخدام باستخدام Personalizer والتعلم عبر الإنترنت، يمكن أن تسمح لك تجارب A/B بإنشاء مجموعات خاضعة للرقابة وإجراء مقارنات النتائج التي قد تكون أكثر تعقيدا من الإشارات المستخدمة للمكافآت. مثال على السؤال الذي يمكن أن يجيب عليه اختبار A/B هو: "في موقع ويب البيع بالتجزئة، يحسن Personalizer التخطيط ويحصل على المزيد من المستخدمين لسحبه في وقت سابق، ولكن هل يقلل هذا من إجمالي الإيرادات لكل معاملة؟"

الخطوات التالية