قراءة
وضع القصص

متى ينتصر التطور — ومتى يخسر

~١٥ دقيقة قراءة الدرس 4 من 4 في الوحدة 13

حيث تستحق الخوارزمية الجينية كلفتها، وحيث توجد طريقة أرخص أصلًا، وحجة الكلفة التي تحسم معظم ذلك.

السؤال الصادق

صاغ الدرس 13.1 التطور كـاستراتيجية بحث لا كصنف من النماذج، وهذه الصياغة تحسم هذا الدرس كله. فالسؤال ليس أبدًا «هل الخوارزمية الجينية جيدة؟» — بل «هل في مسألتي بنية يمكن لطريقة أرخص أن تستغلها، وهل أتجاهلها؟» لا تطلب الخوارزمية الجينية من المسألة شيئًا تقريبًا: لا مشتقات، ولا تحدُّب، ولا اتصالية، ولا حتى تمثيلًا عدديًّا. وهذه العمومية هي بالضبط سبب بطئها. فأنت تدفع ثمن كل افتراض ترفض أن تفترضه.

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

إذا كان الهدف قابلًا للاشتقاق، فاستخدم التدرج

هذه أهم قاعدة في الوحدة، وهي عبارة عن كمّ المعلومات لكل وحدة حساب لا عن الأناقة. فعندما تكون دالة الخسارة قابلة للاشتقاق بالنسبة إلى معاملاتها، يحسب الانتشار الخلفي (الدرس 6.3) المشتقة الجزئية الدقيقة بالنسبة إلى كل معامل في تمريرة خلفية واحدة، بكلفة من رتبة تمريرة أمامية واحدة تقريبًا.

ما تُرجعه تمريرة خلفية واحدة
\nabla_{\boldsymbol{\theta}} L = \left[\frac{\partial L}{\partial \theta_1}, \; \frac{\partial L}{\partial \theta_2}, \; \ldots, \; \frac{\partial L}{\partial \theta_d}\right]
كل المكونات d في وقت واحد، ويخبرك كل منها بالاتجاه الذي يجب تحريك ذلك المعامل إليه وبمقدار قوته. أما الطريقة القائمة على المجتمع فتحصل مقابل P تقييمًا على P عددًا قياسيًّا، ثم عليها استنباط اتجاه في d بعدًا منها.

وفي شبكة بملايين المعاملات ليس هذا الفرق فرقًا في الدرجة. فتطوير أوزان شبكة كبيرة بقيم الملاءمة وحدها يعني التخلي عن معلومات المشتقة التي بُني النموذج لتوفيرها. وإذا كان الهدف قابلًا للاشتقاق — وكل دوال الخسارة في الوحدات 2 و6 و7 و8 و9 كذلك — فالتدرج ليس مجرد الخيار الأسرع، بل هو الخيار الذي يستفيد من معرفتك.

حجة الكلفة في سطر واحد

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

الميزانية التي تلتزم بها
N_{\text{eval}} = P \cdot G, \qquad T_{\text{wall}} \approx \frac{P \cdot G \cdot t_{\text{eval}}}{K}
الحساب نفسه الوارد في الدرس 13.3. وحين يكون التقييم الواحد نفسه تدريبًا كاملًا لنموذج، يصبح P وG معاملَي ضرب على تلك الكلفة — ولهذا تهتم الأقسام أدناه كثيرًا بمدى غلاء التقييم الواحد.

البحث عن المعاملات الفائقة

المعاملات الفائقة غير قابلة للاشتقاق بأي صورة نافعة، وهي تخلط خيارات مستمرة ومنفصلة وشرطية، وكل تقييم فيها تدريب كامل. وهذا صندوق أسود حقيقي، فالخوارزمية الجينية مقبولة هنا على الأقل — وهذا ليس نفس القول بأنها الأداة الصحيحة. وقد درّس الدرس 10.2 البدائل من قبل؛ والغرض من هذا القسم هو وضع التطور بصدق بينها.

الطريقةكيف تختار النقطة التاليةالتوازيما تطلبه منك
البحث الشبكي يُعدّد شبكة مثبّتة قبل أول تشغيل متوازٍ تمامًا شبكة، وأبعاد قليلة بما يكفي لتكون محتملة الكلفة
البحث العشوائي يعاين من مديات تحددها، ويتجاهل كل النتائج متوازٍ تمامًا مديات وتوزيعات معقولة
التحسين البايزي يلائم نموذجًا بديلًا لكل النتائج ثم يُحسّن دالة اكتساب متسلسل بحكم التصميم؛ والدفعات تحتاج آلية إضافية فضاء بحث يستطيع النموذج البديل تمثيله
الخوارزمية الجينية تعيد تركيب وتُطفّر الأفضل في المجتمع الحالي متوازٍ تمامًا داخل الجيل ترميز، ومُشغِّلات تحترمه

