当前位置:   article > 正文

Apollo:如何打造全球化的医疗AI,轻量级,重量级_apollo 医学大模型

apollo 医学大模型

 


论文:https://arxiv.org/pdf/2403.03640.pdf

代码:https://github.com/FreedomIntelligence/Apollo

 

提出背景

在这里插入图片描述

1. 多语言覆盖和优化

  • Apollo:专门针对全球六种最广泛使用的语言进行优化,包括英语、汉语、印地语、西班牙语、法语和阿拉伯语。这种优化确保了模型能够更准确地理解和生成这些语言中的医学信息,尤其是在处理专业术语和地区特定的表达方式时。

  • 普通医学大模型:可能主要针对英语或其他单一语言进行优化,对于非英语的医学文献和信息处理可能不够精准,特别是在专业术语和表达习惯方面。

2. 数据隐私和安全性

  • Apollo:通过代理调优(Proxy Tuning)方法,可以在不直接处理敏感医疗数据的情况下提升模型的多语言医疗处理能力。这种方法有助于保护患者数据的隐私和安全。

  • 普通医学大模型:可能需要直接接触敏感的医疗数据来进行训练和优化,这在一定程度上增加了数据泄露和滥用的风险。

3. 地方性医疗知识的整合

  • Apollo:通过收集和整合多语言医疗数据,Apollo模型能够更好地融合不同地区的医疗实践和知识。这对于提供符合当地医疗需求和文化背景的建议和信息非常重要。

  • 普通医学大模型:可能缺乏足够的多语言和地区特定的医疗数据,导致在非主要语言或地区的医疗知识处理上存在不足。

4. 沟通效率和接受度

  • Apollo:通过对多种语言进行优化,Apollo能够提高医疗信息的沟通效率和患者的接受度。这在提供跨文化和跨语言的医疗服务时尤为重要。

  • 普通医学大模型:可能在跨语言沟通和文化适应性方面存在局限,影响医疗服务的有效性和患者满意度。

Apollo通过针对多语言覆盖、数据隐私保护、地方性知识整合和沟通效率的优化,解决了普通医学大模型在这些方面的问题和不足,提高了模型在全球多语言医疗信息处理方面的性能和适用性。

 

将多种语言的医学数据混合使用时,这些数据是互相帮助(互补)还是互相冲突的?

为了找出答案,我们做了两组实验:

  1. 单语言训练:我们分别用英语、中文、法语、西班牙语、阿拉伯语和印地语的医学数据训练模型,每种语言单独训练一个模型。

  2. 多语言训练:我们将上述六种语言的医学数据混合在一起,用这些混合数据训练另一个模型。

实验结果:

  • 单语言训练的模型在各自的语言上效果不错,但在处理其他语言时表现较差。
  • 多语言训练的模型则在所有语言上都表现出更好的平均性能,说明混合多种语言的医学数据对提高模型的整体表现是有帮助的。

结论:

  • 多语言医学数据对提高医疗LLMs的性能是有益的

    也就是说,将不同语言的医学知识结合起来,可以使模型更全面地理解和生成医学信息。

但也存在潜在风险:

  • 把不同语言的医学知识混合可能会导致一些信息冲突或混淆,这需要在未来的研究中进一步探索和解决。

混合多语言的医学数据对模型的性能有显著提升,但如何平衡和整合这些多样的信息,仍是我们接下来需要关注的问题。

  • 数据收集: 包括医学书籍、论文、百科全书、医患对话、考试和临床指南等多种形式,以及为增强模型的泛化能力,包括了部分数学和编码任务数据。

在这里插入图片描述

  • 数据处理: 通过将原始预训练语料重写为问答对,旨在不破坏原有模型能力的前提下,提高其医学能力。

    可以保留原有的知识格式和精确度,同时增加模型处理医学信息的能力。

训练

训练小型模型的初衷

  • 目的:Apollo项目设计小型模型,这样的模型可以在没有连接互联网的情况下,直接在医疗设备上使用。

    这对医生和医疗人员是非常有帮助的,因为它们能够即时处理和解析医疗信息,从而提高工作效率。

  • 优点:对于那些没有能力运行大型模型的研究人员,小型模型是理想的选择。

    它们不仅运行成本低,而且便于研究人员进行实验,探索新的研究方向。

训练方法

  • 问答对重写:通常情况下,预训练是在大量的文本上进行,不特定于任何格式。

    Apollo项目采用的方法是将这些文本转化成问答对的形式,即针对文本段落产生相关的问题和答案。

    这样做的好处是,模型可以更好地学会在医疗领域内提供精确的信息。

  • 优先采样:这是一种数据选择方法,确保模型在训练过程中更多地关注某些数据。

    通过为不同的数据设置不同的优先级,模型能更有效地从重要的信息中学习。

训练设置

  • 数据项优先级:这里的“数据项优先级”指的是不同阶段数据在训练中的重要性。

    预训练阶段的数据项优先级较高(设置为16),表明在这个阶段,模型会更频繁地看到这些数据。

    而在指令调优阶段,优先级较低(设置为2),表示这些数据会比预训练数据更少地出现。

  • 批量大小:这决定了每次训练更新中使用多少数据样本。

    Apollo项目使用的是256,这是一个适中的批量大小,既不会消耗太多的计算资源,也能确保有效的梯度估计。

  • 学习率:学习率决定了每次模型更新时,参数变化的幅度。

    1e-4是一个较小的学习率,使得训练过程稳定,避免了过大的更新可能导致的训练不稳定。

  • 余弦调度器:这是一种调整学习率的策略,学习率会根据一个余弦函数随训练时间变化。

    预热率0.03意味着初始学习率会在训练初期逐渐增加,直到达到设定的学习率。

