【深度森林第三弹】周志华等提出梯度提升决策树再胜DNN
【深度森林第三弹】周志华等提出梯度提升决策树再胜DNN
技术小能手 2018-06-04 14:39:46 浏览848
还记得周志华教授等人的“深度森林”论文吗?今天,ArXiv上公布了深度森林系列最新的第三弹——可做表示学习的多层GBDT。
在这篇题为“Multi-Layered Gradient Boosting Decision Trees”的论文中,作者冯霁、俞扬和周志华提出了一种新颖的具有显式表示学习能力的多层GBDT森林(mGBDT),它可以与目标传播(target propagation)的变体进行共同训练。由于树集成(tree ensembles)的优异性能,这种方法在很多神经网络不适合的应用领域中具有巨大的潜力。这项工作还表明,一个不可微分的系统,也能够具有可微分系统的关键功能(多层表示学习)。
用决策树也能做多层分布式表示学习
深度神经网络的发展在近十年来在机器学习领域取得了显著的进展。通过构建层次结构或“深层”结构,模型能够在监督或非监督的环境中从原始数据中学习良好的表示,这被认为是成功的关键因素。成功的应用领域包括计算机视觉、语音识别、自然语言处理等等。
目前,几乎所有的深度神经网络都是利用随机梯度下降的反向传播作为训练过程中对训练更新参数的主力。的确,当模型由可微组件组成(例如,带有非线性激活函数的加权和)时,反向传播仍然是目前的最佳选择。其他一些方法如目标传播作为神经网络训练的一种替代方法已经被提出,但其有效性和普及程度仍处于早期阶段。例如,已有的工作证明了目标传播最多可以和反向传播一样好,并且在实践中,经常需要额外的反向传播来进行微调。换句话说,旧的、好的反向传播仍然是训练可微学习系统(如神经网络)最有效的方法。另一方面,探索利用不可微模块构建多层或深层模型的可能性不仅具有学术意义,而且具有重要的应用潜力。例如,
诸如随机森林或梯度提升决策树(GBDT)之类的树集成仍然是在各种领域中对离散或表格数据进行建模的主要方式,因此将在树集成的数据中获得所学习的分层分布式表示。
由于没有机会使用链式法则传播误差(use chain rule to propagate errors),因此不可能进行反向传播。这就产生了两个基本问题:首先,我们能否构造一个具有不可微组件的多层模型,使中间层中的输出可以被视为分布式表示?第二,如果是这样的,如何在不借助反向传播的情况下共同训练这些模型?本文的目的就是提供这样的一种尝试。
最近周志华和冯霁提出了“深度森林”框架,这是第一次尝试用树集成来构建多层模型。具体来说,通过引入细粒度扫描(fine-grained scanning )和级联操作(cascading operations),该模型能够构建具有自适应模型复杂性的多层结构,并在广泛的任务范围内有竞争性表现。周志华教授等人之前提出的gcForest模型利用了集合学习的多样性增强的所有策略,但这种方法只适用于有监督的学习环境。与此同时,如何利用forest构建多层次模型,明确地检验其表示学习能力,目前还不清楚。由于前人的许多研究表明,多层分布表示法可能是深度神经网络成功的关键原因,因此对表示学习法进行探索是必要的。
训练多层GBDT森林
在这一工作中,目标是充分利用两个世界中最好的部分:树集成的优秀性能和分层分布式表示的表达能力(主要在神经网络中进行了探索)。具体地说,我们提出了第一个多层结构,使用梯度增强决策树作为每层的构建块,明确强调其表示学习能力,并通过目标传播的变体共同优化训练过程。模型可以在监督和非监督设置下进行训练。过去通常认为树只可能用于神经网络或可微系统,作者在论文中指出,这项工作首次证明了,我们可以使用树来获得分层和分布式的表示。理论证明和实验结果都表明了该方法的有效性。论文的其余部分是这样组织的:首先,讨论一些相关的工作;其次,提出了具有理论依据的方法;最后对实验结果进行了说明和讨论。
实验结果:mGBDT的精度和鲁棒性都高于神经网络
在实验部分,作者表示他们的主要目的是证实联合训练mGBDT是否可行,并无考虑文中所提出的方法在视觉任务中优于CNN。具体说,他们设计了合成数据分类、收入预测、蛋白质定位等实验,考虑以下几个问题:(Q1)训练过程是否在实践中收敛?(Q2)学到的feature是怎样的?(Q3)深度是否有助于学习到更好的表示?(Q4)给定相同的结构,与通过反向传播或目标传播训练的神经网络相比,文中所提出的层级结构的性能如何?
下表展示了收入预测(左)和蛋白质定位(右)任务中,多层GBDT森林(mGBDT)与XGBoost、神经网络的精度对比。
在给定相同模型结构的情况下,mGBDT比神经网络(包括目标传播和反向传播两者)的精度要高,多层GBDT的性能比单层GBDT好。其次,目标传播训练的神经网络,收敛性不如预期的那样好,而使用GBDT层的相同结构可以实现较低的训练损失而不会过拟合。
此外,作者在蛋白质定位实验中,通过改变网络的结构设计,表明在大多数情况下,mGBDT的鲁棒性比神经网络更高。尤其是目标训练的神经网络,在中间层增加后,最高从 0.5964 降低到了0.3654,而mGBDT一直保持相对稳定。
最后,作者还列出了他们未来探讨的方面,比如深度森林整合(Deep Forest Integration)以及使用mGBDT的变体和混合DNN
【深度森林第三弹】周志华等提出梯度提升决策树再胜DNN的更多相关文章
- (二)《机器学习》(周志华)第4章 决策树 笔记 理论及实现——“西瓜树”——CART决策树
CART决策树 (一)<机器学习>(周志华)第4章 决策树 笔记 理论及实现——“西瓜树” 参照上一篇ID3算法实现的决策树(点击上面链接直达),进一步实现CART决策树. 其实只需要改动 ...
- [重磅]Deep Forest,非神经网络的深度模型,周志华老师最新之作,三十分钟理解!
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术感兴趣的同学加入. 深度学习最大的贡献,个人认为就是表征 ...
- AI产业将更凸显个人英雄主义 周志华老师的观点是如此的有深度
今天无意间在网上看的了一则推送,<周志华:AI产业将更凸显个人英雄主义> http://tech.163.com/18/0601/13/DJ7J39US00098IEO.html 摘录一些 ...
- 周志华-机器学习西瓜书-第三章习题3.5 LDA
本文为周志华机器学习西瓜书第三章课后习题3.5答案,编程实现线性判别分析LDA,数据集为书本第89页的数据 首先介绍LDA算法流程: LDA的一个手工计算数学实例: 课后习题的代码: # coding ...
- 【Todo】【读书笔记】机器学习-周志华
书籍位置: /Users/baidu/Documents/Data/Interview/机器学习-数据挖掘/<机器学习_周志华.pdf> 一共442页.能不能这个周末先囫囵吞枣看完呢.哈哈 ...
- 《AlphaGo世纪对决》与周志华《机器学习》观后感
这两天看了<AlphaGo世纪对决>纪录片与南大周志华老师的<机器学习>,想谈谈对人工智能的感想. 首先概述一下视频的内容吧,AlphaGo与李世石对战的过程大家都有基本的了解 ...
- 偶尔转帖:AI会议的总结(by南大周志华)
偶尔转帖:AI会议的总结(by南大周志华) 说明: 纯属个人看法, 仅供参考. tier-1的列得较全, tier-2的不太全, tier-3的很不全. 同分的按字母序排列. 不很严谨地说, tier ...
- 机器学习周志华 pdf统计学习人工智能资料下载
周志华-机器学习 pdf,下载地址: https://u12230716.pipipan.com/fs/12230716-239561959 统计学习方法-李航, 下载地址: https://u12 ...
- 【转载】 AI会议的总结(by南大周志华)
原文地址: https://blog.csdn.net/LiFeitengup/article/details/8441054 最近在查找期刊会议级别的时候发现这篇博客,应该是2012年之前的内容,现 ...
随机推荐
- 冲刺阶段——Day6
[今日进展] 完成登录代码 userRegister类 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.ev ...
- 会声会影x7 每次安装均会提示:已安装这个产品的另一个版本
会声会影x7 每次安装均会提示:已安装这个产品的另一个版本 卸载C++2008 的库就行了 文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论
- Win10 更新出现问题,建议完全重置系统
语言包引起问题. 文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论
- CPU、io、mem之间的关系
https://blog.csdn.net/weixin_38250126/article/details/83412749 https://blog.csdn.net/joeyon1985/arti ...
- 图像质量评价-NQM和WPSNR
王保全. 基于混合专家模型的快速图像超分辨率方法研究与实现[D]. 2015. PSNR 和SSIM 在有时候并不能很确切的表示图像质量 标准,该论文中根据一定量的人为的感知评分作为参考,用斯皮尔曼等 ...
- C之枚举
#include<stdio.h>#include<stdlib.h>enum WeekDay{ Monday,Tuesday,Wednesday,Thursday,Frida ...
- 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_11-webpack研究-npm和cnpm安装配置
node.js安装完成后,就自动安装了webpack. npm -v:查看npm安装的版本 当前安装目录默认的包 在node.js的目录下创建两个文件夹 这样路径就被修改成功了 cnpm npm in ...
- 升级系统中的java到1.8版本
(1).安装或升级java,并配置环境变量 注意:此处分为yum安装与rpm安装,区别在于yum安装省事但配置麻烦,rpm安装麻烦但配置省事. 1)yum安装 在安装前可以使用yum list ins ...
- 查看创世区块 Genesis Block和channel.tx文件
将 Block 详细内容导入到 json 文件查看 configtxgen -inspectBlock channel-artifacts/genesis.block > genesis.blo ...
- TensorFlow.训练_资料(有视频)
ZC:自己训练 的文章 貌似 能度娘出来很多,得 自己弄过才知道哪些个是坑 哪些个好用...(在CSDN文章的右侧 也有列出很多相关的文章链接)(貌似 度娘的关键字是"TensorFlow ...