卡内基梅隆 && 清华 | Prompt2Model:利用大模型Prompt,实现专有NLP模型生成!

原文:卡内基梅隆 && 清华 | Prompt2Model:利用大模型Prompt,实现专有NLP模型生成! - 知乎

引言

随着大型语言模型 (LLM) 的应用,只需使用自然语言描述任务并提供一些示例,人们就能够方便的通过Prompt创建NLP系统。然而,相比传统的专用NLP模型,大型语言模型仍然存在计算资源紧张等问题。为此,本文提出了Prompt2Model平台架构,采用自然语言描述任务,并用它来「训练有利于部署的专用模型」。实验结果显示:Prompt2Model训练的模型的「性能比ChatGPT的结果平均高出20%「,同时」尺寸最多缩小700倍」

Paper:https://arxiv.org/pdf/2308.12261v1.pdf

Code:https://github.com/neulab/prompt2model

背景介绍

对于传统的NLP任务,从头开始构建NLP模型是一项特别艰难的任务。NLP研究人员一般都需要做以下几个步骤:定义NLP任务的工作范围、查询或标注目标NLP模型的数据、选择合适模型架构、训练模型参数、调节模型参数、通过验证集评估系统性能、实现NLP模型的部署。

随着大型语言模型(LLM)的发展,像ChatGPT、GPT-4等大模型提供了一种轻量级范式,让人们通过Prompt就能实现NLP系统的创建。NLP研究人员可以编写一个Prompt明确出目标系统的功能,并要求大型语言模型(LLM)通过文本完成目标输出。这种概念模式使得无需编写一行代码即可快速为各种应用程序构建NLP系统。

然而,通过Prompt让LLM实现特定任务目标的模式与实际模型部署仍然存在一定的差距。因为Prompt LLM的成本可能会非常的高,模型需要大量的计算或者访问商业API,除此之外,LLM往往比较依赖输入Prompt的质量,这与经过训练的模型相比不稳定。同时,由于NLP研究人员当面不同应用场景时,往往会缺少对应的标注数据来对模型效果进行验证,所以说在实现NLP模型的部署之前,系统效果的调试就存在一定的挑战性。此外,基于Prompt的LLM系统,存在可用性的风险。因为该类系统服务成本高,并且模型预测时间比较长;由于涉及隐私问题,很多高风险领域工作的人不能依赖商业 LLM API。 例如,对于美国的许多应用程序来说,与 LLM 服务提供商共享用户数据是非法的。

Prompt2Model

基于以上背景,本文提出了 Prompt2Model,该系统保留了通过Prompt以轻量级方式指定系统行为的能力,同时仍然可以生成可部署的专用模型,保留了其所有优点。 「Prompt2Model被设计为一个自动化管道,从用户的Prompt中提取必要的任务信息,然后通过三个渠道(数据集检索、数据集生成、模型检索)自动收集和合成特定于任务的知识,最后实现模型评估与部署」。下图为Prompt2Model的自动化流程。

Prompt2Model的核心是自动数据收集系统,它利用数据集检索和基于 LLM 的数据集生成来获取与用户需求相关的标记数据。 然后,检索预训练的模型,并根据收集的数据集的训练分割进行微调。 最后,在相同数据集的测试分割上评估训练的模型,并选择创建一个可用于与模型交互的 Web UI。

本文方法被设计为模块化和可扩展的; 每个组件都可以由从业者以不同的方式实现或禁用。其中:

「数据集检索器」 基于提示,首先尝试检索可以支持用户任务的现有标注数据。 这里的数据集检索器有几个设计决策:

  • 1.要搜索哪些数据集?
  • 2.如何为数据集建立索引以进行搜索?
  • 3.用户的任务需要哪些数据集列,哪些列应该被忽略?

「数据集生成器」 并非所有的NLP任务都会存在标注数据集。为此本文引入了数据集生成器,根据Prompt解析器解析的用户特定要求生成合成训练数据。该组件在成本效率、生成速度、示例多样性和质量控制等方面存在一些列的挑战。

「模型检索器」 除了训练数据之外,还必须选择合适的模型来进行微调。本文将其视为一个检索问题,其中每个模型都由用户生成的描述和元数据(例如受欢迎程度或支持的任务)表示。本文模型检索器的参考实现在Hugging Face 上搜索预训练模型,但这可以覆盖其他模型存储库,例如 Model Zoo。

「训练」 给定检索和生成的数据集以及预训练模型,我们使用模型训练器在数据子集上微调模型。 通过将所有任务视为文本到文本生成来训练模型,除此之外该组件将来可以扩展以支持新方法。

「评估」 在对检索和生成的数据集的一部分训练模型后,将剩余的数据提供给模型评估器模块。 目标是支持各种任务,为任意任务选择正确的特定于任务的指标是一个难题。

「Web应用创建」 为了使开发人员能够向用户公开模型,Prompt2Model包含一个名为Demo Creator的可选组件,用于创建与模型交互的图形界面。

实验结果

对涵盖传统NLP基准和新颖应用程序的三个任务进行评估,Prompt2Model可以使用自然语言指令生成高质量的数据集和小型模型,这些模型「在特定任务上的性能优于大型语言模型」。Prompt2Model训练的模型的性能比强大的LLM gpt-3.5-turbo的结果平均高出20%,同时尺寸最多缩小700倍。

对于生成数据集验证,可以发现使用检索或生成的数据会因域转移而导致性能下降,但这两种方法的组合可「实现与使用真实数据集类似的性能」

推荐阅读

[1]干货!Prompt链式方法总结,灵活驾驭各种大模型!

[2]太牛了!微软最新研究:LONGNET,Transformer序列长度可支持 10亿+ Token

[3]高效使用ChatGPT等LLMs,最全Prompt工程策略总结

[4]微软 & 麻省理工 | 实验结果表明:代码自修复能力仅存在GPT-4!GPT-3.5不具备该能力

[5]FinGPT:一个「专用于金融领域」的开源大语言模型(LLM)框架,源码公开!

[6]ACL2023 & 复旦 | 模块化Prompt多任务预训练,可快速适应下游任务(含源码)

[7]近乎完美!最强算术语言模型: Goat-7B,干翻GPT-4,怒越PaLM-540B!24G可训练

[8]超 GPT-4!LONGMEM:提升大语言模型(LLMs)长文本处理能力,最高可达64k

[9]斯坦福发布AlpacaFarm,RLHF人工成本降低45倍!

[10]透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

[11]DTG:一种简单有效的Prompt方法,激发LLMs能力!

发布于 2023-08-29 09:29・IP 属地上海

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值