基于医学图像进行疾病预测的装置、方法和可读存储介质转让专利

申请号 : CN202211085785.8

文献号 : CN115148323B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 何兰青胡馨月史晓宇

申请人 : 北京鹰瞳科技发展股份有限公司

摘要 :

本申请涉及一种基于医学图像进行疾病预测的装置、方法和计算机可读存储介质。该装置包括:处理器;以及存储器,其存储有基于医学图像进行疾病预测的程序指令,当所述程序指令由处理器运行时,使得所述装置执行以下操作:使用分类模型对待测医学图像进行疾病分类,以获得基于所述待测医学图像的初始分类结果;以及使用自然语言模型对所述初始分类结果进行推理,以获得基于所述待测医学图像的疾病预测结果。根据本实施例的装置,可以无需依赖于人为制定的复杂推断规则,并能够实现真正意义上的自动化疾病预测。

权利要求 :

1.一种基于医学图像进行疾病预测的装置,其特征在于,包括:处理器;以及

存储器,其存储有基于医学图像进行疾病预测的程序指令,当所述程序指令由处理器运行时,使得所述装置执行以下操作:使用分类模型对待测医学图像进行疾病分类,以获得基于所述待测医学图像的初始分类结果,其中所述分类模型包括主干网络和与所述主干网络连接的第一分类器和第二分类器,所述第一分类器用于输出待分类病种的单病种得分,所述第二分类器用于输出与待分类病种的混淆关系相关的病种细分得分;以及使用自然语言模型对所述初始分类结果进行推理,以获得基于所述待测医学图像的疾病预测结果;

其中所述装置在使用自然语言模型进行推理中执行以下操作:将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;

将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;

将病种细分得分对应的混淆关系进行编码,以生成用于表示所述混淆关系的第二词向量;

将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型对所述第一相乘结果和所述第二相乘结果形成的序列进行推理。

2.根据权利要求1所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果中执行以下操作:使用主干网络对待测医学图像进行特征提取,以获得所述待测医学图像中的病灶特征;以及使用第一分类器基于所述病灶特征输出待分类病种的单病种得分。

3.根据权利要求2所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果中执行以下操作:使用第二分类器基于所述病灶特征输出与所述待分类病种相关的病种细分得分。

4.根据权利要求1所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果之前执行以下操作:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。

5.根据权利要求1所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。

6.根据权利要求5所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果中执行以下操作:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;

根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。

7.根据权利要求1‑6任一所述的装置,其特征在于,所述待测医学图像包括眼底图像。

8.根据权利要求1所述的装置,其特征在于,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:将待测医学图像所属患者的基本信息、病史信息和检查信息中的至少一种与所述初始分类结果一起输入至自然语言模型进行推理。

9.一种计算机可读存储介质,其特征在于,其上存储有基于医学图像进行疾病预测的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现基于医学图像进行疾病预测的方法,所述方法包括:使用分类模型对待测医学图像进行疾病分类,以获得基于所述待测医学图像的初始分类结果,其中所述分类模型包括主干网络和与所述主干网络连接的第一分类器和第二分类器,所述第一分类器用于输出待分类病种的单病种得分,所述第二分类器用于输出与待分类病种的混淆关系相关的病种细分得分;以及使用自然语言模型对所述初始分类结果进行推理,以获得基于所述待测医学图像的疾病预测结果;

其中使用自然语言模型进行推理包括:

将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;

将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;

将病种细分得分对应的混淆关系进行编码,以生成用于表示所述混淆关系的第二词向量;

将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型对所述第一相乘结果和所述第二相乘结果形成的序列进行推理。

10.根据权利要求9所述的计算机可读存储介质,其特征在于,使用分类模型获得初始分类结果包括:使用主干网络对待测医学图像进行特征提取,以获得所述待测医学图像中的病灶特征;以及使用第一分类器基于所述病灶特征输出待分类病种的单病种得分。

11.根据权利要求10所述的计算机可读存储介质,其特征在于,使用分类模型获得初始分类结果还包括:使用第二分类器基于所述病灶特征输出与所述待分类病种相关的病种细分得分。

12.根据权利要求9所述的计算机可读存储介质,其特征在于,在使用分类模型获得初始分类结果之前,所述方法还包括:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。

13.根据权利要求9所述的计算机可读存储介质,其特征在于,使用自然语言模型进行推理包括:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。

14.根据权利要求13所述的计算机可读存储介质,其特征在于,使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果包括:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;

根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。

15.根据权利要求9‑14任一所述的计算机可读存储介质,其特征在于,所述待测医学图像包括眼底图像。

16.根据权利要求9所述的计算机可读存储介质,其特征在于,使用自然语言模型对所述初始分类结果进行推理进一步包括:将待测医学图像所属患者的基本信息、病史信息和检查信息中的至少一种与所述初始分类结果一起输入至自然语言模型进行推理。

说明书 :

基于医学图像进行疾病预测的装置、方法和可读存储介质

技术领域

[0001] 本申请一般涉及图像处理技术领域。更具体地,本申请涉及一种基于医学图像进行疾病预测的装置、方法和计算机可读存储介质。

背景技术

[0002] 在目前的医学检查中常常通过获取医学图像,以从医学图像中获取疾病信息。例如,人的眼底包含丰富的血管,通过使用包括眼底相机、OCT(Optical  coherence tomography)等专用的医疗设备对眼底区域进行拍摄,以便通过拍摄得到的眼底图像来检测眼底的状态。随着人工智能技术的不断发展,利用人工智能技术对医学图像进行处理,可以通过机器学习医学图像的特征以进行分析。
[0003] 然而,虽然现有的一些深度学习模型可以从图像中学习丰富的特征信息,但是其输出的仅是基于图像进行疾病发生概率预测的概率分数,仍需要人为制定复杂的逻辑规则来对模型输出的概率分数进行筛选,无法实现真正意义上的全自动的疾病预测。另外,这样的筛选过程需要依赖人们的经验,从而对最终预测结果的准确性产生影响。有鉴于此,亟需提供一种能够实现真正意义上的自动化预测装置,以基于医学图像实现更加准确的疾病预测。

发明内容

