摘要:
  1.示例
  2.模型主要参数
  3.模型主要属性变量

前言:本文的目的是记录sklearn包中GBRT的使用,主要是官网各参数的意义;对于理论部分和实际的使用希望在只是给出出处,希望之后有时间能补充完整

摘要:

  1.示例

  2.模型主要参数

  3.模型主要属性变量

内容:

1.示例
>>> import numpy as np
>>> from sklearn.metrics import mean_squared_error
>>> from sklearn.datasets import make_friedman1
>>> from sklearn.ensemble import GradientBoostingRegressor

>>> X, y = make_friedman1(n_samples=1200, random_state=0, noise=1.0)
>>> X_train, X_test = X[:200], X[200:]
>>> y_train, y_test = y[:200], y[200:]
>>> est = GradientBoostingRegressor(n_estimators=100, learning_rate=0.1,
… max_depth=1, random_state=0, loss=\’ls\’).fit(X_train, y_train)
>>> mean_squared_error(y_test, est.predict(X_test))
5.00…

2.模型主要参数
2.1 n_estimators : int (default=100)
梯度提升的迭代次数,也是弱分类器的个数
2.2 loss : {‘ls’, ‘lad’, ‘huber’, ‘quantile’}, optional (default=’ls’)
损失函数
2.3 learning_rate : float, optional (default=0.1)
SGB(随机梯度提升)的步长,也叫学习速度,一般情况下learning_rate越低,n_estimators越大;
经验表明learning_rate越小,测试误差越小;具体的值参看http://scikit-learn.org/stable/modules/ensemble.html#Regularization
2.4 max_depth : integer, optional (default=3)
决策树桩(Decision Stump)的最大深度,预剪枝操作(这里的树深度不包括树根)
2.5 warm_start : bool, default: False
如果True,会存储之前的拟合结果,以供增加迭代次数

3.模型主要属性变量
3.1 train_score_ : array, shape = [n_estimators]
存储每次迭代的训练误差
3.2 feature_importances_ : array, shape = [n_features]
特征重要性,具体参照:http://scikit-learn.org/stable/modules/ensemble.html#random-forest-feature-importance

  

版权声明:本文为arachis原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/arachis/p/GBRT.html