استكشف XGBoost، المكتبة الرائدة في تعزيز التدرج للبيانات الجدولية. تعرف على كفاءتها، والتعلم الجماعي، والتكامل مع Ultralytics .
XGBoost، أو Extreme Gradient Boosting، هي مكتبة برمجيات موزعة ومُحسّنة للغاية مصممة لتنفيذ خوارزميات التعلم الآلي في إطار Gradient Boosting. تشتهر XGBoost بكفاءتها الاستثنائية ومرونتها وقابليتها للنقل، وقد أصبحت الخيار الأول لعلماء البيانات الذين يعملون مع البيانات المنظمة أو الجدولية. تعمل عن طريق الجمع بين تنبؤات متعددة "ضعيفة" — عادةً ما تكون أشجار قرارسطحية — لإنشاء متعلم "قوي" واحد. تسمح هذه التقنية، المعروفة باسم التعلم الجماعي، للنموذج بتصحيح الأخطاء التي ارتكبتها الأشجار السابقة في التسلسل، مما يؤدي إلى نتائج متطورة لمهام التصنيف والانحدار والترتيب .
تكمن قوة XGBoost في تحسين النظام والتحسينات الخوارزمية. على عكس تقنيات التعبئة مثل Random Forest، التي تبني الأشجار بشكل مستقل، يبني XGBoost الأشجار بشكل متسلسل. تحاول كل شجرة جديدة تقليل أخطاء (بقايا) الأشجار السابقة. لمنع النموذج من أن يصبح معقدًا للغاية ويحفظ الضوضاء في بيانات التدريب، يدمج XGBoost مصطلحي L1 (Lasso) و L2 (Ridge) للتنظيم في وظيفته الموضوعية. هذه الحماية المدمجة ضد التكيف المفرط هي عامل تمييز رئيسي يضمن أداءً قويًا على البيانات غير المرئية.
علاوة على ذلك، تم تصميم المكتبة بحيث تتميز بالسرعة. فهي تستخدم رسمًا تقديريًا مرجحًا للعثور على نقاط التقسيم المثلى وتستخدم المعالجة المتوازية أثناء بناء الشجرة من خلال استخدام جميع CPU المتاحة. كما أنها تتعامل مع البيانات المتفرقة بذكاء؛ فإذا كانت هناك قيمة مفقودة، يتعلم الخوارزمية أفضل اتجاه لإرسال العينة أثناء عملية التقسيم، مما يبسط عمليات هندسة الميزات.
على الرغم من أن XGBoost هو قوة مهيمنة، إلا أنه من المفيد فهم كيف يختلف عن مكتبات التعزيز الأخرى الموجودة في مجال التعلم الآلي (ML):
يتم استخدام XGBoost على نطاق واسع في مختلف القطاعات لحل المشكلات التجارية الحرجة.
بينما يتعامل XGBoost مع البيانات المنظمة، غالبًا ما تتطلب أنظمة الذكاء الاصطناعي الحديثة نهجًا متعدد الوسائط. على سبيل المثال، قد يستخدم نظام مراقبة جودة التصنيع ميزة الكشف عن الأشياء المدعومة بواسطة YOLO26 لتحديد العيوب في الصور. يمكن بعد ذلك إدخال البيانات الوصفية من عمليات الكشف هذه (مثل نوع العيب وحجمه وموقعه) في نموذج XGBoost جنبًا إلى جنب مع قراءات المستشعر (درجة الحرارة والضغط) للتنبؤ بفشل الماكينة . يمكن للمطورين إدارة سير العمل المعقد هذا، بما في ذلك تعليق مجموعة البيانات ونشر النموذج، باستخدام Ultralytics .
يوضح المثال التالي كيفية تدريب مصنف باستخدام Python XGBoost Python . يفترض هذا المقتطف أن البيانات قد تمت معالجتها مسبقًا.
import xgboost as xgb
from sklearn.datasets import load_wine
from sklearn.model_selection import train_test_split
# Load dataset and split into train/test sets
data = load_wine()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2)
# Initialize and train the XGBoost classifier
model = xgb.XGBClassifier(n_estimators=50, max_depth=4, learning_rate=0.1)
model.fit(X_train, y_train)
# Evaluate the model
print(f"Accuracy: {model.score(X_test, y_test):.4f}")
لمزيد من التفاصيل حول المعلمات والتكوين المتقدم، راجع وثائق XGBoost الرسمية. يوصى بضبط المعلمات الفائقة بشكل صحيح لاستخراج أفضل أداء من نموذجك.