موضوع مقاله: بوستینگ | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # بوستینگ | مقدمه: بوستینگ یک فرا الگوریتم ترکیبی در حوزه یادگیری ماشین است که برای کاهش عدم توازن و همچنین واریانس به کار می‌رود. | ## بخش 1: بوستینگ | این روش در یادگیری با نظارت مورد استفاده قرار گرفته و از خانواده الگوریتم‌های یادگیری ماشین گروهی به شمار می‌رود. این تکنیک، روشی برای تبدیل سیستمهای یادگیری ضعیف به قوی بر اساس ترکیب نتایج طبقه بندهای مختلف است. سیستم یادگیری ضعیف، یادگیرنده‌ای است که به عنوان یک طبقه بند، تنها کمی بهتر از حالت تصادفی عمل می‌نماید (برچسب نمونه‌ها را بهتر از تصادفی حدس می‌زند). در مقابل یادگیرنده قوی طبقه‌بندی است که به تنهایی می‌تواند برچسب نمونه‌ها را خوبی پیش بینی نماید. الگوریتم بوستینگ هرچند که بوستینگ در قالب الگوریتمیک قرار ندارد ولی اکثر الگوریتم‌هایی که بر پایه بوستینگ طراحی شده‌اند، یادگیرنده‌های ضعیف را به صورت تکرار شونده آموزش داده و به مجموعه قبلی اضافه می‌نماید تا در نهایت به یک طبقه بند قوی دست یابد. یادگیرنده‌های ضعیف در حین اضافه شدن به مجموعه، وزن دهی می‌شوند که این وزن دهی معمولاً بر اساس میزان دقت در طبقه‌بندی نمونه هاست. | ## بخش 2: بوستینگ | پس از اضافه شدن هر طبقه بند، نمونه‌های موجود (داده‌ها) نیز وزن دهی می‌گردند (وزنشان اصلاح می‌گردد). وزن دهی نمونه‌ها به صورتی است که در هر مرحله، وزن نمونه‌هایی که به صورت صحیح طبقه‌بندی می‌شوند کاهش یافته و وزن نمونه‌هایی که به درستی طبقه‌بندی نشده‌اند، بیشتر می‌شود تا در مراحل بعدی (توسط یادگیرنده‌های جدید) بیشتر مورد توجه بوده و با دقت بیشتری طبقه‌بندی گردند؛ بنابراین تمرکز یادگیرنده‌های ضعیف جدید، بیشتر بر روی داده‌هایی خواهد بود که سیستم در مراحل قبلی قادر به طبقه‌بندی صحیح آنها نبوده است. این روش می‌تواند نتایج بسیار قوی از خود به جا بگذارد به گونه‌ای که در مسائلی چون جستجوی تصویر حتی از روش‌های مبتنی بر شبکه‌ عصبی و ماشین بردار‌ پشتیبانی نیز بهتر عمل کند. وزن نمونه‌هایی که در یادگیرنده ضعیف کنونی به درستی دسته‌بندی نشده‌اند افزایش و بقیه نمونه‌ها کاهش می‌یابد. وزن تمامی نمونه‌ها نرمالایز می شود به گونه‌ای که مجموع وزن همه نمونه‌ها یک شود و مرحله ۲ به تعداد دفعات مشخصی یا تا زمانی که همه نمونه‌ها به درستی دسته‌بندی شوند تکرار می‌شوند. روش‌های مختلف موجود بوستینگ در نحوه ساخت و تجمیع یادگیرنده‌های ضعیف در پروسه آموزش سریالی با هم تفاوت دارند. | ## بخش 3: بوستینگ | مزیت‌ها و چالش‌های روش بوستینگ مزیت‌های اصلی استفاده از روش‌های بوستینگ به صورت زیر هستند: پیاده‌سازی آسان: الگوریتم بوستینگ می‌تواند در کنار گزینه‌های متعدد بهینه‌سازی ابرپارامترها استفاده شود و میزان تطابق مدل با داده‌ها بهتر شود. همچنین نیاز به آماده‌سازی اولیه داده‌ها نیست و همچنین الگوریتم‌های بوستینگ معمولا توابعی برای برطرف کردن مشکل داده‌های گم‌شده در پیاده‌سازی داخلی خود دارند. کاهش بایاس: الگوریتم‌های بوستینگ با ترکیب چندین یادگیرنده ضعیف به صورت سریالی، باعث بهبود عملکرد مدل می‌شود و بایاس مدل را کاهش می‌دهد. چالش‌های اصلی هنگام استفاده از روش‌های بوستینگ: بیش‌برازش: تا امروز تحقیقات و بحث‌های متعددی مبنی بر رخ‌دادن بیش‌برازش در روش‌های بوستینگ انجام شده است و نمی‌توان به طور قطع ادعا کرد که این روش‌ها باعث کاهش بیش‌برازش می‌شوند و لذا در مواقعی که بیش‌برازش رخ می‌دهد پیش‌بینی‌ها قابل تعمیم به مجموعه‌داده‌های جدید نخواهند بود. محاسبات کامپیوتری سنگین: فرایند آموزش سریالی که در اغلب روش‌های بوستینگ انجام می‌شود باعث شده که مدل‌های بوستینگ از لحاظ محاسبات کامپیوتری هزینه‌بر باشند چرا که هر یادگیرنده ضعیف با توجه به خروجی یادگیرنده ضعیف قبلی آموزش می‌بیند. | ## جمع‌بندی | هرچند گفتنی است که در روش بوستینگ XGBoost یادگیرنده‌های ضعیف به صورت موازی آموزش می‌بینند و در این صورت با استفاده از این قابلیت شاهد پیشرفت چشمگیری در سرعت اجرای الگوریتم بوستینگ خواهیم بود.