论文阅读:Deep forest/深度森林/gcForest

最近组会汇报了这篇文章,简单把思想梳理下来了,对了搜索深度森林的时候可能会看到Deep Forest: Towards an Alternative to Deep Neural Networks,这两篇文章的内容基本上是一致的,只在叙述方面有一些很小的不同。

下面是我做的ppt里的内容:参考文章:http://t.csdn.cn/iSKfj

主要内容

深度学习模型主要建立在神经网络上,即可以通过反向传播训练的多层参数化可微分非线性模块。 探索不可微模块构建深度模型的可能性,提出了深度学习模型--gcforest(multi-Grained Cascade Forest)  

特点:

(1)超参数少

(2)模型的复杂度可以通过与数据相关的方式自动确定

(3)无需使用反向传播就可以实现深度模型

提出疑问:

(1)深度模型=DNN?深度模型必须用可微模块构建?

(2)是否有可能训练出不需要反向传播的深度模型?

(3)是否有可能使深度模型赢得任务,如随机森林?

启发1:集成学习

为了构建一个良好的集成模型,个体的学习应该是准确的和多样化的。

提高模型多样性的操作:

(1)数据样本:从不同个体中生成不同的数据样本

(2)输入特征:不同特征选取生成树的模型是不一样的

(3)学习参数不同

(4)输出表示: 对不同的个体使用不同的输出表示。

启发2:DNN

 深度模型的优势:     逐层处理(图1) 模型内特征转换 巨大的模型复杂度

             不足之处:     超参数多 需要大量训练数据 训练之前必须确定网络架构

作者认为逐层处理是DNN成功的关键,如图1所示,随着网络层次的深入,更高层次的抽象特征也会逐渐出现。

级联森林结构

采用不同种类的树提高模型的多样性

 图中的级联森林每一层包括两个随机森林(黑色)和两个极端随机森林(蓝色),每个森林包含500颗树。

 两种森林的主要区别:

样本空间不同——随机特征子空间/全部样本数据

分裂节点方法不同——最小的基尼指数/随机选择一个

随机森林与极端随机森林:http://t.csdn.cn/c5BZw

级联森林估计的类分布形成一个类向量,然后与原始特征向量连接,输入到下一层。

 假设有三个类;四个森林中的每一个都将产生一个3D类向量;因此,下一个关卡将获得12个(= 3 × 4) 增强特征。

这里,我理解的是这个类分布向量形成图展示的是级联森林中输入特征向量进入其中一个森林的过程,所以上图右边生成一个三维的向量。

 

 为了降低过拟合的风险,每个森林产生的类向量通过k折交叉验证产生。

每个实例将被用作训练数据k−1次,然后对产生的类向量进行平均得到最终的类向量,作为级联下一级的增强特征。

在扩展了一个新的级联级别后,可以在验证集上估计整个级联的性能,如果没有显著的性能增益,训练过程将终止;因此,级联级别的数量可以自动确定。 即gcForest在适当的时候终止训练自适应地决定模型的复杂度。这使得它适用于不同规模的训练数据,不局限于大规模的训练数据。

 多粒度扫描

滑动窗口用于扫描原始特征

 将以上两个步骤连接起来就是gcforest的流程图啦

下图中,假设有 3 个类,并且分别使用 100 维 200 维 300 维的窗口在原始 400 维的特征上进行滑动

 级联的级联:每个级联由多个级别组成,每个级别对应一个扫描粒度。

 

 超参数和默认设置

黑体字表示影响较大的超参数,"?"表示需要根据不同任务进行调节。

 表一表明gcforest所需超参数更少,结构更加简单。

性能

 

 图6 显示当级联级别增加时,gcforest的性能趋势。

 

 图8表示更大的模型往往能提供更好的性能。

实验结果

 简单放两个实验,文章中有很多。

 

 关于代码

代码我还没有跑好,不过已经下载了,看到一篇对代码构成讲解很详细的文章。

链接放这啦:http://t.csdn.cn/lo3jX

等我调好了再来。

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值