Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

CatBoost

عزّز مشاريع تعلم الآلة الخاصة بك باستخدام CatBoost، وهي مكتبة قوية لتعزيز التدرج تتفوق في معالجة البيانات الفئوية والتطبيقات الواقعية.

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

المفاهيم الأساسية والميزات الرئيسية

يعمل CatBoost على تحسين أشجار القرار المعززة بالتدرج التقليدي (GBDT) من خلال إدخال العديد من الابتكارات الخوارزمية التي تعزز الاستقرار والقوة التنبؤية.

  • معالجة الميزات الفئوية الأصلية: الميزة الأكثر تميزًا في CatBoost هي قدرته على معالجة البيانات غير الرقمية مباشرةً. بدلاً من استخدام ترميز القياسية ذات الترميز الأحادي الذي يمكن أن يزيد من استخدام الذاكرة و والأبعاد، يستخدم CatBoost طريقة فعالة تسمى "إحصائيات الهدف المرتبة". هذه التقنية تقلل من فقدان المعلومات وتساعد في الحفاظ على جودة بيانات التدريب.
  • التعزيز بالترتيب: لمكافحة مشكلةشائعة حيث يتعلم النموذج الضوضاء بدلًا من الأنماط - يستخدم CatBoost نهجًا يعتمد على التقليب. تضمن هذه الطريقة، المعروفة باسم التعزيز المرتب أن النموذج لا يعتمد على المتغيّر المستهدف لنقطة البيانات الحالية لحساب المتبقي الخاص به, مما يمنع بشكل فعال تسرب الهدف.
  • الأشجار المتماثلة: على عكس الخوارزميات الأخرى التي تُنشئ أشجارًا غير منتظمة، يبني CatBoost أشجار قرار متوازنة متوازنة ومتماثلة. تسمح هذه البنية ب تنفيذ سريع للغاية أثناء مرحلة التنبؤ، مما يقلل بشكل كبير من وقت الاستجابة للاستدلال في بيئات الإنتاج.

CatBoost مقابل XGBoost و LightGBM

في مشهد التعزيز المتدرج، غالبًا ما تتم مقارنة CatBoost ب XGBoost و و LightGBM. في حين أن الطرق الثلاثة قوية طرق تجميعية قوية، إلا أنها تختلف في نهجها في بناء الشجرة ومعالجة البيانات.

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

تطبيقات واقعية

يتم اعتماد CatBoost على نطاق واسع في مختلف القطاعات التي تنتشر فيها البيانات المهيكلة.

  1. كشف الاحتيال المالي: تستفيد المؤسسات المالية من CatBoost في الكشف عن الحالات الشاذة لتحديد المعاملات الاحتيالية الاحتيالية. من خلال تحليل المدخلات الفئوية مثل معرّف التاجر ونوع المعاملة والموقع، يمكن للنموذج تحديد النشاط المشبوه بدقة عالية دون الحاجة إلى خطوط أنابيب معقدة قبل الترميز. هذا التطبيق بالغ الأهمية في الذكاء الاصطناعي في مجال التمويل لحماية الأصول.
  2. أنظمة توصيات التجارة الإلكترونية: تستخدم منصات البيع بالتجزئة CatBoost لتشغيل أنظمة التوصية. تتنبأ الخوارزمية تتنبأ بتفضيلات المستخدم من خلال تحليل ميزات متنوعة مثل فئات المنتجات والتركيبة السكانية للمستخدمين وتاريخ الشراء وتاريخ الشراء. يساعد ذلك الشركات على تقديم محتوى مخصص وتحسين الاحتفاظ بالعملاء، على غرار الطريقة التي يعمل بها يعمل الذكاء الاصطناعي في البيع بالتجزئة على تحسين إدارة المخزون.

تنفيذ CatBoost

يعد دمج CatBoost في مشروع ما أمرًا بسيطًا ومباشرًا بفضل واجهة برمجة التطبيقات المتوافقة مع Scikit-learn. فيما يلي مثال موجز موجز لكيفية تدريب مصنف على بيانات تحتوي على ميزات فئوية.

from catboost import CatBoostClassifier

# Sample data: Features (some categorical) and Target labels
train_data = [["Summer", 25], ["Winter", 5], ["Summer", 30], ["Winter", 2]]
train_labels = [1, 0, 1, 0]  # 1: Go outside, 0: Stay inside

# Initialize the model specifying the index of categorical features
model = CatBoostClassifier(iterations=10, depth=2, learning_rate=0.1, verbose=False)

# Train the model directly on the data
model.fit(train_data, train_labels, cat_features=[0])

# Make a prediction on new data
prediction = model.predict([["Summer", 28]])
print(f"Prediction (1=Go, 0=Stay): {prediction}")

الأهمية في النظام البيئي للذكاء الاصطناعي

في حين أن CatBoost يهيمن على عالم البيانات المجدولة، فإن خطوط أنابيب الذكاء الاصطناعي الحديثة غالبًا ما تتطلب نماذج متعددة الوسائط تجمع بين البيانات المنظمة مع مدخلات غير منظمة مثل الصور. على سبيل المثال، قد يستخدم نظام تقييم العقارات نظام CatBoost لتحليل ميزات العقار (الرمز البريدي، المساحة المربعة) و Ultralytics YOLO11 لتحليل صور العقارات عن طريق الرؤية الحاسوبية. يتيح فهم كلتا الأداتين للمطوّرين بإنشاء حلول شاملة تستفيد من مجموعة كاملة من البيانات المتاحة.

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون وانمو مع المبتكرين العالميين

انضم الآن