摘要
传统的生物医学人工智能(AI)模型,针对特定任务或模式设计,在实际应用中往往表现出有限的灵活性,并且难以利用整体信息。通用型AI由于其解释不同数据类型的能力以及为多样化需求生成定制输出的能力,具有解决这些限制的潜力。然而,现有的生物医学通用型AI解决方案通常对研究人员、从业者和患者而言是重量级且闭源的。
在这里,我们提出了BiomedGPT,第一个开源且轻量级的视觉语言基础模型,旨在作为一个能够执行各种生物医学任务的通用型模型。在25项实验中的16项里,BiomedGPT取得了最先进的结果,同时保持了计算友好的模型规模。我们还进行了人类评估,以评价BiomedGPT在放射学视觉问答、报告生成和总结方面的能力。BiomedGPT展现出强大的预测能力,在问答中的错误率仅为3.8%,在撰写复杂放射科报告方面表现令人满意,错误率为8.3%,并且在总结能力方面与人类专家的偏好得分几乎相当,具有竞争力。我们的研究表明,通过多样化的数据进行有效训练能够带来更实用的生物医学人工智能,从而提升诊断的准确性和工作流程的效率。
核心速览
研究背景
-
研究问题:这篇文章要解决的问题是如何设计一个通用的生物医学视觉语言基础模型(BiomedGPT),以解决现有生物医学人工智能(AI)模型在现实世界部署中的灵活性有限和难以利用整体信息的问题。
-
研究难点:该问题的研究难点包括:现有模型通常是针对特定任务或模态设计的,缺乏跨任务和模态的通用性;通用模型需要处理多种数据类型,计算复杂度较高;需要在保持模型性能的同时,降低模型的规模和复杂性。
-
相关工作:该问题的研究相关工作包括:传统的生物医学AI模型通常针对特定任务进行优化,如放射学解释、临床信息总结和精确疾病诊断;现有的通用AI模型如GPT-3等在自然语言处理领域表现出色,但在生物医学领域的应用较少,且大多为闭源模型。
研究方法
这篇论文提出了BiomedGPT,用于解决生物医学AI模型在现实世界部署中的灵活性和通用性问题。具体来说,
-
模型架构:BiomedGPT采用Transformer架构,设计为编码器-解码器结构,能够处理视觉和文本输入。模型通过离散化数据为标记,并使用ViT和语言模型的思想实现输入/输出的统一。
-
预训练任务:预训练任务包括掩码图像建模(MIM)、对象检测、掩码语言建模(MLM)、图像描述和视觉问答(VQA)。这些任务的指令分别为:“中间部分的图像是什么?”、“图像中有哪些对象?”、“‘{Text}’的完整文本是什么?”、“图像描述了什么?”和“{Question}”。
-
多任务学习:BiomedGPT支持视觉、文本和视觉语言任务的抽象,通过预训练和微调实现多任务学习。预训练任务包括视觉任务(MIM、MLM、图像描述、VQA)和文本任务(MLM)。
-
零样本学习:BiomedGPT能够在无需进一步训练的情况下回答多模态医学问题,展示了其零样本学习能力。
实验设计
-
数据收集:预训练数据集包括592,567张图像、约1.83亿文本句子、46,408个对象标签对和271,804个图像-文本对。微调数据集涵盖了多个生物医学任务,如医学图像分类、文本理解和总结、视觉问答等。
-
模型版本:设计了三个版本的BiomedGPT模型,分别对应小(S)、中(M)和大(B)规模,以适应不同的计算资源和任务需求。
-
评估指标:使用多种评估指标来衡量模型的性能,包括准确率、F1分数、ROUGE-L、METEOR、CIDEr等。
结果与分析
-
预训练效果:BiomedGPT在预训练阶段通过大规模数据集的学习,建立了稳健和通用的数据表示。模型在多个预训练任务上表现出色,特别是在视觉问答和图像描述任务上。
-
微调性能:在微调阶段,BiomedGPT在多个生物医学任务上取得了显著的性能提升。例如,在医学图像分类任务中,BiomedGPT在多个数据集上的准确率均超过了现有的最先进模型;在文本理解和总结任务中,ROUGE-L评分也显著提高。
-
零样本学习:BiomedGPT展示了其在零样本学习中的潜力,能够在无需进一步训练的情况下回答多模态医学问题,性能与领先的AI模型相当。
-
人类评估:通过放射科医生的评估,BiomedGPT在视觉问答、报告生成和总结任务中表现出色,显示出其在实际临床应用中的潜力。
总体结论
这篇论文提出的BiomedGPT是一个开源且轻量级的视觉语言基础模型,能够在多种生物医学任务中表现出色。研究表明,通过大规模数据集的预训练和微调,可以有效提高生物医学AI模型的实用性和诊断效率。尽管BiomedGPT在多个任务中表现出色,但在安全、公平和偏见方面仍需进一步的评估和改进。未来的研究可以集中在优化模型的性能,扩展其应用范围,并确保其在实际临床环境中的可靠性和安全性。
论文评价
优点与创新
-
开源与轻量级:BiomedGPT是第一个开源且轻量级的视觉语言基础模型,参数规模仅为商业通用生物医学AI模型Med-PaLM M的3088分之一,显著降低了计算和部署的复杂性。
-
多模态处理能力:BiomedGPT能够处理视觉和文本输入,并通过序列化处理表格数据,展示了其在多模态任务中的强大能力。
-
广泛的预训练数据集:BiomedGPT使用了包含592,567张图像、约1.83亿文本句子、46,408个对象标签对和271,804个图像-文本对的大规模预训练语料库,确保了模型的泛化能力。
-
指令遵循能力:开发了Instruct-BiomedGPT变体,通过特定的指令调优数据提升了模型的指令遵循能力。
-
零样本学习:BiomedGPT能够在不进行额外训练的情况下回答多模态医学问题,表现出与领先AI相当的性能。
-
人类评估:在放射学视觉问答、报告生成和摘要等任务中进行了人类评估,展示了BiomedGPT在实际临床应用中的潜力。
-
多任务学习:BiomedGPT展示了出色的多任务学习能力,简化了AI系统的部署和管理。
不足与反思
-
数据质量和多样性:开发AI依赖于高质量和标注的数据,但在生物医学领域,数据注释昂贵且耗时,导致数据质量参差不齐。现有数据集大多集中在放射学,导致模态不平衡。
-
生成文本的事实准确性:评估生成文本的质量存在挑战,尽管CIDEr和ROUGE-L等指标可以衡量生成内容与黄金标准的相似性,但确保这些输出的事实准确性仍然是一个问题。
-
模型扩展的复杂性:BiomedGPT目前专注于处理图像和文本数据,但扩展其能力以涵盖其他类型的生物医学数据(如视频和时间序列数据)可能会引入负迁移问题。
-
计算效率:尽管BiomedGPT在零样本预测和微调后表现出色,但扩展模型规模带来的计算挑战仍然存在。探索可控学习策略如专家混合方法可能有助于缓解这些问题。
-
文本理解能力:与GPT-4V相比,BiomedGPT的文本理解能力尚未完全建立,特别是在复杂医学应用中。未来的研究应专注于提高上下文学习和文本理解的性能。
关键问题及回答
问题1:BiomedGPT在预训练过程中使用了哪些具体的任务和数据集?这些任务和数据集的选择对模型性能有何影响?
BiomedGPT在预训练过程中使用了多种任务和数据集,包括掩码图像建模(MIM)、对象检测、掩码语言建模(MLM)、图像描述和视觉问答(VQA)。具体数据集包括IU X-ray、MediCat、PathVQA、PEIR GROSS和SLAKE等。这些任务和数据集的选择对模型性能有显著影响,因为它们涵盖了视觉和文本的多种模态,确保了模型的泛化能力。特别是,使用大规模和多样化的数据集有助于模型学习到更稳健和通用的数据表示,从而在多个下游任务中表现出色。
问题2:BiomedGPT在微调阶段的表现如何?它在哪些具体任务上取得了显著的性能提升?
在微调阶段,BiomedGPT在多个生物医学任务上取得了显著的性能提升。例如,在医学图像分类任务中,BiomedGPT在多个数据集上的准确率均超过了现有的最先进模型;在文本理解和总结任务中,ROUGE-L评分也显著提高。具体来说,BiomedGPT在医学图像分类任务中的准确率在多个数据集上达到了90%以上,在文本总结任务中的ROUGE-L评分接近50%。这些结果表明,BiomedGPT能够通过微调有效地适应不同的生物医学任务,展现出强大的多任务学习能力。
问题3:人类评估中,BiomedGPT在哪些具体任务上表现出色?评估结果如何?
在人类评估中,BiomedGPT在视觉问答、报告生成和总结任务中表现出色。具体来说,在放射科医生的评估中,BiomedGPT在视觉问答任务中的平均得分为1.75,总分达到91分;在报告生成任务中,生成的报告在事实性、遗漏和错误严重性方面的得分分别为23.3%、23.5%和8.3%;在报告总结任务中,生成的总结在完整性、正确性和潜在医疗危害方面的得分分别为81.0%、90.0%和6.0%。这些评估结果表明,BiomedGPT在实际临床应用中具有较高的潜力,能够生成高质量的报告和总结,辅助医生进行诊断和治疗。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。