sklearn.ensemble.RandomForestClassifier随机森林rf参数详细解读

本文详细解读了sklearn.ensemble.RandomForestClassifier的参数,包括n_estimators、max_features、max_depth、min_samples_split等,并介绍了如何使用GridSearchCV进行交叉验证。通过理解这些参数,可以更好地调整随机森林模型并提升预测性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导入模块:

from sklearn.ensemble import RandomForestClassifier

主要参数:

RandomForestClassifier(
n_estimators=10, 
criterion=’gini’, 
max_depth=None, 
min_samples_split=2, 
min_samples_leaf=1,
min_weight_fraction_leaf=0.0, max_features=’auto’,
 max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None,
bootstrap=True, 
oob_score=False,
 n_jobs=1, 
verbose=0, 
warm_start=False, 
class_weight=None)
from sklearn.ensemble import RandomForestRegressor from sklearn.multioutput import MultiOutputRegressor import singlemodel import singlemodelheart import singlemodelcirrhosis import numpy as np import pandas as pd import tensorflow as tf from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler from sklearn.ensemble import RandomForestClassifier from sklearn.multioutput import MultiOutputClassifier from sklearn.metrics import roc_auc_score from sklearn.impute import SimpleImputer # 多输出随机森林 df = pd.concat([singlemodel.df, singlemodelheart.df], axis=1) imputer = SimpleImputer(strategy='mean') # 初始化填充器:数值用均值,分类用众数(mode) df_filled = imputer.fit_transform(df) # 自动填充NaN df_filled = pd.DataFrame(df_filled, columns=df.columns) # 转换回DataFrame X1 = df_filled[['age', 'bmi', 'avg_glucose_level']] X2 = df_filled[['ST_Slope', 'ExerciseAngina', 'Oldpeak']] y1 = df_filled[['stroke']] y2 = df_filled[['HeartDisease']] X = np.hstack([X1, X2]) y = np.column_stack([y1, y2]) # 3. 创建多输出随机森林模型 base_model = RandomForestRegressor(n_estimators=100, random_state=42) multi_rf = MultiOutputRegressor(base_model) # 4. 训练模型(同时使用两组特征和标签) multi_rf.fit(X, y) # 关键步骤:传入合并后的特征矩阵和标签矩阵 # 5. 预测(使用相同格式输入) X_new = np.hstack((X1[:3], X2[:3])) # 新样本特征 predictions = multi_rf.predict(X_new) # 输出二维预测结果 print("预测结果(第一列y1,第二列y2):\n", predictions) 写出对上述代码的灵敏度分析代码
最新发布
07-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值