【深度森林第三弹】周志华等提出梯度提升决策树再胜DNN
还记得周志华教授等人的“深度森林”论文吗?今天,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