一种基于注意力池化的端到端组织病理图像分类方法与流程

    专利2022-07-08  108


    本发明涉及组织病理图像自动诊断领域,具体涉及一种面向组织病理全玻片图像的自动分类方法,属于深度学习模型在医学影像分析领域的应用。



    背景技术:

    根据世界卫生组织的统计,癌症的发病率在过去几年仍然处在快速增长之中,尤其是在低收入或中等收入国家,癌症的发病率和致死率正在不断攀升。与之相对的是,发达国家部分种类癌症导致的死亡人数已经开始呈下降趋势,这一点与早期诊断技术的突破密不可分。但在低收入或中等收入国家中,诊断所需的资源严重不足,很多患者被诊断出来时已经处于晚期,没有有效的治疗方法。依据组织病理图像得到的结果长期以来一直作为癌症诊断的金标准,但是这一过程需要经验丰富的病理专家花费相当长的时间来完成。因此,开发计算机辅助诊断系统对于减轻医疗系统的负担,帮助贫困地区的患者具有重要的意义。

    随着数字扫描技术的发展,组织病理图像可以被数字化的存储和表示,这为计算机自动处理技术的发展带来了可能。与自然图像相比,病理图像具有独特的特征。首先,自然图像(例如imagenet数据集中的图像),通常包含104~106个像素点,而组织病理图像(例如camelyon16数据集中的图像)包含1012以上个像素点,占据1gb以上的存储空间。第二,病理图像的样本相对较少。由于组织病理图像需要从患者处获得,所以收集起来比自然数据困难得多。对于一些比较罕见的疾病,可能只能收集到几十到几百个样本。最后,病理图像的标注更加困难。病理图像的标注只能由专家完成,并且标注过程所需时间长,易出错,所以能够得到的标注样本相对稀少。尤其是像素级的精细标注根本不能大规模获取。

    在之前的工作中,研究者经常针对图像手工设计特征,例如将图像中的细胞核分割出来,然后提取其组织纹理、形态学特征等,最后使用传统的机器学习方法,如k均值聚类、支持向量机等进行分类。近年来,随着深度学习技术的发展,卷积神经网络cnn在自然图像分类领域展现出了巨大的价值。但是使用深度学习技术进行组织病理图像分类时,病理图像的巨大尺寸导致cnn无法直接应用到整张图像上。而由于缺乏像素级的精标注,当病理图像被分割为尺寸较小的切片后,又无法得知这些切片的标签。此外,cnn的训练需要大量的标记数据,而组织病理图像数据集通常难以提供足够的数据供其训练。



    技术实现要素:

    本发明针对上述背景技术中存在的深度学习难以直接应用到组织病理图像分类过程中的问题,首先对切片打分,利用切片得分挑选部分切片,实现了一个端到端的注意力池化网络,对组织病理全玻片图像进行自动分类。该方法可以直接对全玻片图像进行分类,减轻医生的负担,使医疗资源不足的地区也可以实现对癌症的早期诊断。

    其中,根据预先准备的组织病理全玻片图像训练样本训练形成一个组织病理全玻片图像自动分类模型,并使用该组织病理图像自动分类模型对待分类的组织病理图像进行分类。本发明的具体实现包括以下步骤:

    步骤1,将组织病理全玻片图像切分为边长为l的方形切片,对方形切片进行筛选预处理,剩下的切片集合为一个包;

    步骤2,使用预训练好的resnet50网络,并修改最后一层全连接层的结构,修改后的模型记为a,采用标准多示例学习的方法训练模型a;

    步骤3,使用训练好的模型a对所有的切片打分,每张图片取其中得分最高和最低的m张切片,组成一个新的包;

    步骤4,搭建一个包含注意力池化模块的深度学习模型b,使用步骤3得到的新包训练模型b;

    步骤5,将待分类的组织病理图像经步骤1和3进行处理后得到包含2m个切片的包,使用步骤4训练得到的模型b对该包进行分类,分类结果即为最终待分类图像的分类结果。

    进一步的,步骤1中所述筛选预处理是指去除背景区域超过一定范围的切片,具体实现方式如下;

    首先使用otsu方法对低分辨率下的切片图像计算背景区域和前景区域的阈值,otsu方法的具体算法是寻找一个阈值t,使得前景区域和背景区域内部的方差和最小,计算公式如下,

    其中是指在以t为阈值时,背景区域内部灰度值的方差,是指在以t为阈值时,前景区域内部的方差;假设在以t为阈值时,属于背景区域的像素点的灰度值记为b(i),属于前景区域的像素点的灰度值记为f(i),属于前景区域的像素点的数量记为nf,属于背景区域的像素点的数量记为nb,则方差的计算方法如下:

    而w1(t)和w2(t)是在以t为阈值时,前景区域和背景区域所占的比例;使用以上算法得到最优的阈值后,计算在最优阈值下背景区域占整个切片面积的比例,若该比例超过某一个值则将该切片舍弃。

    进一步的,步骤2中修改resnet50网络的最后一层全连接层的输出维度为128维,并在其后添加一个输入维度为128,输出维度为2的全连接层。

    进一步的,步骤2中采用标准多示例学习的方法训练模型a,多示例学习的假设在于阳性的包中至少有一张切片为阳性,而阴性的包中所有的切片均为阴性;每轮训练开始前,首先使用模型a对所有的切片进行打分,挑选每张图像中得分最高的k张切片,给挑选出的切片打上与整张切片图像相同的标签;所有挑选出的切片-标签对组成训练所需的数据集,训练模型a,重复上述过程,至模型a在验证集上的准确率不再提升为止。

    进一步的,训练模型a至a在验证集上的准确率不再提升为止,其具体实现方式为;

    对于图像中的每个切片xi,模型a的输出为[oi1,oi2],则使用softmax函数得到[pi1,pi2],其中

    将所有的切片的输出集合起来得到[p12,p22,...,pl2],l为切片的个数,取其中的最大值记为pi,则对图像的预测值yp为;

    其中,预测为0时,代表预测图像为阴性,预测为1时,代表预测图像为阳性;根据该预测结果,即可计算模型a的分类准确率,如果模型a在验证集上的准确率在指定轮次内没有上升,则停止训练并将之前在验证集上准确率最高的模型保存。

    进一步的,步骤3中使用训练好的模型a对切片进行打分,具体为:对每张切片,模型a最后一层的全连接层得到二维的输出[o1,o2],使用softmax函数对这一输出归一化,得到[p1,p2],其中

    然后p2记为模型a对该切片打的分。

    进一步的,步骤4所述的包含注意力池化模块的模型b,其具体结构如下:首先是一个特征提取模块,特征提取模块后面是一个带有tanh激活层的线性层和一个带有sigmoid激活层的全连接层,以及一个分类模块;

    其中特征提取模块用于提取出每张切片对应的特征hi,然后由两个带不同激活层的全连接层根据特征计算注意力系数,其具体计算过程为

    ati=tanh(wthi)

    asi=sigmoid(vthi)

    其中,w和v是两个全连接层的参数,j没有实际含义,是用于求和的指标,ai即为第i个特征hi的注意力系数,该系数和特征加权求和即可得到图像的特征表示,

    然后该特征由两个全连接层构成的分类模块进行分类。

    进一步的,所述特征提取模块使用的是cnn网络,该cnn网络的基本组成单元是bottleneck模块,每个bottleneck模块由三个卷积层和三个批正则化层以及一个relu激活层组成,cnn的骨架分为四个部分,分别包含3个,4个,6个,3个bottleneck模块;其后连接一个全局池化层和两个全连接层;最后一层全连接层的输出维度为128。

    进一步的,训练模型a和模型b,采用的都是随机梯度下降的方法,采用adam优化器,初始学习率为0.00001,权重衰减系数为0.0001,在训练模型a的过程中,batchsize的取值为32,在训练模型b的过程中,batchsize的取值为1。

    与现有技术相比较,本发明的有益效果在于:

    1、本发明使用了一种新的分类方法,有效的提升了在只有少量数据可以用于训练模型时,获得的模型对组织病理图像分类的准确度。

    2、本发明通过预先对切片打分,实现了一个端到端的注意力池化网络。之前的注意力池化方法由于计算资源的限制只能使用两阶段的模型,即提取特征后对特征进行池化。本发明提出的方法预先对切片进行打分,根据得分挑选切片后就可以直接使用切片作为模型的输入。经过注意力池化后分类的结果可以直接通过梯度的反向传播反馈到特征提取过程中。这样一种端到端的效果明显提升了分类的精度。

    3、本发明在挑选注意力池化所需要的切片时,结合了组合多示例学习的方法,即不止挑选得分较高的切片,而且同时挑选部分得分较低的切片。这样可以更多的考虑到图像中阴性证据的影响,有利于改善模型的分类效果。

    附图说明

    图1是本发明的工作流程图(以乳腺组织病理图像为例);

    图2是本发明的实验使用的组织病理全玻片图像的部分区域;

    图3是本发明中使用标准多示例学习方法训练模型a的流程图;

    图4是本发明中使用的注意力网络的结构图;

    图5是现有的注意力池化方法的工作机制;

    图6是本发明提出的端到端的注意力池化方法的工作机制。

    具体实施方式

    下面结合本发明实施例中的附图,以乳腺组织病理图像为例,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

    请参阅附图1-6,本发明提供如下技术方案:一种组织病理全玻片图像自动分类方法,包括如下步骤:

    步骤1:将组织病理全玻片图像切分为边长为l的方形切片,本发明中l的取值为224。然后切片中背景区域占50%以上的切片被舍去,剩下的切片集合为一个包。

    所述的去除切片中背景区域占50%以上的切片的处理方式为:首先使用otsu方法对低分辨率下的整张切片图像计算背景区域和前景区域的阈值。otsu方法的具体算法是寻找一个阈值t,使得前景区域和背景区域内部的方差和最小。也就是

    其中是指在以t为阈值时,背景区域内部灰度值的方差,是指在以t为阈值时,前景区域内部的方差。假设在以t为阈值时,属于背景区域的像素点的灰度值记为b(i),属于前景区域的像素点的灰度值记为f(i),属于前景区域的像素点的数量记为nf,属于背景区域的像素点的数量记为nb,则方差的计算方法如下:

    而w1(t)和w2(t)是在以t为阈值时,前景区域和背景区域所占的比例。使用以上算法得到最优的阈值后,计算在最优阈值下背景区域占整个切片面积的比例,若该比例超过某一个值(优选地,本发明中取得是50%),则将该切片舍弃。

    步骤2:使用一个在自然图像数据集(imagenet)上训练好的resnet50网络,将最后一层全连接层的输出维度由1000维改为128维,在最后添加一层输入维度为128,输出维度为2的全连接层,把改造后的模型记为a。采用标准多示例学习的方法训练模型a。

    所述的采用标准多示例学习的方法训练模型a,多示例学习的假设在于阳性的包中至少有一张切片为阳性,而阴性的包中所有的切片均为阴性。每轮训练开始前,首先使用模型a对所有的切片进行打分,挑选每张图像中得分最高的k张切片,给挑选出的切片打上与整张图像相同的标签。所有挑选出的切片-标签对组成训练所需的数据集,训练模型a。重复上述过程,至模型a在验证集上的准确率不再提升为止。在验证集上计算准确率时,以模型a对得分最高的切片的分类结果作为a对整个图像的分类结果。

    训练模型a至a在验证集上的准确率不再提升为止,其具体实现方式为;

    对于图像中的每个切片xi,模型a的输出为[oi1,oi2],则使用softmax函数得到[pi1,pi2],其中

    将所有的切片的输出集合起来得到[p12,p22,...,pl2],l为切片的个数,取其中的最大值记为pi,则对图像的预测值yp为;

    其中,预测为0时,代表预测图像为阴性,预测为1时,代表预测图像为阳性。根据该预测结果,即可计算模型a的分类准确率,如果模型a在验证集上的准确率在指定轮次内没有上升,则停止训练并将之前在验证集上准确率最高的模型保存。

    步骤3:使用训练好的模型a对所有的切片打分。每张图片取其中得分最高和最低的m张切片,组成一个新的包。优选地,本发明中m的取值为40。

    所述的使用训练好的模型a对切片进行打分,对每张切片,模型a最后一层的全连接层得到二维的输出[o1,o2],使用softmax函数对这一输出归一化,得到[p1,p2],其中

    然后p2记为模型a对该切片打的分(p1在打分过程中没有用处,直接舍弃即可)。

    步骤4:搭建一个包含注意力池化模块的深度学习模型b,使用步骤3得到的新包训练模型b。

    步骤4所述的包含注意力池化模块的模型b,其具体结构如下:首先是一个特征提取模块,特征提取模块后面是一个带有tanh激活层的线性层和一个带有sigmoid激活层的全连接层,以及一个分类模块;

    所述的包含注意力模块的深度学习模型b,其机制为首先由特征提取模块提取出每张切片对应的特征hi,然后由两个带不同激活层的全连接层根据特征计算注意力系数。其具体计算过程为

    ati=tanh(wthi)

    asi=sigmoid(vthi)

    其中,w和v是两个全连接层的参数,ai即为第i个特征hi的注意力系数。该系数和特征加权求和即可得到图像的特征表示,

    然后该特征由两个全连接层构成的分类器进行分类。

    所述特征提取模块使用的是cnn网络,该cnn网络的基本组成单元是bottleneck模块,每个bottleneck模块由三个卷积层和三个批正则化层以及一个relu激活层组成,cnn的骨架分为四个部分,分别包含3个,4个,6个,3个bottleneck模块;其后连接一个全局池化层和两个全连接层;最后一层全连接层的输出维度为128。

    步骤5:将待处理的组织病理图像经步骤1和3进行处理后得到包含2m个切片的包,使用步骤4训练得到的模型b对该包进行分类。分类结果即为最终对原待分类图像的分类结果。

    所述的训练模型a和模型b,采用的都是随机梯度下降的方法,采用adam优化器,初始学习率为0.00001,权重衰减系数为0.0001。在训练模型a的过程中,batchsize的取值为32。在训练模型b的过程中,batchsize的取值为1。

    针对组织病理全玻片图像的自动分类算法目前还处于理论阶段。目前的组织病理诊断算法,多数是建立在最大值池化或其他池化的基础上,建立一个两阶段的模型。这些模型由于特征提取的质量缺乏有效的反馈机制,因此准确率一般不高,2019年在实验所用的camelyon16数据集上分类指标仅为0.725。本发明在原有的深度学习方法的基础上进行了改进,利用深度学习模型对切片的打分进行采样,然后使用端到端的注意力池化网络进行分类,有效地提高了原有方法诊断的准确率,在实验所用的camelyon16数据集上达到了0.790。可以为医生提供有效的帮助。

    本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。


    技术特征:

    1.一种基于注意力池化的端到端组织病理图像分类方法,其特征在于,包括如下步骤:

    步骤1,将组织病理全玻片图像切分为边长为l的方形切片,对方形切片进行筛选预处理,剩下的切片集合为一个包;

    步骤2,使用预训练好的resnet50网络,并修改最后一层全连接层的结构,修改后的模型记为a,采用标准多示例学习的方法训练模型a;

    步骤3,使用训练好的模型a对所有的切片打分,每张图片取其中得分最高和最低的m张切片,组成一个新的包;

    步骤4,搭建一个包含注意力池化模块的深度学习模型b,使用步骤3得到的新包训练模型b;

    步骤5,将待分类的组织病理图像经步骤1和3进行处理后得到包含2m个切片的包,使用步骤4训练得到的模型b对该包进行分类,分类结果即为最终待分类图像的分类结果。

    2.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:步骤1中所述筛选预处理是指去除背景区域超过一定范围的切片,具体实现方式如下;

    首先使用otsu方法对低分辨率下的切片图像计算背景区域和前景区域的阈值,otsu方法的具体算法是寻找一个阈值t,使得前景区域和背景区域内部的方差和最小,计算公式如下,

    其中是指在以t为阈值时,背景区域内部灰度值的方差,是指在以t为阈值时,前景区域内部的方差;假设在以t为阈值时,属于背景区域的像素点的灰度值记为b(i),属于前景区域的像素点的灰度值记为f(i),属于前景区域的像素点的数量记为nf,属于背景区域的像素点的数量记为nb,则方差的计算方法如下:

    而w1(t)和w2(t)是在以t为阈值时,前景区域和背景区域所占的比例;使用以上算法得到最优的阈值后,计算在最优阈值下背景区域占整个切片面积的比例,若该比例超过某一个值则将该切片舍弃。

    3.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:步骤2中修改resnet50网络的最后一层全连接层的输出维度为128维,并在其后添加一个输入维度为128,输出维度为2的全连接层。

    4.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:步骤2中采用标准多示例学习的方法训练模型a,多示例学习的假设在于阳性的包中至少有一张切片为阳性,而阴性的包中所有的切片均为阴性;每轮训练开始前,首先使用模型a对所有的切片进行打分,挑选每张图像中得分最高的k张切片,给挑选出的切片打上与整张切片图像相同的标签;所有挑选出的切片-标签对组成训练所需的数据集,训练模型a,重复上述过程,至模型a在验证集上的准确率不再提升为止。

    5.如权利要求4所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:训练模型a至a在验证集上的准确率不再提升为止,其具体实现方式为;

    对于图像中的每个切片xi,模型a的输出为[oi1,oi2],则使用softmax函数得到[pi1,pi2],其中

    将所有的切片的输出集合起来得到[p12,p22,…,pl2],l为切片的个数,取其中的最大值记为pi,则对图像的预测值yp为;

    其中,预测为0时,代表预测图像为阴性,预测为1时,代表预测图像为阳性;根据该预测结果,即可计算模型a的分类准确率,如果模型a在验证集上的准确率在指定轮次内没有上升,则停止训练并将之前在验证集上准确率最高的模型保存。

    6.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:步骤3中使用训练好的模型a对切片进行打分,具体为:对每张切片,模型a最后一层的全连接层得到二维的输出[o1,o2],使用softmax函数对这一输出归一化,得到[p1,p2],其中

    然后将p2记为模型a对该切片打的分。

    7.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:步骤4所述的包含注意力池化模块的模型b,其具体结构如下:首先是一个特征提取模块,特征提取模块后面是一个带有tanh激活层的线性层和一个带有sigmoid激活层的全连接层,以及一个分类模块;

    其中特征提取模块用于提取出每张切片对应的特征hi,然后由两个带不同激活层的全连接层根据特征计算注意力系数,其具体计算过程为

    ati=tanh(wthi)

    asi=sigmoid(vthi)

    其中,w和v是两个全连接层的参数,j没有实际含义,是用于求和的指标,ai即为第i个特征hi的注意力系数,该系数和特征加权求和即可得到图像的特征表示,

    然后该特征由两个全连接层构成的分类模块进行分类。

    8.如权利要求7所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:所述特征提取模块使用的是cnn网络,该cnn网络的基本组成单元是bottleneck模块,每个bottleneck模块由三个卷积层和三个批正则化层以及一个relu激活层组成,cnn的骨架分为四个部分,分别包含3个,4个,6个,3个bottleneck模块;其后连接一个全局池化层和两个全连接层;最后一层全连接层的输出维度为128。

    9.如权利要求1所述的一种基于注意力池化的端到端组织病理图像分类方法,其特征在于:训练模型a和模型b,采用的都是随机梯度下降的方法,采用adam优化器,初始学习率为0.00001,权重衰减系数为0.0001,在训练模型a的过程中,batchsize的取值为32,在训练模型b的过程中,batchsize的取值为1。

    技术总结
    本发明公开了一种基于注意力池化的端到端组织病理图像分类方法,该方法的具体步骤包括:S1:将组织病理图像切分成指定大小的切片,去除背景区域过多的切片,剩余的切片组成一个包。S2:将S1中得到的包作为输入,利用标准的多示例学习的方法训练一个深度神经网络。S3:使用训练后的深度神经网络对所有的切片打分,取每张全玻片图像得分最高和最低的m张切片,集合为一个新的包。S4:搭建一个包含注意力模块的深度神经网络,使用步骤S3得到的新包训练该网络。S5:将待分类的组织病理图像经S1和S3处理后,使用S4得到的模型进行分类。本发明可以在当前只有少量样本的情形下得到较好的分类效果,为医生提供辅助诊断机制,缓解医疗资源紧张的问题。

    技术研发人员:刘娟;左志群;陈玉琦;李卓彧;冯晶
    受保护的技术使用者:武汉大学
    技术研发日:2020.12.10
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-18852.html

    最新回复(0)