gpt4 book ai didi

python-3.x - 如何绘制与最佳参数对应的随机森林树

转载 作者:行者123 更新时间:2023-12-03 23:47:01 24 4
gpt4 key购买 nike

python :3.6

window :10

我对随机森林和手头的问题几乎没有疑问:

我正在使用 Gridsearch 来运行使用随机森林的回归问题。我想绘制对应于 gridsearch 发现的最佳拟合参数的树。这是代码。

    from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=55)

# Use the random grid to search for best hyperparameters
# First create the base model to tune
rf = RandomForestRegressor()
# Random search of parameters, using 3 fold cross validation,
# search across 100 different combinations, and use all available cores
rf_random = RandomizedSearchCV(estimator = rf, param_distributions = random_grid, n_iter = 50, cv = 5, verbose=2, random_state=56, n_jobs = -1)
# Fit the random search model
rf_random.fit(X_train, y_train)

rf_random.best_params_

得出的最佳参数是:
    {'n_estimators': 1000,
'min_samples_split': 5,
'min_samples_leaf': 1,
'max_features': 'auto',
'max_depth': 5,
'bootstrap': True}
  • 如何使用上述参数绘制这棵树?
  • 我的因变量 y位于 [0,1] 范围内(连续)并且所有预测变量都是二元或分类的。哪种算法通常可以很好地适用于这个输入和输出特征空间。我试过随机森林。 (没有给出那么好的结果)。请注意这里 y变量是一种比率,因此它在 0 和 1 之间。Example: Expense on food/Total Expense
  • 以上数据是偏斜的,表示依赖或y变量的值= 1在 60% 的数据中,在其余数据中介于 0 和 1 之间。喜欢 0.66, 0.87很快。
  • 由于我的数据只有二进制 {0,1}和分类变量 {A,B,C} .我是否需要将其转换为 one-hot encoding使用随机森林的变量?
  • 最佳答案

    关于情节(我担心您的其他问题对于SO来说太宽泛了,一般的想法是避免同时提出多个问题):
    安装您的 RandomizedSearchCV导致了 rf_random.best_estimator_ ,它本身就是一个随机森林,其参数显示在您的问题中(包括 'n_estimators': 1000 )。
    根据docs , 合身 RandomForestRegressor包括一个属性:

    estimators_ : list of DecisionTreeRegressor

    The collection of fitted sub-estimators.


    因此,要绘制随机森林的任何单个树,您应该使用
    from sklearn import tree
    tree.plot_tree(rf_random.best_estimator_.estimators_[k])
    或者
    from sklearn import tree
    tree.export_graphviz(rf_random.best_estimator_.estimators_[k])
    对于所需的 k[0, 999]在你的情况下( [0, n_estimators-1] 在一般情况下)。

    关于python-3.x - 如何绘制与最佳参数对应的随机森林树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62111883/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com