针对肝纤维化临床诊断方法具有有创性和传统机器学习方法特征提取的不完全性的缺陷, 本文采用深度迁移学习方法利用预训练的ResNet-18和VGGNet-11模型用于肝纤维化分期诊断. 使用南方医科大学提供的大鼠肝纤维化核磁共振影像数据集进行不同程度的迁移训练. 将两种模型在通过4种不同参数采集的核磁共振影像数据集上, 分别使用6种网络迁移配置训练. 实验结果表明, 使用T1RHO-FA参数采集的核磁共振影像和采用VGGNet-11模型更能提高肝纤维化分期诊断的准确率. 同时相对于ResNet-18模型, 深度模型迁移学习方法能稳定提升VGGNet-11模型进行肝纤维化分期诊断的准确率和训练速度.
In view of the incompleteness of the clinical diagnosis method of liver fibrosis and the incompleteness of the feature extraction of traditional machine learning methods, by the deep transfer learning method, this study uses the pre-trained ResNet-18 and VGGNet-11 models for the diagnosis of liver fibrosis. Different degrees of transfer training were performed using the rat liver fibrosis nuclear magnetic resonance image dataset provided by Southern Medical University. The two models were trained using six network migration configurations on the MRI image datasets collected by four different parameters. The experimental results show that the use of T1RHO-FA parameters to acquire nuclear magnetic resonance images and the use of VGGNet-11 model can improve the accuracy of liver fibrosis staging diagnosis. At the same time, compared with the ResNet-18 model, the deep model migration learning method can stably improve the accuracy and training speed of the VGGNet-11 model for liver fibrosis staging diagnosis.
肝纤维化(Hepatic Fibrosis, HF)是许多慢性肝脏疾病的常见表现,是指由各种病因导致的肝脏损伤而进行的组织修复, 最终导致合成大量的胶原和蛋白多糖等细胞外基质(Extra Cellular Matrix, ECM)过度沉积的病理过程.
有研究表明, 早期轻度肝纤维化是可以治愈, 并且肝纤维化S2 期及以上具有明确的治疗指征, 这也是肝纤维化进展的标志[
医学成像技术因其具有无创性和能直观检测体内器官的特性, 现已广泛的被用于临床医学当中. 用于评估肝纤维化的医学影像主要包括核磁共振成像(Magnetic Resonance Imaging, MRI)、超声弹性成像、计算机断层成像(Computed Tomography CT). 相对于其他医学成像技术来说, 磁共振成像可以生成多种多参数的高清软组织图像, 包括弥散加权成像(Diffusion Weighted Imaging, DWI)、T1-weighted MRI、T2-weighted MRI等. 在本实验中根据医生的建议采用了T1-weighted(T1)、T2-weighted TSE(T2)、T1RHO-FA(FA)、T1RHO-HS(HS)这4种MRI图像.
目前国内外对肝纤维化的诊断方法主要分为有创性诊断和无创性诊断. 其中有创性诊断主要是对肝脏进行肝活组织病理学检查, 并将其检测结果作为肝纤维化分期阶段的“金标准”. 然而这种诊断方法具有成本太高、有创性、有几率导致并发症等的弊端[
传统基于医学图像对肝纤维化程度诊断的方法主要是先对图像进行人工特征提取和特征筛选, 然后再通过传统机器学习的方法训练分类器进行肝纤维化分期分类[
深度学习是由Geoffrey Hinton 研究组在2006年提出的一个机器学习领域的新分支[
深度网络的层次结构
除了基本的全连接层之外, 常见的深度神经网络层还有: 卷积层, 池化层, 批标准化层, 随机失活层, 激活层等.
自1962年Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元提出感受野(receptive field)概念后[
卷积神经网络利用了图像主体的平移不变性和像素与近距离的像素之间的联系大于远距离像素的特性, 采用不同的卷积核对图像进行卷积运算得到不同的特征图, 在计算特征图时通过权值共享大大减少了深度神经网络的参数数量(
卷积的工作方式
池化层是根据特征选择的区域按照池化方式提取出特征, 同时能缩小特征图, 减少模型的计算量, 常用的池化方法有最大池化, 最小池化, 和平均池化. 在本文实验中采用的均为最大池化.
深度模型在训练时, 由于模型层次太深或采用了不适当的激活函数会导致模型梯度消失的问题. 针对这一问题, 2015年Google提出了批标准化(Batch Normalization)[
随机失活(Dropout)层[
如果不添加激活层, 每一层的输出都是上层输入的线性函数, 这样无论网络有多少层, 输出都是输入的线性组合, 无法拟合非线性函数. 激活层将非线性特征引入到了网络中, 使网络可以逼近任意非线性函数, 让神经网络可以处理众多非线性问题. 激活层中常用的激活函数有Sigmoid、Tanh、ReLU等.
迁移学习(transfer learning)是将在源域(source domain)中学习到的知识应用于在目标域(target domain)知识学习中的一种学习方法[
迁移学习
迁移学习按照学习方式可以分为基于样本的迁移、基于特征的迁移、基于模型的迁移和基于关系的迁移. 由于医学影像数据的难获取或者获取的成本较高的特性, 迁移学习提供了一个恰当的途径. 同时有研究表明在训练好的深度模型中, 各层次学习到的知识不同, 低层学习到的是偏向通用性的知识, 如图的边缘、拐角等. 而高层学到的是与学习任务相关的特征, 如在人脸识别任务中, 模型的高层学习到的就有如何识别眼睛和嘴巴等知识. 在实现模型迁移时, 可以通过固定不同数量的低层参数来实现不同程度的模型迁移.
本文中实践验证了, 通过迁移在ImageNet数据集上训练的VGGNet-11模型可以提升肝纤维化期数诊断模型的特征抽取能力和稳定性.
本文采用深度模型迁移学习方法, 将ResNet-18和VGGNet-11作为基本参照模型. 基于参照模型针对MRI图像的特点进行优化, 然后对所有模型训练大鼠肝纤维化MRI图像, 使模型自动提取图像特征和对肝肝纤维化期数诊断. 对数据集, 本文采用了基于随机的镜像和旋转的数据增强策略来提升模型的泛化性能和鲁棒性. 同时在实验中, 对两种对比模型都采用了迁移学习方法和不使用迁移学习方法分别训练. 在使用迁移学习方法训练时, 对模型都进行了不同程度的模型迁移对比实验.
本实验数据由南方医科大学提供. 采用实验大白鼠共计95只, 其中每只白鼠分别采用T1、T2、T1RHO FA和T1RHO HS磁共振参数对其肝脏的不同部位进行核磁共振影像采集. 然后将采集到的原始影像通过RadiAntDICOMViewer软件转换成PNG格式作为我们的数据集. 数据集的中4种不同参数的核磁共振影像图数量如
数据集的采集情况
磁共振参数 | T1 | T2 | FA | HS | 总计 |
单只采集数 | 13 | 13 | 25 | 15 | 66 |
总样本数 | 1235 | 1235 | 2375 | 1425 | 6270 |
在实验过程中, 由于对同一只大鼠的不同肝脏切片采用了相同的采集参数, 因此它们有一定的相似性. 为防止相似性对模型的结果评定有影响, 在实验中都先以白鼠为单位随机分为7:3的比例. 然后将所有由同只白鼠获取到的影像全部作为训练集数据或者测试集数据. 具体影像图见
从S0到S4期大鼠肝纤维化T2核磁共振影像图
由于深度神经网络模型需要海量的数据来进行学习, 而我们数据集中的数据量远不及海量的要求. 所以在实验时需要对数据集进行适当的数据增强方法来扩充数据量, 这样训练出的模型具有更高的鲁棒性也不容易过拟合. 本实验采用的数据增强方法有以下两种:
1) 图像翻转: 图像翻转分为水平翻转和垂直翻转. 这是一种常规的数据增强方法. 在图像进行翻转后仍然不影响图像表达的语义时, 我们应尽量采用这种图像增强方法. 在本实验中对图像进行水平翻转不会影响肝纤维化的诊断. 所以图像在训练前都会随机的进行水平翻转.
2) 图像旋转: 图像旋转也是一种常规的数据增强方法. 这是将图像按照中心点进行旋转的方法. 但是过量的旋转会改变图像的语义表达, 如在文字识别中, 过量的旋转会让图像产生歧义或者不能识别. 考虑到本数据集在获取数据的时候就存在一定的角度差别, 在实验中, 数据在训练前都会随机的在–12度到12度之间进行旋转.
同时采用随机水平翻转和随机旋转图像可以让同一张图像在输入到网络时都会有不同的差异, 这让模型不容易陷入过拟合而记住单一图像的特点. 同时在网络遇到新的图像时, 能提升图像的准确性. 为了防止数据增强所带来的影响, 在测试的过程中, 所有的数据增强策略都未使用. 这样保证的模型对目标数据预测结果的准确性. 图像对比结果如
原始图像和数据增强后的图像
ResNet的全名是Residual Network, 又称为残差网络[
ResNet-18网络结构
VGG是参加ILSVRC 2014比赛时, 提交该网络的小组Visual Geometry Group, Department of Engineering Science, University of Oxford的缩写, 故该网络结构叫做VGG或者VGGNet[
VGGNet-11网络结构
本实验将原模型的最后线性层都由原输出类目数的1000调整为输出类目为5的线性层. 这样模型的5个输出就可以更好的表示模型对输入图像中肝纤维化程度的判断. 在实验过程中, 本文采用了批量训练的训练方法, 每次训练时都随机选择小批量数据进行训练. 把每张图像的原始所属于的分期和模型对图像判断所给的输出, 根据交叉熵(Cross Entropy)函数计算出模型对本张图像的输出和真实类别之间的差距损失, 然后根据批量数据的累加损失, 按照梯度反向传播法则依次调整模型中的所有未固定且可训练的参数.
如
实验均在, CPU Intel(R) Core(TM) i7-4790、GPU NVIDIA GeForce GTX 1080, 内存DDR3 16 GB, Windows 10专业版环境下, 使用PyTorch 0.40实现模型的构建和训练. 各组模型训练依次进行, 每次模型训练的80个周期共需30分钟左右, 训练结果如
实验中模型的迁移设置
模型 | 配置名称 | 迁移并固定参数的层 |
ResNet-18 | Res-lock0 | 未迁移 |
Res-lock1 | layer1 | |
Res-lock2 | layer1、layer2 | |
Res-lock3 | layer1、layer2、layer3 | |
Res-lock4 | layer1、layer2、layer3、layer4 | |
Res-lock5 | layer1、layer2、layer3、layer4、layer5 | |
VGGNet-11 | VGG-lock0 | 未迁移 |
VGG-lock1 | layer1 | |
VGG-lock2 | layer1、layer2 | |
VGG-lock3 | layer1、layer2、layer3 | |
VGG-lock4 | layer1、layer2、layer3、layer4 | |
VGG-lock5 | layer1、layer2、layer3、layer4、layer5 |
采用RetNet-18在各数据集上的模型准确
ResNet-18在4种数据集下的训练过程
VGG-lock0在4种数据集上训练过程
采用Res-lock0配置时, ResNet-18在4种不同数据集上训练不同的模型, 平均在15个周期模型都能达到自己稳定后的平均准确率. 其中的采用FA数据训练的模型的平均准确率最高为86.06%, 最高准确率为89.79%; 其次是通过HS训练的模型, 平均准确率为81.84%最高准确率为85.51%; 最低准确率的模型是采用T2数据训练, 其最高模型准确率为79.04%, 平均准确率为73.60%. 通过FA训练出模型的准确率具有最高的稳定性, 其准确率的方差为5.09. 而通过T1和HS训练模型稳定后的准确率的方差为10.04和10.69, 通过T1训练的模型最不稳定, 准确率方差为32.47. 其训练结果如
ResNet-18在Res-lock0网络设置下模型的结果
数据集 | 网络
|
准确率(%) | 准确率
|
首次达到
|
|
最高 | 平均 | ||||
T1 | Res-lock0 | 86.20 | 78.93 | 10.04 | 15 |
T2 | Res-lock0 | 79.04 | 73.60 | 32.47 | |
FA | Res-lock0 | ||||
HS | Res-lock0 | 85.51 | 81.85 | 10.53 | 14 |
VGG-11在4种数据集下的训练过程
采用FA数据集训练时, 当使用Res-lock1至Res-lock4配置训练, 模型的最高准确率依次为79.58%、77.93%、76.69%和77.24%. 采用模型迁移后, 模型平均在第7个周期就能达到模型的平均准确率, 训练速度提升了一倍. 然而模型的准确率却是不采用模型迁移时最优. 而当采用其他3种数据集训练时, 适量采用模型迁移均能提升模型的训练速度和提升模型的准确率. 在采用Res-lock4配置的模型, 在3种数据集下模型效果都最优. 在4种数据集中, 采用Res-lock5配置训练的模型效果都明显低于其他配置的模型, 因为采用这种配置时, 模型的大部分参数都已固定, 模型的拟合能力大大下降不能拟合出能良好分类的模型, 因此其效果与其他模型差距较大. 训练结果如
ResNet-18在4种数据集下的训练结果
数据集 | 网络
|
准确率(%) | 准确率
|
首次达到
|
|
最高 | 平均 | ||||
T1 | Res-lock0 | 78.93 | 10.04 | 15 | |
Res-lock1 | 85.14 | 76.92 | 21.11 | ||
Res-lock2 | 83.02 | 76.67 | 19.44 | 17 | |
Res-lock3 | 82.49 | 75.83 | 36.04 | 13 | |
Res-lock4 | 84.61 | 12 | |||
Res-lock5 | 32.89 | 29.31 | 1.63 | 29 | |
T2 | Res-lock0 | 79.04 | 73.57 | 30.42 | 10 |
Res-lock1 | 82.49 | 77.99 | 8.84 | 8 | |
Res-lock2 | 84.35 | 79.44 | 21 | ||
Res-lock3 | 85.14 | 78.50 | 20.72 | 16 | |
Res-lock4 | 8.23 | ||||
Res-lock5 | 69.23 | 63.62 | 8.1 | 37 | |
FA | Res-lock0 | 6.02 | 10 | ||
Res-lock1 | 79.58 | 73.05 | 5.35 | 5 | |
Res-lock2 | 77.93 | 73.46 | 6.08 | 7 | |
Res-lock3 | 76.68 | 72.48 | 5 | ||
Res-lock4 | 77.24 | 71.67 | 15.03 | ||
Res-lock5 | 58.75 | 55.36 | 2.6 | 42 | |
HS | Res-lock0 | 85.51 | 81.85 | 10.53 | 14 |
Res-lock1 | 85.05 | 80.68 | 6 | ||
Res-lock2 | 85.28 | 79.51 | 10.75 | 6 | |
Res-lock3 | 87.12 | 80.87 | 8.77 | 8 | |
Res-lock4 | 8.81 | ||||
Res-lock5 | 57.01 | 53.61 | 2.91 | 38 |
采用VGG-lock0配置训练时, 在4种数据集上训练的模型平均在15周期达到模型稳定后的模型准确率. 在FA数据集上训练的模型准确率最高, 最高准确率为95.31%平均准确率为90.11%, . 其次是在HS上训练的模型最高模型准确率为85.97%, 平均准确率为79.63%. 在T1上训练的模型的准确率最低, 其最高模型准确率为76.65%, 平均准确率为71.87%. 在FA上训练的模型具有最高的模型稳定性, 其准确率方差为4.94, 其次是T1数据集, 模型准确率方差为8.34. 通过HS训练的模型准确率最差, 其模型准确率方差为16.66, 是在FA上训练模型的3.37倍. 其训练结果见
VGG-lock0在4种数据集上训练结果
数据集 | 网络
|
准确率(%) | 准确率
|
首次达到
|
|
最高 | 平均 | ||||
T1 | VGG-lock0 | 76.65 | 71.87 | 8.34 | 17 |
T2 | VGG-lock0 | 82.22 | 76.91 | 11.12 | 16 |
FA | VGG-lock0 | ||||
HS | VGG-lock0 | 85.97 | 79.63 | 16.66 |
在T1数据集下, 采用VGG-lock1至VGG-lock5训练的模型的准确率均比未使用VGG-lock0配置训练的模型的准确率都高. 其中在使用VGG-lock1配置时, 模型具有最高的平均准确率81.52%, 较使用VGG-lock0时的平均准确率提升了13.42%, 但其模型的稳定性不及使用VGG-lock0的模型. 在使用VGG-lock4时模型具有最高的稳定性, 其准确率的方差为4.88只为使用VGG-lock0配置的58.51%. 同时除了使用VGG-lock5配置时, 所有配置下的模型训练速度都不低于使用VGG-lock0的配置. 在T2数据集下, VGG-lock1致VGG-lock5配置的模型准确率和模型稳定性都优于VGG-lock0配置下的模型, 但是各种配置下的模型结果之间的差别不大. 其中使用VGG-lock5配置下的模型具有最高的模型准确率84.88%, 比不使用模型迁移时的最高准确率提升了 3.23%, 平均准确率也提升了6.09%, 但是其模型需要30个周期才能达到平均准确率. 使用FA数据集训练时, 在使用VGG-lock0配置训练时能获得准确率高达95.31%的模型. 但是使用VGG-lock3配置能训练出准确率超过原来1.3%的模型. 在使用HS数据集训练时, 使用VGG-lock3配置训练的模型取得高的模型准确率和平均准确率. 同时训练速度最快比不使用模型迁移时提提升了40%. 其训练结果如
VGG-11在4种数据集下的训练过程
数据集 | 网络
|
准确率(%) | 准确率
|
首次达到
|
|
最高 | 平均 | ||||
T1 | VGG-lock0 | 76.65 | 71.87 | 8.34 | 17 |
VGG-lock1 | 11.56 | 13 | |||
VGG-lock2 | 86.73 | 81.44 | 6.33 | 16 | |
VGG-lock3 | 83.28 | 78.59 | 6.47 | 17 | |
VGG-lock4 | 83.81 | 78.45 | |||
VGG-lock5 | 77.45 | 73.17 | 8.36 | 24 | |
T2 | VGG-lock0 | 82.22 | 76.91 | 11.12 | 16 |
VGG-lock1 | 82.75 | 78.00 | 6.46 | 24 | |
VGG-lock2 | 84.08 | 78.87 | 7.17 | 13 | |
VGG-lock3 | 84.61 | 78.20 | 11.06 | ||
VGG-lock4 | 84.61 | 80.10 | 6.01 | 13 | |
VGG-lock5 | 30 | ||||
FA | VGG-lock0 | 95.31 | 90.11 | 4.94 | 15 |
VGG-lock1 | 94.62 | 90.85 | 3.19 | 17 | |
VGG-lock2 | 94.62 | 90.84 | 15.83 | 8 | |
VGG-lock3 | 2.49 | ||||
VGG-lock4 | 93.65 | 90.47 | 1.84 | 12 | |
VGG-lock5 | 87.72 | 85.68 | 35 | ||
HS | VGG-lock0 | 85.97 | 79.63 | 16.66 | 15 |
VGG-lock1 | 84.59 | 80.26 | 6.18 | 12 | |
VGG-lock2 | 80.77 | 22.55 | 13 | ||
VGG-lock3 | 8.13 | 9 | |||
VGG-lock4 | 84.82 | 81.83 | 3.62 | 9 | |
VGG-lock5 | 80.22 | 77.53 | 28 |
在没有使用模型迁移训练模型情况下. 具有最多数据的FA数据集在两种模型下都获得了最高的模型准确率, 但是VGG-11的效果优于ResNet-18. 在使用模型迁移训练时, 迁移训练对ResNet-18结果的影响不稳定. 在FA数据集上, 迁移训练的模型结果都不及未使用迁移的模型结果, 在T2和HS模型下有模型的准确率提升. 特别在使用Res-lock4时, 模型的训练速度和模型的准确率在T1,T2和HS数据集下都优于其他配置. 对于VGG-11, 在4种数据集上使用迁移训练都能稳定地为模型带来准确率和训练速度的提升并且训练结果都优于ResNet-18. 在ResNet-18和VGG-11使用Res-lock5和VGG-lock5配置时, 模型的准确率和训练速度都远不及其他配置. 因为过度的迁移, 使模型剩下的可变参数大量减少, 大大消减了模型的表达能力不能学到良好的模型. 比较分析实验结果我们, 可以得出结论使用T1RHO-FA核磁共振影像具有较其他3种影像就肝纤维化期数诊断具有更优的区分特征. 同时在训练核磁共振影像时, VGG-11网络结构比ResNet-18具有高的模型准确率, 并且在使用在ImageNet数据上训练的模型进行迁移时, 能对结果有稳定的准确率和训练速度的提升.
本实验优化了ResNet-18和VGG-11网络结构, 使用了迁移和未迁移的训练方法对模型进行分组对比实验. 对实验结果分析得出, T1RHO-FA参数的核磁共振影像相对于T1-weighted、T2-weighted TSE、和T1RHO-HS更适合用于深度模型的训练. 同时相对于ResNet-18网络结构, VGG-11更适用于核磁共振成像数据集的训练, 并且可以实用深度模型迁移提升模型的准确率和训练速度. 对于今后医学图像分类模型的训练的网络结构设计和影像数据的选择提供了参考因素. 对肝纤维化分期的诊断提供了无创和全自动的参考方案也为肝纤维化分期的诊断提供了研究意义.
陆伦根, 曾民德. 肝纤维化的诊断和评估. 中华肝脏病杂志, 2005, 13(8): 603–604.
Brenner DA. Reversibility of liver fibrosis. Gastroenterology & Hepatology, 2013, 9(11): 737–739.
Lee YA, Wallace MC, Friedman SL. Pathobiology of liver fibrosis: A translational success story. Gut, 2015, 64(5): 830–841.
夏璐, 杨长青. 肝纤维化治疗的研究进展. 中华肝脏病杂志, 2017, 25(8): 566–570.
Sattar A, Khan AM, Anjum S, et al. Role of ultrasound guided fine needle aspiration cytology in diagnosis of space occupying lesions of liver. Journal of Ayub Medical College, Abbottabad: JAMC, 2014, 26(3): 334–336.
曾民德, 王泰龄, 王宝恩. 肝纤维化诊断及疗效评估共识. 肝脏, 2002, 7(2): 147–148. (请核对页码)
刘平, 高云华, 谭开彬, 等. 声学造影对早期肝纤维化诊断的实验研究. 中国超声医学杂志, 2002, 18(12): 897–899.
葛永祥, 王丽辉. 肝纤维化诊断新进展. 医学综述, 2011, 17(19): 2952–2955.(请核对本条文献信息修改是否正确)
张弘, 陶森, 郝彧, 等. 国外肝纤维化诊断的研究热点分析. 首都医科大学学报, 2016, 37(1): 83–88.
Anthimopoulos M, Christodoulidis S, Ebner L, et al. Lung pattern classification for interstitial lung diseases using a deep convolutional neural network. IEEE Transactions on Medical Imaging, 2016, 35(5): 1207–1216.
Hinton GE, Osindero S, Teh Y. A fast learning algorithm for deep belief nets. Neural Computation, 2006, 18(7): 1527–1554.
Hubel DH, Wiesel TN. Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex. The Journal of Physiology, 1962, 160(1): 106–154.
Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: A simple way to prevent neural networks from overfitting. The Journal of Machine Learning Research, 2014, 15(1): 1929–1958.
Pan SJ, Yang Q. A survey on transfer learning. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10): 1345–1359.