تعزيز وتعبئة: كيفية تطوير خوارزمية التعلم آلة قوية

يتطلب التعلم الآلي وعلوم البيانات أكثر من مجرد إلقاء البيانات في مكتبة بيثون والاستفادة من كل ما يتم إنتاجه

إلباس الحذاء / تكييس / تعزيز جهود

يتطلب التعلم الآلي وعلوم البيانات أكثر من مجرد إلقاء البيانات في مكتبة بيثون والاستفادة من كل ما يتم إنتاجه.

يحتاج علماء البيانات إلى فهم البيانات فعليًا والعمليات التي تقوم عليها حتى يكونوا قادرين على تطبيق نظام ناجح.

تتمثل إحدى الطرق الرئيسية للتنفيذ في معرفة متى يمكن أن يستفيد النموذج من استخدام أساليب التمهيد. هذه هي ما تسمى نماذج الفرقة. بعض الأمثلة على نماذج الفرقة هي AdaBoost و Stochastic Gradient Boosting.

لماذا استخدام نماذج الفرقة؟

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

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

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

أدى استخدام تقنيات مثل التعزيز والتعبئة إلى زيادة متانة النماذج الإحصائية وانخفاض التباين.

الآن يصبح السؤال ، ما هو الفرق بين كل هذه الكلمات "B" المختلفة؟

إلباس الحذاء

دعنا نتحدث أولاً عن مفهوم مهم للغاية من bootstrapping. يفتقد العديد من علماء البيانات هذا ويذهبون مباشرةً إلى شرح التعزيز والتعبئة. لكن كلاهما يتطلب bootstrapping.

الشكل 1

في التعلم الآلي ، تشير طريقة bootstrap إلى أخذ عينات عشوائية مع الاستبدال. يشار إلى هذه العينة باسم resample. يتيح ذلك للطراز أو الخوارزمية فهم أفضل للتحيزات المختلفة والفروق والميزات الموجودة في إعادة التشكيل. يتيح أخذ عينة من البيانات لعينة إعادة التشكيل أن تحتوي على خصائص مختلفة عما قد تحتويه ككل. يظهر هذا في الشكل 1 ، حيث يكون لكل عينة مجتمع قطع مختلفة ولا توجد متطابقة. سيؤثر ذلك بعد ذلك على المتوسط ​​الكلي والانحراف المعياري والمقاييس الوصفية الأخرى لمجموعة البيانات. بدوره ، يمكن أن تطور نماذج أكثر قوة.

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

السبب في استخدام طريقة bootstrap هو أنه يمكن اختبار ثبات الحل. يمكن أن تزيد من المتانة باستخدام مجموعات بيانات عينة متعددة واختبار نماذج متعددة. ربما تحتوي مجموعة بيانات نموذجية واحدة على متوسط ​​أكبر من الآخر ، أو انحراف معياري مختلف. هذا قد يكسر نموذجًا غير مناسب ولا يتم اختباره باستخدام مجموعات البيانات ذات الاختلافات المختلفة.

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

التعبئة

يشير التعبئ في الواقع إلى (مجمعات Bootstrap). تقريبا أي ورقة أو منشورات تشير إلى استخدام خوارزميات التعبئة سوف تشير أيضا إلى ليو بريمان ، الذي كتب ورقة في عام 1996 بعنوان "توقع التعبئة".

حيث يصف ليو التعبئة على النحو التالي:

"يعد تنبؤ الأكياس وسيلة لإنشاء إصدارات متعددة من المتنبئ واستخدامها للحصول على تنبؤ مجمّع."

يساعد التغليف على تقليل التباين من النماذج التي قد تكون دقيقة للغاية ، ولكن فقط على البيانات التي تم تدريبهم عليها. هذا هو المعروف أيضا باسم overfitting.

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

الشكل 2

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

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

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

الشكل 3

في الأساس ، تعمل كل هذه النماذج في نفس الوقت ، والتصويت الذي الفرضية هو الأكثر دقة.

هذا يساعد على تقليل التباين ، أي تقليل الزي.

زيادة

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

تعزيز يتطلب أيضا bootstrapping. ومع ذلك ، هناك فرق آخر هنا. على عكس التعبئة ، زيادة أوزان كل عينة من البيانات. هذا يعني أن بعض العينات ستعمل أكثر من غيرها.

لماذا وضعت الأوزان على عينات البيانات؟

الشكل 4

عند تعزيز تشغيل كل نموذج ، فإنه يتعقب عينات البيانات التي هي الأكثر نجاحًا والتي لا. يتم إعطاء مجموعات البيانات ذات النواتج الأكثر تصنيفًا أوزانًا أثقل. تعتبر هذه البيانات ذات تعقيد أكبر وتتطلب المزيد من التكرار لتدريب النموذج بشكل صحيح.

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

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

ملخص

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

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

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

الأمر لا يقتصر على تجربة غابات AdaBoost أو Random على مجموعات بيانات مختلفة. تعتمد الخوارزمية النهائية على النتائج التي تحصل عليها وما هو الدعم الموجود هناك.