【问题标题】:Optimize hyper-parameters of a decision tree优化决策树的超参数
【发布时间】:2020-06-05 23:45:33
【问题描述】:

我正在尝试使用 sklearn 网格搜索来找到决策树的最佳参数。

Dtree= DecisionTreeRegressor()
parameter_space = {'max_features': ['auto', 'sqrt', 'log2'],
                   'ccp_alpha': [np.array(pd.Series(np.arange(0,1,0.001)))]}

clf_tree = GridSearchCV(Dtree, parameter_space,cv=5)
clf=clf_tree.fit(X,y)

我收到以下错误。我想知道你是否可以帮我解决这个问题。感谢您的宝贵时间。

ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() 

【问题讨论】:

  • 'ccp_alpha': [np.arange(0,1,0.001).values]??
  • 试试'ccp_alpha': list(np.linspace(0, 1, 1001))
  • @ChrisA 我应该包括 'ccp_alpha': list(np.linspace(0, 1, 0.001)) 。我说的对吗?
  • @ChrisA 我收到了这个警告:C:\Users\Anaconda3\lib\site-packages\ipykernel_launcher.py:2: DeprecationWarning: object of type can't be safelyinterpreted as一个整数。
  • @Barsal no, np.linspace(0, 1, 0.001) 不起作用...第三个参数是输出值的数量,所以它不能是 0.001(需要是整数)

标签: python pandas scikit-learn decision-tree gridsearchcv


【解决方案1】:

也许是这个?

parameter_space = {'max_features': ['auto', 'sqrt', 'log2'], 'ccp_alpha': np.arange(0, 1, 0.001).tolist()}

【讨论】:

    猜你喜欢
    • 2012-12-14
    • 1970-01-01
    • 2014-06-15
    • 2012-07-03
    • 2020-07-28
    • 2020-08-17
    • 2017-08-10
    • 1970-01-01
    相关资源
    最近更新 更多