美文网首页
初窥GBDT

初窥GBDT

作者: 粒子_6816 | 来源:发表于2017-04-16 23:11 被阅读0次

1. Boosting

Boosting: Reweighing the sample
for t = 1,...,T:
. construct distribution Dt on {1,...,m}
. find weak hypothesis ("rule of thumb")
![](http://latex.codecogs.com/png.latex?$$h_t:x \to {-1,+1}$$)
with small errorεt
![](http://latex.codecogs.com/png.latex?$$\varepsilon_t=P_{r D_t}[h(x_i) \ne y_i] = \sum_{h_t(x_i) \ne y_i}{D_t(i)}$$)
.output final hypothesis. Hfinal
Ada Boost
Ada Boost通过调整样本的权重,来重视误分类样本的影响。在下一个model中使用带权重的样本来训练新的弱分类器。Ada boost使用误差来计算权重的更新比例。
constructing Dt .
![](http://latex.codecogs.com/png.latex?$$D_0(i) = \frac{1}{m}$$)
given Dt and ht
![](http://latex.codecogs.com/png.latex?$$D_{t+1} = \frac{D_t}{Z_t}*\left{
\begin{aligned}
& \exp^{\alpha t} & \text{ if } y_i=h_t(x_i) \
& \exp^{- \alpha t} & \text{ if } y_i=h_t(x_i)
\end{aligned}
\right.$$)
where Zt = normalization constant
![](http://latex.codecogs.com/png.latex?$$\alpha_t =\frac{1}{2}\ln(\frac{1-\varepsilon_t}{\varepsilon_t}) > 0$$)
final hypothesis:
![](http://latex.codecogs.com/png.latex?$$H_{final}(x) =sgn ( \sum_t{\alpha_t h_t(x)} ). $$)
Bootstrap也有类似思想,它在每一步迭代时不改变模型本身,也不计算残差,而是从N个instance训练集中按一定概率重新抽取N个instance出来(单个instance可以被重复sample),对着这N个新的instance再训练一轮。由于数据集变了迭代模型训练结果也不一样,而一个instance被前面分错的越厉害,它的概率就被设的越高,这样就能同样达到逐步关注被分错的instance,逐步完善的效果。Adaboost的方法被实践证明是一种很好的防止过拟合的方法,但至于为什么则至今没从理论上被证明。

2. Gradient Boost

3. GBDT

GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案。它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法。近些年更因为被用于搜索排序的机器学习模型而引起大家关注。
GBDT的核心就在于,每一棵树学的是之前所有树结论和的残差,这个残差就是一个加预测之后能的真实值的累加量。GBDT中所用的树是回归树,而不是分类树。分枝时穷举每一个feature的每个阈值找最好的分割点,衡量最好的标准不再是最大熵,而是最小化均方差--即(每个样本的真实值 - 预测值)^2 的总和 / N,或者说是每个人的预测误差平方和除以N。GBDT的核心在于累加所有树的结果作为最终结果,而分类树的结果显然是没办法累加的。

PS: 熵

转自知乎

参考:

1.http://blog.csdn.net/w28971023/article/details/8240756

相关文章

  • 初窥GBDT

    1. Boosting Boosting: Reweighing the samplefor t = 1,...,...

  • 初窥

    初窥世界的美好 白的风 白的肌肤 和盈盈一握的腰肢 在你的头发里 有一个蓝色大海的梦 蓝的帆船和蓝的浪花 自然是美...

  • 初窥

    这个积分管理项目已经到收尾的阶段了,感受良多。 对于错误处理这方面这周我的规划也更为清楚一些了。明天如果能够预期结...

  • 初窥南京

    古鸡鸣寺门外,一条长满爬山虎的墙。 城墙下的绿植。 1912街区,没有什么能过阻挡,我对自由的向往。 午后墙壁上斑...

  • 初窥HTTP

    要知道HTTP肯定要先知道WWW,下面我用思维导图来介绍下: 1,弄懂了上图的关系,接下来着重介绍HTTP。 先介...

  • 初窥Scrapy

    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据...

  • mongodb初窥

    启动MongoDB服务:在 MongoDB 安装目录的 bin 目录下执行mongod show dbs -- 显...

  • RxSwift初窥

    前言 很久一段时间没写博客了,一方面是自己各种事情折腾,二是新项目开始用Swift了,边学边做忙死了,现在终于快忙...

  • block初窥

    一.block的简单使用 1.block声明 block变量的声明格式为: 返回值类型 (^block名字)(参数...

  • Hbase初窥

    Hbase能做什么 海量数据的存储 海量数据的查询 企业数据海量查询 项目需求功能 海量数据 实时查询 场景复杂 ...

网友评论

      本文标题:初窥GBDT

      本文链接:https://www.haomeiwen.com/subject/qgiaattx.html