首页 > 编程语言 > 详细

Python机器学习之梯度提升树

时间:2018-07-14 19:24:16      阅读:277      评论:0      收藏:0      [点我收藏+]

#和随机森林一样,基于决策树,采用连续的方式构建树,深度很小max_depth<5.重要的参数n_estimate和learning_rate,这两个参数的y作用在于对模型过拟合化得调整,从而提高模型得泛化能力。

from sklearn.ensemble import GradientBoostingClassifier

from sklearn.datasets import load_breast_cancer

from sklearn.model_selection import train_test_split

cancer=load_breast_cancer()

x_train,x_test,y_train,y_test=train_test_split(cancer.data,cancer.target,random_state=0)

gbrt=GradientBoostingClassifier()#模型不做参数调整

gbrt.fit(x_train,y_train)

print(gbrt.score(x_train,y_train))

print(gbrt.score(x_test,y_test))

#对模型做预剪枝

gbrt=GradientBoostingClassifier(n_estimate=100,learning_rate=0.01)

#n_estimate主要控制树的数量,learning_rate控制错误的纠正度改参数越小模型越复杂

Python机器学习之梯度提升树

原文:https://www.cnblogs.com/thechain/p/9310689.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!