卷起来!Dr. LLaMA:通过生成数据增强改进特定领域 QA 中的小型语言模型,重点关注医学问答任务...

news2024/12/22 2:34:40

6b12b0845620e2181f95383b77e45d23.png

大家好,最近突然发现了一篇在专门应用于医学领域的LLaMA,名为Dr.LLaMA(太卷了太卷了),就此来分享下该语言模型的构建方法和最终的性能情况。

论文:Dr. LLaMA: Improving Small Language Models in Domain-Specific QA via Generative Data Augmentation
地址:https://arxiv.org/pdf/2305.07804.pdf
代码:https://github.com/zguo0525/Dr.llama

进NLP群—>加入NLP交流群

总体说一下

最近的大语言模型(LLM)发展的太快了,大家也都知道,每周好几个语言模型,羊驼的名字都用不过来了(LLaMA、Alpaca、Vicana、华驼等),哈哈。

由于现有的模型很大(GPT4、ChatGPT),性能表现非常好,但是很多特定小方向性能还是不是那么的好,所以就有想构建特定领域小语言模型的想法。

fd7722a63e0775988d6a09bc1a704a4c.png
ChatGPT vs BioGPT在zero-shot下的性能比较

但是在特定领域中会有 1.计算费用和效率低下的问题;2.训练数据较少 的问题,很多小语言模型(SLM)经常会卡在上述情况中不能自拔。

在本文中,介绍了Dr.LLaMA,这是一种通过LLM生成数据增强来改进SLM,同时重点关注医学问答任务和PubMedQA数据集。

本文探索了 1.有效在小模型上finetune的方法对比(Prefix-tuning vs LoRA); 2.LLM数据增强的有效性。

该研究旨在弥合 LLM 令人印象深刻的功能与 SLM 的计算效率之间的差距,从而为特定领域的应用程序开发更有效和高效的模型。

方法介绍

有效的fine-tuning

在特定任务fine-tuning大语言模型会有计算量和时间成本,为了解决这样的问题,前人提出了2种方法:Prefix Tuning 和 Low-rank Adaptaion(LoRA)。

2f275be80a0d3f0ea81fbe9753f5d7e2.png
Prefix Tuning 和 LoRA的具体应用图示
  • Prefix-tuning:prefix tuning就是训练一个小的、任务特定的网络,可称之为前置网络(prefix network),来生成特定任务的输入前置信息。这些信息和原始的输入信息concat起来,一起送入LLM中,只需要训练前者即可,不用动LLM的权重。该方法可大幅度减少可训练的参数和计算资源,具有高效多任务学习能力。

  • Low-rank adaptation(LoRA):低秩自适应使用低秩分解将模型的权重矩阵分解为两个较小的矩阵,然后对其进行微调。这种方法捕获基本信息,同时减少计算负担,保持模型适应具有较低计算要求的特定领域任务的能力。

这里使用的对比模型为:

  • BioGPTLarge

  • LLaMA-7b

  • Alpaca-7b

其中,prefix tuning这里使用32-256的token范围, Low-rank adaptation使用32-256的alpha范围和一个固定的rank为4的值。

生成式数据增强

生成式数据增强在扩充和使得数据多样性方面一直有着很重要的作用。大语言模型是个很厉害的工具,比如GPT3和4作为强有力的可根据已有数据生成具有真实性、可信赖的新数据,可扩充训练数据。

083d72eb2aa163d77d4fb3706bb31e48.png

具体来说,在本实验中,通过扩充医学问答对,生成新的具有相同意义但不同文本的新的问答对。

但是,确保生成样本的质量和相关性是一个严肃的问题,如低质量或者不相关的生成样本对最终的性能会带来负面的影响。控制生成样本的多样性对于防止冗余或过于相似的数据点至关重要。

其中,为了保证质量和多样性,使用了两项技术:

  1. Repetition Penalty Logits Processor,惩罚值为2。这种技术不鼓励生成文本中的重复词,促进更多的多样性并避免单调。

  2. Temperature Logits Warper,温度为0.8。这种技术能够控制生成输出的随机性。使用较低的温度值,模型会产生更集中和确定性的结果,从而降低产生意外或不相关文本的可能性。

实验结果

Prefix Tuning和Low-rank Adaptation

在这个分析中,针对 BioGPT-Large 比较了两种技术的性能,Prefix Tuning和 Low-rank adaptation。结果如图所示,发现了一个有趣的现象,即这些技术对超参数选择的敏感性。

20b82991352679ca184179b3829d4bd0.png

这一观察结果表明,与Prefix Tuning相比, Low-rank adaptation对超参数选择更稳健且更不敏感。这表明 Low-rank adaptation在不同的超参数值之间提供更一致和可靠的性能,以实现有效的微调。

指令微调限制语言模型的领域适应性

