语言支持:
- 多语言
- 南非荷兰语
- 阿姆哈拉语
- 阿拉伯语
- 阿塞拜疆语
- 白俄罗斯语
- 保加利亚语
- 孟加拉语
- 加泰罗尼亚语
- 宿务语
- 科西嘉语
- 捷克语
- 威尔士语
- 丹麦语
- 德语
- 希腊语
- 英语
- 世界语
- 西班牙语
- 爱沙尼亚语
- 巴斯克语
- 波斯语
- 芬兰语
- 菲律宾语
- 法语
- 弗里斯兰语
- 爱尔兰语
- 苏格兰盖尔语
- 加利西亚语
- 古吉拉特语
- 豪萨语
- 夏威夷语
- 印地语
- 苗语
- 海地克里奥尔语
- 匈牙利语
- 亚美尼亚语
- 伊博语
- 冰岛语
- 意大利语
- 希伯来语
- 日语
- 爪哇语
- 格鲁吉亚语
- 哈萨克语
- 高棉语
- 卡纳达语
- 韩语
- 库尔德语
- 吉尔吉斯语
- 拉丁语
- 卢森堡语
- 老挝语
- 立陶宛语
- 拉脱维亚语
- 马尔加什语
- 毛利语
- 马其顿语
- 马拉雅拉姆语
- 蒙古语
- 马拉地语
- 马来语
- 马耳他语
- 缅甸语
- 尼泊尔语
- 荷兰语
- 挪威语
- 齐切瓦语
- 旁遮普语
- 波兰语
- 普什图语
- 葡萄牙语
- 罗马尼亚语
- 俄语
- 信德语
- 僧伽罗语
- 斯洛伐克语
- 斯洛文尼亚语
- 萨摩亚语
- 修纳语
- 索马里语
- 阿尔巴尼亚语
- 塞尔维亚语
- 塞索托语
- 巽他语
- 瑞典语
- 斯瓦希里语
- 泰米尔语
- 泰卢固语
- 塔吉克语
- 泰语
- 土耳其语
- 乌克兰语
- 未定义语言
- 乌尔都语
- 乌兹别克语
- 越南语
- 科萨语
- 意第绪语
- 约鲁巴语
- 中文
- 祖鲁语
数据集:
许可证:
Apache-2.0
ByT5 - 超大模型
ByT5是谷歌T5的无分词器版本,整体架构遵循MT5。
ByT5仅在mC4数据集上进行了预训练,未包含任何监督训练,平均掩码跨度为20个UTF-8字符。因此,该模型需在下游任务上进行微调后方可使用。
ByT5在噪声文本数据上表现尤为出色,例如在TweetQA任务上,google/byt5-xxl
显著优于mt5-xxl。
论文:ByT5:迈向基于字节到字节预训练模型的无分词未来
作者:Linting Xue, Aditya Barua, Noah Constant, Rami Al-Rfou, Sharan Narang, Mihir Kale, Adam Roberts, Colin Raffel
推理示例
ByT5直接处理原始UTF-8字节,无需分词器即可使用:
from transformers import T5ForConditionalGeneration
import torch
model = T5ForConditionalGeneration.from_pretrained('google/byt5-xxl')
input_ids = torch.tensor([list("Life is like a box of chocolates.".encode("utf-8"))]) + 3
labels = torch.tensor([list("La vie est comme une boîte de chocolat.".encode("utf-8"))]) + 3
loss = model(input_ids, labels=labels).loss
对于批量推理和训练,建议使用分词器进行填充:
from transformers import T5ForConditionalGeneration, AutoTokenizer
model = T5ForConditionalGeneration.from_pretrained('google/byt5-xxl')
tokenizer = AutoTokenizer.from_pretrained('google/byt5-xxl')
model_inputs = tokenizer(["Life is like a box of chocolates.", "Today is Monday."], padding="longest", return_tensors="pt")
labels = tokenizer(["La vie est comme une boîte de chocolat.", "Aujourd'hui c'est lundi."], padding="longest", return_tensors="pt").input_ids
loss = model(**model_inputs, labels=labels).loss
摘要
目前最广泛使用的预训练语言模型大多基于词或子词单元的分词序列。将文本编码为分词序列需要依赖独立的分词器。而直接处理原始文本(字节或字符)的无分词模型具有显著优势:可立即处理任何语言的文本,对噪声更具鲁棒性,并通过消除复杂易错的文本预处理流程来减少技术债务。由于字节或字符序列比分词序列更长,过去关于无分词模型的研究常需设计新架构来分摊处理原始文本的成本。本文证明标准Transformer架构只需最小修改即可处理字节序列。我们详细评估了参数量、训练FLOPs和推理速度的权衡,表明字节级模型与分词级模型性能相当。实验还显示字节级模型对噪声具有更强鲁棒性,在拼写和发音敏感的任务上表现更优。作为贡献的一部分,我们发布了基于T5架构的新预训练字节级Transformer模型集,以及实验使用的全部代码和数据。
