之前用过这个模型,现在也就想写一下。看过很多资料,这个文章最舒服AI研习社 - 研习AI产学研新知,助力AI学术开发者成长。大家可以参考下。
tabnet的主体思想是用nn来表示决策树,深度学习能够对多种类型数据进行编码,并将其结合起来减轻特征工程的依赖、端到端的表征学习。
1 特征掩码
输入是特征向量 ,首先分别通过两个Mask层将
和
单独筛选(屏蔽一个,下面介绍如何筛选)出来,然后通过一个weight和bias都被专门设定过的全连接层,并将两个FC层的输出通过ReLU激活函数后相加起来,最后经过一个Softmax激活函数作为最终输出。如果与决策树的流程进行对比,我们可以发现其实这个神经网络的每一层都对应着决策树的相应步骤:Mask层对应的是决策树中的特征选择,这个很好理解;FC层+ReLU对应阈值判断ÿ