مقدمة لقطاع الطرق متعدد الأذرع

عرض على TensorFlow.org تشغيل في Google Colab عرض المصدر على جيثب تحميل دفتر

مقدمة

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

ربما أنقى مثال على ذلك هو المشكلة التي قدمت اسمها إلى MAB: تخيل أن نواجه k ماكينات القمار (العصابات المسلحة واحدة)، ونحن بحاجة لمعرفة أي واحد لديه أفضل دفع تعويضات، في حين لا يخسر الكثير من المال.

قطاع الطرق متعدد الأذرع

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

تتضمن الأمثلة الأكثر عملية لـ MAB جزءًا من المعلومات الجانبية في كل مرة يتخذ فيها المتعلم قرارًا. نحن نسمي هذه المعلومات الجانبية "السياق" أو "الملاحظة".

قطاع الطرق متعددي الأسلحة والتعلم المعزز

لماذا توجد مجموعة MAB في مكتبة TF-Agents؟ ما هي العلاقة بين RL و MAB؟ يمكن اعتبار قطاع الطرق متعدد الأذرع حالة خاصة من التعلم المعزز. على حد تعبير مقدمة إلى RL :

في كل خطوة الوقت، وكيل يأخذ العمل على البيئة على أساس سياستها \(\pi(a_t|s_t)\)، حيث \(s_t\) هو المراقبة الحالية من البيئة، ويحصل على مكافأة \(r_{t+1}\) ومراقبة المقبلة \(s_{t+1}\) من البيئة . الهدف هو تحسين السياسة لتعظيم مجموع المكافآت (العائد).

في حالة RL العامة، الملاحظة التالية \(s_{t+1}\) يعتمد على سابقة دولة \(s_t\) والعمل \(a_t\) من السياسات المتخذة. هذا الجزء الأخير هو ما يفصل MAB عن RL: في MAB ، الحالة التالية ، وهي الملاحظة ، لا تعتمد على الإجراء الذي اختاره الوكيل.

يتيح لنا هذا التشابه إعادة استخدام جميع المفاهيم الموجودة في وكلاء TF.

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

بيئة الفطر

لأغراض التوضيح ، نستخدم مثال لعبة يسمى "بيئة الفطر". مجموعة البيانات الفطر ( Schlimmer، 1981 ) ويتكون من الأمثلة وصفت من الفطر الصالح للأكل والسامة. تشمل الميزات الأشكال والألوان والأحجام لأجزاء مختلفة من الفطر ، بالإضافة إلى الرائحة وغيرها الكثير.

فطر

يمكن تحويل مجموعة بيانات الفطر ، تمامًا مثل جميع مجموعات بيانات التعلم الخاضعة للإشراف ، إلى مشكلة MAB السياقية. نحن نستخدم طريقة تستخدم أيضا من قبل ريكيلمي وآخرون. (2018) . في هذا التحويل ، يتلقى الوكيل ميزات الفطر ، ويقرر أن يأكله أم لا. ينتج عن تناول الفطر الصالح للأكل مكافأة قدرها +5 ، في حين أن تناول الفطر السام سيعطي إما +5 أو -35 باحتمالية متساوية. عدم تناول الفطر ينتج عنه صفر مكافأة بغض النظر عن نوع الفطر. يلخص الجدول التالي مهام المكافآت:

           | edible | poisonous
-----------|--------|----------
eating it  |     +5 | -35 / +5
leaving it |      0 |        0

وكيل LinUCB

يتطلب الأداء الجيد في بيئة العصابات السياقية تقديرًا جيدًا لوظيفة المكافأة لكل إجراء ، بالنظر إلى الملاحظة. أحد الاحتمالات هو تقدير دالة المكافأة بوظائف خطية. وهذا هو، لكل فعل \(i\)، ونحن نحاول العثور على المعلمة \(\theta_i\in\mathbb R^d\) التي التقديرات

\(r_{t, i} \sim \langle v_t, \theta_i\rangle\)

أقرب ما يكون إلى الواقع. هنا \(v_t\in\mathbb R^d\) هو السياق تلقى في وقت خطوة \(t\). ثم، إذا كان وكيل واثق جدا في تقديراتها، ويمكن اختيار \(\arg\max_{1, ..., K}\langle v_t, \theta_k\rangle\) للحصول على أعلى مكافأة المتوقع.

كما هو موضح أعلاه ، فإن مجرد اختيار الذراع بأفضل مكافأة مقدرة لا يؤدي إلى استراتيجية جيدة. هناك العديد من الطرق المختلفة لخلط الاستغلال والتنقيب في وكلاء مقدر الخطي، واحدة من الاكثر شهرة هو الثقة الخطي العليا ملزمة (LinUCB) خوارزمية (انظر على سبيل المثال لي وآخرون 2010 ). يحتوي LinUCB على كتلتين أساسيتين (مع حذف بعض التفاصيل):

  1. فإنه يحافظ على تقديرات للمعلمات من كل ذراع مع الخطي المربعات: \(\hat\theta_i\sim X^+_i r_i\)، حيث \(X_i\) و \(r_i\) هي السياقات ومزايا جولات مكدسة حيث ذراع \(i\) تم اختياره، و \(()^+\) هو معكوس الزائفة .
  2. فإنه يحافظ على القطع الناقص الثقة التي حددها معكوس التغاير \(X_i^\top X_i\) للتقديرات الواردة أعلاه.

الفكرة الرئيسية لـ LinUCB هي فكرة "التفاؤل في مواجهة عدم اليقين". يدمج الوكيل الاستكشاف عن طريق زيادة التقديرات بمقدار يتوافق مع تباين تلك التقديرات. هذا هو المكان الذي تأتي القطع الناقص الثقة في الصورة: لكل ذراع، وتقدير متفائل هو \(\hat r_i = \max_{\theta\in E_i}\langle v_t, \theta\rangle\)، حيث \(E_i\) هو الإهليلجي حول \(\hat\theta_i\). ويختار وكيل أفضل تبحث الذراع \(\arg\max_i\hat r_i\).

بالطبع الوصف أعلاه هو مجرد ملخص بديهي ولكنه سطحي لما يفعله LinUCB. يمكن العثور على تنفيذها في مصدر برنامج لدينا هنا

ماذا بعد؟

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