Apollo项目通过精心设计的训练策略,开发出了一个既节省计算资源又能有效处理多语言医疗信息的小型模型。

这个模型可以帮助医疗专业人员在各种环境中更好地利用人工智能,尤其是在资源受限的情况下。

效果

在这里插入图片描述

代理调优(Proxy Tuning)

代理调优是一种使用小型模型的输出来引导大型模型进行预测调整的技术,它能够在不直接更改大模型参数的情况下,提高大模型在特定任务上的表现。

这种方法利用了一个小型的模型作为代理,来引导大模型的输出,从而在特定任务上获得更好的性能。

如何工作:

  1. 小型模型的训练

    • 首先,我们会取一个小型模型(比如Apollo-2B),并且在特定任务的数据上进行微调。这个小型模型称为代理模型(Mtuned)。
    • 微调就是根据特定的任务(如中文医学问答)调整模型的参数,使其更好地处理与该任务相关的数据。
  2. 输出转移

    • 接着,我们运行这个已经微调好的小型模型(代理模型)和未经优化的大型模型(基础模型,比如Qwen-7B)在同样的任务数据上。
    • 我们不是直接复制小型模型的参数到大模型,而是将小型模型的输出(通常是类别的概率,即logits)用来影响大型模型的输出。
  3. 代理调优

    • 在代理调优的步骤中,我们不直接在大型模型上应用小型模型的参数,而是调整大型模型的输出,使其与小型模型的输出对齐。
    • 这可以通过对大型模型的输出施加一定的“偏移量”来实现,这个“偏移量”来源于小型模型的输出。这个过程不需要改变大型模型内部的参数。

优点

  • 资源高效:由于只有小型模型直接在特定任务上进行训练,这个过程节约了大量的计算资源。
  • 灵活性:如果需要适应新的任务或数据,只需重新调整小型模型,而大型模型可以保持不变。
  • 隐私和安全性:对于敏感数据,如医疗记录,代理调优避免了将这些数据直接用于大型模型的训练,减少了数据泄露的风险。

限制

  • 任务依赖性:代理调优对于小型模型能够有效捕捉的任务特性非常依赖。如果小型模型没有很好地学习到任务相关的特性,那么其对大型模型的引导效果可能就会受限。
  • 性能上限:大型模型的性能提升受限于小型模型的表现。如果小型模型在某个任务上的性能有限,那么大型模型通过代理调优得到的性能提升也会有限。

核心问题:是否可以通过代理调优(Proxy Tuning)来增强大型模型在处理多语言医疗数据时的能力?

 

  • 解法:使用代理调优来增强大型基础模型的多语言医疗能力。

    • 子解法1:使用小型预训练模型进行特定任务的微调。

      • 特征:小型模型如Apollo能够在计算资源有限的情况下针对特定任务进行快速有效的微调。
      • 之所以用这个子解法:因为小型模型更容易适应具有地方特色的医疗数据,可以快速适应并提供精准的输出。
    • 子解法2:大型基础模型应用小型模型的logit偏移量来调整预测分布。

      • 特征:大型模型如Qwen-7B拥有广泛的知识基础,但不一定针对特定的多语言医疗任务进行了优化。
      • 之所以用这个子解法:因为通过应用小型模型的知识,大型模型可以继承小型模型的专业性,而无需重复大量的参数微调。
    • 子解法3:在实际应用中测试多语言数据集。

      • 特征:多语言医疗数据集包含丰富的地区特定信息和医疗知识。
      • 之所以用这个子解法:通过在真实世界数据上验证模型的性能,可以评估多语言训练是否真正提高了模型的实际应用能力。

假设我们有一个大型的多语言医学问答模型,比如Qwen-7B。

这个模型非常强大,知识面广泛,但是它可能在针对特定语言的医学术语和地方性治疗方案上不够精确。

现在,我们想让Qwen-7B更好地服务于讲中文的医生和患者,尤其是在使用中医治疗方案方面。

  • 解法:通过代理调优增强Qwen-7B在中文医学数据上的性能。

    • 子解法1:微调小型模型

      • 特征:小型模型Apollo-2B可以快速地针对中医治疗方案的相关数据进行微调。
      • 之所以用此子解法:因为Apollo-2B更灵活,需要的计算资源少,能够快速适应特定类型的医学数据。
    • 子解法2:使用小型模型指导大型模型

      • 特征:Apollo-2B微调后在中医数据上的表现出色。
      • 之所以用此子解法:Qwen-7B可以通过学习Apollo-2B的预测分布(logit偏移量)来增强其在中医治疗方案上的性能,而不必直接在大量敏感的医疗数据上进行训练。
    • 子解法3:在真实世界数据上验证

      • 特征:真实的中文医学问答数据集包含多样化的中医治疗问题。
      • 之所以用此子解法:测试Qwen-7B在这些数据集上的表现,可以验证代理调优是否真的提高了模型的实用性和准确性。

我们可以得到一个在中文医学问答,特别是中医治疗知识方面表现优异的Qwen-7B模型。

这样一来,模型就能更好地服务于中文医疗领域的用户,例如推荐适当的中药或解释病症与中医理论之间的关系。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/845498
推荐阅读
相关标签
  

闽ICP备14008679号