[Megagon Labs] Annotating Columns with Pre-trained Language Models

Annotating Columns with Pre-trained Language Models

任务定义

输入:一张数据表,但没有表头,只有表中的数据。

输出:每一列数据的数据类型,以及两列数据之间的关系。

数据类型和数据关系都是由训练数据决定的固定集合,可以视作多分类任务。

模型架构

整个模型的back bone依然是transformer,利用attention机制获取整表的语境信息。具体来说,DODUO将整个表格序列化,化二维为一维,每个column首尾相接连接成一个序列,而每个column用一个特殊token[CLS]隔开,整个序列以[SEP]结尾。

与BERT的做法类似,[CLS]这个特殊token被用来表示整个column的信息,同时这个column由于attention机制,除了自己所在的column信息也会聚合到其他column的context,这就是DODUO的核心思想。

同时,DODUO是一个多任务模型,两个分类任务:数据类别和数据关系。所以在共享transformer层作为编码器后,使用两个不同的Dense Layer来对应两个任务。数据类别任务直接取[CLS]作为输入,输出分类结果;而数据关系任务将两个[CLS]连接在一起作为输入,输出分类结果。这两个任务会在每个epoch中依次进行训练。

由于DODUO需要将序列化后的表中的token编码为embedding作为第一层transformer层的输入,所以对embedding模型同样做了微调,在反向传播过程中更新了12层BERT-base的参数。

*论文中好像没有提到中间的transformer layer到底有几层

整个结构的灵活性较强,核心的transformer back bone令知识在多任务之间共享,增加了泛化能力。而embedding模型和对应不同任务的dense layer都是可以灵活替换的。包括文章中也提到,使用更大更强的LM作为embedding模型可能会进一步提升效果。针对特殊数据(如数字、日期),采用对应的LM作为embedding模型也会提升性能。

实验结果

在不包含表头信息(即图中的metadata)的情况下,DODUO的性能超过了其他baseline,为SOTA。而TURL本身设计是需要表头的,此时TURL和DODUO的表现相近,甚至在数据关系任务上TURL优于DODUO。因此DODUO的优势还是在于表头信息缺失的情况,利用整表context,能得到信息更充分的编码。

消融实验的结果也说明了这个问题,DOSOLO是DODUO在单个任务上的版本,而DOSOLOscol则是只考虑单个任务单个column的版本,明显看到DOSOLO的性能知识略有下降,但DOSOLOscol的性能则是暴降。

另一方面,由于使用了pre-trained model和多任务训练,DODUO可以仅用少量数据训练达到较好的性能,图4和表8分别展示了在缩减训练集数量以及每个column token数量的情况下的性能变化。

相关推荐
聚客AI17 分钟前
ChatGPT到Claude全适配:跨模型Prompt高级设计规范与迁移技巧
人工智能·机器学习·语言模型·自然语言处理·langchain·transformer·llama
小羊Linux客栈23 分钟前
自动化:批量文件重命名
运维·人工智能·python·自动化·游戏程序
Mr数据杨5 小时前
【Dv3Admin】插件 dv3admin_chatgpt 集成大语言模型智能模块
人工智能·语言模型·chatgpt
zm-v-159304339865 小时前
AI 赋能 Copula 建模:大语言模型驱动的相关性分析革新
人工智能·语言模型·自然语言处理
zhz52146 小时前
AI数字人融合VR全景:从技术突破到可信场景落地
人工智能·vr·ai编程·ai数字人·ai agent·智能体
数据与人工智能律师6 小时前
虚拟主播肖像权保护,数字时代的法律博弈
大数据·网络·人工智能·算法·区块链
武科大许志伟7 小时前
武汉科技大学人工智能与演化计算实验室许志伟课题组参加2025中国膜计算论坛
人工智能·科技
哲讯智能科技7 小时前
【无标题】威灏光电&哲讯科技MES项目启动会圆满举行
人工智能
__Benco7 小时前
OpenHarmony平台驱动开发(十七),UART
人工智能·驱动开发·harmonyos
小oo呆7 小时前
【自然语言处理与大模型】Windows安装RAGFlow并接入本地Ollama模型
人工智能·自然语言处理