论文研读系列——“On Embeddings for Numerical Features in Tabular Deep Learning”

On Embeddings for Numerical Features in Tabular Deep Learning

arxiv [Submitted on 10 Mar 2022 , last revised 26 Oct 2023 ]

链接:arXiv:2203.05556

代码:https://github.com/Yura52/tabular-dl-num-embeddings

https://github.com/yandex-research/tabular-dl-num-embeddings

摘要

本文讨论了如何使用特殊技术将数字转换为更复杂的形式(称为嵌入)可以使深度学习模型更好地处理数据表,这可以与其他一些高级方法一样好或更好。作者描述了两种创建这些嵌入的新方法:一种将数字分成几部分,另一种使用波浪状图案,这表明这些方法可以显著提高模型性能。他们在不同类型的数据上测试了这些想法,包括一个虚构的数据集,该数据集通常与另一种称为梯度增强决策树的方法配合得很好,发现他们的技术确实可以提高模型的性能。这些嵌入不仅可以帮助花哨的Transformer模型,还可以使更简单的模型(例如MLP(一种基本的神经网络)也能发挥同样的性能,这表明这种方法具有广泛的应用。本文强调选择正确的方法将数字转换为嵌入式至关重要,并建议根据特定数据调整棋子(bin)的数量,以避免使模型过于复杂。

1 引言

表格数据问题目前是深度学习(DL)研究的最后前沿。尽管在自然语言处理、视觉和语音领域取得了最新的突破性进展,这些深度模型在表格领域的成功尚未令人信服。尽管提出了大量针对表格DL的架构,但它们与决策树集成(例如GBDT)之间的性能差距通常仍然很大。最近的工作通过成功地将Transformer架构适配到表格领域,缩小了这一性能差距。与传统模型(如MLP或ResNet)相比,所提出的Transformer类架构对数据的数值特征有特定的处理方式。具体来说,它们将数值特征的标量值映射到高维嵌入向量,然后由自注意力模块混合。除了Transformer之外,数值特征到向量的映射也在不同的点击率(CTR)预测问题中以不同形式被采用。然而,文献主要关注于开发更强大的骨架,同时保持嵌入模块的设计相对简单。特别是,现有的架构使用相当受限的参数映射来构建数值特征的嵌入,例如线性函数,这可能导致次优性能。在这项工作中,作者展示了嵌入步骤对模型效果有重大影响,并且其合理设计可以显著改进表格DL模型。

特别是,作者描述了两种不同的构建嵌入模块的方法:第一种基于标量值的分段线性编码,第二种利用周期性激活函数。然后,作者实证展示了这两种方法与基于传统块(如线性层和ReLU激活)的嵌入相比,可以带来显著的性能提升。重要的是,作者还展示了嵌入数值特征对于许多骨架都是有益的,不仅仅是Transformer类架构。具体来说,在适当的嵌入之后,简单的类似MLP的模型可以与基于注意力的架构相媲美。总的来说,作者强调数值特征的嵌入是表格DL设计中一个重要的方面,具有进一步改进的良好潜力。

作为另一个重要发现,作者说明了嵌入数值特征的步骤对于不同的深度架构普遍有益,不仅仅是Transformer类架构。具体来说,作者展示了,在适当的嵌入之后,简单的类似MLP的架构经常能够提供与最先进的基于注意力的模型相当的性能。总的来说,作者的工作展示了数值特征嵌入对表格深度学习性能的巨大影响,并展示了在未来研究中探索更高级嵌入方案的潜力。

总结起来,作者的贡献如下:

  1. 作者展示了数值特征的嵌入方案是表格深度学习中一个未被充分研究的问题。具体来说,作者展示了更具表现力的嵌入方案可以比之前的模型提供显著的性能提升。
  2. 作者展示了从嵌入数值特征中获益并非特定于Transformer类架构,适当的嵌入方案也使传统模型受益。
  3. 在多个公共基准测试中,作者实现了表格深度学习的新最先进水平。

2 Related work(相关工作)

表格深度学习。在最近几年中,社区提出了大量的表格数据深度模型。然而,当系统地评估时,这些模型并不总是能够一致地超越决策树集成,例如梯度提升决策树(GBDT)。此外,最近的几项研究表明,所提出的复杂架构并不比适当调整的简单模型,如多层感知器(MLP)和残差网络(ResNet),更优越。在这项工作中,与以往的文献不同,作者的目标不是提出一个新的骨架架构。相反,作者专注于更精确地处理数值特征,作者的发展可以与任何模型结合,包括传统的MLPs和最近的Transformer类模型。

Transformer在表格深度学习中的应用。由于Transformer在不同领域的巨大成功,最近有几项工作也将自注意力设计适配到表格深度学习中。与传统的选择相比,将自注意力模块应用于表格数据的数值特征需要将这些特征的标量值映射到高维嵌入向量。到目前为止,现有的架构通过相对简单的计算块执行这种“标量”到“向量”的映射,这在实践中可能会限制模型的表现力。例如,最近提出的FT-Transformer架构只使用了一个线性层。在作者的实验中,他们展示了这样的嵌入方案可以提供次优性能,而更高级的方案经常能带来显著的好处。

CTR预测。在CTR预测问题中,对象由数值和分类特征表示,这使得这个领域与表格数据问题高度相关。然而,尽管在几项工作中以一些非平凡的方式处理了数值特征,但它们并不是研究的中心部分。最近,Guo等人提出了一个更高级的方案,但它仍然基于线性层和传统的激活函数,作者发现在他们的评估中这是次优的。

特征分箱。分箱是一种将数值特征转换为分类特征的离散化技术。具体来说,对于给定的特征,其值的范围被分割成箱(区间),之后原始特征值被替换为相应箱的离散描述符(例如箱索引或一位有效向量)。作者引用了Dougherty等人的工作,他们对一些经典的分箱方法进行了概述,可以作为相关文献的起点。然而,在作者的工作中,他们以不同的方式使用箱。具体来说,作者使用它们的边缘构建原始标量值的无损分段线性表示。结果表明,这种简单且可解释的表示可以为几个表格问题上的深度模型提供显著的好处。

周期性激活。最近,周期性激活函数已成为处理类似坐标的输入的关键组成部分,这在许多应用中是必需的。例子包括自然语言处理、计算机视觉、隐式神经表示等。在作者的工作中,他们展示了周期性激活可以用来为表格数据问题中的数值特征构建强大的嵌入模块。与一些上述论文不同,在这些论文中,多维坐标的组成部分在传递给周期性函数之前被混合(例如,使用线性层),作者发现将每个特征单独嵌入然后在主骨架中混合它们至关重要。

3 Embeddings for numerical features(数值特征的嵌入)

在本节中,作者描述了他所称的“数值特征嵌入”的通用框架,以及在第4节中的实验比较中使用的主要构建块。

表示法。对于给定的表格数据的监督学习问题,我们表示数据集为 { ( x j , y j ) } j = 1 n \{(x^j, y^j)\}^n_{j=1} {(xj,yj)}j=1n,其中 y j y_j yj 属于 Y 表示对象的标签, x j = ( x j ( n u m ) , x j ( c a t ) ) x^j = (x^{j(num)}, x^{j(cat)}) xj=(xj(num),xj(cat)) 属于 X 表示对象的特征(数值和分类)。 x i j ( n u m ) x^{j(num)}_i xij(num) 表示第 j 个对象的第 i 个数值特征。根据上下文,可以省略索引 j。数据集被分成三个不相交的部分: 1 , n ‾ = J t r a i n ∪ J v a l ∪ J t e s t \overline{1, n} = J_{train} ∪ J_{val} ∪ J_{test} 1,n=JtrainJvalJtest

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值