一、梯度提升树原理
梯度爆炸:
梯度:也就是导数
梯度提升树建立在普通决策基础上的,也由多颗树构建。
梯度提升树用于分类,也是森林,还是集成算法,用到的是,回归树。
基本树(决策树,分类树)
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
from sklearn.ensemble import GradientBoostingClassifier
from sklearn import tree
# X数据:上网时间和购物金额
# y目标:学生年级
X = np.array([[800,3],[1200,1],[1800,4],[2500,2]])
y = np.array([14,16,24,26])
# 梯度提升树算法
# 用到分类树
gbdt = GradientBoostingClassifier(n_estimators=10)
# 训练
gbdt.fit(X,y)
# 预测
gbdt.predict(X)
# 查看每一颗树的预测结果
gbdt[0,0].predict(X)
gbdt[-1,0].predict(X)
-----------------------------------------------