摘要

由Image/Video Captioning、VQA等图像理解任务的不断往前发展,以及目前智能医疗的兴起,有些学者自然而然地想到图像理解是否可以应用到医学领域,因此根据CT、核磁等图像自动生成诊断报告(病例),这个任务被提了出来。

2018年是医学报告生成任务的兴起年,截止到目前,总共有4篇医学诊断报告生成的文章被发表在各个领域的顶级会议上。

美国NIH吕乐(现在好像去英伟达了)课题组的王潇崧[1]等学者在今年的顶会CVPR上投了一篇文章TieNet Text-Image Embedding Network for Common Thorax Disease Classification and Reporting in Chest X-rays

美国CMU的Baoyu Jing[2]等学者(智能医疗公司Petuum)在今年的NLP顶级会议ACL上发表了一篇文章On the Automatic Generation of Medical Imaging Reports

同样由美国CMU的Christy Y. Li[3]等学者在今年NIPS上发表了一篇文章Hybrid Retrieval-Generation Reinforced Agent for Medical Image Report Generation。他还在2019年AAAI上发表了一篇文章Knowledge-driven Encode, Retrieve, Paraphrase for Medical Image Report Generation

美国宾夕法尼亚大学的Yuan Xue[4]等学者在今年医学顶会MICCAI上发表了一篇文章Multimodal Recurrent Model with Attention for Automated Radiology Report Generation

正文

下面介绍一下各个论文的模型,主要是基于编码器-解码器结构。

1. TieNet[1]

Xiaosong Wangl et al,TieNet Text-Image Embedding Network for Common Thorax Disease Classification and Reporting in Chest X-rays, CVPR 2018

模型

这篇论文的任务是对胸腔常见疾病的分类和诊断报告的生成,实际上主要是多标签分类。这篇论文的框架既可以当作由报告预测常见疾病(文本分类)、由CT图像预测常见疾病(图像分类)以及使用报告和图像预测疾病(Text-Image Embedding);而且还可以用Class Activations辅助生成Saliency Map用来检测出疾病的位置,以及根据CT图像生成诊断报告。因此,这篇论文可以看作是多标签分类+目标检测+生成医学报告的多任务模型,当然核心是分类任务预测疾病标签。

论文框架是根据输入的CT图像和报告文本,先用pretrain好的CNN(如ResNet)提取图像特征,然后经过一个额外的Transition Layer得到D∗D∗CD*D*CDDC的feature maps XXX。接着采用Attention机制经过RNN对报告文本编码得到text embedding X‾AETE\overline{X}_{AETE}XAETE; 然后采用Saliency Weighted Global Average Pooling得到蕴含文本信息的image embedding X^SW−GAP\hat{X}_{SW-GAP}X^SWGAP。最后根据image和text embeddin预测疾病的标签。

论文模型的损失函数是多标签分类的交叉熵损失和RNN的生成报告的交叉熵损失。

实验


根据AUC实验结果,发现只基于报告文本预测疾病标签(RRR)的结果00.9760.9760.976比只基于图像预测疾病标签(III)的结果0.7450.7450.745高很多。同时基于图像和报告文本(I+RI+RI+R)的结果0.9890.9890.989最高,但是也仅仅比只基于图像的高出1个点。因此可以发现文本分类比图像分类任务要简单很多,至少在上面Chest X-ray14、Hand-labeled和OpenI这几个胸透X光片数据集上是这样。

2.Automatic Report Generation[2]

Baoyu Jing et al, On the Automatic Generation of Medical Imaging Reports, ACL 2018

模型

这篇论文任务主要是由医学图像自动生成诊断报告,同时还可以预测标签Tags(这些Tags由医学报告文本得到,并不是简单的疾病标签,可以看作是医学报告的关键词)。论文任务可以看作文本生成+多标签分类的多任务模型,核心是生成式模型。

论文框架是根据输入的医学图像,先用在ImageNet上pretrain好的CNN(如VGG19、ResNet等)提取出图像特征(Visual Features),然后再经过一个多标签分类网络(MLC)预测出文本标签(Tags),然后选取概率最大前M个标签,根据Tag Vocabulary得到M个标签对应的word embedding 向量即语义特征(Semantic Features);接着对图像特征和语义特征使用Attention模型和Sentence LSTM得到S个context vector(这个向量同时包含图像信息和语义信息)和由Stop Control得到的控制变量(判断是否生成这句诊断报告);对每个context vector,使用Topic Genetor得到topic vector,再用Word LSTM对这个topic进行解码,生成一句诊断报告。遍历S个context vector即会生成S句诊断报告,由于Stop Control的作用,即最多生成S句。

