论文信息
题目:MMGPL: Multimodal Medical Data Analysis with Graph Prompt Learning
MMGPL:基于图提示学习的多模态医学数据分析
论文创新点
- 图提示学习:我们引入了一种新颖的提示学习模型,在多模态模型的微调过程中学习图提示,以诊断神经系统疾病。这种模型通过在微调过程中引入图结构信息,增强了模型对神经系统疾病诊断的能力。
- 概念学习与语义相似性:我们首先利用GPT-4获取相关疾病概念,并计算这些概念与所有图像块之间的语义相似性。这一步骤有助于识别与疾病最相关的图像块,并减少不相关图像块的干扰。
- 结构信息的提取:我们通过构建基于概念和标记之间关系的图,并使用**图卷积网络(GCN)**层来提取结构信息,这一结构信息被用来提示预训练的多模态模型进行神经系统疾病的诊断。
- 多模态数据标记化:我们提出了一种多模态数据标记化方法,将不同模态的医学数据投影到共享的标记空间中,有效地处理多模态医学数据。
摘要
提示学习在微调多模态大型模型以适应各种下游任务方面展现出了令人印象深刻的有效性。尽管如此,现有的提示学习方法在神经疾病诊断中的应用仍面临两个问题:(i) 现有方法通常平等对待所有图像块,尽管在神经影像中只有少数图像块与疾病相关;(ii) 它们忽略了大脑连接网络中固有的结构信息,这对于理解和诊断神经系统疾病至关重要。为了解决这些问题,我们引入了一种新颖的提示学习模型,在多模态模型的微调过程中学习图提示,以诊断神经系统疾病。具体来说,我们首先利用GPT-4获取相关疾病概念,并计算这些概念与所有图像块之间的语义相似性。其次,我们根据每个图像块与疾病相关概念之间的语义相似性降低不相关图像块的权重。此外,我们基于这些概念在标记之间构建图,并使用图卷积网络层提取图的结构信息,用于提示预训练的多模态模型以诊断神经系统疾病。广泛的实验表明,我们的方法在神经系统疾病诊断方面与最先进的方法相比具有优越的性能,并得到了临床医生的验证。
关键词
提示学习,多模态模型,神经系统疾病,图神经网络
在本文中,我们提出了一种新的提示学习方法来解决上述挑战,框架如图1所示。具体来说,我们首先执行多模态数据标记化器,将不同模态的原始数据投影到共享标记空间中,然后设计概念学习和图提示学习来解决上述问题。
3.2 多模态数据标记化器
医学数据本质上是多模态的,通常包括MRI、PET和FC等模态在神经系统疾病诊断中。这些不同的模态提供了互补信息,有助于更全面地理解和更好地分析神经系统疾病。然而,与自然图像相比,这些模态通常表现出更复杂的数据结构,如3D张量医学数据、脑连接图数据和时间序列数据。以前的多模态模型,如CLIP,通过为每种模态使用不同的标记器和编码器来处理文本和图像。然而,这些方法在处理多模态医学数据时可能面临效率和可扩展性的挑战。此外,为每种模态维护单独的标记器和编码器是不灵活的。受Meta-transformer和Imagebind的启发,我们采用了多模态数据标记化器,将各种多模态医学数据转换为标记嵌入。由于对2D图像数据(例如X射线和CT)和文本数据转换为标记的研究已经相当广泛,因此对3D张量医学数据(例如MRI和PET)的标记化关注较少。因此,在接下来的部分中,我们专注于将3D张量医学数据转换为标记。
3.2.1 图片分割
具体来说,对于3D张量医学数据(例如MRI和PET),让我们将来自模态的原始数据表示为,其中每个表示具有其相应的高度、宽度、深度和通道数的不同模态。对于每个模态,我们首先通过将数据分割成一组图像块来启动标记化过程,其中是第个图像块,是所有维度上每个图像块的统一大小,是第个模态的总图像块数。
将数据分割成一组图像块有多种方法,包括(i)2D切片图像块:每个体积扫描沿一个维度切片,每个2D切片然后被分割成大小的图像块。这种方法的优点在于多模态大型模型通常在2D图像上进行预训练,这使得它们更容易转移到2D医学图像上。然而,这种方法将生成大量的标记,增加了计算量,使其更难优化。(ii)2D轴向切片图像块:沿轴向平面切片,该平面与3D张量的地平线平行,每个切片被分割成大小的图像块。这种方法的优点在于它生成了相当数量的标记。然而,一个缺点是它可能导致信息丢失。(iii)3D图像块:3D张量数据被分割成较小的立方体,每个立方体的大小为。这种方法的优点在于它在不造成信息丢失的情况下生成了相当数量的标记。然而,一个缺点是它可能包含标记和预训练基础模型之间的间隙。请注意,每种方法都有其优缺点。因此,有必要根据具体任务和数据的特点选择最合适的方法。
3.2.2 标记化
每个图像块然后通过模态特定的图像块投影层转换为标记,并调整每个模态的标记嵌入的维度,可以表示为:
其中是第个图像块在第个模态中的位置嵌入,模态特定的图像块投影层将每个图像块映射到维标记嵌入。因此,我们获得了不同模态的所有标记,即。
我们进一步通过一个共同的可学习线性投影层将来自多模态的标记嵌入投影到共享标记嵌入空间,可以形式化为:
其中是每种模态的位置嵌入,是一个共同的可学习线性投影层。因此,我们获得了所有模态的所有标记,即。
3.3 概念学习
一旦获得了所有标记嵌入,考虑每个标记的重要性至关重要,因为只有少数标记与疾病相关。然而,由于缺乏注释和标记的高维度,识别这些与疾病相关的标记是具有挑战性的。为了解决这一挑战,我们提出利用疾病的概念并计算每个标记与所有概念之间的语义相似性。我们进一步根据每个标记与疾病相关概念之间的语义相似性减少不相关标记的权重或重要性。
3.3.1 概念生成
与提供来自图像块的低层次语义信息不同,概念指的是从数据中抽象出有意义的模式,从而提供将图像块与特定类别联系起来的更高层次的信息。在神经系统疾病诊断中,概念通常与疾病特定信息相关,如症状、生物标志物或放射学特征。
生成用于诊断神经系统疾病的一组概念的直接方法是利用人类专家知识。手工制作一组概念提供了更好的可解释性,因为它们与人类的感知和理解一致。然而,需要注意的是,注释这些概念的过程可能成本高昂,同时需要丰富的医学专业知识。为了避免这些问题,先前的方法尝试使用GPT-4或其他大型语言模型生成概念文本。例如,Yang等人提出了促使大型语言模型(即GPT3)生成候选概念的方法。基于此,Yan等人提出了从GPT-4中引出医学知识以构建一组用于可解释医学图像分类器的概念。因此,从大型语言模型(例如GPT-3和GPT-4)中构建概念已被成功应用。在本研究中,我们使用GPT-4自动生成与疾病相关的概念。具体来说,通过用特定指令提示GPT-4,我们可以生成通常与疾病相关的一系列概念,例如“大脑代谢减退:患有AD的个体通常表现出大脑代谢活动减缓,特别是在额叶和颞叶。”这种方法减少了注释成本,并利用多模态大型模型的能力,根据大量医学知识生成概念。更具体地说,对于特定神经系统疾病诊断的个类别,我们为每个类别生成个相关概念,可以形式化为:
其中表示GPT-4 API,表示相应类别的名称,表示生成的文本对应于个概念。在本研究中,概念文本已由临床医生验证以确保它们的正确性。
3.3.2 语义相似性计算
获得的概念用于计算每个标记与疾病相关概念之间的语义相似性。这个过程有助于识别最相关的标记,并相应地调整它们的权重。因此,我们首先将概念文本及其相应的类别名称输入文本编码器以获得概念嵌入,即,
其中表示第个概念在第个类别中的最终嵌入。
注意到,文本编码器和标记编码器没有在配对数据上预训练,因此和的分布没有对齐。因此,我们在标记上应用一个可学习的投影层以对齐它们的分布。接下来,我们计算标记和概念之间的语义相似性,即,
其中表示余弦相似度操作符,表示温度参数。之后,我们根据标记与类别相关概念的相关性计算标记的权重,
其中是属于该主题类别的概念集。最后,我们调整标记的权重并获得加权标记嵌入,即,。请注意,由于样本的类别未知,我们在推理过程中选择具有最高权重的那套概念集。
最后,我们根据标记与类别相关概念的相关性调整标记的权重。权重较高的标记被认为是在后续处理中更相关的。这个过程有助于模型专注于最相关的标记,并减少不相关标记的噪声。此外,在设计提示时,还有必要考虑神经系统疾病的发病机制和生物标志物。
3.4 图提示学习
神经科学研究人员已经阐明,大脑构成了一个复杂的图结构,由大脑区域组成。这个图的结构信息,特别是其连接模式,在神经系统疾病的发病机制中至关重要。例如,退化和异常连接是阿尔茨海默病的候选生物标志物。因此,实施图提示对于提高预训练多模态大型模型处理神经系统疾病诊断的能力是合理且必要的。为了实现这一点,我们首先构建图,然后从构建的图中提取嵌入。
3.4.1 图构建
考虑到每个标记代表其相应图像块(即局部脑区)的嵌入,我们首先将标记视为图中的节点。然后,我们根据标记之间的语义关系构建边缘/图结构。值得注意的是,直接基于标记嵌入计算标记之间的关系可能不是最佳选择,因为标记嵌入可能包含有限的疾病相关信息。为了解决这个问题,我们利用第3.3节中获得的概念嵌入作为桥梁来学习标记之间的连接。有了标记和概念之间的语义相似性,第个标记和第个标记之间的连接通过以下方式计算:
其中是第个标记与所有概念之间的语义相似性,表示温度参数。直观上,属于相似概念的标记更有可能以更高的概率连接。这种方法提供了两个优势,与直接基于标记嵌入计算连接概率相比。首先,它减少了由高维嵌入中的不相关特征引起的潜在噪声连接。其次,基于与疾病生物标志物和放射学特征相关的概念构建的图结构在神经科学中更有意义。基于此,我们将构建的图结构视为预训练基础模型的提示。
3.4.2 图嵌入
在获得构建的图结构后,我们采用广泛采用的GCN模型作为图编码器以获得本研究中的图嵌入。第层GCN操作正式定义为:
其中是邻接矩阵通过添加恒等矩阵添加自连接,是的对角矩阵,是所有节点的输入嵌入,是可训练的权重矩阵,表示激活函数。此外,所有标记的嵌入和图提示可以表示为:
其中是标记的加权嵌入。因此,我们的方法通过提取标记之间的结构信息来获得提示标记嵌入,以提示预训练的基础模型。此外,提示标记嵌入被输入到统一的基于变压器的编码器中以获得受试者的表示,即,,。
最后,我们通过两个函数产生受试者的预测,即,概念投影函数和标签投影函数。通过这种方式,我们应用交叉熵损失作为目标函数,即,
其中表示标签,是根据公式(8)获得的概念嵌入,是标记受试者的数量。
4. 实验
如何学习大模型 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 的正确特征了。