🚀 TAPAS小模型
TAPAS小模型有两个可用版本,能帮助用户从表格数据中提取信息,适用于问答、序列分类等下游任务。
✨ 主要特性
- 该模型有两个可用版本,默认版本对应原始GitHub仓库中的
tapas_inter_masklm_small_reset
检查点。
- 模型在MLM和作者称为中间预训练的额外步骤上进行了预训练,默认使用相对位置嵌入(即在表格的每个单元格处重置位置索引)。
- 另一个非默认版本使用绝对位置嵌入,
revision="no_reset"
对应 tapas_inter_masklm_small
。
📚 详细文档
模型描述
TAPAS是一个类似BERT的Transformer模型,以自监督的方式在来自维基百科的大量英文数据语料库上进行预训练。这意味着它仅在原始表格和相关文本上进行预训练,没有人工以任何方式对其进行标注(这就是为什么它可以使用大量公开可用的数据),并通过自动过程从这些文本中生成输入和标签。更准确地说,它以两个目标进行预训练:
- 掩码语言模型(MLM):给定一个(扁平化的)表格和相关上下文,模型随机掩盖输入中15%的单词,然后将整个(部分掩码的)序列输入模型。模型随后需要预测被掩盖的单词。这与通常逐个查看单词的传统循环神经网络(RNN)不同,也与像GPT这样在内部掩盖未来标记的自回归模型不同。它允许模型学习表格和相关文本的双向表示。
- 中间预训练:为了鼓励在表格上进行数值推理,作者通过创建数百万个语法生成的训练示例的平衡数据集,对模型进行了额外的预训练。在这里,模型必须预测(分类)一个句子是否得到表格内容的支持或反驳。训练示例基于合成语句和反事实语句创建。
通过这种方式,模型学习了表格和相关文本中使用的英语的内部表示,然后可用于提取对下游任务有用的特征,如下回答关于表格的问题,或确定一个句子是否被表格内容所蕴含或反驳。微调是通过在预训练模型之上添加一个或多个分类头,然后在下游任务上联合训练这些随机初始化的分类头和基础模型来完成的。
预期用途与限制
你可以使用原始模型来获取关于表格 - 问题对的隐藏表示,但它主要用于在下游任务(如问答或序列分类)上进行微调。请参阅模型中心,查找针对你感兴趣的任务进行微调的版本。
训练过程
预处理
文本使用WordPiece进行小写处理和分词,词汇表大小为30,000。模型的输入形式如下:
[CLS] 句子 [SEP] 扁平化表格 [SEP]
预训练
模型在32个Cloud TPU v3核心上进行了1,000,000步的预训练,最大序列长度为512,批量大小为512。在这种设置下,仅在MLM上进行预训练大约需要3天。此外,模型还在第二个任务(表格蕴含)上进行了进一步的预训练。更多详细信息请参阅原始TAPAS 论文 和 后续论文。
使用的优化器是Adam,学习率为5e-5,预热比例为0.01。
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}
}
📄 许可证
本模型使用的是Apache 2.0许可证。
⚠️ 重要提示
发布TAPAS的团队没有为该模型编写模型卡片,此模型卡片由Hugging Face团队和贡献者编写。