TabTransformer:用于表格数据的Transformer

简介: TabTransformer:用于表格数据的Transformer

在Transformers颠覆了自然语言处理和计算机视觉之后,他们现在把目光投向了最大的数据类型:表格数据。

在这篇文章中,我们将介绍亚马逊的最新论文TabTransformer。

首先,我们将回答为什么可以将transformer应用于表格数据。然后,我们将看到他们如何处理表格数据。

那么下面就开始吧:汽车人,变形出发!


为什么我们可以将Transformers应用于表格数据?

transformer最初是作为一种建模语言的方法被提出的。那么,表格数据是一种语言吗?把普通的表格和人类的语言进行比较感觉很奇怪。

事实是,统计模型并不关心我们的感觉。

他们所关心的只是表征数据的统计属性。这里我们要展示的是表格数据和语言有很多相同的属性。在某种意义上,分类表数据是一种超结构化的语言子集。

假设每一行都是一个“句子”,每一列值都是一个“单词”或一个标记。从语言到表格数据的额外约束如下:

这些句子都是固定长度的:每一行都有相同数量的列。

单词的顺序并不重要,但在定义表格语言时已达成共识。重要的是语言的真实顺序。  

在每个位置,一个单词可以采用的值都是固定的,并且每个单词的取值都不同:每个单词都是一个分类特征。使用常规语言,您可以在字典中的所有单词之间进行选择,甚至可以根据需要创建新的单词。

640.png

事实证明,这些限制并没有限制Transformers的使用。事实正好相反。

当令牌的顺序不重要时,Transformers变得更加完美的。它甚至简化了模型。现在可以省去原始论文中的位置编码步骤。

这也解释了为什么递归神经网络(RNN)不能很好地处理表格数据。RNNs本身就使用令牌的顺序性和位置。

下图显示了TabTransformer的模型架构:

640.png

因此,我们都同意至少在表格数据上尝试Transformers是有意义的。现在让我们看看它们与其他表格数据模型的比较情况。

Transformers的三个优点

模型特征与上下文嵌入的交互

在许多列表“语言”中,都存在有意义的特性交互。一个特性的值会影响另一个特性的解释方式。

由于决策树具有连续的决策制定过程,因此它可以很自然地为这些交互行为建模。树中更深层次的决策依赖于从根开始的所有以前的决策,因此以前的特征值会影响当前特征的解释。

其他模型,比如线性支持向量机,无法捕捉这些交互作用。

在自然语言中,这个概念(称为一词多义)也是至关重要的。正如英国语言学家约翰·r·弗斯所说:

“你应该根据一个词的语境来认识它。”

这就是为什么transformer还通过它的多头自注意机制来显式地建模令牌交互。通过这种方式,模型产生了上下文嵌入。

DeepEnFM的研究人员是第一个解决多头注意力表格数据中特征交互问题的研究人员。

使用了强大的半监督学习技术

在关于TabTransformer的文章中,作者指出可以从自然语言处理中复制两种强大的半监督训练技术。

第一个是BERT介绍的一种技术,称为掩蔽语言建模。与语言模型一样,您也可以通过屏蔽输入句子中的标记并学习预测屏蔽标记来训练表格数据上的transformers。

第二种是基于关于ELECTRA的论文的学习技术。这是“替换令牌检测”。他们没有掩盖功能,而是将其替换为替代类别。然后对TabTransformer进行训练,以预测哪些功能已换出。

处理缺失和嘈杂的数据

transformers的最后一个优点是,它们在处理缺失和嘈杂的特征方面表现出色。这些来自TabTransformer的图表显示了MLP和transformers之间的比较。

640.png

因为transformers使用上下文嵌入,所以它们可以从上下文中提取信息以纠正丢失或嘈杂的数据。

MLP还可以学习嵌入,但是它们无法对矢量方向的功能交互进行建模。它们的体系结构将它们限制为按位交互,但是这会损害其性能。

结论

TabTransformer打开了表示学习天堂的大门,同时匹配了基于树的集成模型的性能。这是MLP无法提供的。

很好奇,看看接下来的几个月还会有什么!