Alpaca-7b 源自 LLaMA-7b,是一种指令微调的大型语言模型 (LLM),可增强其遵循指令和有效响应特定任务的能力。然而,与普通的预训练模型相比,这种方法限制了它对特定领域任务的适应性。

720eda2b9c2f850a5a97c04ecd30571b.png

实验表明,与 BioGPT-Large 相比,LLaMA-7b 表现出更好的泛化能力,准确率和 F1 分数之间的差异更小。这一观察表明,对特定领域的数据集进行预训练可能不是必需的,因为经过微调的模型可以获得令人满意的性能。此外,尽管 LLaMA-7b 比 BioGPT-Large 大大约 4.3 倍,但它仍然与单个 V100 GPU 兼容,这也是其具有优异的性能的原因。

最佳生成数据增强方法

实验使用大语言模型进行数据扩充,比如ChatGPT。然而,发现指示缺乏领域知识的 LLM 生成全新的问答对并没有带来改进,反而导致微调 SLM 的下游任务性能下降。这一观察结果表明,虽然 LLM 可以有效地改进和多样化现有的问答对,但它们为特定领域的任务创建新颖、高质量的对的能力仍然有限。

另一方面,LLM 的最新进展(例如 GPT-4)具有针对 PubMedQA 的特定领域知识和问答能力,可以生成有用的新训练数据。通过将这些数据纳入训练过程,可以显着提高微调模型的性能。这些发现强调了具有特定领域知识的 LLM 在增强特定领域 QA 数据集和提高下游任务性能方面的重要性。

dc458b9df74972ed70f1d3ed077746ec.png

最后,毫不奇怪,当 BioGPT 在增强数据集上进行微调时,它的性能优于 LLaMA-7B。这与之前的发现一致,并强调了使用领域特定数据进行预训练的有效性,使 BioGPT 能够更好地理解领域特定任务并在其中表现出色。在微调期间利用特定领域的知识可以提高模型的准确性和上下文相关性,从而在特定领域的问题或任务中表现出色。

结论

根据实验结果得出结论,生成式数据增强是提高小型语言模型 (SLM) 在医学问答 (QA) 任务中性能的有效技术。Prefix Tuning 和 Low-rank Adaptation 被证明是有前途的 SLM 微调方法,Low-rank Adaptation 展示了对超参数选择的更大鲁棒性。此外,实验表明,对具有领域知识的 LLM 进行微调可以显着提高领域特定任务的性能。

更多细节,请阅读原文获取哈~


进NLP群—>加入NLP交流群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/543078.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

晶能转债,正元转02上市价格预测

晶能转债 基本信息 转债名称:晶能转债,评级:AA,发行规模:100.0亿元。 正股名称:晶科能源,今日收盘价:12.19元,转股价格:13.79元。 当前转股价值 转债面值 / …

word怎么转换pdf?提供几个思路

在现代互联网时代,我们经常需要将文档转换为PDF格式,以便于共享和打印。虽然Word文件是最常见的文档格式之一,但是许多人不知道如何将其转换为PDF格式。在本文中,我们将介绍如何使用不同的方法将Word文档转换为PDF格式。 使用第三…

Flutter实现PopupMenu(弹出设置菜单)

PopupMenuButton简介 PopupMenuButton是一个用于创建弹出菜单的小部件。它通常与IconButton或其他触发菜单显示的小部件一起使用。当用户点击触发按钮时,PopupMenuButton会在屏幕上方或下方弹出一个菜单,显示一组选项供用户选择。 PopupMenuButton常用…

测试的缺陷密度如何减少

测试的缺陷密度如何减少 随着软件开发的不断进步,测试已经成为一个非常重要的环节。测试的目的是发现空间中的缺陷,以确保软件的质量和稳定性。然而,缺陷密度的高低是影响测试效果的重要因素之一。高缺陷密度意味着测试人员需要更多的时间和精…

在 Ubuntu 22.04 上安装 KubeSphere 实战教程

作者:老 Z,中电信数智科技有限公司山东分公司运维架构师,云原生爱好者,目前专注于云原生运维,云原生领域技术栈涉及 Kubernetes、KubeSphere、DevOps、OpenStack、Ansible 等。 前言 导图 知识点 定级:入…

JavaScript中eval和with语句如何影响作用域链:探索深度知识

前言 系列首发于公众号『前端进阶圈』,若不想错过更多精彩内容,请“星标”一下,敬请关注公众号最新消息。 JavaScript中eval和with语句如何影响作用域链:探索深度知识 前言 在上篇文章中,我们介绍了深度剖析了作用域…

maxwell小白入门

执行同步binlog数据命令路径 maxwell安装目录下执行启动命令增量同步命令: ./bin/maxwell --config ./conf/meituan(文件目录)/具体配置文件名.properties --daemon采集历史数据 ./bin/maxwell-bootstrap --config ./conf/meituan(文件目录)/具体配置文件名.properties --da…

