深度学习胸部x射线

浏览: 1595

作者:PranavRajpurkar * 1 Jeremy Irvin * 1 Kaylie Zhu 1 Brandon Yang 1 Hershel Mehta 1TonyDuan1 Daisy Ding 1 Aarti Bagul 1 Curtis Langlotz 2 Katie Shpanskaya 2Matthew P.Lungren 2 Andrew Y. Ng1

摘要

我们研发出一个优于职业放射科医师的,通过胸部x射线检测肺炎的算法。算法全名叫做CheXNet,是一个121层的卷积神经网络,并且在ChestX-ray14中实践训练,ChestX-ray14是目前最大的公开可用的胸透X光数据集,包含了14中疾病的100,000多张X射线主视图。基于四个临床学术放射科医生所注释的测试集,我们可以从中对比CheXNet与放射科医生的表现情况。我们发现CheXNet在肺炎检测的敏感度与专业性都超过了放射科医生的平均水平。我们拓展了CheXNet用以检测ChestXray14中的14种疾病,并获取了所有14种疾病目前最新的科研成果。

1 简介

在美国,每年超过一百万的人因为肺炎住院,大约5万人因肺炎而失去生命(CDC,2017)。胸透X光是目前诊断肺炎最佳的方法(WHO,2001),在临床护理(Franquet,2001)与流行病学研究(Cherian et al.,2005)都起着至关重要的作用。但是,通过胸透X光对肺炎进行检测依赖于放射科医生的专业水平,在本次工作中, 我们呈现一个可以通过胸透X光自动检测肺炎的模型,这个模型的水平超过了临床放射科医师的水平。

image.png

图一:CheXNet是一个121层卷积神经网络,它可以把胸透X光图片当作输入,并输出病变的概率。在这个例子中,CheXNet准确的检测出了肺炎,并准确在肺部定位出病变的位置。

我们的模型,CheXNet(显示在图一),是一个121层卷积神经网络,将胸透X光的图片作为输入,并且输出一个肺部的热导图,定位出所检测出来最有可能发生肺炎的位置。我们通过最近发布的ChestX-ray14数据集来训练CheXNet模型(Wang et al.,2017),这个数据集包含112,120个单独标注14种不同胸部疾病(包括肺炎)的正面胸部x射线图像。我们通过密集的连接和批量标准化,使这种深度网络的优化变得易于处理。

对放射科医师来说,通过胸部拍片来检测肺炎是有一定困难的。从X光图片中显示的肺炎特征是很模糊的,也可能被其他的诊断覆盖,或者被误诊为具有相似特征的其他良性疾病。这巨大的诊断差异导致了放射科医师在诊断肺炎时的巨大差别。为了评估放射科医师的专业水平,我们收集了四个临床学术放射科医师从ChestX-ray14来源的420张图片子集的注释,以其他放射科医生的多数人投票来作为基准,测量评估每个放射科医师的水平,对模型也采取了类似的方式来评估专业水平。

image.png

图二:CheXNet使用X光图进行肺炎检测的能力水平超过了放射科医师的平均水平。CheXNet 是针对四名临床放射科医师的敏感度(衡量正确识别的正反馈比例 )与特异性进行检测(衡量正确识别的负反馈比例)。每个放射科医生的专业水平用一个橙色的标记,平均专业水平用绿色标记。CheXNet输出胸部x射线检测肺炎的概率,蓝色曲线是通过改变分类界限使用的阈值产生的。每个放射科医生敏感度-特异性的比例的点都在蓝色的线下方,意味着CheXNet检测肺炎的能力是匹配甚至超越放射科医师的。

我们发现这个模型的检测肺炎的能力是超过放射科医师的平均水平的,准确率更高,出错率更低。为了比较CheXNet与之前的ChestX-ray14的成果,我们简单修正以后,让CheXNet直接通过ChestX-ray14检测所有的14种疾病,我们发现,这个模型检测14种疾病的能力比已公布的成果还要优秀。在专家放射科医师的水平上自动检测胸部X光的疾病,不仅在临床上具有巨大的优势,而且在向诊断影像专家接触不足的人群中提供医疗服务也是非常宝贵的。


2 CheXNet

2.1 问题公式化

肺炎检测任务是个二元分类器问题,当输入一个胸透X光主视图,便输出一个二元标签y ∈ {0, 1} ,分别标明了肺炎的有或者无。在训练数据集一个简单的例子中,我们优化了二进制交叉熵损失的权重:

L(X,y) = −w+·ylogp(Y=1|X) −w−·(1−y)logp(Y =0|X),

其中p(Y =i|X) 代表了网络分配标签i的概率,w+ =|N|/(|P|+|N|), 和 w− = |P |/(|P |+|N |) 中的 |P | 和 |N | 分别代表了训练集中肺炎检测成功与失败的案例数量。

2.2. 模型构建与模型训练

CheXNet是一个121层密集卷积神经网络(密集网络)(Huang etal., 2016) ,由ChestX-ray14的数据集训练而来。密集网络通过网络改善了信息流与图像梯度,使得深度网络的优化变得易于处理。我们用一个具有单输出的完全连接层替换,之后我们应用s型非线性模型。

神经网络的权重初始设定来自于ImageNet上的预训练模型(Denget al., 2009) ,这个神经网络是用亚当模型的标准参数(= 0.9 and  = 0.999) (Kingma & Ba, 2014) 进行端对端训练。我们采用规模为16的小批量来训练模型。我们使用0.001的初始学习率,当每次验证损失在某时期后达到一个稳定的水准,则衰减10倍,最终选择拥有最低验证损失的模型。