ثلاث ملاحظات على مستوى الآلية، وبلا أي دعوى — عن قصد — بشأن أيّها يفوز:

والخطوة الأولى الصادقة قبل كل هذا: لعدد قليل من المعاملات الفائقة، يبقى البحث العشوائي على مديات معقولة خيارًا افتراضيًّا قويًّا. فقد أظهر Bergstra وBengio (2012) أن البحث العشوائي يجد تهيئات جيدة كالبحث الشبكي أو أفضل منه للميزانية نفسها، لأن معظم فضاءات المعاملات الفائقة ذات بُعد فعّال منخفض. فلا تبدأ بطريقة قائمة على المجتمع لمسألة تحسمها مئة تجربة عشوائية.

اختيار الميزات كبحث في المجموعات الجزئية

اختيار أيٍّ من d ميزة نُبقيه يلائم طبعًا الترميز الثنائي في الدرس 13.2: بتّة لكل ميزة، وسلسلة لكل مجموعة جزئية مرشحة. وفضاء البحث هو كل المجموعات الجزئية.

فضاء المجموعات الجزئية والملاءمة
|\mathcal{S}| = 2^{d}, \qquad F(S) = \mathrm{CV}(S) - \alpha \cdot \frac{|S|}{d}
مع 50 ميزة يزيد عدد المجموعات الجزئية على 10 مرفوعة للقوة 15، فالتعداد مستبعد. والملاءمة نتيجة تحقّق متهجين مع عقوبة على إبقاء الميزات، إذ إن مجموعة جزئية تحصل على النتيجة نفسها بأعمدة أقل هي المجموعة الأفضل.

هذه طريقة مُغلِّفة: الملاءمة هي أداء النموذج الفعلي، فتستطيع إيجاد تركيبات من الميزات لا تنفع إلا مجتمعة — وهو ما لا يستطيع مُرشِّح يُرتّب كل ميزة على حدة أن يراه. وهي تعني أيضًا أن كل تقييم تحقّق متهجين كامل، وهذا يضع حساب الكلفة في الدرس 13.3 في موضع القيادة تمامًا.

الفخ: الإفراط في ملاءمة نتيجة التحقق

أنت على وشك اختيار الحد الأقصى لعشرات آلاف نتائج تحقّق متهجين ضجيجية. وستبدو المجموعة الجزئية الفائزة أفضل مما هي عليه، لأن بعض تفوقها الظاهر هو حظ في تلك الطيّات بالذات. فاحجز مجموعة اختبار لا يلمسها البحث أبدًا وأبلِغ عن الرقم النهائي عليها — وهو الانتظام نفسه الذي يُصرّ عليه الدرسان 1.4 و10.2، وهو أهم هنا لأن البحث يُقيّم نتيجة التحقق مرات كثيرة جدًّا.

وبدائل أرخص عليك استبعادها أولًا: تنظيم L1 يدفع المعاملات إلى الصفر تمامًا كأثر جانبي لملاءمة نموذج واحد (الدرس 2.3)؛ وأهمية الميزات المبنية على الأشجار وأهمية التبديل تأتيان شبه مجانًا من نموذج دربته أصلًا (الدرس 3.2)؛ والاختيار الطمّاع الأمامي أو الخلفي يكلّف من رتبة d تربيع تقييمًا لا بحثًا كاملًا بمجتمع. وتستحق الخوارزمية الجينية الكلفة الإضافية حين تتفاعل الميزات بقوة تكفي لأن يتعثّر المسار الطمّاع.

التطور العصبي

التطور العصبي يعني تطوير الشبكات العصبية، وهو ينقسم إلى مهمتين مختلفتين تمامًا.

تطوير الأوزان

رمّز الأوزان كمتجه حقيقي القيم وانتقِ على الأداء. وبحكم حجة التدرج أعلاه، هذا هو الخيار الخاطئ حين توجد دالة خسارة قابلة للاشتقاق — أي في معظم التعلّم الموجَّه. ويصبح معقولًا بالضبط حين لا توجد واحدة: حين تكون التغذية الراجعة الوحيدة هي نتيجة محاكاة أو لعبة، أو حين تصل المكافأة بعد الأفعال التي استحقتها بوقت طويل، أو حين يمرّ مُخرَج الشبكة بشيء غير قابل للاشتقاق قبل ظهور النتيجة. ولاحظ أن الوحدة 14 تهاجم الصنف نفسه من المسائل بالتعلّم المعزَّز، وهو يبني تقديرًا للتدرج من المكافأة، فالتطور خيار هناك لا الخيار الوحيد.

تطوير المعمارية

