التعلم المعزز باستخدام مسار وحيد!

التعلم من البرهان..

246

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

التعلم المعزز أو ما يعرف باسم ال”Reinforcement learning”  واختصارا ال RL هو فرع واعد جدا في الذكاء الاصطناعي ومستوحى بالأساس من علم النفس السلوكي وهو باختصار يهتم باختيار الوكلاء لمسار يحقق أكبر قدر من الربح لهم. وقد أظهرت إنجازاته الحديثة أن لديه إمكانية حل المشاكل بقدرات تقارب القدرات البشرية إن لم تكن تتعداها. مثل حل ألعاب الطاولة أو الBoard games   مثل الشطرنج والدومينو ولم يكتف بذلك فحسب بل أيضا أظهر تقدما واعدا في توقع هيكل البروتين بناء على ترتيبه الجيني و لعب ألعاب تعتمد على الاستجابة الفورية أو ما يسمي بال”real time games” في مستويات محترفين.

هذه الإنجازات تدل أن هناك إمكانية لاكتشاف استراتيجيات جديدة قريبة من التي يتمكن البشر من استخدامها وهو أمر مثير للاهتمام بكل تأكيد.

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

  • عندما لا يكون بإمكانك كتابة دالة ربح reward function لإرشاد الوكيل فعوضا عن ذلك نقوم بوضع خبير ليقوم بالإرشاد أثناء عملية التعلم أو إدخال بيانات تحمل معها تصرفات الخبراء في مواقف مشابهة والنتائج المترتبة عليها. بإمكانك تخيل مثال واضح وحيوي على شيء كهذا هو محاول تعلم صندوق الدعم “Support inbox”.

ففيه يحتاج الوكيل “”Agent إلى التفاعل مع الزبائن ومساعدتهم في مشاكلهم وبما أنه لا يمكنك نمذجة دالة ربح للزبائن فإنه لا يمكننا توظيف Rl      بالمواصفات العادية. عوضا عن ذلك نحتاج إلىRl  قادر بشكل ما على الاستفادة من خبرات البشر في المواقف المشابهة.

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

من المهم جدا أن نذكر هنا أن الخبير لا يلزم أن يكون بشرا. ربما نمتلك خوارزمية بحث أو تحسين   optimization   بإمكانها ببساطة حل المشكلة ولكنها فقط تستغرق وقتا أطول من المسموح به في التطبيقات التي تحتاج لاستجابة فورية أو real time application . وبالتالي نحتاج لموازنة وتقريب هذا الوقت باستخدام الشبكات العصبية Neural networks واختصارا ال NL في هذه الحالة يمكن لخوارزمية البحث توفير إثبات خبير للوكيل”Agent” أثناء عملية التعلم.

في الحقيقة تعلم الوكيلAgent  على يد بشر قد يكون تحديا حقيقيا فليس من المنطقي أن تعين طبيبا خبيرا مثلا للجلوس بجوار عميلك طوال الوقت لتقديم النصح له في حالة مواجهته لعقبات فعلى عكس الNL وقت البشر ثمين جدا ومن ثم سينتهي به المطاف يرشده فقط في نقاط قليلة مما سيضعف من كفاءة العملية.

محاكاة التعلم

برأيك كيف يمكننا استخدام برهان معطى من خبير لتعلم سياسة أو تكنيك معين؟!

ربما يخطر ببالك الطريق الأكثر وضوحا وهو جدولة البيانات المعطاة واستخدامها في التعلم الموجه أو “Supervised learning” لتجربة وتوقع التصرفات التي قد يقوم بها الخبير في نفس المواقف. إذ أن  التعلم الموجه أكثر قابلية للفهم عن الRL  وإذا كان بإمكان العميل توقع تصرفات الخبراء بدرجة جيدة فبإمكاننا تصور أنه سيتصرف في المواقف بشكل جيد أو على الأقل بدرجة مقاربة لدرجة الخبراء.

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

 

إذا كان هناك أي أمل في استخدام هذا النهج بشكل أكثر نجاحا فهو يعتمد بشكل رئيسي على استخدام كميات كبيرة جدا من البيانات مما يسمح بتغطية مدى واسع من الحالات، بيانات ربما لا تكون لدينا. وحتى إن كانت لدينا فإن استنساخ التصرفات _الأمر الذي نقوم به هنا_ يمكن اعتباره حالة بدائية initial state لخوارزمية تعليم معززRL أخرى والتي بدورها تستخدم لتسريع عملية التعلم.