目录
相关文章
|
人工智能 数据可视化 数据处理
快速在 PaddleLabel 标注的花朵分类数据集上展示如何应用 PaddleX 训练 MobileNetV3_ssld 网络
快速在 PaddleLabel 标注的花朵分类数据集上展示如何应用 PaddleX 训练 MobileNetV3_ssld 网络
849 0
快速在 PaddleLabel 标注的花朵分类数据集上展示如何应用 PaddleX 训练 MobileNetV3_ssld 网络
|
2月前
|
人工智能 并行计算 PyTorch
SPRIGHT:提升文本到图像模型空间一致性的数据集
SPRIGHT 是一个专注于空间关系的大型视觉-语言数据集,通过重新描述600万张图像,显著提升文本到图像模型的空间一致性。
76 18
SPRIGHT:提升文本到图像模型空间一致性的数据集
|
5月前
|
自然语言处理 资源调度 前端开发
前端大模型入门(四):不同文本分割器对比和效果展示-教你如何根据场景选择合适的长文本分割方式
本文详细介绍了五种Langchain文本分割器:`CharacterTextSplitter`、`RecursiveCharacterTextSplitter`、`TokenTextSplitter`、`MarkdownTextSplitter` 和 `LatexTextSplitter`,从原理、优缺点及适用场景等方面进行了对比分析,旨在帮助开发者选择最适合当前需求的文本分割工具,提高大模型应用的处理效率和效果。
691 1
|
5月前
|
机器学习/深度学习 计算机视觉 Python
目标检测笔记(三):Mosaic数据增强完整代码和结果展示
本文介绍了Mosaic数据增强技术,通过将四张图片拼接成一张新图,极大丰富了目标检测的背景信息。文章提供了完整的Python代码,涵盖了如何处理检测框并调整其位置,以适应拼接后的图像。Mosaic技术不仅提高了学习效率,还在标准化BN计算时同时考虑了四张图片的数据,从而提升了模型的泛化能力。
304 1
|
10月前
|
测试技术
Vript:最为详细的视频文本数据集,每个视频片段平均超过140词标注 | 多模态大模型,文生视频
[Vript](https://github.com/mutonix/Vript) 是一个大规模的细粒度视频文本数据集,包含12K个高分辨率视频和400k+片段,以视频脚本形式进行密集注释,每个场景平均有145个单词的标题。除了视觉信息,还转录了画外音,提供额外背景。新发布的Vript-Bench基准包括三个挑战性任务:Vript-CAP(详细视频描述)、Vript-RR(视频推理)和Vript-ERO(事件时序推理),旨在推动视频理解的发展。
177 1
Vript:最为详细的视频文本数据集,每个视频片段平均超过140词标注 | 多模态大模型,文生视频
|
人工智能 数据挖掘 PyTorch
VLE基于预训练文本和图像编码器的图像-文本多模态理解模型:支持视觉问答、图文匹配、图片分类、常识推理等
VLE基于预训练文本和图像编码器的图像-文本多模态理解模型:支持视觉问答、图文匹配、图片分类、常识推理等
VLE基于预训练文本和图像编码器的图像-文本多模态理解模型:支持视觉问答、图文匹配、图片分类、常识推理等
|
机器学习/深度学习 编解码 PyTorch
基于MeshCNN和PyTorch的三维对象分类和分割
基于MeshCNN和PyTorch的三维对象分类和分割
410 0
基于MeshCNN和PyTorch的三维对象分类和分割
|
10月前
|
存储 编解码 数据库
基于文本嵌入和 CLIP 图像嵌入的多模态检索
基于文本嵌入和 CLIP 图像嵌入的多模态检索
471 0
|
机器学习/深度学习 自然语言处理 算法
【文本分类】深入理解embedding层的模型、结构与文本表示
【文本分类】深入理解embedding层的模型、结构与文本表示
891 0
【文本分类】深入理解embedding层的模型、结构与文本表示
|
机器学习/深度学习 算法 数据挖掘
【多标签文本分类】MSML-BERT模型的层级多标签文本分类方法研究
【多标签文本分类】MSML-BERT模型的层级多标签文本分类方法研究
910 0
【多标签文本分类】MSML-BERT模型的层级多标签文本分类方法研究