۹ نکته عملی برای تنظیم (Tuning) الگوریتم Gradient Boosting۱. پارامترهای خیلی زیادی انتخاب نکن✅ برای ۹۹٪ از کاربردها همین چند پارامتر کفایت می‌کنن:learning rate (نرخ یادگیری)tree depth (عمق درخت)number of trees (تعداد درخت‌ها)subsample ratio (نسبت نمونه‌گیری)L1/L2 regularization (تنظیم منظم‌سازی برای جلوگیری از بیش‌برازش)📌 توضیح: بعضی‌ها وسوسه می‌شن همه پارامترها رو تغییر بدن، ولی واقعیت اینه که چند پارامتر کلیدی هستن و بقیه معمولاً تأثیر کمی دارن.---۲. به ارتباط بین هایپرپارامترها دقت کننرخ یادگیری (learning rate)، عمق درخت (tree depth) و تعداد درخت‌ها (n_estimators) خیلی به هم وابسته‌ان.نرخ یادگیری پایین → نیاز به درخت‌های بیشتردرخت‌های عمیق‌تر → نیاز به نرخ یادگیری کوچک‌تر (تا بیش‌برازش اتفاق نیفته)📌 توضیح: یعنی وقتی یکیشو تغییر می‌دی، باید حواست به بقیه هم باشه.۳. روش پیشنهادی برای تیونینگ (tuning)1. تعداد زیادی درخت ثابت بذار (مثلاً ۵۰۰ تا ۱۰۰۰).2.نرخ یادگیری learning rate، عمق درخت و بقیه پارامترها رو تغییر بده.3. از early stopping استفاده کن (یعنی اگر ۱۵–۲۰ مرحله بهتر نشد، متوقف کن) → اینطوری بهترین تعداد درخت پیدا می‌شه.📌 توضیح: با این روش عملاً به مدل فرصت می‌دی یاد بگیره ولی بی‌خود ادامه نده.۴. نرخ یادگیری (learning rate) رو در مقیاس لگاریتمی تست کن. حد پایین: 0.001حد بالا: 0.05مقدار پیش‌فرض خوب: 0.01📌 توضیح: نرخ خیلی کم باعث می‌شه مدل خیلی کند یاد بگیره و نرخ خیلی زیاد باعث بیش‌برازش یا ناپایداری می‌شه.---۵. به اندازه دیتاست دقت کندیتاست کوچک → درخت‌های ساده (عمق ۱–۳)دیتاست بزرگ → می‌تونی عمق بیشتر بذاری (۴–۶)📌 توضیح: چون دیتاست کوچک نمی‌تونه پیچیدگی زیاد رو پشتیبانی کنه.---۶. از L1 و L2 همزمان استفاده نکنمقدارL2 (reg_lambda): انتخاب پیش‌فرض، مخصوصاً وقتی ویژگی‌ها همبستگی بالا دارن.مقدارL1 (reg_alpha): وقتی مطمئنی ویژگی‌های بی‌ربط زیادی داری و می‌خوای مدل خودش انتخاب کنه کدوم رو نگه داره.📌 توضیح: L2 فقط وزن‌ها رو کوچک می‌کنه ولی حذف نمی‌کنه. L1 می‌تونه بعضی ویژگی‌ها رو صفر کنه---۷. اندازه نمونه (subsample) رو خیلی کم نذارحد بالا: 0.7حد پایین: 0.1مقدار پیش‌فرض خوب: 0.5📌 توضیح: subsample کمک می‌کنه مدل روی کل داده overfit نشه، ولی خیلی کم هم باشه دقت از بین میره.