金融 GPT 来了:500 亿参数,但用来投资还是跑不赢大
盘
专业领域的 GPT 大模型来了。
在 ChatGPT 爆火之后,各行各业都在研发自己垂直领域的 GPT。
作为一个极具价值的应用场景,金融行业也需要自己专用的大模型。
现在,面向金融行业的大语言模型 BloombergGPT 来了!这是一个 500 亿
参数的语言模型,支持金融行业的各种任务,并取得了一流的结果。
论文链接:https://arxiv.org/pdf/2303.17564.pdf
试用者表示,「这个模型知道 CEO 的名字,可以生成新闻标题,可以编写
BQL 查询(访问彭博数据的查询)。这些行为在我们测试的其他模型中没有
发现。」
我们来看一下论文的核心内容。
金融行业为什么需要自己的大模型?
2020 年发布的 GPT-3 展示了训练超大自回归语言模型(LLM)的强大优势。GPT-3 有
1750 亿个参数,比之前的 GPT-2 模型增加了上百倍,并在各种 LLM 任务中表现出
色,包括阅读理解、开放问答等。
此外有证据表明,大型模型表现出了涌现行为:在扩大规模的过程中,它们获得了
小模型中不存在的能力。涌现行为的一个明显的例子是通过少量 prompt 执行任务的
能力,在这种情况下,一个模型可以从少量的例子(few-shot prompting)中学习
任务。当我们扩大语言模型的规模时,这种能力的提高远远超过了随机。广义上讲,
few-shot prompting 极大地扩展了模型支持的任务范围,降低了用户寻求新的语言
任务自动化的门槛。
在 GPT-3 之后,模型的规模增长到了 2800 亿(Gopher)、5400 亿(PaLM)甚至 1
万亿参数(Megatron)。研究者还探索了实现高性能 LLM 的其他重要方面,如不同
的训练目标、多语言模型、更有效更小的模型,以及寻找数据和参数高效的训练规
模等。
这些尝试大部分集中于通用 LLM 上,在涵盖广泛的主题和领域的数据集上进行训练。
其中也包括一些专门领域的数据集(如代码或生物医学文章),但它们的重点都是
构建具有广泛能力的 LLM。最近,只用特定领域的数据来训练模型的方向产生了一
些模型,这些模型虽然小得多,却在专门领域的任务上击败了通用的 LLM,例如科
学、医学等。这些发现促使研究者进一步开发专注于特定领域的模型。
值得注意的是,金融科技(FinTech)是一个庞大且不断增长的领域,NLP 技术正在
其中发挥越来越重要的作用。金融 NLP 任务包括情感分析、命名实体识别、新闻分
类以及问答等。虽然这些任务的范围与通用 NLP 基准中的任务相似,但金融领域的
复杂性和术语使得该领域急需一个特定的系统。通用的生成模型拥有少样本学习、
文本生成、对话等能力,将这些能力移植到一个金融领域专用的 LLM 中将非常有价
值。虽然目前已经有针对金融领域的掩码语言模型 Araci(2019),但我们还没有
针对这个领域的任务调优或评估的 LLM。
BloombergGPT
来自彭博(Bloomberg)的研究者训练了 BloombergGPT,这是一个 500 亿参数的语
言模型,支持金融行业的各种任务。
他们没有构建一个通用的 LLM,也没有构建一个专门针对特定领域数据的小型 LLM,
而是采取了一种混合方法。通用模型涵盖了许多领域,能够在各种任务中发挥高水
平的作用,并且在训练期间避免了专门化需求。然而,来自现有的特定领域模型的
结果表明,通用模型不能取代它们。彭博需要支持大量不同的任务,通用模型也可
以很好地满足,但绝大多数的应用都在金融领域,特定模型可以更好地完成这些任
务。出于这个原因,他们着手建立了一个模型。该模型在金融基准上取得了一流的
结果,同时也在通用的 LLM 基准上保持了有竞争力的性能。
研究者利用彭博现有的数据创建、收集和整理资源,通过构建迄今为止最大的特定
领域数据集来实现这一目标。由于彭博主要是一家金融数据公司,他们的数据分析
师已经花了四十多年的时间收集、制作金融语言文件。他们拥有广泛的金融数据档
案,涵盖了一系列的主题,并仔细跟踪数据来源和使用权。他们将这些数据添加到
公共数据集中,以创建一个拥有超过 7000 亿个 token 的大型训练语料库。使用这
个训练语料库的一部分,他们训练了一个 BLOOM 风格的、500 亿参数的模型,该模
型是根据 Hoffmann et al. (2022) 和 Le Scao et al. (2022) 的指导方针设计的。
他们在标准的 LLM 基准、开放的金融基准和一套最能准确反映他们预期用例的彭博
内部基准上验证了该模型。结果表明,他们的混合训练方法使他们的模型在领域内
的金融任务上大大超过了现有的模型,而在通用的 NLP 基准上则与之相当或更好。
模型架构
该模型基于 BLOOM,是一个只有解码器的因果语言模型 (Scao et al., 2022)。该模
型包含 70 层 Transformer 解码器模块,定义如下:
其中 SA 是多头自注意力,LN 是层归一化,FFN 是具有 1 个隐藏层的前馈网络。在
FFN 内部,非线性函数是 GELU (Hendrycks and Gimpel, 2016)。ALiBi 位置编码是通
过 Transformer 网络的自注意力组件的加性偏差应用的 (Le Scao et al., 2022)。输
入 token embedding 与最终 softmax 之前的线性映射相关联。该模型在 token
embedding 之后有一个额外的层归一化: