英文

FLAN-T5 XL 模型卡片

目录

  • TL;DR
  • 模型详情
  • 使用方法
  • 应用
  • 偏见、风险和局限性
  • 训练详情
  • 评估
  • 环境影响
  • 引用
  • TL;DR

    如果您已经了解 T5,FLAN-T5 在所有方面都更好。这些模型在参数数量相同的情况下,进行了超过1000个额外任务的微调,涵盖了更多的语言。正如摘要的前几行所提到的:

    Flan-PaLM 540B 在多个基准测试中实现了最先进的性能,例如在五-shot MMLU 上达到了 75.2%。我们还公开发布了 Flan-T5 的检查点,这些检查点即使与更大的模型(如 PaLM 62B)相比,也具有较强的少样本性能。总的来说,指令微调是改进预训练语言模型的性能和可用性的一种通用方法。

    免责声明:本模型卡片的内容由 Hugging Face 团队撰写,其中部分内容摘自 T5 model card

    模型详情

    模型描述

    • 模型类型:语言模型
    • 自然语言处理语言:英语、西班牙语、日语、波斯语、印地语、法语、中文、孟加拉语、古吉拉特语、德语、泰卢固语、意大利语、阿拉伯语、波兰语、泰米尔语、马拉地语、马拉雅拉姆语、奥里亚语、旁遮普语、葡萄牙语、乌尔都语、加利西亚语、希伯来语、韩语、加泰罗尼亚语、泰语、荷兰语、印度尼西亚语、越南语、保加利亚语、菲律宾语、中央高棉文、老挝语、土耳其语、俄语、克罗地亚语、瑞典语、约鲁巴语、库尔德语、缅甸语、马来语、捷克语、芬兰语、索马里语、塔加洛语、斯瓦希里语、僧伽罗语、卡纳达语、壮语、伊博语、科萨语、罗马尼亚语、海地克里奥尔语、爱沙尼亚语、斯洛伐克语、立陶宛语、希腊语、尼泊尔语、阿萨姆语、挪威语
    • 许可证:Apache 2.0
    • 相关模型: All FLAN-T5 Checkpoints
    • 原始检查点: All Original FLAN-T5 Checkpoints
    • 了解更多信息的资源:

    使用方法

    以下是使用 transformers 模型的示例脚本:

    使用 Pytorch 模型

    在 CPU 上运行模型

    点击展开
    from transformers import T5Tokenizer, T5ForConditionalGeneration
    
    tokenizer = T5Tokenizer.from_pretrained("google/flan-t5-xl")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-xl")
    
    input_text = "translate English to German: How old are you?"
    input_ids = tokenizer(input_text, return_tensors="pt").input_ids
    
    outputs = model.generate(input_ids)
    print(tokenizer.decode(outputs[0]))
    

    在 GPU 上运行模型

    点击展开
    # pip install accelerate
    from transformers import T5Tokenizer, T5ForConditionalGeneration
    
    tokenizer = T5Tokenizer.from_pretrained("google/flan-t5-xl")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-xl", device_map="auto")
    
    input_text = "translate English to German: How old are you?"
    input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
    
    outputs = model.generate(input_ids)
    print(tokenizer.decode(outputs[0]))
    

    在 GPU 上使用不同的精度运行模型

    FP16 点击展开
    # pip install accelerate
    import torch
    from transformers import T5Tokenizer, T5ForConditionalGeneration
    
    tokenizer = T5Tokenizer.from_pretrained("google/flan-t5-xl")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-xl", device_map="auto", torch_dtype=torch.float16)
    
    input_text = "translate English to German: How old are you?"
    input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
    
    outputs = model.generate(input_ids)
    print(tokenizer.decode(outputs[0]))
    
    INT8 点击展开
    # pip install bitsandbytes accelerate
    from transformers import T5Tokenizer, T5ForConditionalGeneration
    
    tokenizer = T5Tokenizer.from_pretrained("google/flan-t5-xl")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-xl", device_map="auto", load_in_8bit=True)
    
    input_text = "translate English to German: How old are you?"
    input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
    
    outputs = model.generate(input_ids)
    print(tokenizer.decode(outputs[0]))
    

    应用

    直接使用和下游应用

    作者在 the original paper's model card 中写道:

    主要用途是语言模型的研究,包括:零样本自然语言处理任务的研究,以及上下文中的少样本学习自然语言处理任务(如推理和问答);推进公平性和安全性研究,并了解当前大型语言模型的局限性

    有关详细信息,请参阅 research paper

    超出范围的使用

    需要更多信息。

    偏见、风险和局限性

    以下信息来自模型的 official model card

    语言模型,包括 Flan-T5,有可能以有害的方式用于语言生成(参见 Rae et al.(2021))。在没有对特定应用程序的安全性和公平性问题进行事先评估的情况下,不应直接使用 Flan-T5 在任何应用程序中。

    伦理考虑和风险

    Flan-T5 是在大量文本数据上进行微调的,该数据未经过滤以排除明确的内容或评估现有的偏见。因此,模型本身可能容易生成同样不适当的内容或复制底层数据中的固有偏见。

    已知限制

    Flan-T5 尚未在真实世界应用中进行测试。

    敏感用途:

    不应将 Flan-T5 应用于任何不可接受的用例,例如生成辱骂性言论。

    训练详情

    训练数据

    该模型的训练数据包括以下任务,包括原始论文中表格所描述的任务(图2):

    训练过程

    根据 original paper 中的模型卡片:

    这些模型基于预训练的 T5(Raffel et al., 2020),并通过指令进行微调,以提高零样本和少样本性能。每个 T5 模型大小对应一个经过微调的 Flan 模型。

    该模型使用 TPU v3 或 TPU v4 机架进行训练,使用 t5x 代码库和 jax

    评估

    测试数据、因素和指标

    作者对模型在涵盖多种语言的各种任务上进行了评估(总共涵盖 1836 种)。有关一些定量评估的详细信息,请参阅下表: 。完整的详情,请查看 research paper

    结果

    关于 FLAN-T5-XL 的完整结果,请参阅 research paper ,表3。

    环境影响

    可以使用 Machine Learning Impact calculator 中提出的方法来估算碳排放量,并参考 Lacoste et al. (2019)

    • 硬件类型:Google Cloud TPU Pods - TPU v3 或 TPU v4 | 使用的芯片数量 ≥ 4 。
    • 使用小时数:需要更多信息
    • 云服务提供商:GCP
    • 计算区域:需要更多信息
    • 排放的碳量:需要更多信息

    引用

    BibTeX:

    @misc{https://doi.org/10.48550/arxiv.2210.11416,
      doi = {10.48550/ARXIV.2210.11416},
      
      url = {https://arxiv.org/abs/2210.11416},
      
      author = {Chung, Hyung Won and Hou, Le and Longpre, Shayne and Zoph, Barret and Tay, Yi and Fedus, William and Li, Eric and Wang, Xuezhi and Dehghani, Mostafa and Brahma, Siddhartha and Webson, Albert and Gu, Shixiang Shane and Dai, Zhuyun and Suzgun, Mirac and Chen, Xinyun and Chowdhery, Aakanksha and Narang, Sharan and Mishra, Gaurav and Yu, Adams and Zhao, Vincent and Huang, Yanping and Dai, Andrew and Yu, Hongkun and Petrov, Slav and Chi, Ed H. and Dean, Jeff and Devlin, Jacob and Roberts, Adam and Zhou, Denny and Le, Quoc V. and Wei, Jason},
      
      keywords = {Machine Learning (cs.LG), Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences},
      
      title = {Scaling Instruction-Finetuned Language Models},
      
      publisher = {arXiv},
      
      year = {2022},
      
      copyright = {Creative Commons Attribution 4.0 International}
    }