اذهب إلى المحتوى

السؤال

Recommended Posts

  • 1
نشر (معدل)

يمكنك ذلك عن طريق الموديول:

ensemble.GradientBoostingClassifier 

الصيغة العامة:

sklearn.ensemble.GradientBoostingClassifier(loss='deviance', learning_rate=0.1, n_estimators=100, subsample=1.0, criterion='friedman_mse', min_samples_split=2, min_samples_leaf=1, max_depth=3, random_state=None, max_features=None, verbose=0, max_leaf_nodes=None, validation_fraction=0.1, n_iter_no_change=None, tol=0.0001, ccp_alpha=0.0)

الوسطاء:
loss: معادلة التكلفة المستخدمة. {‘deviance’, ‘exponential’}, 'default=’deviance
n_estimators : عدد مراحل ال  boosting المستخدمة.  default=100
learning_rate: قيمة معامل التعلم افتراضياً 0.1.
criterion: الأسلوب الرياضي للمعالجة (قياس جودة الانقسام) وتكون {‘friedman_mse’, ‘mse’, ‘mae’}, 'default=’friedman_mse
max_depth  : عمق الأشجار.
min_samples_split:الحد الأدنى لعدد العينات المطلوبة لتقسيم عقدة داخلية. int , default=2.
min_samples_leaf:  الحد الأدنى لعدد العينات المطلوبة في العقدة التي تمثل الاوراق.  default=1.
random_state: يتحكم بعملية التقسيم افتراضياً يكون None.
verbose: لعرض التفاصيل التي تحدث في التدريب. افاراضياً 0 أي لايظهر شيء، أما وضع أي قيمة أكبر من الصفر سيعرض التفاصيل int.
max_features:العدد المناسب من الفيتشرز التي يتم احتسابها {“auto”, “sqrt”, “log2”}.
في حال auto:
max_features=sqrt(n_features).
sqrt:
ax_features=sqrt(n_features).
log2:
max_features=log2(n_features).
None:
max_features=n_features.
إذا وضعت قيمة float:
max_features=int(max_features * n_features)
قيمة int:
سيتم أخذ ال features  عند كل تقسيمة ك max_features.
validation_fraction: النسبة التي سيتم اقتطاعها من عينة التدريب للاستخدام كعينة تطوير. افتراضياً 0.1
n_iter_no_change: لتطبيق مفهوم التوقف المبكر "early stopping" (إيقاف التدريب عندما تتوقف عينة التطةير عن التحسن). افتراضياً None أي لن تطبق، إذا أسندت لها أي عدد صحيح سيتم تطبيقه.
tol: مقدار السماحية في التقاربم من القيم المثالية. افتراضياً 0.0001
ccp_alpha: معامل تعقيد  يستخدم لتقليل التكلفة الزمانية والمكانية. non-negative float, default=0.0
ال attributtes:
classes_: لعرض ال labels التي وجدها.
n_outputs_: عدد المخرجات الناتجة عن عملية ال fitting.
estimators_: عرض معلومات عن كل الخوارزميات التي تم تشكيلها.
feature_importances_: عرض أهم الفيتشرز المؤثرة في التوقع.
n_features_: عدد الفيتشرز.
التوابع:
fit(data): للقيام بعملية التدريب.
predict(data): لتوقع القيم.
score(data):  لتقييم كفاءة النموذج.
()get_params :لايجاد مقدار الدقة.
predict_proba(data) : لعمل التوقع أيضاً لكن هنا سيخرج الفيمة الاحتمالية(أي لن يتم القصر على  عتبة)
apply(data):  ياتي لك بقيمة الورقة المحسوبة.
مثال:

# استيراد المكتبات
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.metrics import confusion_matrix
import seaborn as sns
import matplotlib.pyplot as plt

#تحميل البيانات
data = load_breast_cancer().data
labels = load_breast_cancer().target

# تقسيم البيانات
X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.2, random_state=2021, shuffle =True)
# RandomForestClassifier تطبيق 
GBCM = GradientBoostingClassifier(n_estimators=110,max_depth=1,random_state=44,n_iter_no_change=1) 
GBCM.fit(X_train, y_train)

print('Train Score is : ' , GBCM.score(X_train, y_train)) # Train Score is :  0.9758241758241758
print('Test Score is : ' , GBCM.score(X_test, y_test))    # Test Score is :  0.9649122807017544
#print('No. of n_classes_ are : ' , GBCM.n_classes_)        # No. of n_classes_ are :  2
#print('No. of features are :', GBCM.n_features_) # No. of features are : 30
# عرض معلومات عن كل الأشجار التي تم تشكيلها
#print(GBCM.estimators_)
# عرض أهم الفيتشرز
#print( GBCM.feature_importances_)

 

تم التعديل في بواسطة Ali Haidar Ahmad

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...