[0004] 为了至少解决如上所提到的一个或多个技术问题,本申请在多个方面中提出了一种基于医学图像进行疾病预测的装置、方法和计算机可读存储介质。
[0005] 在本申请的第一方面中,本申请提供一种基于医学图像进行疾病预测的装置,包括:处理器;以及存储器,其存储有基于医学图像进行疾病预测的程序指令,当所述程序指令由处理器运行时,使得所述装置执行以下操作:使用分类模型对待测医学图像进行疾病分类,以获得基于所述待测医学图像的初始分类结果;以及使用自然语言模型对所述初始分类结果进行推理,以获得基于所述待测医学图像的疾病预测结果。
[0006] 在本申请的一个实施例中,所述分类模型包括主干网络和与所述主干网络连接的第一分类器,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果中执行以下操作:使用主干网络对待测医学图像进行特征提取,以获得所述待测医学图像中的病灶特征;以及使用第一分类器基于所述病灶特征输出待分类病种的单病种得分。
[0007] 在本申请的另一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;以及使用自然语言模型对所述第一相乘结果进行推理。
[0008] 在本申请的又一个实施例中,所述分类模型还包括与所述主干网络连接的第二分类器,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果中执行以下操作:使用第二分类器基于所述病灶特征输出与所述待分类病种相关的病种细分得分。
[0009] 在本申请的一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用分类模型获得初始分类结果之前执行以下操作:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。
[0010] 在本申请的另一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。
[0011] 在本申请的又一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果中执行以下操作:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。
[0012] 在本申请的一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;将病种细分得分对应的混淆关系进行编码,以生成用于表示所述混淆关系的第二词向量;将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型对所述第一相乘结果和所述第二相乘结果形成的序列进行推理。
[0013] 在本申请的另一个实施例中,所述待测医学图像包括眼底图像。
[0014] 在本申请的又一个实施例中,当所述程序指令由处理器运行时,还使得所述装置在使用自然语言模型进行推理中执行以下操作:将待测医学图像所属患者的基本信息、病史信息和检查信息中的至少一种与所述初始分类结果一起输入至自然语言模型进行推理。
[0015] 在本申请的第二方面中,本申请提供一种基于医学图像进行疾病预测的方法,包括:使用分类模型对待测医学图像进行疾病分类,以获得基于所述待测医学图像的初始分类结果;以及使用自然语言模型对所述初始分类结果进行推理,以获得基于所述待测医学图像的疾病预测结果。
[0016] 在本申请的一个实施例中,所述分类模型包括主干网络和与所述主干网络连接的第一分类器,并且使用分类模型获得初始分类结果包括:使用主干网络对待测医学图像进行特征提取,以获得所述待测医学图像中的病灶特征;以及使用第一分类器基于所述病灶特征输出待分类病种的单病种得分。
[0017] 在本申请的另一个实施例中,使用自然语言模型进行推理包括:将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;以及使用自然语言模型对所述第一相乘结果进行推理。
[0018] 在本申请的又一个实施例中,所述分类模型还包括与所述主干网络连接的第二分类器,并且使用分类模型获得初始分类结果还包括:使用第二分类器基于所述病灶特征输出与所述待分类病种相关的病种细分得分。
[0019] 在本申请的一个实施例中,在使用分类模型获得初始分类结果之前,所述方法还包括:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。
[0020] 在本申请的另一个实施例中,使用自然语言模型进行推理包括:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。
[0021] 在本申请的又一个实施例中,使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果包括:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。
[0022] 在本申请的一个实施例中,使用自然语言模型进行推理包括:将单病种得分对应的待分类病种进行编码,以生成用于表示所述待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;将病种细分得分对应的混淆关系进行编码,以生成用于表示所述混淆关系的第二词向量;将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型对所述第一相乘结果和所述第二相乘结果形成的序列进行推理。
[0023] 在本申请的另一个实施例中,所述待测医学图像包括眼底图像。
[0024] 在本申请的又一个实施例中,使用自然语言模型对所述初始分类结果进行推理进一步包括:将待测医学图像所属患者的基本信息、病史信息和检查信息中的至少一种与所述初始分类结果一起输入至自然语言模型进行推理。
[0025] 在本申请的第三方面中,本申请提供一种计算机可读存储介质,其上存储有基于医学图像进行疾病预测的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如本申请的第二方面中任意一项所述的方法。
[0026] 通过上述对本申请的技术方案及其多个实施例的描述,本领域技术人员可以理解本申请的装置可以通过使用自然语言模型来对分类模型输出的初始分类结果进行推理,可以无需依赖于人为制定的复杂推断规则,并能够实现真正意义上的自动化疾病预测,以及有利于提高预测结果的准确性。

附图说明

[0027] 通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
[0028] 图1是示出根据本申请实施例的分类模型的示意性框图;
[0029] 图2是示出根据本申请实施例的混淆关系的示意图;
[0030] 图3是示出根据本申请另一个实施例的分类模型的示意性框图;
[0031] 图4是示出根据本申请实施例的基于医学图像进行疾病预测的装置的示意性框图;
[0032] 图5是示出根据本申请实施例的使用自然语言模型进行推理的示例性流程图;
[0033] 图6是示出根据本申请另一个实施例的使用自然语言模型进行推理的示例性流程图;
[0034] 图7是示出根据本申请实施例的用于对分类模型进行训练的示例性流程图;
[0035] 图8是示出根据本申请另一个实施例的用于分类模型的训练方法的流程图;
[0036] 图9a是示出使用传统训练方法训练后的分类模型的输出得分的概率分布图;
[0037] 图9b是示出根据本申请实施例的训练方法训练后的分类模型输出的单病种得分的概率分布图;
[0038] 图9c是示出传统训练方法与本申请实施例的训练方法训练后的模型的PR曲线对比图;以及
[0039] 图10是是示出根据本申请实施例的基于医学图像进行疾病预测的方法流程图。

具体实施方式

