表格数据学习方法综述阅读(上)
表格数据(tabular data)是日常生活中最常见的数据格式,为了挖掘表格数据中的有效信息,提出了很多相关的算法。这篇综述概括了表格数据的机器学习与深度学习方法,原文来自于南京大学LAMDA实验室中的LAMDA-tabular课题组,文章地址。
1-3
对于tabular data的一些简单介绍,略过
4 特定方法的分类
作者将模型分为三类:特化方法(specialized methods), 迁移方法(transferable methods), 广义方法(general methods)。
Specialized method
作者从3个角度入手讲述特化模型的方法:
Feature Aspect:特征角度来看,模型主要针对数据特征的关系进行建模。
Sample Aspect:从样本特征来看,模型通过最大化每个样本最邻近样本的作用来预测。
Objective Aspect:从客观角度,修改损失函数和整体目标(Overall objective)来引导模型特定的模式与偏好,注入inductive bias(推断偏倚)。
Feature Aspect
特征角度来看,模型主要针对数据特征的关系进行建模。
传统特征工程主要依赖于人手工设计特征,随着深度学习的进展,诸多特征相关的模型出现,例如特诊编码、选择、投影和交互。
Feature Encoding
注意力机制让我们可以像自然语言处理中的词嵌入一样对于特征进行tokenization,将所有特征转变为嵌入。
Categorical Encoding
最主要使用的两种策略是序列编码(Ordinal Encoding)和独热编码(One-hot Encoding)。更加先进的编码方式还有Target Encoding,通过将该类的结局变量(target)的均值赋为该类的编码。该方法主要用于该变量与结局有很强的相关性。在留一法(Leave-one-out embedding)中,每个类都被赋予除了该变量的其他的结局均值。
Numerical Encoding
MLP-PLR引入了2种数值编码方式:Piecewise Linear Encoding(PLE:分段线性编码) 和 Periodic Activation Function(周期性激活函数)。这两种方法可以与其他分类方法结合来提高表现。PLE基于特征分箱,为原始标量值生成了替代的初始表示。周期性激活函数考虑到:嵌入框架都是将所有特征独立处理,这让结合变量在嵌入过程中变得不可能。因此,周期激活函数会训练激活前的系数,而不仅仅是固定不变。
Feature Tokenization
它将特征转为embedding,因为特征表示是非常稀疏的,常用的方法就是将其转化为低维度表示(这里主要是将图片转为图特征向量)。
广义的特征tokenization可以被表示如下:
$$T_{i,j}=b_{j}+\tau(x_{i,j};\Psi)\in \mathbb{R}^t$$
其中,$\tau(\cdot)$是特征分词器模块,将输入$x_{i} \in \mathbb{R}^d$转为嵌入$T_{i,j} \in \mathbb{R}^t$,$b_{j}$是第j个特征的偏倚,$\Psi$是可学习参数。
AutoInt将分类变量和数值变量同时编码为低维度的变量。TabTransformer将每个分类变量手机用Column Embedding嵌入一个t维度的参数嵌入中。SAINT在传入 transformer编码器前,先将数值变量映射到一个t维的空间内。FT-Transformer使用了transformer架构。其中,数值变量使用了逐元素加法$T_{i}^{num}=b_{i}^{num} + x_{i}^{num}W_{i}^{num}$;分类变量则使用了查表法$T_{i}^{cat} = b_{i}^{cat} + e_{i}^TW_{i}^{cat}$,其中$e_{i}^T$是对应类的独热向量。
Feature Selection
高维度的数据常常会带来过拟合,模型过度关注无关的特征从而忽视了更加重要的特征,特征选择留下了最重要的特征避免过拟合。
传统树学习使用自动的特征选择来评估每个特征与结局之间的关联。决策树使用了基尼系数或者信息增益;随机森林使用了计算每个特征贡献度的方法;最近现代学习方法经常模拟树结构的方法来进行特征选取。
GrowNet和NODE主要模仿了集成学习的方法,受GBDT启发,GrowNet设计了使用多个DNN构建多个弱学习器,每个学习器输入初始变量和前一层的输出;NODE使用可导遗忘决策树(Differentiable Oblivious Decision Tree)作为基学习器,在每层使用bagging和每个多层结构间使用stacking;为了让GAM(广义加性模型)可量化且高效,NODE-GAM将NODE改为GAM并允许GAM学习快速、非线性的跳跃以适应真实数据。
TabNET和GRANDE更加关注树模型如何处理特征。TabNET不仅仅通过自监督学习保留了深度神经网络的表征学习能力,同时还融合了树模型的可解释性和稀疏特征选取能力;GRANDE认为树模型中的硬分裂(hard splits:某个特征的值满足条件就完全走一条路径)是深度模型的关键优势,并由此提出了一种利用梯度下降来学习硬、轴对称(axis-aligned:仅基于一个特征分裂,对立的是oblique split,需要结合多个特征进行分裂)的树集成模型,将轴对称分裂带来的有效归纳偏差与梯度下降优化带来的灵活性结合。
Feature Projection
特征映射旨在将特征转为中间形式,加强表达能力。特征映射可被分为两类:MLP变体和专门设计的架构。这些方法旨在加强模型对于复杂特征的表达能力:
MLP Variant:RTDL研究了类似Resnet和基于transformer架构的模型,提出了简单但是有效的调整,尤其是MLP架构,其使用了多个包含线性层、ReLU激活函数和Dropout的块的堆叠,这将原始特征转为了固定维度的潜在表征,最终一个线性层作为分类头。这篇文章强调:如果有合理的超参数,简单的MLP和ResNet也能达到benchmarks。
另外一个同期的研究通过给MLP装备了一组正则化现代套件。通过多种正则方法的堆叠,形成了一种正则化鸡尾酒的方法。这个研究揭示了两种重要发现:1) 原版MLP(vanilla MLP: 有趣的是vanilla有”香草”的意思)通过正则化可以超过许多为面板数据设计的特化的、现代的神经网络架构;2) 这样的MLP甚至可以超过XGBoost。RealMLP探索了包括预处理、超参数调参、架构、正则化和初始化的多个角度。
Special Designed Architectures:对于单元,受到归一化方法容易导致干扰,SNN提出了SELU(Scaled Exponential Linear Unit);NAMs使用ExU(exp-centered hidden units)来提升对于跳跃函数(jumpy function)的学习能力;BiSHop使用双组分方法(dual-component approach:指的是一种将两个主要部分、机制或因素结合起来解决问题、建模、分析的策略。它体现的是“两个互补或协同的部分共同作用”。)使用两个有方向性、彼此连接的学习模块按顺序评估数据的行和列,他使用了现代Hopfield层
Feature Interaction
广义形式可以表示为:
$$\hat{y_{i}} = f(\mathcal{H}(x_{i}; \Theta))$$
其中$x_{i} \in \mathbb{R}^d$是输入向量,$\mathcal{H}(\cdot)$为特征交互模块,提取输入的特征依赖性并产生高维度的特征交互项;$f(\cdot)$是预测头。
特征交互可以被广泛的分为两类:自动交互模块的设计和潜在交互的挖掘。这些方法旨在加强模型学习复杂交互项和潜在特征结构的能力。
Automatic Feature Interaction Modules:这些方法并不假设特定的特征类型,相仿,其关注提高模型中特征交互过程,让模型可以学到复杂且高维度的特征相关性。DCNv2通过Cross Network架构,它使用低秩方法(low-rank methods: 将高维度的参数矩阵$W \in \mathbb{R}^{d\times d}$化为两个低维度的矩阵$U,V \in \mathbb{R}^{d\times r}, W = UV^\mathbf{T}$,以避免过拟合,非常有趣的方法,如果看过transformer的架构就会发现: transformer在embedding的过程中input embedding和output embedding共用矩阵,这其实也是一种降低过拟合的方法)在子空间中近似特征交叉(feature crosses:指的是将多个原始特征组合起来,比如将“性别 + 年龄”合成一个组合特征),然后通过门控机制将这些子空间融合.AutoInt将原始稀疏的高维度特征向量(例如one-hot之后的类别)转为低维度空间并通过注意力机制将交互层堆叠(就是对于每个样本进行注意力操作);不像AutoInt,TabTransformer只将类别变量嵌入内容嵌入,数值特征直接与交互后的上下文嵌入向量进行拼接。当只有数值变量时,其表现得像MLP,只有分类变量时,其表现得像AutoInt.
DANets提出了表格数据中潜在特征组的存在,在每个特征组内的特征是相互之间相关的。它学习将特征分组并进行进一步的特征抽象;SwitchTab提出了一种思想:在表格特征中提取样本特异性的显著特征和样本共享的互信息(Mutual Information);ExcelFormer认为DNN为每个特征赋予了一个权重,这会让模型纳入无关变量,为了解决这个问题,它引入了用于特征交互的“半透性注意力”(Semi-Permeable Attention),这样可以让有较少信息的特征从有更多信息的模型中获取信息,同时避免高信息特征受到低信息特征的干扰。AMFormer提出了一种假说:算数特征交互项对于深度表格模型是重要的,基于Transformer架构,它提出了为了提取加性和乘性交互项的组件。
Sample Aspect
从样本特征来看,模型通过最大化每个样本最邻近样本的作用来预测。
广义的模型公式可以表示如下:
$$
\hat{y_{i}}=f(\mathcal{R}(x_{i}, \mathcal{D}; \Phi))
$$
其中,$\mathcal{D}$为所有样本的集合,$\mathcal{R}(\cdot)$是样本交互模块。$\Phi$是$\mathcal{R}$的可学习参数。$f(\cdot)$是预测头,用于将特征转为最终的输出。
样本角度可以被简单分为两个主要策略,第一个策略通过representation training(表征学习)学习样本特征之间的关系;第二个策略使用“基于检索的模型”(Retrieval-based model)通过如何检索并使用临近样本的作用。
Sample Interaction:这个方法通过在表征学习过程中,使用样本间的相关性来训练得到一个更加鲁棒的表征。在训练过程中,因为没有交互,所有模型会变得更加敏感。
SAINT引入样本间的attention而不仅仅是属性间的attention,提高了行分类的准确率;NPT将其扩展为非参数Transformer,而Hopular使用了Hopfield网络,这与SAINT其实是本质上相同的。Trompt认为特征的重要性在不同样本中是不同的,在特征提取过程中,它将样本之间的信息作为prompts。PTaRL识别了在表格数据中的两种情况:纠缠与局部化,并使用原型生成(prototype generation)和表示投影(representation project)来产生更加清晰且一致的决策。
Neighbor Retrieval:这种方法构造了高质量的内容来帮助提取有价值的邻居,并找到高效的方法来利用他们之间的关系。训练样本被用于协助测试。DNNR向KNN中引入本地梯度估计和Taylor多项式逼近;TabR将所有候选样本编码并使用类注意力机制来检索样本。ModernNCA使用了传统NCA方法并引入了深度学习策略与架构。
有趣的是,作者在这里留下了一段话:目前的基于近邻的方法类似于in-context learning(上下文学习),尤其是最近的TabPFN;LoCalPFN也使用了本地回归来获取更有解释性的决策边界,这也正是使用了本地信息。
Objective Aspect
从客观角度,修改损失函数和整体目标(Overall objective)来引导模型特定的模式与偏好,注入inductive bias(推断偏倚)。
就像L1-正则化(LASSO)、L2-正则化(Ridge),Objective-aspect methods在深度学习中是这些传统方法的拓展,通过修改损失函数和正则化因子获取推断偏倚。这里Objective Aspect又可以分为两类,一类是Training Objective可以用特化能力来增强模型,另一类则引入正则化因子,增强模型的泛化能力。
Training Objective:PTaRL构建了原型生成的投影空间并学习了全局原型的解耦表征。使用了一个多样性约束(diversification constraint),用于校准表示(representation calibration)并引入了一个矩阵正交化约束(matrix orthogonalization constraint),以保证不同原型之间的独立性(independence)。
Training Regularization:RLNs通过在训练过程中引入了高效调参方案克服了难以驾驭的超参数,这种方法最小化一种特别的反事实损失。RLNs中,正则化因子与模型参数同时被优化并最终得到一个稀疏的网络。TANGOS使用了基于正则化的提升方法,它通过正则化神经元属性来保证神经元特化且正交。Regularization cocktails for MLPs通过特定数据集合的13种正则化方法,能让简单的神经网络效果大大提升,甚至超过树学习模型(XGboost)
5 从特化模型到迁移模型(From specialized to transferable model)
从头训练一个模型会非常困难,取而代之的是训练一个预训练的模型(PTM: Pre-Training Model)。
使用预训练模型主要分为两个阶段:1. 表格模型的预训练;2.根据下游任务使用特定的适应策略来训练模型。正式的说,一个well-trained模型$g_{\Theta}$可以被用于加速$\mathcal{D}$上的模型$f_{\theta}$。为了使用$g_{\Theta}$中的专业信息,一种适应策略被使用:$f_{\theta}=\mathbf{Adapt}(f_{\theta_{0}} | \mathcal{D}, g_{\Theta})$其中$\theta_{0}$是模型的初始化。这种标注可以被拓展到PTM之外。使用PTM的挑战在于将PTM与表格模型相关联。基于PTM的来源,我们将PTM分为3种类型:
Homogeneous Transferable Tabular Model:同质性迁移模型,PTM可能与表格模型共享相同的任务,但是却有不同的分布,即$Pr(\mathcal{D}’) \neq Pr(\mathcal{D}) \space or \space g \neq f$
Heterogeneous Transferable Tabular Model:异质性迁移模型,任务不同。
Cross-Modal Transferable Tabular Model:跨模态迁移模型,PTM可以是另外一种模态,比如视觉或者语言模型,比如属性的语义学信息,就是将大语言模型作为PTM用以提供潜在的语义学信息。
迁移模型的好处与坏处:好处:加速收敛、减少数据量、减少可学习参数量,减少计算量和调参量。
Homogeneous Transferable Tabular Model
这方面研究在深度学习时代之前便已出现,一个代表性的方法就是有偏正则化(biased regularization:在深度学习和机器学习中引入先验偏好或结构性偏差的正则化技术,其核心目的是引导模型朝特定方向学习,而不仅仅是防止过拟合),通过最小化PTM和目标模型的差别:
$$\min_{W}\mathscr{l}(W)+|W-W’|{F}^2=\min{\Delta W}\mathscr{l}(\Delta W+W’)+|\Delta W|_{F}^2$$
对于相似的模型,可以通过修改训练目标为权重残差。对于MLP,可以通过比较两者的预测结果。
Supervised Pre-training Objectives:一种将目标变量融入预训练的方法是使用输入干扰(例如对于某变量遮蔽后训练)作为一种对于标准监督学习目标的增强方法。
Self-Supervised Pretraining Objectives:自监督预训练目标包括:masked language model, contrastive pre-training, hybrid method. masked language model(MLM),无监督训练目标,每个样本中随机的特征会被遮蔽,遮蔽的值会通过多目标分类方法来预测。VIME使用干扰的表格数据预测哪部分向量被遮掩并试图为自监督学习重新构建特征向量。他们通过使用已经训练的编码器为每个样本产生多个增广的样本,具体方法就是1.对于每个样本使用多种遮蔽方法,2.然后使用模型对遮蔽的特征进行填充以恢复该值以实现数据的增强和表示学习。SubTab发现通过特征子集重构数据效果会比使用具有干扰的数据更好地捕捉潜在表示。SEFS通过随机选取输入特征重构初始的输入并同时估计用以定义哪个特征被选中的阈值向量(gate vector)。MET使用所有特征表征的连接代替平均,并使用对抗重建损失(Adversarial reconstruction loss:一种类似于GAN的损失函数,由重建损失和对抗损失组成,前者就是常见的损失,后者则是判别器判断重建数据是否真实的损失);Contrastive Pre-training,对比预训练使用数据增广来生成正样本对或者同一个样本的两个不同的增广视图,损失函数鼓励一个特征提取器将正样本对映射为相似的特征。对比学习的主要因素就是产生特定案例的正例样本和负例样本。SCARF会为每一个输入样本生成一个增强版本,他的方式是从样本所有特征中随机选出一部分特征,并将这些选中的特征值替换为该特征的边缘分布中随机抽取的值;STab依赖于多个权重共享的神经网络,通过利用停止梯度操作,可以通过更加复杂的正则化策略来学习特征中的不变性,避免了崩溃到平凡解(即所有样本的表示均相同);DoRA通过样本间的前置任务(pretext task)和样本间的对比学习来学习上下文化表示(Contextualized representations);DACL+ 为了克服对于特定领域的依赖,使用Mixup噪声来产生相似和不相似的样本。Hybrid Methods:结合了多种方法,包括有监督的、无监督的。LFR通过同时重构多个随机生成映射函数来训练;ReConTab同时使用自监督学习和半监督学习,它使用了正则化方法来筛选变量,同时使用有标签的对比学习来蒸馏最相关的信息用以下游任务。
Heterogeneous Transferable Tabular Model
早期的异质性模型主要关注特征级别的异质性,一个主要的假设是:存在一部分特征是相同,另外一部分特征不同,我们可以利用那部分相同特征的权重。主要工作有OPID,ReForm。神经模型的有点就是我们可以很轻松的调参(fine-tuned),我们可以冻结大部分的参数,只关注少部分的参数(例如分类头)来加速调参并减少过拟合。
Reuse PTM Pre-trained from One Dataset:这种方法主要关注预训练模型和目标任务的数据集之间的不同。
Reuse PTM Pre-trained from Multiple Datasets:XTab通过利用独立特征(independent features)和联邦学习(federated learning)来预训练共享组件(shared component)。
Reusing a Pre-trained Language Model
标准情况下,有两种类型的语义学信息可以被使用:第一,每个特征的属性名称,$\mathcal{A}= A_{1}, \dots, A_{d}$;第二,meta-information例如文本描述,被记录为”meta_descript”可以进一步增加理解,学习过程可以被公式化为:
$$\hat{y_{i}}=f(x_{i}, \mathcal{A}|\mathcal{D},\mathbf{meta_{descript}})$$
这里语义学信息作为连接特征空间的桥梁和促进从预训练模型向下游任务知识迁移的工具。
Language Models for Feature Tokenization:当特征空间改变时,语言学方法假设语义学关联性在特征描述之间存在且依赖于大语言模型捕捉这些关联的能力。例如,特征“occupation”和特征”organization”之间存在语义学关联,这使得这个特征可以被反复使用。
TransTab根据表格数据中存在的词语训练一个分词器,并将列描述和表格作为输入,输入到一个门控transformer模型,这个模型时通过自监督学习或者有监督对比学习来训练的,并在迁移任务与特征连续学习的任务中验证;PTab使用一种相似的方式,使用多个被分词后的表格数据学习上下文表示;UniTabE编码并融合来自于列名称、数据类型和单元格值的信息并转化为一系列的tokens,使用Transformer与LSTM的编码器-解码器的架构。它使用了多单元格遮盖与对比学习进行预训练,在这里一个样本的子向量被当作正样本,其他样本或者其他样本的子集被作为负样本。CM2使用了一种提出了一个跨表格的预训练框架,能够整合属性名称与特征值。它使用了pMTM(prompt-based Masked Table Modeling)自监督目标,列名被作为prompt来帮助预测遮掩的特征;TP-BERTa按照类似的方法,但是加上了数值离散化策略、数量级标记化和微调更小的预训练语言模型(RoBERTa);CARTE使用图注意力机制,关注列名和近邻输入,使用对比学习并构建了graphlet(图中所有不同构的子图)。
Language Models for Features Engineering:Binder识别模型无法直接回答的问题并使用LLMs产生辅助特征;CAAFE探索使用LLMs,基于任务语义和特征语义进行生成,并用 TabPFN 来评估这些特征的质量;FeatLLM使用基于样本的prompting来加强特征生成,让LLMs有能力产生新的特征;TaPTaP为了捕捉广义表格数据中的数据分布,在大规模语义库中进行训练。训练完成后,可用于生成高质量的合成表格数据。
Language Models for Textual Serialization:使用预训练语言模型的直接方法包括将表格数据转化为文本数据,让LLMs可以直接推断特征与标签之间的关系。LIFT、TabLLM、UniPredict。但是文本序列化方法依旧存在许多挑战,比如特征数过多时可能造成prompt过长、受限于语义学信息的可用性和外部模型能力。
Reusing a Pre-trained Vision Model
最主要的挑战在于:将表格数据转化为图像。在自然图片中,临近的像素经常有相同的语义学相关性,但是表格数据缺少这种空间结构。同时,表格数据的特征是插入不变性,意味着交换顺序不会影响样本的意义(有些类似于图神经网络)。
Dimensionality Reduction Transformation:DeepInsight使用t-SNE将表格数据转入2D空间并通过凸包分析、旋转等方法构建图片;REFINED使用贝叶斯度量多维度放缩来保证样本在低维度表征中的距离以维持结构相似的模型依旧保有最近的关系。
Table Reorganization Transformation:表格数据库可以被当作一个矩阵。TAC使用CNN;ICTD和TablEye有相同的思路,产生一个图像,其中像素点暗度对于特征值。
Image Marker Transformation:将特征值编码为可视的标记。例如Super-TML、Tab2Visual。
通过将表格数据转为图像,这些方法可以让强大的图像处理模型用于表格数据。
最近时间有些紧张,因为已经进入考试月了(悲),所以先写一半,剩余部分有空再写吧(希望有时间)。