Abstract

NNs:在特定的网络结构下进行表示学习,DTs:以数据驱动的方式在预先定义的特征上学习层次结构。本文提出了两者的融合结构ANTs,将表示学习融入决策树的边、路由函数、叶节点。实验证明了在分类和回归数据集上的优异性能。ANTs主要受益于1、条件计算的轻量级推理和2、对任务有用的层次特征分离,3、设计了一种对不同数据集相适应的结构。

Introduction

NNs的特点是通过非线性变换的组合来学习数据的层次表示(hierarchical representation),与其他机器学习模型相比,一定程度上减轻了对特征工程的需求。此外,NN还使用随机优化器(如随机梯度下降)进行训练,使训练能够扩展到大型数据集。因此,借助现代硬件,可以在大型数据集中训练多层NN,以前所未有的精确度解决目标检测、语音识别等众多问题。然而,它们的结构通常需要手动设计并且对每个任务和数据集都要进行修整。
DTs的特点是学习数据的层次聚簇。DT学习如何分割输入空间,以便在每个子集中,线性模型足以解释数据。与标准NNs相比,DTs的体系结构是基于训练数据优化的,在数据稀缺的情况下尤其有利。由于每个输入样本只使用树中的一个根到叶(root-to-leaf)的路径,因此DT是享有轻量级推理(lightweight inference)的。然而,在使用DT的成功应用中,往往需要手动设计好的数据特征。由于DT通常使用简单的路径函数,它在表达能力方面是具有局限性的。
因此,本文设计的ANTs具有如下性质:
表示学习:由于ANT中的每个根到叶(root-to-leaf)路径都是NN,因此可以通过基于梯度的优化来端到端(end-to-end)地学习特征。结合树结构,ANTs可以学习到层次共享和分离的特征。
结构学习 :通过逐步增长的ANT,结构可以适应数据的可用性和复杂性。增长过程可以看作是神经结构搜索的一种形式。
轻量级推理 :在推理时,ANT执行条件计算,基于每个样本,在树中选择一个根到叶的路径,且只**模型的一个子集。

Model

Model Topology and Operations

Adaptive Neural Trees学习笔记

输入空间:X(x1,x2,…,xn)
输出标签:Y(y1,y2,…,yn)
有监督学习:使用N个训练数据,学习P(y|x)条件分布。
定义ANT: a pair(T,O)
T:表示模型拓扑结构,定义为二叉树结构,{N,E}其中N表示节点集合,E表示节点之间边的集合,N_leaf表示叶子节点集合,N_int表示内部节点集合,每个内部节点j有两个子节点left(j)right(j)
O:表示操作集,三个基础模型Routers,Transformers,Solvers
Routers: R,每个内部节点N_int集合中的j有一个router module表示为r_j_theta,输入x_j,输出[0,1],theta表示参数。决定选择left 还是right。
Transformer:T,每个边E中的e包含一个或多个transformer module表示为t_e_psi,非线性函数,参数为psi。
Solvers:S,每个叶节点集合N_leaf”中的l有一个solves module,表示为s_l_phi,输入x_l,输出y,phi表示参数。

Probabilistic model and inference

ANT对条件分布p(y|x)进行建模并作为层次混合专家网络(HME),每个HME被定义为一个NN并对应于树中特定的根到叶(root-to-leaf)路径。假设我们有L个叶子节点,则完整的预测分布为:
Adaptive Neural Trees学习笔记

L为叶节点数量
Adaptive Neural Trees学习笔记
表示从根节点到叶节点的路由选择概率分布
Adaptive Neural Trees学习笔记
Adaptive Neural Trees学习笔记
表示非线性转换

Experiments

列“Error (Full)” 和 “Error (Path)”表示基于全分布和单路径推断(single-pathinference)的预测分类错误。列“Params(Full)”和“Params(Path)”分别表示模型中的参数总数和单路径推断的参数平均值。“Ensemble Size”表示集成的规模。“-”表示空值,“+”表示与ANT在相同的实验设备进行训练的方法, “*”表示参数是使用预先训练的CNN初始化的。
Adaptive Neural Trees学习笔记
UCL等提出完全可微自适应神经树:神经网络与决策树完美结合

相关文章: