英文

BioMedLM 2.7B模型卡

注意:由于NIH持有“PubMed”的商标,此模型以前被称为PubMedGPT 2.7B,但我们已经更改了名称。

BioMedLM 2.7B是一个全新的语言模型,专门训练于来自 The Pile 的生物医学摘要和论文。此GPT风格的模型在各种生物医学NLP任务中取得了强大的结果,包括在MedQA生物医学问答任务上达到了50.3%的准确率,创下了最新的记录。

作为一个自回归语言模型,BioMedLM 2.7B也能够进行自然语言生成。然而,我们仅仅开始探索了该模型的生成能力和局限性,我们强调,该模型的生成能力仅用于研究目的,不适用于生产环境。通过释放该模型,我们希望推进生物医学NLP应用程序的发展,并倡导负责任地训练和利用特定领域的语言模型的最佳实践;我们非常关注可靠性、真实性和可解释性等问题。

该模型是 Stanford CRFM MosaicML 的合作成果。

目录

  • BioMedLM 2.7B模型卡
  • 目录
  • 模型详细信息
    • 模型描述
  • 用途
    • 下游使用
    • 超出范围的使用
  • 偏见、风险和局限性
    • 建议
  • 训练详细信息
    • 训练数据
    • 训练过程
      • 预处理
  • 环境影响
  • 技术规格
    • 模型架构和目标
    • 计算基础设施

模型详细信息

模型描述

BioMedLM 2.7B是一个全新的语言模型,专门训练于来自 The Pile 的生物医学摘要和论文。此GPT风格的模型在各种生物医学NLP任务中取得了强大的结果,包括在MedQA生物医学问答任务上达到了50.3%的准确率,创下了最新的记录。

作为一个自回归语言模型,BioMedLM 2.7B也能够进行自然语言生成。然而,我们仅仅开始探索了该模型的生成能力和局限性,我们强调,该模型的生成能力仅用于研究目的,不适用于生产环境。通过释放该模型,我们希望推进生物医学NLP应用程序的发展,并倡导负责任地训练和利用特定领域的语言模型的最佳实践;我们非常关注可靠性、真实性和可解释性等问题。

该模型是 Stanford CRFM MosaicML 的合作成果。

  • 由以下机构开发:Stanford CRFM、MosaicML
  • 由以下机构共享:Stanford CRFM
  • 模型类型:语言模型
  • 语言(自然语言处理):英文
  • 许可证: bigscience-bloom-rail-1.0

用途

此模型根据 BigScience Open RAIL-M license 的条款许可进行使用,用于 BLOOM 。请注意,除其他限制外,此许可禁止使用该模型(或其派生物)“提供医疗建议和医疗结果解释”。如果您担心您的用例符合该限制的“字面”但不符合“精神”,您可以与我们联系以讨论。

直接用途

可以使用此模型生成文本,这对于实验和理解其能力是有用的。但不应直接用于可能直接影响人员的生产或工作中。

下游使用

我们主要使用此模型进行下游问题回答任务的微调,并建议以此方式使用该模型。

超出范围的使用

我们不建议在生产环境中使用此模型进行自然语言生成,无论是否经过微调。

偏见、风险和局限性

对语言模型的偏见和公平性问题进行了重要研究(参见,例如, Sheng et al. (2021) Weidinger et al. (2021) )。该模型生成的预测可能包含针对受保护群体、身份特征以及敏感的社会和职业群体的令人不安和有害的刻板印象。

建议

虽然此模型能够生成自然语言文本,但我们仅仅开始探索了这种能力及其局限性。在医学等领域,理解这些限制尤为重要。因此,我们强烈建议不要在生产环境中使用此模型进行自然语言生成。

训练详细信息

训练数据

该模型是在来自 The Pile 的PubMed摘要和全文上进行训练的。

训练过程

该模型使用 MosaicML Cloud 进行训练,这是一个专为大型工作负载(如LLMs)设计的平台。使用 Composer 训练库和 PyTorch FSDP ,可以轻松实现128个A100-40GB GPU之间的多节点训练,总训练时间约为6.25天。该模型的批量大小为1024,序列长度为1024,使用了Decoupled AdamW,并根据以下设置训练了300B标记:

lr 1.6e-4
eps 1e-8
betas [0.9, 0.95]
weight decay 1.6e-5

训练过程非常顺利,没有出现任何发散现象。

在准备训练时,我们不确定将训练到300B标记对语言模型困惑度和下游任务性能的好处。虽然大多数相似规模的模型(如GPT Neo 2.7B)训练到了300-400B标记,但这些模型使用的数据集比PubMed大得多。例如,The Pile的大小是其PubMed子语料库的8倍。

幸运的是,在整个训练过程中,我们确实看到了验证集和训练集的困惑度持续改进,并且初步实验显示,随着训练标记增加到300B,下游任务的性能也得到了提高。我们的结论是,确实值得训练完整的300B标记,即使这比相似模型更多地通过数据进行了多次遍历。

预处理

该模型使用了在PubMed摘要上训练的自定义分词器。当构建特定领域的模型时,我们发现使用在领域内的文本上训练的分词器可以最大限度地提高在下游任务上的性能。一个关键的好处是常见的生物医学术语被表示为一个整体的标记。

例如,以下所有术语都由生物医学分词器切分为单个标记,但由标准的GPT-2分词器切分为多个标记:

chromatography chrom/atography
cytotoxicity cyt/ot/oxicity
Immunohistochemistry Immun/oh/ist/ochemistry
photosynthesis photos/ynthesis
probiotic prob/iotic

这使得模型能够将有关这些概念的信息编码在它们各自的标记表示中,而不是在与许多其他术语共享的“oh”等子词标记中分散开来。

技术规格

模型架构和目标

BioMedLM 2.7B是一个标准的GPT-2实现(使用Flash Attention进行训练),具有以下超参数:

hidden size 2560
heads 20
layers 32
vocab size 28896
sequence length 1024

计算基础设施

该模型是在专为大型工作负载(如LLMs)设计的 MosaicML Cloud 上进行训练的。使用 Composer 训练库和 PyTorch FSDP ,可以轻松实现128个A100-40GB GPU之间的多节点训练,总训练时间约为6.25天。