基于WikiTable Questions (WTQ)微调的TAPAS基础模型
该模型有两个可用版本。默认版本对应原始Github仓库中的tapas_wtq_wikisql_sqa_inter_masklm_base_reset
检查点。该模型首先通过MLM和作者称为中间预训练的阶段进行预训练,随后在SQA、WikiSQL和WTQ上进行了链式微调。它采用了相对位置嵌入(即在表格每个单元格重置位置索引)。
另一个(非默认)可用版本是:
no_reset
,对应tapas_wtq_wikisql_sqa_inter_masklm_base
(中间预训练,绝对位置嵌入)。
免责声明:发布TAPAS的团队未为此模型编写模型卡片,本模型卡片由Hugging Face团队和贡献者编写。
结果
模型描述
TAPAS是一个类似BERT的Transformer模型,通过自监督方式在维基百科英文表格数据上进行大规模预训练。这意味着它仅使用原始表格和相关文本进行预训练,无需人工标注(因此可利用大量公开数据),通过自动过程从文本生成输入和标签。具体而言,它通过两个目标进行预训练:
- 掩码语言建模(MLM):给定(扁平化的)表格和相关上下文,模型随机掩码15%的输入词,然后处理整个(部分掩码的)序列。模型需预测被掩码的词语。这与传统RNN逐个处理词语或GPT等自回归模型内部掩码未来标记不同,使模型能学习表格及相关文本的双向表示。
- 中间预训练:为增强表格数值推理能力,作者额外通过数百万个语法生成的平衡训练样本进行预训练。模型需判断句子是否被表格内容支持或反驳,训练样本基于合成及反事实陈述生成。
通过这种方式,模型学习表格及相关英文文本的内部表示,可用于提取下游任务(如表格问答或判断句子是否被表格内容蕴含)所需的特征。微调时在预训练模型顶部添加单元格选择头和聚合头,然后在SQA、WikiSQL和WTQ上联合训练这些随机初始化的分类头与基础模型。
预期用途与限制
该模型可用于回答与表格相关的问题。代码示例请参阅HuggingFace网站上的TAPAS文档。
训练过程
预处理
文本经小写处理和WordPiece分词(词汇量30,000)。模型输入格式为:
[CLS] 问题 [SEP] 扁平化表格 [SEP]
作者首先使用自动转换脚本将WTQ数据集转为SQA格式。
微调
模型在32个Cloud TPU v3核心上微调50,000步,最大序列长度512,批量大小512。此设置下微调约需10小时。使用Adam优化器(学习率1.93581e-5,预热比例0.128960)。添加归纳偏置使模型仅选择同列单元格,这体现于TapasConfig的select_one_column
参数。详见论文(表11和12)。
BibTeX条目及引用信息
@misc{herzig2020tapas,
title={TAPAS: Weakly Supervised Table Parsing via Pre-training},
author={Jonathan Herzig and Paweł Krzysztof Nowak and Thomas Müller and Francesco Piccinno and Julian Martin Eisenschlos},
year={2020},
eprint={2004.02349},
archivePrefix={arXiv},
primaryClass={cs.IR}
}
@misc{eisenschlos2020understanding,
title={Understanding tables with intermediate pre-training},
author={Julian Martin Eisenschlos and Syrine Krichene and Thomas Müller},
year={2020},
eprint={2010.00571},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
@article{DBLP:journals/corr/PasupatL15,
author = {Panupong Pasupat and
Percy Liang},
title = {Compositional Semantic Parsing on Semi-Structured Tables},
journal = {CoRR},
volume = {abs/1508.00305},
year = {2015},
url = {http://arxiv.org/abs/1508.00305},
archivePrefix = {arXiv},
eprint = {1508.00305},
timestamp = {Mon, 13 Aug 2018 16:47:37 +0200},
biburl = {https://dblp.org/rec/journals/corr/PasupatL15.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}