۶ کیو· متوسطمتوسطPYTHON۱۲ ثانیه · ۲۵۶ مگابایت
هرس پیچیدگی-هزینه
تابع prune_report(seed) روی دادهی دیابت scikit-learn (load_diabetes) یک درخت رگرسیون را با هرس پیچیدگی-هزینه تنظیم میکند:
- داده را با
train_test_split(..., random_state=seed)تقسیم کنید. - مسیر هرس را روی دادهی آموزش بگیرید:
python
path = DecisionTreeRegressor(random_state=0).cost_complexity_pruning_path(X_train, y_train)
alphas = path.ccp_alphas[:-1] # آخری فقط ریشه را نگه میدارد
- با
GridSearchCV(DecisionTreeRegressor(random_state=0), {"ccp_alpha": alphas}, cv=5, scoring="neg_mean_squared_error")روی دادهی آموزش بهترین را انتخاب کنید. - آرایهای سهتایی برگردانید: انتخابشده، تعداد برگهای مدل نهایی (
best_estimator_.get_n_leaves())، و روی دادهی آزمون.
نمونهها
ورودی نمونه ۱
0
خروجی نمونه ۱
[208.7406, 4.0, 0.105]
برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.
ورود