Meezo ML نشر 13 يونيو 2021 أرسل تقرير مشاركة نشر 13 يونيو 2021 كيفي نقوم بتطبيق خوارزمية Random Forest لمهمة تصنيف Classification في مكتبة Sklearn؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Ali Haidar Ahmad نشر 13 يونيو 2021 أرسل تقرير مشاركة نشر 13 يونيو 2021 (معدل) يمكنك استخدامها عبر الموديول: ensemble.RandomForestClassifier الصيغة العامة: sklearn.ensemble.RandomForestClassifier(n_estimators=100, criterion='gini', max_depth=None, min_samples_split=2, min_samples_leaf=1, max_features='auto', max_leaf_nodes=None, bootstrap=True, oob_score=False, n_jobs=None, random_state=None, verbose=0, ccp_alpha=0.0) n_estimators : عدد أشجار القرار المستخدمة. default=100 criterion: الأسلوب الرياضي للمعالجة وتكون {“gini”, “entropy”}, 'default='gini max_depth : عمق الأشجار. min_samples_split:الحد الأدنى لعدد العينات المطلوبة لتقسيم عقدة داخلية. int , default=2. min_samples_leaf: الحد الأدنى لعدد العينات المطلوبة في العقدة التي تمثل الاوراق. default=1. 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. bootstrap: لتحديد فيما إذا كان سيتم استخدام عينات ال bootstrap عند بناء الأشجار. في حال ضبطها على true سيتم استخدام كامل البيانات لبناء كل شجرة. افتراضياً تكون False. oob_score: لتحديد فيما إذا كان سيتم استخدام عينات out-of-bag لتقدير قيمة التعميم "generalization score". ويجب أن تكون bootstrap مضبوطة على True لاستخدامها. n_jobs: عدد المهام التي يتم تنفيذها بالتوازي. -1 للتنفيذ بأقصى سرعة ممكنة. random_state: يتحكم بعملية التقسيم افتراضياً يكون None. verbose: لعرض التفاصيل التي تحدث في التدريب. افاراضياً 0 أي لايظهر شيء، أما وضع أي قيمة أكبر من الصفر سيعرض التفاصيل int. ccp_alpha: معامل تعقيد يستخدم لتقليل التكلفة الزمانية والمكانية. non-negative float, default=0.0 التوابع: fit(data): للقيام بعملية التدريب. predict(data): لتوقع القيم. score(data): لتقييم كفاءة النموذج. ()get_params :لايجاد مقدار الدقة predict_proba(data) : لعمل التوقع أيضاً لكن هنا سيخرج الفيمة الاحتمالية(أي لن يتم القصر على عتبة) apply(data): ياتي لك بقيمة الورقة المحسوبة. ()get_n_leaves: يرد عدد الأوراق. ()get_depth: يرد عمق الشجرة. ال attributtes: classes_: لعرض ال labels التي وجدها. n_outputs_: عدد المرخرجات الناتجة عن عملية ال fitting. estimators_: عرض معلومات عن كل الأشجار التي تم تشكيلها. base_estimator_:عرض معلومات الشجرة الأساسية feature_importances_: عرض أهم الفيتشرز المؤثرة في التوقع. n_features_: عدد الفيتشرز. مثال: # استيراد المكتبات from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier 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 تطبيق RandomForestC = RandomForestClassifier(criterion = 'gini',n_estimators=100,max_depth=2,random_state=33) #criterion can be also : entropy RandomForestC.fit(X_train, y_train) print('Train Score is : ' , RandomForestC.score(X_train, y_train)) # 0.9538461538461539 print('Test Score is : ' , RandomForestC.score(X_test, y_test)) # Test Score is : 0.9298245614035088 #print('No. of classes are : ' , RandomForestC.n_classes_) # No. of features are : 2 #print('No. of features are : ' RandomForestC.n_features_) # No. of features are : 30 #print('No. of n_outputs are : ' , RandomForestC.n_outputs_) # No. of n_outputs are : # عرض معلومات عن كل الأشجار التي تم تشكيلها #print(RandomForestC.estimators_) # عرض معلومات الشجرة الأساسية #print( RandomForestC.base_estimator_) # عرض أهم الفيتشرز #print( RandomForestC.feature_importances_) تم التعديل في 13 يونيو 2021 بواسطة Ali Haidar Ahmad 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
Meezo ML
كيفي نقوم بتطبيق خوارزمية Random Forest لمهمة تصنيف Classification في مكتبة Sklearn؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.