论文框架是一个编码器-解码器结构,对生成诊断报告来说,简单理解是由CNN和Sentence LSTM编码得到若干个中间表征(如上述的topic vector),再有Word LSTM解码这个表征得到若干句诊断报告,即一个层次化的LSTM(Hierarchical LSTM)框架。由于论文框架是个多任务模型,加了预测标签的多标签网络(MLC)和判断生成句子数量的控制(Stop Control),因此看上去会复杂一些。

论文模型的损失函数是多标签分类的交叉熵损失、预测生成诊断报告句子数量的二分类的交叉熵损失和RNN生成诊断报告的交叉熵损失以及正则化损失。

实验


论文数据集是IU X-Ray胸透X光片数据集和PEIR Gross数据集。注意的是IU X-Ray数据集是(图像-诊断报告)形式,诊断报告有若干句组成,而PEIR Gross的诊断报告只有一句。实验评测指标是机器翻译领域和Image Caption领域常用的BLEU、METEOR、ROUGE、CIDER等评测标准。由实验结果来看,论文方法在IU X-Ray比Image Caption经典的模型结果高很多;但是在PEIR Gross上比Image Caption经典的模型高一点点。因为Image Caption任务的数据形式(图像-描述)中描述只有一句,且比较短。

3.Hybrid Retrieval-Generation Reinforced Agent[3]

Christy Y. Li et al,Hybrid Retrieval-Generation Reinforced Agent for Medical Image Report Generation,NIPS 2018

模型

这篇论文的主要任务是有医学图像生成诊断报告,采用了检索和强化学习混合的方法。

论文框架是根据输入的医学图像,先用pretrian好的CNN(如DenseNet、VGG19等)提取出图像特征(Visual Features),然后经过一个图像编码器(Image Encoder)得到context vector;接着用句子解码器(Sentence Decoder)对context vector进行解码得到若干个topic(代表了句子的信息);对于每个topic可以用模板库(Template Database)或者生成模式(Generation Module)进行强化学习,得到一句诊断报告。

论文框架大体上也是一种层次化RNN(Hierarchical RNN)结构,只是在解码topic生成句子的时候用强化学习选择了是用模板库检索还是用RNN生成。

实验


论文数据集都是胸透X光片数据集,只是CX-CHR是中文胸透X光片、IU X-Ray是英文。从实验结果来看,在两个数据集上都比Image Caption经典模型结果高很多点。但是在IU X-Ray数据集上,实验结果比上一篇论文Baoyu Jing[2]的低很多。值得一提的是,这两篇论文都是CMU课题组和Petuum公司的。

4.Multimodal Recurrent Model[4]

Yuan Xue et at,Multimodal Recurrent Model with Attention for Automated Radiology Report Generation,MICCAI 2018

模型

这篇论文任务是由医学图像自动生成诊断报告,采用了递归的Attention模型。

论文框架是对于输入的医学图像,使用预训练好的CNN(图像编码器Image Encoder,如ResNet等)得到图像特征(Visual Features)。接着使用RNN(语句解码器Sentence Decoder)得到诊断报告。详细流程是使用CNN的较后的全连接层的features由RNN(Sentence Decoder)生成第一句诊断报告;使用CNN最后一层卷积层的feature maps(当作医学图像各个区域的特征)和语句编码器(Sentence Encoder)编码器上一句诊断报告得到的语义特征(Semantic Features),两者使用Attention机制得到vattv_{att}vatt,再有RNN(Sentence Decoder)生成这一句诊断报告。

论文框架直观上理解就是医生第一眼观察了检查图像,得到了一句总体性描述诊断(如"No acute disease.");接着观察了图像中的心脏部位,根据上一句的总体描述,得到了第二句诊断(如"The heart is normal in size.");然后观察了图像中的肺部部位,根据上一句的心脏描述,得到了第三句诊断(如"The lungs are clear.");… …就这样一句一句,一份诊断报告被医生写了出来,当然论文这个逻辑可能并不十分贴切医生现实中下诊断的推理。

