英文

FLAN-T5 small模型介绍卡

目录

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

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

    Flan-PaLM 540B在多个基准测试中达到了最先进的性能,例如,在五-shot MMLU上达到了75.2%的准确率。我们还公开发布了Flan-T5检查点,1中的模型在强化学习一些功能上的性能甚至超过了更大的模型,例如PaLM 62B。总体而言,指导微调是改善预训练语言模型性能和可用性的一般方法。

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

    模型详情

    模型描述

    • 模型类型:语言模型
    • 语言(NLP):英语、西班牙语、日语、波斯语、印地语、法语、中文、孟加拉语、果酱语、德语、泰卢固语、意大利语、阿拉伯语、波兰语、泰米尔语、马拉地语、马拉雅拉姆语、奥里亚语、旁遮普语、葡萄牙语、乌尔都语、加利西亚语、希伯来语、韩语、加泰罗尼亚语、泰语、荷兰语、印度尼西亚语、越南语、保加利亚语、菲律宾语、柬埔寨中央语、老挝语、土耳其语、俄语、克罗地亚语、瑞典语、尤鲁巴语、库尔德语、缅甸语、马来语、捷克语、芬兰语、索马里语、塔加拉语、斯瓦希里语、僧伽罗语、卡纳达语、壮语、伊博语、科萨语、罗马尼亚语、海地语、爱沙尼亚语、斯洛伐克语、立陶宛语、希腊语、尼泊尔语、阿萨姆语、挪威语
    • 许可证: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-small")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-small")
    
    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-small")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-small", 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-small")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-small", 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-small")
    model = T5ForConditionalGeneration.from_pretrained("google/flan-t5-small", 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 中写道:

    主要用途是语言模型的研究,包括:零-shot NLP任务和上下文中的少-shot学习NLP任务,例如推理和问答;促进公平性和安全性研究,并了解当前大型语言模型的局限性

    详细信息请参阅 research paper

    超出范围的用途

    需要更多信息。

    偏见、风险和限制

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

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

    伦理考虑和风险

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

    已知限制

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

    敏感用途:

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

    训练详情

    训练数据

    该模型训练了多种任务,包括表格中所描述的任务(来自原始论文的图2):

    训练过程

    根据 original paper 模型卡中的描述:

    这些模型基于预训练的T5(Raffel et al.,2020),并通过指导进行微调,以获得更好的零-shot和少-shot性能。每个T5模型大小都有一个经过微调的Flan模型。

    该模型是使用TPU v3或TPU v4 pod在 t5x 的代码库中进行训练的。

    评估

    测试数据、因素和指标

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

    结果

    FLAN-T5-Small的完整结果请参阅 research paper 中的表格3。

    环境影响

    可使用 Lacoste et al. (2019) 中介绍的 Machine Learning Impact calculator 估算碳排放量。

    • 硬件类型: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}
    }