机器学习调整参数


最近用机器学习进行预测,结果总是不理想,所以决定学一学关于调参的内容,借鉴了网上大神们的笔记,分享个人理解,如果有理解的不到位的地方欢迎大家评论区纠正。

为什么需要调参?

机器学习中最困难的地方就是为模型找到最好的超参数,模型的性能与超参数有很大的影响。

调参调的都是哪些参数?

随机森林:
==n-estimators:==决策树的个数,太小容易欠拟合,太大不容易提升模型
==bootstrp:==是否对样本进行有放回抽样来构建树,true or false
==oob_score:==是否采用袋外样本来评估模型的好坏,true or false
==max_depth:==决策树最大深度
==min_samples_leaf:==叶子节点含有的最少样本
==min_samples_split:==节点可分的最小样本数
==min_sample_leaf:==叶子节点最小的样本权重和
==max_leaf_nodes:==最大叶子节点数
==criterion:==节点划分标准
==max_features:==构建决策树最优模型时考虑的最大特征数。

怎样调参?

手工调参

顾名思义也就是通过训练算法手动选择最佳参数集,但是十分耗时,而且不能确保能找到最好的参数。

网格搜索

搜索是一种基本的超参数调优技术,为网格中指定的所有给定超参数值得每个排列构建模型,评估选择最佳模型。
由于超时了超参数得每一个组合,并根据交叉验证得分选择了最佳组合,所以会比较慢。

from sklearn.model_selection import GridSearchCV
clf=RandomForestRegressor()
grid=GridSearchCV(estimator=clf,param_distributions=random_grid,
                   n_iter=10,
                   cv=3,verbose=2,random_state=42,n_jobs=1)
grid.fit(x_train, y_train)
print(grid.best_params_)

随机搜索

随机搜索会优于网格搜索,由于许多情况下所有的超参数可能不是同等重要得,随机搜索从超参数空间中随机选择参数组合。
随机搜索不能保证给出的是最好得参数组合。

from sklearn.model_selection impor
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值