实验


论文实验结果也是在IU X-Ray这个胸透X光片数据集上,实验结果比Image Caption经典模型Vanilla CNN-RNN高很多,比层次化RNN模型Hierarchical generation差不多。

5.KERP[5]

Christy Y. Li et al,Knowledge-driven Encode, Retrieve, Paraphrase for Medical Image Report Generation,AAAI 2019

模型


这篇论文使用NLP的知识图谱技术做医学报告生成,鉴于博主对知识图谱不太了解,因此不做细说。

实验


这篇论文比较了Jing Baoyu[2]的方法CoAtt,是这篇论文自己复现的,BLEU-4结果是0.154;这篇论文还比较了作者自己另一篇论文HRGR-Agent[3]。同时比较了Captioning的CNN-RNN方法等。

总结

2018年是智能医疗的兴起年,很多智能医疗公司成立。国内比较出名的如腾讯觅影、阿里健康等,他们在一些常见疾病检测上取得了很大成功(如肺结节检测、皮肤病分割等)。但是在自动生成诊断报告上国内学者研究得较少。

对于一个智能、智慧的检测疾病并且可以下诊断的医疗系统。首先,肯定要根据检查的图像(CT、核磁等)检测出病变的位置,这是近几年很多医学影像分析的学者在做的事情,例如疾病检测(Detection)、疾病分割(Segmentation),而且进展很快。其次,这个医疗系统可以像医生一样给出诊断报告,例如今年陆陆续续有学者在做的这个医学诊断报告生成的研究。

对于检查出来的图像,如果能检测出病变位置并且可以给出诊断病例,这样是具有很大实用价值的,而且非常有意义。

目前来看,这个任务还存在许多问题

  1. 数据非常缺失,以上几片论文全是在IU X-Ray这个小规模数据集,而且现在缺少带bounding box的图像和诊断报告。
  2. 数据的不确定性,医生下的诊断会有正常(没有疾病)的描述和异常(存在疾病)的描述语句,对于正常的描述,不同的医生做诊断可能会有相似的风格;对于异常的描述,不同的医生做诊断差异很大。
  3. 诊断报告的语句次序其实没有太大关系的,举例来说,医生先说心脏正常或异常,再说肺部正常或异常,对报告的整体语义是没有太大影响的。
  4. 评测指标的不适用性,目前采用的评测指标是Machine Translation或Captioning任务的评测指标,如BLEU、CIDEr,其实这些评测指标是不符合这个任务的,原因比如前面第3条所说的。
  5. 已知论文结果的不确定性,目前的论文都没有release代码,而且它们相互之间实验结果差距很大;其次,一些论文只是单纯的用比较火的技术迁移到这个任务,含蓄的说可能或许大概是没有太大意义的,但是至少吸引了一些研究者做这个任务。

注:图像生成自然语言的论文-https://github.com/wangleihitcs/Papers
注:医学报告生成项目源码

参考文献