javaIO流之缓冲流

目录 简介1、字节缓冲流1.1构造方法1.2缓冲流的高效1.3为什么字节缓冲流会这么快?1.4byte & 0xFF 2、字符缓冲流2.1构造方法2.2字符缓冲流特有方法 3、练习 简介 Java 的缓冲流是对字节流和字符流的一种封装,通过在内存中开辟缓冲区来提高 I/O 操作…

Kotlin DSL 现已成为全新 Gradle 构建的默认设置

作者 / Kotlin 产品经理 James Ward、开发者关系工程师 Boris Farber 四年来,Android 一直贯彻 "Kotlin 优先" 的原则,许多 Android 开发者已经做出了改变,陆续推出了效率更高、性能更稳定的应用。然而,尽管 Kotlin (bu…

2023—Unity打包Pico4(3)全流程(Pico插件)

一、项目选择了2021.3.0版本的URP,把项目Build成Android 二、打开Project Setting→ 安装最下面的XR Plugin Management 安装完成后的界面,此时还没有Pico选项出现 三、我们需要在该网站下载Pico的SDK包 picoxr/VRTK-Support (github.com) 解压该文件到…

理解搜索引擎优化

我们需要了解搜索引擎如何对网站进行排名,并优化我们的网站以便于搜索引擎的抓取,这被称为SEO(搜索引擎优化)。 搜索引擎的工作分为三个阶段: •爬虫读取页面内容(HTML代码)并跟随超链接读取更多…

VR数字乡村:打造乡村振兴新通道,让乡村“走出去”

VR数字乡村是基于VR全景技术来振兴农村经济,并改善农村生活的一种发展模式。在建设数字化乡村的背景下,VR全景技术在改造升级农村农业、养殖管理、设备生产等多个方面都有积极的作用。 乡村振兴的难题就在于如何走出去,如何宣传自身&#xff…

聚观早报 |腾讯Q1营收重回两位数增长;特斯拉向印度政府提议建厂

今日要闻:腾讯Q1营收重回两位数增长;传特斯拉向印度政府提议建厂;ChatGPT创始人呼吁加强对AI监管;笑果被罚款1335万;药明康德联合创始人赵宁去世 腾讯Q1营收重回两位数增长 5 月 17 日,腾讯控股发布 2023 …

代理、正向代理与反向代理

一、代理 1.1 什么是代理 代理也被叫做网络代理,是一种比较特殊的网络服务,允许一个终端(通常指客户端)通过这个服务与另一个终端(通常指服务器端)进行非直接的连接。例如:一些网关、路由器等…

C语言递归算法实现经典例题

一.递归 1.什么是递归 递归是一种编程技术,它通过在函数内部反复调用自身来解决问题。当一个程序调用自己时,这就称为递归调用。递归可以有助于简化某些算法的实现和理解。在递归过程中,每个调用都会将一些数据保存在栈上,直到递…

【HISI IC萌新虚拟项目】Package Process Unit模块整体方案·PART1

1.背景 网络中包是个重要概念,很多信息在网络中以包的形式传输。而传输介质容易受到外界环境干扰导致传输错误,因此需要在传输过程中进行数据校验、过滤等包处理。包处理和包转发是信息传输的重要处理方式,本芯片实现简单的包处理和包转发机制。 包处理过程中需要用到缓存…

神经网络:Zero2Hero 1 - Simple Language Model

Zero → \to → Hero : 1 实现了一个字符级中文语言模型,数据采用的是开源中文姓名数据集中的一部分,主要内容如下: 字符的预处理 统计频次计算字符对频次矩阵 实现一个简单的先验概率模型 从训练数据中计算字符的先验概率根据先验概率通过…

渗透测试--4.捕获和监听数据

目录 目录 1.监听捕获数据方法 2.kali监听捕获工具介绍 arpspoof arpspoof实战(同一局域网断网实战) driftnet 实战使用drifnet和工具捕获网络图片 1、扫描目标主机,开启ip转发 2、打开ettercap 3、进行arp欺骗: 4、使用drif…

Gap Hours,我在内卷和摆烂之间的折中选择

点击文末“阅读原文”即可参与节目互动 剪辑、音频 / 卷圈 运营 / SandLiu 卷圈 监制 / 姝琦 文案 / 粒粒 产品统筹 / bobo 场地支持 / 声湃轩天津录音间 一个名词解释: Gap Day,是工作和生活中为了从不好的状态中跳脱出来,享受了躺平…

技术支持内容

平台技术简介: 前端:采用Vue、uni-app等技术。 后端:采用Spring Boot 。 权限:采用Jwt,支持多终端认证系统。 邮箱: postmasterzhonghuisoft.cn 平台基础功能: 用户管理: 管理…