首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何寻找决策树算法中的参数

如何寻找决策树算法中的参数
EN

Data Science用户
提问于 2020-09-25 12:28:16
回答 2查看 2.9K关注 0票数 3

我使用机器学习算法,例如决策树分类器,类似于这样:

代码语言:javascript
复制
from sklearn import tree
X = [[0, 0], [1, 1]]
Y = [0, 1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(X, Y)
clf.predict([[2., 2.]])

如何找出所使用的参数?

EN

回答 2

Data Science用户

回答已采纳

发布于 2020-09-25 12:36:13

只需在定义clf之后输入它;在您的示例中,它提供:

代码语言:javascript
复制
clf
# result:

DecisionTreeClassifier(ccp_alpha=0.0, class_weight=None, criterion='gini',
                       max_depth=None, max_features=None, max_leaf_nodes=None,
                       min_impurity_decrease=0.0, min_impurity_split=None,
                       min_samples_leaf=1, min_samples_split=2,
                       min_weight_fraction_leaf=0.0, presort='deprecated',
                       random_state=None, splitter='best')

也就是说,所有参数都有其默认值,因为您没有在定义clf = tree.DecisionTreeClassifier()中指定任何内容。

你可以得到任何算法的参数在科学工具包-学习以类似的方式。

用scikit测试-学习v0.22.2

更新

正如Ben在下面的注释中正确指出的那样,从scikit-learn v0.23开始,我们需要首先设置显示配置,这样才能工作:

代码语言:javascript
复制
sklearn.set_config(print_changed_only=False)
票数 4
EN

Data Science用户

发布于 2020-09-25 13:21:15

您还可以使用get_params方法定义(我相信)所有科学学习模型,因为它们是从sklearn.base.BaseEstimator继承的。这使得很容易创建某些模型的新实例(尽管您也可以使用sklearn.base.clone),或者将参数保存到以后的评估中。

代码语言:javascript
复制
>>> clf.get_params()
{'ccp_alpha': 0.0, 'class_weight': None, 'criterion': 'gini', 'max_depth': None, 'max_features': None, 'max_leaf_nodes': None, 'min_impurity_decrease': 0.0, 'min_impurity_split': None, 'min_samples_leaf': 1, 'min_samples_split': 2, 'min_weight_fraction_leaf': 0.0, 'presort': 'deprecated', 'random_state': None, 'splitter': 'best'}
票数 3
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/82217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档