[1]Wang X, Peng Y, Lu L, et al. Tienet: Text-image embedding network for common thorax disease classification and reporting in chest x-rays[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 9049-9058.
[2]Jing B, Xie P, Xing E. On the automatic generation of medical imaging reports[J]. arXiv preprint arXiv:1711.08195, 2017.
[3]Li C Y, Liang X, Hu Z, et al. Hybrid Retrieval-Generation Reinforced Agent for Medical Image Report Generation[J]. arXiv preprint arXiv:1805.08298, 2018.
[4]Xue Y, Xu T, Long L R, et al. Multimodal Recurrent Model with Attention for Automated Radiology Report Generation[C]//International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, Cham, 2018: 457-466.
[5]Li C Y, Liang X, Hu Z, et al. Knowledge-driven Encode, Retrieve, Paraphrase for Medical Image Report Generation[J]. arXiv preprint arXiv:1903.10122, 2019.

医学诊断报告生成论文综述相关推荐

  1. 医学报告生成论文总结【4-24】

    医学报告生成论文总结 4-24 前言 一.Cross-modal Memory Networks for Radiology Report Generation 二.Radiology Report ...

  2. 医学报告生成论文阅读笔记

    1.Transformers in Medical Imaging: A Survey 综述了Transformers在医学图像分割.检测.分类.重建.合成.配准.临床报告生成和其他任务中的应用. S ...

  3. 2020年「21篇」医学影像算法最佳综述

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨cynthia yawain 编辑丨极市平台 本文为极市平台原 ...

  4. 大盘点 | 2020年21篇医学影像算法最佳综述

    来源:Python遇见机器学习本文约6500字,建议阅读10+分钟涵盖医学图像配准.医学图像分割.迁移学习和多模态融合等方向. 引言 在过去的一年中,计算机视觉领域出现了许多优秀的工作,并推动了相关领 ...

  5. 盘点 | 2020年「21篇」医学影像算法最佳综述

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨cynthia yawain 编 ...

  6. 大盘点 | 2020年「21篇」医学影像算法最佳综述

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨cynthia yawain 编辑丨极市平台 本文为极市平台原创整理,如需转载,请联系极市小编. ...

  7. Github热榜:2021年33篇最酷AI论文综述!多位华人作者入选

      新智元报道   编辑:小咸鱼 [新智元导读]GitHub上,有一位小哥放出了「2021年充满惊喜的人工智能论文综述」这个项目.目前,里面总结了33篇今年必看论文,堪称「良心宝藏」.这个项目仍在更新 ...

  8. 基于 U-Net 的医学影像分割算法综述

    来源:UNknown知识库 转载自新机器视觉 仅做学术分享,若侵权,请联系删文 ▍一.医学图像分割简介 医学影像分割是医学影像分析中的重要领域,也是计算机辅助诊断.监视.干预和治疗所必需的一环,其关键 ...

  9. 【专知荟萃18】目标跟踪Object Tracking知识资料全集(入门/进阶/论文/综述/视频/专家,附查看)

    原创: 专知内容组 专知 2017-11-18 点击上方"专知"关注获取专业AI知识! [导读]主题荟萃知识是专知的核心功能之一,为用户提供AI领域系统性的知识学习服务.主题荟萃为 ...

  10. Briefings in Bioinformatics2021 | 药物挖掘分子设计--生成模型综述

     原文标题:Molecular design in drug discovery: a comprehensive review of deep generative models 论文地址:Mole ...

最新文章

  1. 直播回顾|大规模点云显示技术
  2. Oracle之数据操作__分组统计查询
  3. 重置oracle 11G的system、sys密码
  4. php array_merge 与 + 区别
  5. 【2018.5.12】模拟赛之四-ssl2416 条形图【高精度,dp】
  6. Tomcat服务器性能优化
  7. 小程序 模糊查询_[轻应用小程序]如何使用信息查询功能?
  8. 最牛逼的 Java 项目实战,没有之一!
  9. 【重磅综述】长序列数据分析相关资源哪里找?一文读懂长序列测序数据分析的机遇与挑战!...
  10. 为什么volatile能保证有序性不能保证原子性
  11. delphi对比易语言_易语言转换delphi 易语言编程100例
  12. php中文网灭绝师太照片,灭绝师太照片欣赏
  13. 【R】R语言windows下连接MySQL
  14. 机器学习——K-Means聚类算法及其应用
  15. python读取svg文件_使用python创建SVG
  16. Kubernetes(K8s)优势究竟是什么?
  17. 【HDL系列】半加器、全加器和行波进位加法器原理与设计
  18. MyEclipse10 + Axis2 开发webservice
  19. 虹口区巡检机器人_5G智能巡检机器人就在身边
  20. 统计计量 :统计学公开课大盘点(附下载)

热门文章

  1. php 制作网站地图,网站地图怎么做,制作网站地图的三种实用方法
  2. python普通滑块验证码破解初级版
  3. matlab 设计 希尔伯特变换器,基于Matlab的FIR型希尔伯特变换器设计
  4. 用人话说说希尔伯特空间??
  5. 行测中图形推理题的规律
  6. matlab 固态 机械_忆捷固态硬盘怎么样(2款忆捷固态硬盘测评)
  7. XShell4 连接ubuntu时SSH服务器拒绝了密码解决办法
  8. 天线SMA处抗静电保护收发开关
  9. android activity singletask,Android必读之SingleTop、SingleTask等Activity启动方式的区别
  10. 手机扫描识别车牌,车牌识别