[0040] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0041] 应当理解,本申请的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0042] 还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本申请。如在本申请说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本申请说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0043] 如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当... 时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0044] 下面结合附图来详细描述本申请的具体实施方式。
[0045] 图1是示出根据本申请实施例的分类模型的示意性框图。如图1中所示,该分类模型100可以包括主干网络110和与主干网络110连接的一个或多个第一分类器120,其中主干网络110可以用于对输入的待分类的待测医学图像进行特征提取,以获得待测医学图像中的病灶特征,第一分类器120可以用于基于病灶特征输出待分类病种的单病种得分。
[0046] 在一些实施例中,主干网络110(或称Backbone网络)可以包括例如卷积神经网络CNN、transformer模型等能够用于对图像进行特征提取的网络结构。在另一些实施例中,第一分类器120可以为二分类器。在又一些实施例中,第一分类器120可以包括sigmoid层。在一些实施例中,待测医学图像可以包括例如眼底图像、脑部图像、肺部图像等医学图像中的一种。在另一些实施例中,待测医学图像可以通过例如眼底相机、OCT(Optical coherence tomography)设备、核磁共振设备、电子计算机断层扫描CT设备等医疗设备采集得到。
[0047] 上文中所述的病灶特征可以理解为机体上发生病变的部位的特征。通过主干网络110对输入的待测医学图像进行特征提取,可以从得到的特征图中获得病灶特征,第一分类器120可以基于该病灶特征,对于该病灶特征属于的病种类别进行预测和评估。在一些实施例中,待分类病种可以与待测医学图像相关,即对于眼底图像,待分类病种可以包括与眼底有关的病种;对于脑部图像,待分类病种可以包括与脑部有关的病种。待分类病种可以包括疾病种类(例如糖网、视盘炎等)和/或病症种类(例如黄斑水肿等)。
[0048] 在另一些实施例中,每个第一分类器120可以用于输出一种待分类病种的得分,即单病种得分。在又一些实施例中,待分类病种的数量可以根据待分类任务确定,例如待分类任务中包括区分五种病种,则待分类病种的数量可以为五个,相应的,可以设置至少五个第一分类器120,以分别输出每个待分类病种的单病种得分。在一些实施例中,单病种得分可以为0‑1之间的数值。
[0049] 在使用该分类模型100对待测医学图像进行疾病分类之前,可以对分类模型100进行训练,可以首先获取带样本标签的医学样本图像,然后将样本标签转化为二分类标签,并基于该二分类标签和医学样本图像对分类模型100进行训练。例如,在一个五病种的待分类任务中,有疾病1和疾病3的样本标签,即样本标签可以表示为[1,3],其转化为由0或1表示的二分类标签可以为[1,0,1,0,0]。该二分类标签的生成过程可以通过如下公式1来表达:
[0050]                                       公式1
[0051] 其中,yi表示待分类病种i的二分类标签,Y表示样本标签。
[0052] 本发明人发现,对于易混淆的病种,可能出现原始的样本标注标错的问题;对于一些可合并的病症,可能出现原始的样本标注中漏标的问题。例如,在观察到足够的重度糖网证据后,标注人员就可能不会给出黄斑水肿这样的病症标签。还例如,对于糖尿病视网膜(简称糖网)的不同阶段,中度及以上糖网的图像中除了存在出血特征外,也可能兼具轻度糖网的例如微血管瘤的特征,但是在训练用于进行轻度糖网分类的第一分类器时,中度及以上的糖网会被划分为轻度糖网的负样本,这使得该第一分类器不仅需要判断图像是否有微血管瘤,还需要判断图像是否没有出血,这将导致第一分类器在进行训练时接收到的监督信号较为混乱。如果原始的样本标注中对于上述易混淆的病种还存在错误标注(例如将中度糖网样本标注为轻度糖网的标签)等问题,会给分类模型的训练效果和输出结果产生更大的影响。基于此,本申请提出了一种新的分类模型,以提高对易混淆病种之间以及易混淆病种与其他病种之间的分类精度。
[0053] 图2是示出根据本申请实施例的混淆关系的示意图。在构建本申请实施例的分类模型以及对其进行训练之前,可以预先建立各易混淆病种之间的混淆关系图,该混淆关系图中的混淆关系可以来源于医学先验信息和/或大数据统计结果等。如图2中所示,疾病A、病症B和疾病C可以是三种不同的病种,其中疾病A(轻)、疾病A(中)和疾病A(重)可以表示同一病种的不同分级,为了便于理解,以疾病A为糖网为例,疾病A(轻)可以表示轻度糖网,疾病A(中)可以表示中度糖网,疾病A(重)可以表示重度糖网。病症B和疾病C分别是与疾病A不同的病种。
[0054] 如图2中进一步示出的,每个有向边(图示中以箭头示出方向)相连的两个节点(即图示中以圆圈示出的病种)代表两种易混淆的疾病/病症,其中单向边表示的混淆关系是单向的,即单向边的起始节点易被混淆为单向边的指向节点,而单向边的指向节点不易被混淆为单向边的起始节点。例如图示中的疾病A(重)与病症B之间的有向边表示:疾病A(重)容易被错分(或称混淆)为病症B,而病症B不容易被错分为疾病A(重),或者可以理解为疾病A(重)有病症B的特征,而病症B中缺少疾病A(重)的某些特征。
[0055] 进一步地,图示中的双向边表示的混淆关系为双向混淆,例如疾病A(轻)和疾病A(中)之间的双向边可以表示疾病A(轻)容易被混淆为疾病A(中),而疾病A(中)也容易被错分为疾病A(轻)。在一些实施例中,双向边可以通过拆分为两个单向边来表示。
[0056] 以上结合图2描述了根据本申请实施例的混淆关系,可以理解的是,上面的描述是示例性的而非限制性的,例如混淆关系图中包括的病种数量可以不限于图示中的五个,可以根据需要设置的更多或者更少。还例如,图示中的单向边或双向边的指向是示意性的,可以根据实际应用需要进行调整。在获得了各病种之间的混淆关系之后,可以配置本申请实施例的分类模型。下面将结合图3进行说明。
[0057] 图3是示出根据本申请另一个实施例的分类模型的示意性框图。如图3中所示,分类模型300可以包括主干网络110和与主干网络110分别连接的第一分类器120和第二分类器310,主干网络110可以用于对待分类的待测医学图像进行特征提取,以获得待测医学图像中的病灶特征,第一分类器110可以用于基于病灶特征输出待分类病种的单病种得分,第二分类器310可以用于基于病灶特征输出与待分类病种相关的病种细分得分。主干网络110和第一分类器120的结构可以与前文中结合图1描述的模型结构相同或相似,此处不再赘述。
[0058] 在一些实施例中,待测医学图像可以包括眼底图像。第一分类器120的数量可以不限于图3中所示的三个,可以根据需要设置的更多或者更少,例如设置一个、两个、四个、五个或者更多个,其中每个第一分类器120可以用于输出相应的一个待分类病种的单病种得分。上文中所述的与待分类病种相关的病种细分得分,可以是与待分类病种的混淆关系相关的病种细分得分。第二分类器310的数量可以设置为一个或多个,而不限于图3中所示的三个,例如设置一个、两个、四个、五个或者更多个,其中每个第二分类器可以用于输出相应的一个混淆关系中的病种细分得分。一个混淆关系中通常包括两个节点,病种细分得分可以用于表示一个混淆关系中两个节点之间的细分得分。在一些实施例中,病种细分得分可以为0‑1之间的数值。在另一些实施例中,第一分类器120和第二分类器310可以均为二分类器。
[0059] 为了便于说明,结合图2中所示,每个单向边可以表示一个混淆关系,每个双向边可以表示两个混淆关系,每个节点表示一个待分类病种,在一些应用场景中,假设待分类任务是对待测医学图像中是否存在例如图2中所示的五个病种进行分类,则可以根据节点的数量确定第一分类器120的数量,并且每个第一分类器120用于对应输出一个节点的单病种得分,即可以设置五个第一分类器120;以及可以根据混淆关系的数量确定第二分类器310的数量,例如图2中示出了七个混淆关系,则可以设置七个第二分类器310。
[0060] 可以理解的是,上面的描述是示例性的而非限制性的,例如不限于待分类病种之间均具有混淆关系,对于没有与其他病种之间存在混淆关系的待分类病种,可以仅设置与其对应的第一分类器120,而无需设置与其有关的第二分类器310。仍然以图2为例,假设在一个待分类任务中,除了包括图2中所示的五个待分类病种的分类任务,还包括另一个不存在混淆关系的待分类病种,则根据本申请实施例的分类模型可以设置六个第一分类器120和七个第二分类器310。在描述了根据本申请实施例的混淆关系和分类模型之后,下面将结合图4对根据本申请实施例的装置进行示例性的描述。
[0061] 图4是示出根据本申请实施例的基于医学图像进行疾病预测的装置的示意性框图。如图4中所示,该装置400可以包括处理器401和存储器402。在一些实施方式中,这里的处理器401可以包括通用处理器(“CPU”)和/或专用图形处理器(“GPU”),并且存储器402存储有基于医学图像进行疾病预测的程序指令。
[0062] 在疾病预测的操作中,当上述的程序指令由处理器401运行时,将使得本申请的装置400执行:使用分类模型对待测医学图像进行疾病分类,以获得基于待测医学图像的初始分类结果。在一些实施例中,初始分类结果可以包括单病种得分和/或病种细分得分。在另一些实施例中,可以使用例如图1中所示的分类模型100来对待测医学图像进行疾病分类,可以获得包括基于待测医学图像的单病种得分的初始分类结果。在本申请的一个实施例中,当程序指令由处理器401运行时,还使得装置400可以在使用分类模型100获得初始分类结果中执行以下操作:使用主干网络对待测医学图像进行特征提取,以获得待测医学图像中的病灶特征;以及使用第一分类器基于病灶特征输出待分类病种的单病种得分。在一些应用场景中,可以将待分类的待测医学图像输入到主干网络中,以使用主干网络对其进行特征识别和提取。
[0063] 在又一些实施例中,可以使用例如图3中所示的分类模型300来对待测医学图像进行疾病分类,以获得包括单病种得分和病种细分得分的初始分类结果。在本申请的又一个实施例中,当程序指令由处理器401运行时,还使得装置400可以在使用分类模型300获得初始分类结果中执行以下操作:使用第二分类器基于病灶特征输出与待分类病种相关的病种细分得分。
[0064] 在本申请的一个实施例中,当所述程序指令由处理器401运行时,还使得装置400可以在使用分类模型300获得初始分类结果之前执行以下操作:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。在一些实施例中,第一分类器的数量可以与待分类病种的数量相同并且一一对应,第二分类器的数量可以与混淆关系的数量相同并一一对应。在另一些实施例中,第一分类器的数量可以多于待分类病种的数量,第二分类器的数量可以多于混淆关系的数量。
[0065] 基于上述待测医学图像,本申请的装置400可以进一步执行:使用自然语言模型对初始分类结果进行推理,以获得基于待测医学图像的疾病预测结果。在一些实施例中,自然语言模型可以采用任何支持不定长输入的模型结构。在另一些实施例中,自然语言模型可以采用例如循环神经网络RNN、或者Transformer等模型结构。在另一些实施例中,疾病预测结果可以包括基于待测医学图像预测的一个或多个预测病种。在又一些实施例中,本申请的装置400可以在执行使用自然语言模型对初始分类结果进行推理中还执行:将待测医学图像所属患者的基本信息、病史信息和检查信息等中的至少一种与初始分类结果一起输入至自然语言模型进行推理,其中基本信息可以包括例如患者的性别、年龄等信息中的至少一种,检查信息可以包括例如血压、血糖、血脂等体检项信息中的至少一种,病史信息可以包括例如患者的历史患病种类等信息。
[0066] 在一些实施例中,初始分类结果可以直接输入至自然语言模型中进行推理。在本申请的另一个实施例中,当程序指令由处理器401运行时,还使得装置400在使用自然语言模型进行推理中执行以下操作:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。在一些实施例中,初始分类结果包括多个第一分类器输出的多个单病种得分,当程序指令由处理器401运行时,还使得装置400在使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果中执行以下操作:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;以及可以将筛选后得到的阳性单病种得分及其对应的待分类病种输入至自然语言模型中进行推理。预设阈值可以根据需要进行设置。多个单病种得分对应的预设阈值可以相同或不同。
[0067] 以上结合图4对根据本申请实施例的装置进行了示例性的描述,可以理解的是,根据本申请实施例的装置不仅可以使用自然语言模型对如图1中所示的分类模型输出的初始分类结果进行推理,还可以使用自然语言模型对如图3中所示的分类模型输出的初始分类结果进行推理。在使用自然语言模型对如图3中所示的分类模型输出的初始分类结果进行推理时,由于该初始分类结果包括单病种得分和病种细分得分,使得自然语言模型在推理时能够基于更多的信息进行分析,有利于得到更加准确的疾病预测结果。为了更便于理解根据本申请实施例的使用自然语言模型进行推理的过程,下面将结合图5和图6进行示例性的描述。
[0068] 图5是示出根据本申请实施例的使用自然语言模型进行推理的示例性流程图。如图5中所示,在使用例如图1中所示的分类模型得到待测医学图像的多个待分类病种的单病种得分之后,当程序指令由处理器运行时,还使得装置在使用自然语言模型进行推理中执行以下操作:将单病种得分对应的待分类病种进行编码,以生成用于表示待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;以及使用自然语言模型520对第一相乘结果进行推理。
[0069] 如图中所示,假设初始分类结果包括待分类病种1及其单病种得分1、待分类病种2及其单病种得分2,和待分类病种3及其单病种得分3,可以将待分类病种1、待分类病种2和待分类病种3作为词输入至嵌入层(或称embedding层)510以进行编码,并分别生成用于表示相应待分类病种的第一词向量。将待分类病种1、待分类病种2和待分类病种3作为词输入可以是直接输入各待分类病种的名称或者标识,假设待分类病种1为轻度糖网、待分类病种2为中度糖网、待分类病种3为重度糖网,可以直接将轻度糖网、中度糖网和重度糖网这三个词输入至嵌入层。
[0070] 然后,可以将用于表示待分类病种1的第一词向量与单病种得分1相乘,将用于表示待分类病种2的第一词向量与单病种得分2相乘,以及可以将用于表示待分类病种3的第一词向量与单病种得分3相乘,以得到三个第一相乘结果。单病种得分1为与待分类病种1对应的第一分类器输出的结果,单病种得分2为与待分类病种2对应的第一分类器输出的结果,单病种得分3为与待分类病种3对应的第一分类器输出的结果。
[0071] 进一步地,可以将这三个第一相乘结果直接输入自然语言模型520进行推理,或者可以将这三个第一相乘结果序列化后输入自然语言模型520中进行推理,以输出一个或多个最终推断结果(即疾病预测结果)。需要说明的是,通过将每个第一词向量与相应的单病种得分相乘,可以表示输入的第一词向量的强度。由于初始分类结果通常为不定长的结果,因此自然语言模型520可以采用不含掩膜Mask的Transformer模型。
[0072] 以上结合图5对根据本申请实施例的使用自然语言模型进行推理的过程进行了描述,可以理解的是,上面的描述是示例性的而非限制性的,例如可以不限于使用嵌入层来对待分类病种进行编码,还可以采用其他现有或者未来可实现的编码方式实现对待分类病种的编码。待分类病种的数量可以不限于图示中的三个,可以根据需要输出的更多或者更少。还例如,可以对待测医学图像所属患者的基本信息、病史信息和检查信息等中的至少一种进行编码,并将该编码得到的词向量结果与第一相乘结果一起输入至自然语言模型中进行推理。
[0073] 再例如,可以不限于上述的直接将初始分类结果输入自然语言模型中进行推理,还可以先对初始分类结果进行阈值筛选,以过滤掉一些得分较低的待分类病种,然后将筛选后得到的得分较高的待分类病种及其单病种得分输入至自然语言模型中。相比于直接将初始分类结果输入至自然语言模型中,使用筛选后的初始分类结果进行自然语言模型的推理,能够过滤掉一些对最终推断结果影响较小的“词”,从而有利于提高推理速度和推理效率。进一步地,初始分类结果可以不限于上述的单病种得分及其对应的待分类病种,还可以包括例如病种细分得分及其对应的混淆关系,下面将结合图6进行示例性的描述。
[0074] 图6是示出根据本申请另一个实施例的使用自然语言模型进行推理的示例性流程图。如图6中所示,在使用例如图3中所示的分类模型得到待测医学图像的多个待分类病种的多个单病种得分和多个混淆关系对应的多个病种细分得分之后,当程序指令由处理器运行时,还使得装置在使用自然语言模型进行推理中执行以下操作:将单病种得分对应的待分类病种进行编码,以生成用于表示待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;将病种细分得分对应的混淆关系进行编码,以生成用于表示混淆关系的第二词向量;将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型520对第一相乘结果和第二相乘结果形成的序列进行推理。
[0075] 如图6中所示,假设初始分类结果包括待分类病种1及其单病种得分1、待分类病种2及其单病种得分2、待分类病种3及其单病种得分3、混淆关系a及其病种细分得分a、混淆关系b及其病种细分得分b、混淆关系c及其病种细分得分c,可以将待分类病种1、待分类病种
2、待分类病种3、混淆关系a、混淆关系b和混淆关系c作为词输入至嵌入层(或称embedding层)510以进行编码,并分别生成用于表示每个待分类病种的第一词向量和用于表示每个混淆关系的第二词向量。将待分类病种1、待分类病种2、待分类病种3、混淆关系a、混淆关系b和混淆关系c作为词输入可以是直接输入各待分类病种的名称或者标识,假设混淆关系a为待分类病种1易被混淆为待分类病种2,可以直接将“待分类病种1易被混淆为待分类病种2”这个语句输入至嵌入层。
[0076] 然后,可以将用于表示待分类病种1的第一词向量与单病种得分1相乘,将用于表示待分类病种2的第一词向量与单病种得分2相乘,将用于表示待分类病种3的第一词向量与单病种得分3相乘,以得到三个第一相乘结果。同时,可以将用于表示混淆关系a的第二词向量与病种细分得分a相乘,将用于表示混淆关系b的第二词向量与病种细分得分b相乘,将用于表示混淆关系c的第二词向量与病种细分得分c相乘,以得到三个第二相乘结果。病种细分得分a为与混淆关系a对应的第二分类器输出的结果,病种细分得分b为与混淆关系b对应的第二分类器输出的结果,病种细分得分c为与混淆关系c对应的第二分类器输出的结果。
[0077] 进一步地,通过将这三个第一相乘结果和三个第二相乘结果序列化后输入自然语言模型520进行推理,可以输出一个或多个最终推断结果(即疾病预测结果)。需要说明的是,通过将每个第二词向量与相应的病种细分得分相乘,可以表示输入的第二词向量的强度。第一相乘结果和第二相乘结果形成的序列可以通过将第一相乘结果与第二相乘结果直接拼接来形成。每个第一词向量与相应的单病种得分相乘可以得到一个相应的第一相乘结果,多个第一词向量与相应的单病种得分相乘可以得到多个相应的第一相乘结果。每个第二词向量与相应的病种细分得分相乘可以得到一个相应的第二相乘结果,多个第二词向量与相应的病种细分得分相乘可以得到多个相应的第二相乘结果。多个第一相乘结果和多个第二相乘结果可以依次排序以形成序列。
[0078] 在本申请的一个实施例中,在将初始分类结果输入至自然语言模型进行推理之前,当程序指令由处理器运行时,还使得根据本申请实施例的装置执行以下操作:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。在本申请的另一个实施例中,当程序指令由处理器运行时,还使得装置在使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果中执行以下操作:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。
[0079] 预设阈值可以根据需要进行设定。在一些实施例中,每个第一分类器可以对应设置一个预设阈值,多个第一分类器对应设置的预设阈值可以相同或不同。在另一些实施例中,多个第一分类器可以对应设置同一个预设阈值。在又一些实施例中,单病种得分可以为0‑1之间的数值,预设阈值也可以为0‑1之间的数值,例如可以设置预设阈值为0.5、0.6、或
0.7等。通过将每个第一分类器输出的单病种得分与预设阈值分别进行比较,可以将大于预设阈值的单病种得分确定为阳性单病种得分。如果没有单病种得分大于预设阈值,则确定不存在阳性单病种得分。
[0080] 根据阳性单病种得分对应的待分类病种,可以判断每个第二分类器对应的混淆关系中是否与该待分类病种相关,以便在多个第二分类器对应的混淆关系中筛选出与阳性单病种得分对应的待分类病种相关的混淆关系。在一个具体实施例中,假设待分类病种j和i均得到阳性单病种得分,则确定第二分类器对应的混淆关系中是否包括待分类病种j易被混淆为待分类病种i的混淆关系和待分类病种i易被混淆为待分类病种j的混淆关系。当这两种混淆关系中的至少一个存在时,则确定该至少一个混淆关系为筛选出的混淆关系。根据筛选出的混淆关系对应的第二分类器的输出,可以确定相应的筛选后的病种细分得分。
[0081] 在一些实施例中,可以对阳性单病种得分对应的待分类病种和筛选出的混淆关系分别进行编码,以得到相应的第一词向量和第二词向量,然后将第一词向量与阳性单病种得分相乘来得到第一相乘结果,以及将第二词向量与筛选出的相应的病种细分得分相乘来得到第二相乘结果,并将第一相乘结果和第二相乘结果输入至自然语言模型进行推理。
[0082] 以上结合图6对根据本申请另一个实施例的使用自然语言模型进行推理的过程进行了描述,可以理解的是,相比于未经过筛选的初始分类结果输入至自然语言模型中进行推理,使用筛选后的初始分类结果进行自然语言模型的推理更有利于提高推理速度和推理效率。还可以理解的是,上面的描述是示例性的而非限制性的,例如可以不限于使用嵌入层来对待分类病种进行编码,还可以采用其他现有或者未来可实现的编码方式实现对待分类病种的编码。
[0083] 进一步地,在本申请的另一个实施例中,当程序指令由处理器运行时,使得根据本申请实施例的装置在使用例如图3所示的分类模型进行疾病分类之前,还可以执行以下操作:获取带样本标签的医学样本图像;根据多个待分类病种之间的混淆关系和样本标签,生成用于对分类模型进行训练的训练标签;以及使用带训练标签的医学样本图像对分类模型进行训练。下面将结合图7对处理器执行的操作进行示例性的说明。
[0084] 图7是示出根据本申请实施例的用于对分类模型进行训练的示例性流程图。如图7中所示,该训练方法700可以包括:在步骤710中,获取带样本标签的医学样本图像。样本标签可以通过人工标注或者机器标注来获得。样本标签可以用于表示医学样本图像中的病灶特征所表征的病种类别。每个医学样本图像可以带有用于表示一个或多个病种类别的样本标签。在一些应用场景中,训练方法700可以获取一定数量的医学样本图像,其数量越大越有利于提高分类模型的分类准确性。在一些实施例中,医学样本图像可以包括眼底图像样本,则训练后的分类模型可以用于对眼底图像进行病种分类。在另一些实施例中,医学样本图像可以包括脑部图像样本,则训练后的分类模型可以用于对脑部图像进行病种分类。
[0085] 接着,在步骤720中,可以根据多个待分类病种之间的混淆关系和样本标签,生成用于对分类模型进行训练的训练标签。这里的分类模型可以采用例如图3中所描述的分类模型。在本申请的一个实施例中,第一分类器和第二分类器可以均为二分类器,步骤720可以包括:可以生成用于训练第一分类器和第二分类器的二分类标签。二分类器是用于确定一种待分类病种是否存在的分类器。二分类标签可以用于产生对相应二分类器进行训练时的监督信号。训练标签的维数可以与第一分类器和第二分类器的数量相同。例如对于一个包括五个第一分类器和七个第二分类器的分类模型,生成的训练标签可以为十二维的标签,即可以包括十二个标签值,以产生十二个监督信号。多个待分类病种之间的混淆关系已经在前文或者结合图2进行了说明,此处不再赘述。
[0086] 进一步地,在步骤730中,可以使用带训练标签的医学样本图像对分类模型进行训练。通过使用带训练标签的医学样本图像训练分类模型,可以不断优化分类模型的参数和权值。在一些实施例中,每个第一分类器和每个第二分类器可以具有对应的损失函数,在步骤430中,还可以根据训练数据(即带训练标签的医学样本图像)与第一分类器/第二分类器的输出之间的损失函数,通过例如反向传播计算来优化第一分类器和第二分类器的参数和权值。
[0087] 以上结合图7对根据本申请实施例的训练操作进行了示例性的说明,可以理解的是,根据混淆关系和样本标签生成训练标签,能够考虑到混淆关系的影响,使得分类模型能够更好的学习到每个病种的特征,而不易受到其他易混淆病种的特征影响,从而能够得到分类精度更好的分类模型。为了便于理解根据本申请实施例的生成训练标签的具体实施方式,下面将结合图8进行示例性的描述。
[0088] 图8是示出根据本申请另一个实施例的用于分类模型的训练方法的流程图。通过下面的描述可知,图8中所示的训练方法800可以是前文中结合图7描述的训练方法700的一个具体化表现形式,因此前文中结合图7对训练方法700的描述同样可以适用于下面对训练方法800的描述中。
[0089] 如图8中所示,训练方法800可以包括:在步骤810中,可以获取带样本标签的医学样本图像。步骤810与前文中结合图7描述的步骤710相同或相似,此处不再赘述。接着,在步骤820中,可以根据多个待分类病种之间的混淆关系和样本标签,生成用于对分类模型进行训练的训练标签。在本申请的一个实施例中,每个第一分类器可以用于输出相应的一个待分类病种的单病种得分,每个第二分类器可以用于输出相应的一个混淆关系中的病种细分得分,并且如图8中进一步示出的,在步骤820中可以包括步骤821(虚线框示出)和步骤822(虚线框示出),其中在步骤821中,可以生成与每个第一分类器对应的单病种标签;以及在步骤822中,可以生成与每个第二分类器对应的病种细分标签。
[0090] 在一些实施例中,步骤821中生成单病种标签可以包括:生成与每个第一分类器对应的待分类病种的单病种标签。在另一些实施例中,可以根据每个第一分类器对应的第一待分类病种是否存在于样本标签中,以及根据样本标签中是否存在易被混淆为该第一待分类病种的第二待分类病种,确定每个第一分类器对应的单病种标签。
[0091] 在另一些实施例中,生成单病种标签可以包括:对于任一第一分类器对应的第一待分类病种,可以执行以下操作中的任一项:响应于样本标签中包括第一待分类病种,确定医学样本图像中第一待分类病种对应的单病种标签为1;响应于样本标签中包括易被混淆为第一待分类病种的第二待分类病种,且不包括第一待分类病种,确定医学样本图像中第一待分类病种对应的单病种标签为‑1;响应于样本标签中既不包括第一待分类病种,也不包括第二待分类病种,确定医学样本图像中第一待分类病种对应的单病种标签为0。第一待分类病种和第二待分类病种可以是不同的待分类病种。
[0092] 假设样本标签以Y表示,对于第一待分类病种i的单病种标签yi可以通过如下公式2来生成:
[0093]                   公式2
[0094] 其中,yi表示第一待分类病种i的单病种标签,Y表示样本标签,E表示混淆关系集合,j表示第二待分类病种,表示第二待分类病种j易被混淆为第一待分类病种i。也就是说,对于任一第一分类器对应的第一待分类病种i,如果其存在于样本标签中,则可以将第一待分类病种i的单病种标签设置为1;如果其不存在于样本标签中,但是样本标签中存在另一个容易被混淆为第一待分类病种i的第二待分类病种j,则可以将第一待分类病种i的单病种标签设置为‑1;如果样本标签中既不存在第一待分类病种i,也不存在易被混淆为第一待分类病种i的第二待分类病种j,可以将第一待分类病种i的单病种标签设置为0。
[0095] 可以理解的是,上述第一待分类病种和第二待分类病种中的“第一”和“第二”是为了便于对不同病种进行区分,而不是对待分类病种的限制,对于第二待分类病种对应的第一分类器而言,在对其设置单病种标签时,仍可以采用上述公式2所示的方法进行设置,即判断第二待分类病种是否在样本标签中,以及混淆关系集合中是否存在易被混淆为第二待分类病种的其他病种。在一些实施例中,第一待分类病种可以称为当前待分类病种,第二待分类病种可以称为易混淆病种。
[0096] 通过对每个第一分类器对应的待分类病种执行上述操作,可以根据混淆关系设置‑1的标签值,这样可以在第一分类器学习相应待分类病种的病灶特征时,能够排除易混淆的干扰特征可能产生的影响,从而有利于帮助第一分类器更好的学习。仍以糖网举例,假设某医学样本图像的样本标签中存在中度糖网的标签,由于中度糖网与轻度糖网之间具有易被混淆的关系,因此无法确定该医学样本图像中是否存在轻度糖网的病灶特征,或者是否存在轻度糖网被错标为中度糖网的问题,如果在此情况下将轻度糖网对应的训练标签设置为0,可能会指导轻度糖网对应的第一分类器学习到错误或者混乱的信息。根据本申请的实施例的训练方法,可以将此情况下的轻度糖网对应的训练标签设置为‑1,使该医学样本图像不指导轻度糖网对应的第一分类器的学习,从而可以从根本上排除中度糖网的病灶特征对于第一分类器学习轻度糖网特征的干扰和影响。
[0097] 在本申请的一个实施例中,在步骤822中生成与每个第二分类器对应的病种细分标签可以包括:生成与每个第二分类器对应的混淆关系的病种细分标签。在另一个实施例中,生成病种细分标签可以包括:生成与每个第二分类器对应的混淆关系中不易被混淆的待分类病种(例如图2中所示的有向边箭头所指向的节点)对应的病种细分得分。在又一个实施例中,生成病种细分标签可以包括:根据每个第二分类器对应的混淆关系,以及根据样本标签中是否包括符合混淆关系的待分类病种,确定每个第二分类器对应的病种细分标签。在一些实施例中,病种细分标签可以设置为二分类标签。
[0098] 在另一些实施例中,确定每个第二分类器对应的病种细分标签可以包括:根据样本标签中是否包括符合混淆关系中的不易被混淆的待分类病种,确定相应的病种细分得分。在第二待分类病种易被混淆为第一待分类病种的混淆关系中,第一待分类病种可以被视为不易被混淆的待分类病种。在第一待分类病种易被混淆为第二待分类病种的混淆关系中,第二待分类病种可以被视为不易被混淆的待分类病种。假设第一待分类病种与第二待分类病种之间为双向混淆关系,其分别对应于两个第二分类器,则对于每个第二分类器中对应的单向混淆关系单独进行判断。
[0099] 在一个实施例中,确定每个第二分类器对应的病种细分标签可以包括:响应于任一第二分类器对应的混淆关系包括第二待分类病种易被混淆为第一待分类病种,执行以下操作中的任一项:响应于样本标签中包括第一待分类病种,确定医学样本图像中混淆关系对应的病种细分标签为1;响应于样本标签中不包括第一待分类病种,确定医学样本图像中混淆关系对应的病种细分标签为0。
[0100] 具体地,在一个实施例中,假设样本标签以Y表示,对于第二待分类病种j易被混淆为第一待分类病种i的混淆关系对应的病种细分标签yji可以通过如下公式3来生成:
[0101]                           公式3
[0102] 其中,yji表示第二待分类病种j易被混淆为第一待分类病种i的混淆关系对应的病种细分标签,Y表示样本标签。也就是说,根据混淆关系中的待分类病种i是否在样本标签中,可以生成混淆关系对应的二分类标签。
[0103] 在本申请的又一个实施例中,确定每个第二分类器对应的病种细分标签可以包括:响应于任一第二分类器对应的混淆关系包括第二待分类病种易被混淆为第一待分类病种,执行以下操作中的任一项:响应于样本标签中包括第一待分类病种,确定医学样本图像中混淆关系对应的病种细分标签为1;响应于样本标签中既不包括第一待分类病种,也不包括第二待分类病种,确定医学样本图像中混淆关系对应的病种细分标签为‑1;响应于样本标签中包括第二待分类病种,且不包括第一待分类病种,确定医学样本图像中混淆关系对应的病种细分标签为0。
[0104] 具体地,在另一个实施例中,假设医学样本图像的样本标签以Y表示,对于第二待分类病种j易被混淆为第一待分类病种i的混淆关系对应的病种细分标签yji可以通过如下公式4来生成:
[0105]                             公式4
[0106] 其中,yji表示第二待分类病种j易被混淆为第一待分类病种i的混淆关系对应的病种细分标签,Y表示样本标签。也就是说,对于任一第二分类器对应的混淆关系,如果第一待分类病种i在医学样本图像的样本标签中,可以将混淆关系对应的第二分类器的病种细分标签设置为1;如果第一待分类病种i不存在于样本标签中,但是样本标签中存在另一个容易被混淆为第一待分类病种i的第二待分类病种j,则可以将混淆关系对应的第二分类器的病种细分标签设置为0;如果医学样本图像的样本标签中既不存在第一待分类病种i,也不存在易被混淆为第一待分类病种i的第二待分类病种j,可以将该医学样本图像在混淆关系中对应的第二分类器的病种细分标签设置为‑1。
[0107] 可以理解的是,由于第二分类器与混淆关系是唯一对应的,因此仅当样本标签中含有待分类病种i和待分类病种j的数据才会对该第二分类器产生监督信号。第二分类器通过学习这样的训练数据,可以关注到易混淆病种之间的细分差异,从而使得分类模型能够输出用于辅助最终分类判断的病种细分得分,有利于提高分类模型的训练效果和输出结果的准确性。
[0108] 在详细介绍了训练标签的生成过程之后,返回图8中继续描述。如图8中进一步示出的,流程可以继续前进到步骤830中,可以使用带训练标签的医学样本图像对分类模型进行训练。进一步地,在训练过程中,可以设置与每个第一分类器和每个第二分类器对应的损失函数,训练方法800可以包括步骤841(虚线框示出)和/或步骤842(虚线框示出),其中在步骤841中,响应于单病种标签中存在‑1,可以将单病种标签‑1对应的第一分类器的损失函数确定为0;和/或在步骤842中,响应于病种细分标签中存在‑1,可以将病种细分标签‑1对应的第二分类器的损失函数确定为0。
[0109] 在一些实施例中,损失函数可以采用例如均方误差、或者二分类交叉熵BCE损失函数等。将单病种标签‑1对应的第一分类器的损失函数确定为0,和/或将病种细分标签‑1对应的第二分类器的损失函数确定为0,可以使得单病种标签‑1对应和/或病种细分标签为‑1的训练数据在相应损失函数的计算中不产生作用,即无论分类模型将该训练数据分类为阳性或阴性,均不产生损失。
[0110] 在一些实施例中,用于训练第一分类器的损失函数可以通过如下公式5来计算:
[0111]            公式5
[0112] 其中, 表示与待分类病种i对应的第一分类器的损失函数,yi表示待分类病种i的单病种标签, 表示与待分类病种i对应的第一分类器基于医学样本图像输出的单病种得分, 表示Sigmoid函数。进一步地,基于公式2,公式5也可以表示为如下公式6的形式。
[0113]            公式6
[0114] 其中, 表示与待分类病种i对应的第一分类器的损失函数, 表示与待分类病种i对应的第一分类器基于医学样本图像输出的单病种得分, 表示Sigmoid函数,Y表示医学样本图像的样本标签,E表示混淆关系集合,j表示易被混淆为待分类病种i的待分类病种,表示待分类病种j易被混淆为待分类病种i。
[0115] 在另一些实施例中,用于训练第二分类器的损失函数可以通过如下公式7来计算得到:
[0116]                         公式7
[0117] 其中, 表示与待分类病种j易被混淆为待分类病种i的混淆关系对应的第二分类器的损失函数,Y表示样本标签, 表示与混淆关系对应的第二分类器基于医学样本图像输出的病种细分得分, 表示Sigmoid函数。
[0118] 以上结合图8对根据本申请实施例的用于分类模型的训练方法800进行了详细的描述,通过上面的描述可知,本申请实施例的训练方法可以通过设置单病种标签和病种细分标签,使得分类模型能够更好的学习病种的病灶特征以及易混淆病种之间的细分特征,从而有利于提高分类模型的输出得分的可靠性。通过基于本申请实施例的训练方法对分类模型进行训练,可以发现第一分类器的输出分布发生了明显的改善。下面将结合图9a‑图9c进行示例性的描述。
[0119] 图9a是示出使用传统训练方法训练后的分类模型的输出得分的概率分布图。传统训练方法即为仅根据样本标签的信息,直接将样本标签转化为0或1的标签来训练例如图1中所示的分类模型100,该分类模型100输出的得分为传统训练方法下的第一分类器的单病种得分。如图9a中所示,通过采用某病种的阳性样本(样本标签中包括该病种)和阴性样本(样本标签中不包括该病种)对模型进行训练,可以看出传统训练方法下的阳性样本的单病种得分比较均匀的分布于0‑1之间,而不具有显著性。
[0120] 图9b是示出根据本申请实施例的训练方法训练后的分类模型输出的单病种得分的概率分布图。如图9b中所示,通过采用与图9a中相同病种的阳性样本(样本标签中包括该病种)和阴性样本(样本标签中不包括该病种)对模型进行训练,并且根据样本标签和混淆关系生成的训练标签来进行训练例如图3中所示的分类模型,可以看出根据本申请实施例的训练方法下的阳性样本的单病种得分较集中的分布于1附近,具有较好的显著性和辨识度,说明分类模型在本申请实施例的训练方法中能够获得更好的学习效果。
[0121] 图9c是示出传统训练方法与本申请实施例的训练方法训练后的模型的PR曲线对比图。如图9c中所示,本申请实施例提供的全新的训练方法训练后的分类模型的PR(精准率precision和召回率recall)曲线(图中以虚线示出)明显高于传统训练方法训练后的传统分类模型的PR曲线(图中以实线示出)。也就是说,在相同的召回率下,本申请实施例提供的新的训练方法训练后的分类模型的准确率显著高于传统训练方法训练的分类模型。
[0122] 以上结合图9a‑图9c对根据本申请实施例的训练方法的训练效果进行了说明,可以发现,本申请实施例的训练方法能够显著提高分类模型的准确率以及单病种得分的分布情况,使得第一分类器输出的单病种得分具有更好的集中程度和分辨率。进一步地,在对第一分类器的输出实现了改善之后,通过结合第二分类器的输出可以帮助模型对疾病进行更好的分类和预测。
[0123] 图10是是示出根据本申请实施例的基于医学图像进行疾病预测的方法流程图。如图10中所示,方法1000可以包括:在步骤1010中,可以使用分类模型对待测医学图像进行疾病分类,以获得基于待测医学图像的初始分类结果。接着,在步骤1020中,可以使用自然语言模型对初始分类结果进行推理,以获得基于待测医学图像的疾病预测结果。
[0124] 在本申请的一个实施例中,分类模型可以包括主干网络和与主干网络连接的第一分类器,并且使用分类模型获得初始分类结果可以包括:使用主干网络对待测医学图像进行特征提取,以获得待测医学图像中的病灶特征;以及使用第一分类器基于病灶特征输出待分类病种的单病种得分。
[0125] 在本申请的另一个实施例中,使用自然语言模型进行推理可以包括:将单病种得分对应的待分类病种进行编码,以生成用于表示待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;以及使用自然语言模型对第一相乘结果进行推理。
[0126] 在本申请的又一个实施例中,分类模型还可以包括与主干网络连接的第二分类器,并且使用分类模型获得初始分类结果还可以包括:使用第二分类器基于病灶特征输出与待分类病种相关的病种细分得分。
[0127] 在本申请的一个实施例中,在使用分类模型获得初始分类结果之前,方法1000还可以包括:根据待分类任务中的待分类病种的数量,确定第一分类器的数量,使得每个第一分类器用于输出相应的一个待分类病种的单病种得分;以及根据待分类病种之间混淆关系的数量,确定第二分类器的数量,使得每个第二分类器用于输出相应的一个混淆关系中的病种细分得分。
[0128] 在本申请的另一个实施例中,使用自然语言模型进行推理可以包括:使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果;以及使用自然语言模型对筛选后的分类结果进行推理。
[0129] 在本申请的又一个实施例中,使用预设阈值对初始分类结果进行筛选,以获得筛选后的分类结果可以包括:将每个第一分类器输出的单病种得分与相应的预设阈值进行比较,以筛选出大于预设阈值的阳性单病种得分;根据阳性单病种得分对应的待分类病种,筛选出相应的混淆关系;以及根据筛选出的混淆关系,将相应的病种细分得分确定为筛选后的病种细分得分。
[0130] 在本申请的一个实施例中,使用自然语言模型进行推理可以包括:将单病种得分对应的待分类病种进行编码,以生成用于表示待分类病种的第一词向量;将每个第一词向量与相应的单病种得分相乘,以得到第一相乘结果;将病种细分得分对应的混淆关系进行编码,以生成用于表示混淆关系的第二词向量;将每个第二词向量与相应的病种细分得分相乘,以得到第二相乘结果;以及使用自然语言模型对第一相乘结果和第二相乘结果形成的序列进行推理。
[0131] 在本申请的另一个实施例中,待测医学图像可以包括眼底图像。
[0132] 在本申请的又一个实施例中,使用自然语言模型对初始分类结果进行推理可以进一步包括:将待测医学图像所属患者的基本信息、病史信息和检查信息中的至少一种与初始分类结果一起输入至自然语言模型进行推理。
[0133] 上述方法已经在前文中结合本申请实施例的装置进行了详细的描述,这里将不再赘述。
[0134] 还应当理解,本申请的方案还可以借助于计算机指令来实现,该计算机指令可以存储于计算机可读介质中。根据不同的实现方式,该计算机可读介质,诸如存储介质、计算机存储介质或数据存储设备(可移除的)和/或不可移动的)例如磁盘、光盘或磁带。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性,可移动和不可移动介质,例如计算机可读指令、数据结构、程序模块或其他数据。
[0135] 基于上文,本申请还提供一种计算机可读存储介质,其上存储有基于医学图像进行疾病预测的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如本申请的第二方面中任意一项所述的方法。例如,该计算机可读指令被一个或多个处理器执行时,可以执行:使用分类模型对待测医学图像进行疾病分类,以获得基于待测医学图像的初始分类结果;以及使用自然语言模型对初始分类结果进行推理,以获得基于待测医学图像的疾病预测结果。换句话说,该程序指令的执行可以实现结合图1‑图8以及图10所描述的本申请的方案。
[0136] 上述的计算机可读存储介质可以是任何适当的磁存储介质或者磁光存储介质,比如,阻变式存储器RRAM(Resistive Random Access Memory)、动态随机存取存储器DRAM(Dynamic Random Access Memory)、静态随机存取存储器SRAM(Static Random‑Access Memory)、增强动态随机存取存储器EDRAM(Enhanced Dynamic Random Access Memory)、高带宽内存HBM(High‑Bandwidth Memory)、混合存储立方HMC(Hybrid Memory Cube)等等,或者可以用于存储所需信息并且可以由应用程序、模块或两者访问的任何其他介质。任何这样的计算机存储介质可以是本申请的装置的一部分或可访问或可连接到装置。本申请描述的任何应用或模块可以使用可以由这样的计算机可读介质存储或以其他方式保持的计算机可读/可执行指令来实现。
[0137] 通过上面对本申请的基于医学图像进行疾病预测的技术方案以及多个实施例的描述,本领域技术人员可以理解的是,通过使用自然语言模型来对分类模型输出的初始分类结果进行推理,可以代替人为制定推断规则的方案,并能够实现更加智能、快速和准确的推断。在一些实施例中,可以使用简单的筛选规则来对输入自然语言模型之前的初始分类结果进行初步筛选,有利于减少自然语言模型的数据处理量,以及进一步提高自然语言模型推理的速度和效率。
[0138] 虽然本文已经示出和描述了本申请的多个实施例,但对于本领域技术人员显而易见的是,这样的实施例只是以示例的方式来提供。本领域技术人员可以在不偏离本申请思想和精神的情况下想到许多更改、改变和替代的方式。应当理解的是在实践本申请的过程中,可以采用对本文所描述的本申请实施例的各种替代方案。所附权利要求书旨在限定本申请的保护范围,并因此覆盖这些权利要求范围内的等同或替代方案。