🚀 TAPEX(基础规模模型)
TAPEX是一种预训练方法,通过学习神经SQL执行器,赋予现有模型“表格推理”能力,在表格问答和事实验证等任务中表现出色。
🚀 快速开始
使用示例
以下是如何在transformers
库中使用该模型的示例:
from transformers import TapexTokenizer, BartForConditionalGeneration
import pandas as pd
tokenizer = TapexTokenizer.from_pretrained("microsoft/tapex-base")
model = BartForConditionalGeneration.from_pretrained("microsoft/tapex-base")
data = {
"year": [1896, 1900, 1904, 2004, 2008, 2012],
"city": ["athens", "paris", "st. louis", "athens", "beijing", "london"]
}
table = pd.DataFrame.from_dict(data)
query = "select year where city = beijing"
encoding = tokenizer(table=table, query=query, return_tensors="pt")
outputs = model.generate(**encoding)
print(tokenizer.batch_decode(outputs, skip_special_tokens=True))
微调方法
请在此处查找微调脚本。
✨ 主要特性
- 创新性预训练方法:TAPEX(通过执行进行表格预训练)是一种概念简单且经验证有效的预训练方法,能让现有模型具备“表格推理”技能。它通过在合成语料库上学习神经SQL执行器来实现表格预训练,该语料库由自动合成的可执行SQL查询获得。
- 基于BART架构:TAPEX基于BART架构,这是一种Transformer编解码器(seq2seq)模型,具有双向(类似BERT)编码器和自回归(类似GPT)解码器。
- 多任务适用性:该模型主要用于在有监督的数据集上进行微调,目前可以针对表格问答任务和表格事实验证任务进行微调。
📚 详细文档
模型描述
TAPEX(通过执行进行表格预训练)是一种概念简单且经验证有效的预训练方法,旨在赋予现有模型“表格推理”技能。TAPEX通过在合成语料库上学习神经SQL执行器来实现表格预训练,该语料库是通过自动合成可执行SQL查询获得的。
TAPEX基于BART架构,这是一种Transformer编解码器(seq2seq)模型,具有双向(类似BERT)编码器和自回归(类似GPT)解码器。
预期用途
你可以使用原始模型来模拟神经SQL执行,即使用TAPEX在给定表格上执行SQL查询。然而,该模型主要用于在有监督的数据集上进行微调。目前,TAPEX可以针对表格问答任务和表格事实验证任务进行微调。请查看模型中心,查找针对你感兴趣的任务进行微调的版本。
📄 许可证
本项目采用MIT许可证。
引用信息
@inproceedings{
liu2022tapex,
title={{TAPEX}: Table Pre-training via Learning a Neural {SQL} Executor},
author={Qian Liu and Bei Chen and Jiaqi Guo and Morteza Ziyadi and Zeqi Lin and Weizhu Chen and Jian-Guang Lou},
booktitle={International Conference on Learning Representations},
year={2022},
url={https://openreview.net/forum?id=O50443AsCP}
}
原论文信息
TAPEX由Qian Liu、Bei Chen、Jiaqi Guo、Morteza Ziyadi、Zeqi Lin、Weizhu Chen、Jian - Guang Lou在《TAPEX: Table Pre-training via Learning a Neural SQL Executor》中提出。原始代码仓库可在此处找到。