🚀 TAPEX (基础规模模型)
TAPEX是一种用于表格推理的预训练模型,通过学习神经SQL执行器来赋予现有模型表格推理能力,能有效处理表格问答任务。
🚀 快速开始
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 中提出。原代码仓库可在 这里 找到。
✨ 主要特性
- TAPEX是一种概念简单且在实践中效果强大的预训练方法,能赋予现有模型表格推理技能。它通过在合成语料库上学习神经SQL执行器来实现表格预训练,该语料库是通过自动合成可执行的SQL查询获得的。
- 基于BART架构,这是一种具有双向(类似BERT)编码器和自回归(类似GPT)解码器的Transformer编码器 - 编码器(seq2seq)模型。
📦 安装指南
文档未提及安装步骤,故跳过此章节。
💻 使用示例
基础用法
from transformers import TapexTokenizer, BartForConditionalGeneration
import pandas as pd
tokenizer = TapexTokenizer.from_pretrained("microsoft/tapex-base-finetuned-wikisql")
model = BartForConditionalGeneration.from_pretrained("microsoft/tapex-base-finetuned-wikisql")
data = {
"year": [1896, 1900, 1904, 2004, 2008, 2012],
"city": ["athens", "paris", "st. louis", "athens", "beijing", "london"]
}
table = pd.DataFrame.from_dict(data)
query = "In which year did beijing host the Olympic Games?"
encoding = tokenizer(table=table, query=query, return_tensors="pt")
outputs = model.generate(**encoding)
print(tokenizer.batch_decode(outputs, skip_special_tokens=True))
高级用法
文档未提及高级用法代码示例,故跳过此部分。
📚 详细文档
预期用途
可以使用该模型处理相对简单的表格问答问题。以下是一些可解决的问题示例(对应表格未展示):
问题 |
答案 |
告诉我南澳大利亚的备注是什么 |
no slogan on current series |
为巴特勒社区学院(堪萨斯州)效力的球员打什么位置? |
guard - forward |
3号球员在多少所学校打过球? |
1.0 |
克拉科双125(r2)比赛中有多少获胜车手? |
1.0 |
2008年4月4日在美国播出的剧集叫什么名字? |
"bust a move" part one, "bust a move" part two |
评估方法
评估脚本可在 这里 找到。
引用信息
@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(Table Pre - training via Execution)基于BART架构,是一种具有双向(类似BERT)编码器和自回归(类似GPT)解码器的Transformer编码器 - 编码器(seq2seq)模型。此模型是在 WikiSQL 数据集上微调的tapex - base
模型。
📄 许可证
本项目采用MIT许可证。
属性 |
详情 |
模型类型 |
TAPEX(基础规模模型) |
训练数据 |
WikiSQL |