飞道的博客

使用Memory-driven Transformer生成医疗影像报告

476人阅读  评论(0)

©PaperWeekly 原创 · 作者|李东明

学校|香港中文大学(深圳)本科生

研究方向|文本生成

论文标题:

Generating Radiology Reports via Memory-driven Transformer

论文链接:

https://arxiv.org/pdf/2010.16056.pdf

代码链接(含数据集):

https://github.com/cuhksz-nlp/R2Gen/

 

主要贡献

利用医疗影像报告的特点,在 Transformer 的解码端中加入记忆模块,从而使得模型在建模全局信息的同时更好地刻画影像报告中的局部结构,提升生成的医疗影像报告的质量。

任务与挑战

医疗影像报告生成是一类特殊的图像到文本生成任务,目的是根据医疗影像(本文使用的为胸片影像)生成其诊断报告,可以视为 image captioning 在医疗领域上的应用。但是,区别于传统的 image captioning,影像报告生成的特点/挑战是一般待生成文本都较长。

传统的 image captioning 通常是生成短的句子,对图像进行简单的描述,而影像报告则是由多个句子构成的段落,一般较长,如下图所示。

为了解决影像报告长度长的挑战,现有研究方法使用了层次循环神经网络,包含句子级别循环神经网络和单词级别循环神经网络,句子级别循环神经网络用于生成每个句子的表征向量,单词级别循环神经网络用于使用每个句子的表征生成单词。

通过层级循环神经网络可以更好地建模长文本信息,从一定程度上解决长文本生成的问题。然而,它们没有很好地利用到医疗影像报告生成任务的特点。

尽管这项任务存在着这些挑战,它还是有自身的特征,医疗影像报告往往具有模式化的特点,即不同的影像报告间存在着相似的行文模式,这种模式化信息可以有效地帮助影像报告生成。

因此,作者没有使用层级循环神经网络,而是基于 Transformer 模型,引入关联记忆网络(Relational Memory,RM),从而能够使用 Transformer 建模影像报告长距离信息的同时,建模其中的模式化信息。

为了将 Relational Memory 引入到 Transformer 中,作者还提出了基于记忆的层归一化(Memory-driven Conditional Layer Normalization,MCLN),使模型达到更好的效果。

模型结构

模型上使用的是编码器-解码器框架,由三个模块构成,分别是视觉提取器、编码器和解码器。视觉提取器使用的是预训练的卷积神经网络,编码器和解码器是基于 Transformer 骨架,本文提出的创新点关注于解码器部分,编码器上使用是标准的 Transformer 编码器。

视觉编码器使用的是预训练的卷积神经网络。医疗影像经过视觉编码器后得到一个 width x height x dim 的特征,将二维图像特征 flatten 之后得到一个(width x height) x dim的序列特征作为编码器的输入。之后,编码器的输出将输入给解码器。

关于解码器部分,最自然的想法是直接用标准的 Transformer 解码器,但论文作者尝试后发现简单地使用 Transformer 不能完全解决生成报告长度短和生成内容准确性不足的问题,于是引入了 RelationalMemory 模块,改进了层归一化模块。

Relational Memory 旨在学习影像报告的模式化信息,把 Relational Memory 引入层归一化,使得影像报告生成时,用 Memory 控制 Transformer 输出特征的均值和方差,从而深度利用了影像报告的模式化信息。

Relational Memory

Memory 是一个 slots x dim 的矩阵。在生成的过程中,每次生成一个字时,Memory 需要用上一时刻生成的字进行更新。具体更新规则如下:

给定上一时刻的 Memory 以及上一时刻生成的字的词向量 ,它们将输入给多头注意力(Multi-head Attention,MhA),具体而言, 作为 MhA 的 query, 拼接起来作为 MhA 的 key 和 value。MhA 的残差结果 Z 经过一个多层感知机(Multi-layer Perceptron,MLP)得到更新的记忆

与 RNN 相似,由于 Memory 每一步都要更新,于是加入了门机制来防止梯度消失或梯度爆炸。门机制由遗忘门和输入门构成。 在 tanh 变换后,其中每个 slot 和 分别经过两个线性变换后相加,最终通过 sigmoid 函数得到遗忘门和输入门各自的值,遗忘门和输入门分别与 按位相乘后相加,得到下一时刻的记忆

Memory-driven Conditional Layer Normalization (MCLN)

MCLN 的目的是把 Memory 引入解码器中,影响解码过程。理论上不一定要使用 MCLN。论文作者尝试过将 Memory 与标准 Transformer 的解码器的输出进行拼接,性能也有所提升。MCLN 的思想与图像领域上的条件批归一化(Conditional Batch Normalization,CBN)相似,利用条件控制归一化操作中的条件和方差。

具体过程如下:

每一时刻的记忆 将展开成向量 ,之后经过线性变化获得归一化层中的标准差和均值的偏差值 ,这个偏差值将会附加于模型原本的标准差和均值上, γ β β β ,最后 MCLN 输出的归一化特征为

实验结果与分析

本文进行了消融实验以验证关联记忆网络和记忆条件归一化的性能,其结果如图所示。从实验结果可以看出,不管是记忆关联网络还是记忆条件归一化都是提升模型性能的重要因素。将 Memory 通过 MCLN 的方式引入解码器的效果比简单的拼接有明显的提升,这说明了通过 MCLN 将 Memory 引入解码器的方式是有效的。

本文模型与先前工作比较的结果。在两个医疗影像报告生成数据集中,该医疗影像报告生成方法都表现出良好的性能和鲁棒性,优于以前的方法。

 

更多阅读

 

#投 稿 通 道#

 让你的论文被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。

???? 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志

???? 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通

????

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

关于PaperWeekly

PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


转载:https://blog.csdn.net/c9Yv2cf9I06K2A9E/article/details/114695686
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场