الطوبولوجيا منفصلة: كم طبقة، وبأي عرض، وأي الوصلات موجودة. ولا يتوفر تدرج بالنسبة إلى تلك الخيارات، فالبحث هو المقاربة الصادقة والتطور يلائمها طبعًا. وNEAT — من Stanley وMiikkulainen (2002)، Evolving Neural Networks through Augmenting Topologies — يُطوّر أوزان الوصلات والطوبولوجيا معًا، وأفكاره الثلاث المعروفة يحل كل منها مسألة محددة تظهر بمجرد أن تصبح البنية قابلة للتغيير:

الانحدار الرمزي والبرمجة الجينية

في البرمجة الجينية يكون الفرد برنامجًا لا متجهًا. ويُمثّل Koza (1992) في Genetic Programming: On the Programming of Computers by Means of Natural Selection البرامج كأشجار تعبير على مجموعة مختارة من الدوال والأطراف؛ ويبادل التهجين الأشجار الفرعية بين أبوين، وتستبدل الطفرة شجرة فرعية بأخرى جديدة. ولأن المُشغِّلات تعمل على الأشجار، يبقى المرشح برنامجًا صالحًا — وهي فكرة الحفاظ على الجدوى من الدرس 13.3، مطبَّقة على الشيفرة.

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

ضغط الاقتصاد في الحجم
F(p) = -\,\mathrm{error}(p) \; - \; \beta \cdot \mathrm{size}(p)
تنزع الأشجار إلى النمو على مدى التشغيل دون تحسّن في الملاءمة — ويُعرف ذلك بالتضخّم — وتعبير هائل الحجم يُبطل الغرض من استخدام هذه الطريقة أصلًا. والتحصيل على الحجم هو الإجراء المضاد المعتاد؛ ويحدد المعامل بيتا مقدار الدقة الذي تقبل مقايضته بقابلية القراءة.

متى لا تلجأ إلى خوارزمية جينية

قائمة قرار

  1. هل أستطيع اشتقاق الهدف؟ إن كان الجواب نعم، فتوقف هنا واستخدم التدرج.
  2. هل تطابق المسألة صنفًا محلولًا؟ محدَّبة، خطية، برنامج أعداد صحيحة، مسألة بيانية — استخدم الطريقة المخصصة واحصل على ضمانة.
  3. هل الفضاء صغير بما يكفي للتعداد، أو للحسم ببحث عشوائي؟ جرّب الرخيص أولًا، وأبقِه الخط الأساسي الذي يجب أن يتفوق عليه البحث.
  4. كم يكلّف التقييم الواحد، وكم تقييمًا أستطيع تحمّله؟ القليل جدًّا والمكلف جدًّا يرجّح طريقة نموذج بديل؛ والكثير الرخيص المتوازي يرجّح مجتمعًا.
  5. هل تمثيلي غير مريح — طول متغير، شرطي، تباديل، أشجار؟ هنا يكون التطور مرتاحًا فعلًا وتحتاج الطرائق الأخرى إلى سقالات إضافية.
  6. هل أثق بدالة الملاءمة؟ أعِد قراءة الدرس 13.3 قبل صرف الميزانية.
  7. هل ثبّتت الخط الأساسي الصادق؟ بحث عشوائي بميزانية التقييمات نفسها. أبلِغ عن الاثنين، وإلا فالمقارنة لا تعني شيئًا.
أهم النقاط

لا تفترض الخوارزمية الجينية شيئًا تقريبًا عن المسألة، وتدفع ثمن هذه العمومية بالتقييمات. وإذا كان الهدف قابلًا للاشتقاق فاستخدم التدرج: تمريرة خلفية واحدة تعطي المشتقة الدقيقة لكل معامل، بينما P تقييمًا تعطي P عددًا قياسيًّا. والتطور مقبول للبحث عن المعاملات الفائقة، لكن قارنه بصدق بالبحث الشبكي والعشوائي والبايزي (الدرس 10.2) — فالتحسين البايزي يستخلص أكثر من كل تقييم، والخوارزمية الجينية توازي بشكل أطبع، وفضاءات البحث غير المريحة ترجّح التطور، والبحث العشوائي (Bergstra وBengio، 2012) هو الخط الأساسي الذي يجب أن تتفوق عليه كلها. واختيار الميزات كبحث في المجموعات الجزئية يعمل، ويُفرط في ملاءمة نتيجة التحقق إن تركته. وتطوير المعمارية أوجه من تطوير الأوزان، وNEAT (Stanley وMiikkulainen، 2002) يوضح السبب: بدايات دنيا، وعلامات تاريخية، وتنويع نوعي. والبرمجة الجينية (Koza، 1992) هي الحالة التي يكون المُخرَج فيها تعبيرًا قابلًا للقراءة، مع التضخّم كخطر دائم. وحين تلائم طريقة أرخص المسألة، فاستخدمها.

السابق تصميم دالة الملاءمة نظرة عامة التالي التعلّم من المكافأة