论文解读9——TabNet: Attentive Interpretable Tabular Learning

目录

  • 1、文章贡献
  • 2、决策流型
  • 3、TabNet模型结构

论文解读9——TabNet: Attentive Interpretable Tabular Learning_第1张图片

好久没有更读论文的总结了,中途有几篇读了还没来得及记录,开学杂事一多竟然已经过了一个多月了……好吧其实就是自己懒,时间挤挤还是有的。
下面就关键记录模型的结构部分防止日后遗忘,其余部分就不写了,回归原文

1、文章贡献

这篇TabNet是暑假末尾看的一个结合了神经网络和决策树的模型,既有神经网络端到端的表征学习的能力,又有决策树良好的可解释性。

因为我们知道,跟神经网络相比的话,决策树这类的树模型有以下几个特点:训练速度快、可解释性强、比较适合应用于表格数据。而神经网络有着较好的端到端学习的表征学习能力,可以减轻对特征工程的需求。所以这篇文章的想法就是让神经网络去模拟决策树的行为,从而获得这两者的能力。

在这之前也有很多文章提出将神经网络结合决策树的想法,但都各有各的缺陷导致效果不佳,这篇TabNet号称在处理表格数据上可以达到和XGBoost、LightGBM这类集成树模型这么高的精度。

2、决策流型

  • 以下是一个决策流型,即对于输入特征x1和x2,通过a和d两个边界划分四块区域,其中每个区域对应不同的决策。
    论文解读9——TabNet: Attentive Interpretable Tabular Learning_第2张图片
  • 下面是用神经网络简单的模拟决策流的行为,首先是输入特征x1、x2通过两个掩码矩阵进行分流,类似于特征筛选后,经过全连接层(参数已设定)得到各自列向量,随后经过ReLu函数(ReLu函数对于负数输入,输出值为0)相当于是条件判断,就得到当x1分别大于a和小于a时不同的向量,x2类似,最后把结果加起来通过Softmax函数来得到不同决策的权重系数。
    论文解读9——TabNet: Attentive Interpretable Tabular Learning_第3张图片

3、TabNet模型结构

  • 下面是TabNet中encoder和decoder的结构,整体来看它是顺序多步的框架,在encoder的步骤中最关键的是Attentive transformer和Feature transformer这两个结构块。
    论文解读9——TabNet: Attentive Interpretable Tabular Learning_第4张图片
  • 其中Attentive transformer起的是一个特征选择的作用,它会根据上一步的结果得到当前步骤的掩码矩阵,且不同的样本可以产生不同的掩码矩阵,相当于让不同的样本选择不同的特征。
    下面是内部的结构,在通过全连接层和批量归一化后,式子里乘了一项Prior scales先验项,这个先验项的主要作用是可以表示特征在先前步骤的使用程度(一般我们会认为如果一个特征在先前步骤使用频率较高的话,希望它在当前步骤使用频率低一些),表达式里的γ起的就是这个调节作用。文中有提到,当γ=1的时候表示特征只能被使用一次,随着γ增大,这个约束会变宽一些。最后通过sparsemax函数得到当前的掩码值。(sparsemax是稀疏化的softmax,相比较来说,softmax输出的值均大于0,图像更加平滑,而sparsemax输出的值中会产生更多的0和1,输出更加稀疏化。)
    论文解读9——TabNet: Attentive Interpretable Tabular Learning_第5张图片
  • 第二个关键块是Feature transformer,它起的是特征计算的作用。内部结构主要分为两大块,前面一大块在所有步骤中是参数共享的,即可以计算共性特征;后面块在不同的步骤有不同的参数,即可以计算个性特征。每块中间有残差连接乘根号0.5来保持网络稳定。
    论文解读9——TabNet: Attentive Interpretable Tabular Learning_第6张图片
  • 从Feature transformer输出后经过split层把结果划分两部分,一部分经过ReLu层来得到最后的聚合结果;另一部分继续作为下一步Attentive transformer的输入来得到下一步的掩码矩阵。

在可解释性上,TabNet的特征选择掩码可以揭示不同步骤的特征,当第b个样本的第j个特征在当前步的掩码值为0则说明特征对最终的决策没有贡献。回到TabNet的encoder结构中,每个步骤ReLu输出的结果能够衡量每个决策步的重要性,最后把ReLu的聚合结果乘上当前步的掩码值加以结合就可以得到特征的贡献。

你可能感兴趣的:(论文解读,机器学习,决策树,人工智能,神经网络)