بإمكان برنامج AlphaGo  الأصلي أن يكون مثالا قويا على ذلك فهو برنامج صمم خصيصا للعب لعبة  من ألعاب الألواح تسمى Go وبرغم بساطة الغرض إلا أنه يكفيك أن تعرف أن البيانات المستخدمة لتدريب هذا البرنامج كانت من 30 مليون خبير بشري! مجمعة جميعا من خلال الألعاب الأونلاين. وحديثا طور برنامج AlphaStar  مستخدما حلول اللاعبين في مستوى المحترفين وكلا البرنامجين تم تدريبهم فيما بعد بواسطة خوارزمية الRL.

التعلم من مسار واحد   

كثير من الأوراق البحثية عرضت خيار تعلم وكلاء الذكاء الاصطناعي من المسارات المرسومة بواسطة البشر في المشاكل الصعبة. وما يستخدموه كمقياس لمدى نجاح الأمر أو لا هو لعبة Zuma Revenge  الشهيرة وهي لعبة فيديو تعتمد في مكاسبها على التخطيط لأكثر من خطوة مستقبلية بسرعة وقد فشلت معظم خوارزميات الRl  العادية في تحقيق أي تقدم ولو صغير بها.

وقد نشرت ورقة بحثية مثيرة للاهتمام في هذا المجال بواسطة باحثين من Google’s DeepMind تدعى : “Playing Hard Exploration Games by Watching YouTube” في تلك الورقة قام الباحثون بجمع كثير من الفيديوهات الموجودة على اليوتيوب والتي تحتوي على تصوير للعب بعض اللاعبين وهم يلعبون لعبة Zuma ثم قاموا بتدريب شبكة عصبية لتوقع فرق التوقيت بين الإطارات المختلفة لنفس الحلقة أنتج هذا دمجًا له معنى لحالات اللعبة من مصادر مختلفة مع اختلافات بصرية مثل الألوان ودقة الفيديو مما جعل من الممكن تضمين بعض المكافئات الخيالية تمكن الوكيل من معرفة إن كان على المسار الصحيح أو لا.

على الرغم من أن هذا النهج يمثل استغلالا رائعا لمورد وفير كاليوتيوب إلا أنه قد لا يكون قابلا للتطبيق على مشكلات أخرى ليس لديها وفرة في البيانات بنفس القدر مثلا. مجموعة أخرى من الباحثين في شركة OpenAI تناولوا مثل هذه المشكلة في ورقة بحثية جديدة لهم تدعى “Learning Montezuma’s Revenge from a Single Demonstration”.

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

الفكرة ببساطة هي أنه عند إعادة تشغيله قبل نهاية المسار بقليل تكون مكافئته قريبة بالتالي يتمكن من رسم مسار مناسب للوصول إليها باستخدام خوارزمية الRL وعندما يتعلم المسار المناسب من هذه النقطة نقوم بإعادة تشغيله من نقطة تسبقها ونكرر العملية حتى ينتهي به الأمر يتعلم المسار كاملا بنفسه.

لتفهم سر عبقرية الفكرة دعنا نستعرض معا لعبة عرضها الباحثون في ورقتهم ” Blind Cliff Walk problem” في تلك اللعبة، يجب على الوكيل التنقل عبر منحدر أحادي الاتجاه كي يصل إلى مكان آمن، باستخدام إجراء من اثنين الإجراء الأول يتضمن التحرك إلى الأمام على طول الجرف والثاني يجعله يسقط ويموت. نفترض تواجد إعدادات مجدولة بحيث لا يمكن للوكيل أن يعمم الحالات بمعنى أنه لا يمكنه تعميم حالة واحدة كقاعدة لباقي الحالات، ومن ثم يجب أن يتعلم جدولًا يحدد الإجراء المتخذ لكل حالة.

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

كما أضاف الباحثون أن هذا يشبه لحد كبير البرمجة الديناميكية والتي فيها نقوم بحل المشكلة من النهاية وبالعودة للوراء حتى الوصول للبداية وتمهيد الحلول للمراحل الأخيرة للمساعدة في حل المراحل المبكرة بشكل أسرع. في الحقيقة في البرمجة الديناميكية نلاحظ نقصا ملحوظا في التعقيد الحسابي computational complexity للمشكلة عند اتباع هذا النهج في مشاكل مثل إيجاد المسار الأقصر في الرسوم البيانية مثلا كالصورة الموضحة :

https://cdn-images-1.medium.com/max/800/1*nUodo_ptYKI_COhuInXF9Q.png

استخدم الباحثون هذا النهج في لعبة   Zuma وحصلوا على أحدث النتائج في ذلك الوقت متغلبين بذلك على ورقة Deepmind وباستخدام بيانات أقل.

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

ومع هذا فإن كانت هذه الطريقة قابلة للتطبيق فإن تمتلك ميزتين رئيسيتين :

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

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

مصدر مصدر1 مصدر2 مصدر3
تعليقات