3 数据

3.1.训练集

我们所使用的ChestX-ray14数据集是Wang etal. (2017)发布的,包含了30,805个独立患者的112,120张正面X光图像。Wang etal. (2017)使用放射学报告中的自动提取方法,用多达14个不同的胸部病理学标签来标注每个图像。我们将这些确认为肺炎的图片标记为正反馈案例,其他的图片标记为负反馈案例。在肺炎检测任务中,我们将这些数据集随机分别放入训练集(28744个病人,98637张图),验证集(1672歌病人,6351张图),以及测试集(389个病人,420张图)。每个数据集合之间没有病人是重复的。

在将图片放入神经网络之前,我们将图像缩小至224×224,并基于ImageNet训练集的均值和标准差将其标准化。我们还通过随机水平翻转来增加训练数据。

3.2.测试集

我们收集了胸透X光的420张正面胸部x射线图片作为测试集。注释是从斯坦福大学的四位执业放射科医师分别独立获得,他们曾参与标记Wang et al(2017)的14种病理,这四个放射研究者分别有4、7、25和28年的经验,其中一个放射科研究者是胸部放射相关专业的合作伙伴。放射研究者没有权利知道数据中的任何病人信息以及疾病流行的知识。标签被标准化的数据输入程序。

4 CheXNet VS. 放射科医师

4.1. 比较

我们基于检测肺炎任务的测试集,以评估放射线研究者的专业水平。回想测试集每张图片都有来自不同临床放射研究者最真实的判断标签。我们通过使用其他三名放射科医生的多数票座位基础事实来评估一名放射科医师的表现。同样,我们使用四名放射科医师中的三名的多数票评估CheXNet ,重复四次以覆盖三组。

我们将CheXNet与放射科医师的ROC曲线进行比较,该曲线将模型灵敏度与1-特异性进行比较。图二显示了ROC曲线模型与四名放射科医师的平均操作点,每个放射研究者用橙色标记,四个放射研究者的平均水平用绿色标记。CheXNet输出胸部x射线检测肺炎的概率。ROC曲线是通过改变分类边界的阈值绘制的。CheXNet在测试集的AUROC为0.828。每个放射科医师的灵敏度-特异性点和平均值都低于ROC曲线,意味着CheXNet检测肺炎的能力是匹配甚至超越放射科医师。

4.2.局限性

我们从对比中确定了三种局限性。第一,模型和放射科医师都不允许去使用先前的检查或患病历史,这已被证明会使放射科医师的诊断准确度下降(Berbaum et al., 1985; Potchen et al., 1979)。第二,在诊断时只向放射科医师和模型提供正面x光图,但是实验证明,高达15%的准确诊断需要横向观察(Raoof et al., 2012),因此我们认为这样的设置只能提供一个保守的专业水平估计。第三,由于模型与放射科医师都不允许使用病史,这已被证明可以减少放射科医师在解释胸片方面的诊断能力(比如,如果一个肺部异常,有发烧和咳嗽史,这时候诊断为肺炎是合适的,而不是诊断为一些专有名词如浸润性肺炎)(Potchen et al., 1979).

image.png

表1.ChexNet 胜过了ChestX-ray14数据集中所有14种病变的最佳发表结果。在检测肿块,肺结核,肺炎和气肿时,ChexNet 与先前的技术水平相比具有>0.05的AUROC余量。

5 ChexNet  VS. 以往技术——基于ChestX-ray14数据集

我们通过三个变化来扩展算法以分类多重胸部病变。首先,ChexNet不是仅输出一个二进制标签,而是输出包含多个二进制标签的向量t,用以显示以下14个病理种类是否存在:肺扩张不全,心脏肿大,肺积液,浸润性肺炎,肿块,肺结核,肺炎,气胸,巩固性肺炎,浮肿,肺气肿,纤维化,胸膜增厚,疝气。其次,我们用一个完全连接层来代替ChexNet中的最终完全连接层,产生一个14维的输出,之后我们使用非线性神经元S型函数。最终输出是每种病理存在的预测概率。第三,我们修改损失函数以优化未加权的二进制交叉熵损失的总和。

image.png

其中是图像包含病理c的预测概率,是图像不包含病理c的预测概率。

我们随后将ChestX-ray14(Wang et al.,2017; Yao et al.,2017)的工作随机分为训练集(70%),验证集(10%)和测试集(20%)。我们确保分组之间没有病人重叠。我们将模型每组的AUROC与 先前来自Yao et al. (2017)的13组,以及Wang et al. (2017)的1组的工作做了比较。

我们发现ChexNet在所有14个病理学类别上都表现出了最佳效果。表1说明了测试集中每组AUROC的比较。关于肿块,肺结核,肺炎和肺气肿,我们大大超过了先前的技术水平(>0.05的AUROC增量)

6 模型解释

为了解释神经网络的预测,我们还使用类激活映射(CAMs)((Zhou et al., 2016).)生成热图从而可视化图像的最具执行性区域。为了生成CAMs,我们将图像馈送到完全训练的网络中,并提取由最终卷积层输出的特征图。令f_k为第k个特征图,令w_(c,k)为特征图k指向病理c的最终分类层权重。通过使用关联权重特征图的加权和,我们获得了用于分类病理c的最显着的特征图M_c。

image.png

形式上,通过放大M_c至图片尺寸并覆盖图像,我们确定了模型预测病理

推荐 0
本文由 datakong 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册