پرش به محتوا

XGBoost

از ویکی‌پدیا، دانشنامهٔ آزاد
Xgboost
توسعه‌دهنده(ها)The XGBoost Contributors
انتشار اولیه۲۷ مارس ۲۰۱۴؛ ۱۰ سال پیش (۲۰۱۴-27}})
انتشار پایدار
۰٫۷۰ / ۳۰ دسامبر ۲۰۱۷؛ ۶ سال پیش (۲۰۱۷-30}})
مخزن
نوشته‌شده باسی پلاس‌پلاس
سیستم‌عامللینوکس، مک‌اواس، مایکروسافت ویندوز
نوعیادگیری ماشین
مجوزمجوز آپاچی ۲٫۰
وبگاه

XGBoost[۱] یک کتابخانه نرم‌افزار آزاد است که چارچوب تقویت گرادیان برای ++C، جاوا، پایتون،[۲] R,[۳] و جولیا،[۴] پرل[۵] و اسکالا را فراهم می‌کند. در لینوکس،[۶] ویندوز، MacOS[۷] کار می‌کند. هدف ارائه یک کتابخانه «مقیاس‌پذیر، قابل‌حمل و توزیع‌شده» (gbm, GBRT, GBDT) است. علاوه بر اجرای یک ماشین واحد، همچنین از چارچوب‌های پردازش توزیع‌شده آپاچی اسپارک، آپاچی هدوپ، آپاچی فلینک و داسک (نرم‌افزار) پشتیبانی می‌کند.[۸][۹] این الگوریتم انتخاب بسیاری از تیم‌های برندهٔ شماری از رقابت‌های یادگیری ماشین بود و محبوبیت و توجه زیادی به دست آورده‌است.[۱۰]

تاریخچه

[ویرایش]

XGBoost در ابتدا به عنوان یک پروژه تحقیقاتی توسط تیانگی چن به عنوان بخشی از گروه یادگیری عمیق ماشینی توزیع‌شده آغاز شد.[۱۱] در ابتدا به عنوان یک برنامه ترمینال (terminal application) آغاز شد که می‌توانست با استفاده از یک فایل پیکربندی libsvm پیکربندی شود. پس از پیروزی در چالش یادگیری ماشین هیگز، به عنوان بخشی از چرخهٔ مسابقه شناخته شد. پس از آن بسته‌های زبان‌های پایتون و R ساخته شدند و اکنون برای بسیاری از زبان‌های دیگر مثل جولیا، Scala، جاوا و غیره بسته‌هایی دارد و در بین جامعه Kaggle که برای تعداد زیادی از رقابت‌ها از آن استفاده شده‌است، محبوب است.[۱۲]

خیلی زود با چندین بسته دیگر مورد استفاده قرار گرفت و در حال حاضر برای کاربران پایتون همراه با کتابخانهٔ scikit-learn و برای کاربران R همراه با بسته caret ارائه می‌شود.

الگوریتم

[ویرایش]

الگوریتم داده آموزشیِ ، یک تابع مشتق‌پذیر هزینه و یک نرخ یادگیریِ به عنوان ورودی می‌گیرد و به این شکل مدل نهائی را می‌سازدː

  1. اولین مدل ضعیف عددی ثابت است که تابع هزینه را کمینه می‌کند:
  2. برای تا :
    1. گرادیان و هسین به این شکل محاسبه می‌شوند
    2. مدل برای داده‌های به این شکل یادگرفته می‌شود:
    3. مدل به این شکل به روز می‌شود:
  3. مدل نهائی عبارت است از

جوایز

[ویرایش]
  • جایزه جان چمبرز (۲۰۱۶)
  • جایزه High Energy Physics meets Machine Learning (2016)

جستارهای وابسته

[ویرایش]

منابع

[ویرایش]
  1. "GitHub project webpage".
  2. "Python Package Index PYPI: xgboost". Retrieved 2016-08-01.
  3. "CRAN package xgboost". Retrieved 2016-08-01.
  4. "Julia package listing xgboost". Archived from the original on 18 August 2016. Retrieved 2016-08-01.
  5. "CPAN module AI::XGBoost". Retrieved 2020-02-09.
  6. "Installing XGBoost for Anaconda in Windows". Retrieved 2016-08-01.
  7. "Installing XGBoost on Mac OSX". Retrieved 2016-08-01.
  8. "Dask Homepage".{{cite web}}: نگهداری CS1: url-status (link)
  9. "Distributed XGBoost with Dask — xgboost 1.5.0-dev documentation". xgboost.readthedocs.io. Retrieved 2021-07-15.
  10. "XGBoost - ML winning solutions (incomplete list)". Retrieved 2016-08-01.
  11. "Story and Lessons behind the evolution of XGBoost". Archived from the original on 7 August 2016. Retrieved 2016-08-01.
  12. "XGBoost - ML winning solutions (incomplete list)". Retrieved 2016-08-01.