Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
szcf-weiya committed Sep 2, 2021
1 parent a02e6b0 commit 17ff28c
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions docs/16-Ensemble-Learning/16.3-Learning-Ensembles.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
| ---- | ---------------------------------------- |
| 翻译 | szcf-weiya |
| 发布 | 2016-09-30 |
| 更新2020-01-13 19:19:38|
| 更新 | {{ git_revision_date }} |
|状态|Done|

利用前面章节的知识得到更高效的集成模型.我们继续考虑下面形式的函数
Expand All @@ -17,13 +17,13 @@ $$

Friedman and Popescu (2003)[^1] 提出混合的方式,将这个过程分解为下面两步:

- 从训练集中导出有限的基函数字典集 $\cal T_L=\\{T_1(x), T_2(x),\ldots, T_M(x)\\}$;
- 从训练集中导出有限的基函数字典集 $\cT_L=\\{T_1(x), T_2(x),\ldots, T_M(x)\\}$;
- 通过在字典集中拟合 lasso 路径来构造 $f_\lambda(x)$ 函数族.
$$
\alpha(\lambda)=\arg\;\underset{\alpha}{\min}\sum\limits_{i=1}^NL[y_i, \alpha_0+\sum\limits_{m=1}^M\alpha_mT_m(x_i)]+\lambda\sum\limits_{m=1}^M\vert \alpha_m\vert\tag{16.9}\label{16.9}
\alpha(\lambda)=\argmin_\alpha\sum_{i=1}^NL[y_i, \alpha_0+\sum_{m=1}^M\alpha_mT_m(x_i)]+\lambda\sum_{m=1}^M\vert \alpha_m\vert\tag{16.9}\label{16.9}
$$

在这种简单的形式里面,将 $\cal T_L$ 看成是由 gradient boosting 算法或者随机森林算法得到的树的集合,该模型可以看成是 boosting 或者是随机森林的某种 post-processing 方式.通过对这些树进行 lasso 路径拟合,一般我们会得到更加简化的集合,它会大大减少未来预测的计算量和存储量.在下一节,我们将讨论这种方法的变种,进而降低 $\cal T_L$ 的相关性,并且提高 lasso post processor 的表现.
在这种简单的形式里面,将 $\cT_L$ 看成是由 gradient boosting 算法或者随机森林算法得到的树的集合,该模型可以看成是 boosting 或者是随机森林的某种 post-processing 方式.通过对这些树进行 lasso 路径拟合,一般我们会得到更加简化的集合,它会大大减少未来预测的计算量和存储量.在下一节,我们将讨论这种方法的变种,进而降低 $\cT_L$ 的相关性,并且提高 lasso post processor 的表现.

作为初步的说明,我们将这个过程应用到对 spam 数据集成的随机森林上.

Expand All @@ -38,10 +38,10 @@ $$
Friedman and Popescu (2003)[^1]**数值积分 (numerical quadrature)****重要性采样 (importance sampling)** 中获得启发.他们将未知的函数看成如下的积分

$$
f(x)=\int\beta(\gamma)b(x;\lambda)d\lambda\tag{16.10}
f(x)=\int\beta(\gamma)b(x;\gamma)d\gamma\tag{16.10}
$$

其中 $\gamma\in \Gamma$ 对基函数 $b(x;\lambda)$ 进行了编号.举个例子,如果基函数为树,则 $\gamma$ 索引了分离变量分离点以及终止结点里面的值.**数值积分 (numerical quadrature)** 意味着寻找 $M$ 个赋值点 $\gamma_m\in\Gamma$ 的集合,以及对应的权重 $\alpha_m$ 使得 $f_M(x)=\alpha_0+\sum\limits_{m=1}^M\alpha_mb(x;\gamma_m)$ 在 $x$ 的定义域内近似 $f(x)$.**重要度采样 (Importance Sampling)** 意味着随机对 $\gamma$ 采样,但是对于空间 $\Gamma$ 的相关区域赋予更大的权重.Friedman and Popescu (2003)[^1] 建议采用损失函数 \eqref{16.9} 来衡量相关性(的缺失):
其中 $\gamma\in \Gamma$ 对基函数 $b(x;\gamma)$ 进行了编号.举个例子,如果基函数为树,则 $\gamma$ 索引了分离变量分离点以及终止结点里面的值.**数值积分 (numerical quadrature)** 意味着寻找 $M$ 个赋值点 $\gamma_m\in\Gamma$ 的集合,以及对应的权重 $\alpha_m$ 使得 $f_M(x)=\alpha_0+\sum\limits_{m=1}^M\alpha_mb(x;\gamma_m)$ 在 $x$ 的定义域内近似 $f(x)$.**重要度采样 (Importance Sampling)** 意味着随机对 $\gamma$ 采样,但是对于空间 $\Gamma$ 的相关区域赋予更大的权重.Friedman and Popescu (2003)[^1] 建议采用损失函数 \eqref{16.9} 来衡量相关性(的缺失):

$$
Q(\gamma)=\underset{c_0,c_1}{\min}\sum\limits_{i=1}^NL(y_i, c_0+c_1b(x_i;\gamma))\tag{16.11}
Expand All @@ -63,7 +63,7 @@ Friedman and Popescu (2003) [^1] 提出采用 sub-sampling 作为引入随机性

![](../img/16/alg16.2.png)

$S_m(\eta)$ 指的是大小为 $N\cdot \eta (\eta\in [0, 1])$ 的训练观测值的子样本,一般是无放回采样. 他们的模拟建议取 $\eta\le 1/2$,并且对于大 $N$ 取 $\eta\sim 1/\sqrt{N}$.降低 $\eta$ 会提高随机性,也因此提高宽度 $\sigma$.参数 $\nu\in[0, 1]$ 对随机过程引入*memory*;$\nu$ 越大,越能避免 $b(x;\gamma)$ 与之前找到的一致.很多熟悉的随机化模式都是算法 16.2 的特殊情形:
$S_m(\eta)$ 指的是大小为 $N\cdot \eta (\eta\in [0, 1])$ 的训练观测值的子样本,一般是无放回采样. 他们的模拟建议取 $\eta\le 1/2$,并且对于大 $N$ 取 $\eta\sim 1/\sqrt{N}$.降低 $\eta$ 会提高随机性,也因此提高宽度 $\sigma$.参数 $\nu\in[0, 1]$ 对随机过程引入 **记忆 (memory)**;$\nu$ 越大,越能避免 $b(x;\gamma)$ 与之前找到的一致.很多熟悉的随机化模式都是算法 16.2 的特殊情形:

- Bagging:$\eta=1$,但是是有放回地采样,并且有 $\nu=0$.Friedman and Hall (2007)[^2] 认为 $\eta=\frac 12$ 时无放回抽样等价于 $\eta=1$ 时的采样,并且前者更有效.
- Random forest 的采样也类似,只是通过分离变量的选择引入了更多的随机性.在算法 16.2 中降低 $\eta<\frac 12$ 与随机森林中减低 $m$ 有类似的效果,但是不会有 [15.4.2 节](/15-Random-Forests/15.4-Analysis-of-Random-Forests/index.html) 中讨论的潜在的偏差问题.
Expand Down

0 comments on commit 17ff28c

Please sign in to comment.