文献阅读(49)—— 基于Transformer青光眼预测

文献阅读(49)—— 基于Transformer青光眼预测

文章目录

  • 文献阅读(49)—— 基于Transformer青光眼预测
    • 先验知识/知识拓展
    • 文章结构
    • 文章方法
      • 1. 文章核心网络结构
      • 2. Time positional encoding
      • 3. 时间敏感性自注意力机制
      • 4. Time-Sensitive MSA
      • 5. Conditional Glaucoma Forecast Network
      • 6. 笛卡尔坐标系转为极坐标系
    • 文章结果
      • 1. SOTA比较(SIGF)
      • 2. SOTA比较(Tumor-CIFAR)
      • 3.消融实验
      • 4. Conditional Glaucoma Forecast Network
    • 总结
      • 1. 文章优点
      • 2. 文章不足
      • 可借鉴点/学习点?

GLIM-Net: Chronic Glaucoma Forecast Transformer for Irregularly Sampled Sequential Fundus Images
文献阅读(49)—— 基于Transformer青光眼预测_第1张图片
今天凌晨新鲜出炉的一篇:爱尔眼科和中科院计算所合作青光眼预测!
大致说一下背景:青光眼作为全球第二大致盲的眼病,预计2040年全球青光眼人数将增长到一亿余人,所以在青光眼前期初筛和诊断后,对预防青光眼和早期干预有重要意义。青光眼一般由医生通过眼底照来判断,现在很多研究多根据横断面数据去判断一张眼底照是否有青光眼症状,但其实更有意义的是根据纵向数据预测未来某个时间点的患病情况更有意义,因此作者使用纵向数据,数据跨度1987年到2018年来研究青光眼,达到早诊断,早发现,早干预的症状。

先验知识/知识拓展

  • 青光眼是可以致盲的!致盲率仅次于白内障!
  • 一般医生都通过眼底照判断青光眼症状
  • Transformer很吃数据,这个众所周知了的!
  • 青光眼是目前研究得相对透彻的一种眼病,不像AMD那版模糊,还不知道致病机制。
  • 一个时间序列青光眼数据集:SIGF(一共记录了264个患者1986-2018年的3671张眼底照,405个序列数据,平均每个序列9张,时间间隔从1个月13年不等)

文章结构

  • 摘要
  • introduction
  • related work
  • method★
  • experiments and results
  • conclusions

文章方法

1. 文章核心网络结构

作者在Transformer结构搭建了使用不同时间间隔预测青光眼症状的网络**[GLIM]** 。下图为GLIM的网络结构,相比传统的transformer,最明显的是:前面embedding部分使用的是卷积的方式。
文献阅读(49)—— 基于Transformer青光眼预测_第2张图片
transformer在embedding过程实际是使用多少词来表示现在这句话抑或这张图,文章使用卷积网络提取每张图片的特征作为embedding,[这篇文章中作者提取的是512维的特征向量表示每张图片。] 这样的方式在后来的消融实验中也证明是一个提升准确率的方式。

2. Time positional encoding

文献阅读(49)—— 基于Transformer青光眼预测_第3张图片
Transformer的核心是自注意力机制,其中考虑到的更加关注的是位置信息,从transformer的组成就可以看出其中有一个模块叫position embedding。但是我们要处理的数据时间序列的数据,使用前期的序列图像去预测未来某个时间段/时间点的图像状态。所以前期每张照片的时间点对我们也是一个重要的信息。所以作者增加了一个time positional encoding.其中增加的time embedding方式是使用上图的公式,可以达到2π——10000*2π的波长。使用这种方式让进入注意力机制中的每个特征都有序列信息,是模型可以学到序列信息。

3. 时间敏感性自注意力机制

  • 传统意义上的自注意力机制:
    文献阅读(49)—— 基于Transformer青光眼预测_第4张图片
    除了上面增加的time embedding模块外,考虑到时间序列的数据,由先验知识可以知道,可能时间越靠前的图像信息,对后来的病症影响是越小的。就比如存在2000年-2020年的眼底照,预测2025年患者的青光眼的症状,2000年的眼底照对2025年的影响会很小,但是2020年的眼底照一定对2025年的病症影响更大。所以,作者在自注意力机制中增加了时间因素(T)。
    引入了T矩阵,定义方式如下,其中的A,B都是可学习的。在后面消融实验中,作者找了δ的最佳值为96(8年)。其实这一步就是为了完成上面的要求,时间越远越不重要,就是给自注意力的相关性乘一个系数!
    文献阅读(49)—— 基于Transformer青光眼预测_第5张图片
    完整流程如下:
    文献阅读(49)—— 基于Transformer青光眼预测_第6张图片

4. Time-Sensitive MSA

有很多文献都证明了,多头的效果相对于一次性完整的token输入效果更加,所以在文章中作者也使用八头分开计算之后,将每个head的结果concat以后再做最后的分类。(positive & negative)
文献阅读(49)—— 基于Transformer青光眼预测_第7张图片

5. Conditional Glaucoma Forecast Network

文献阅读(49)—— 基于Transformer青光眼预测_第8张图片
相比上面的GLIM模型预测下一个阶段青光眼状况,C-GLIM模型可以用于预测未来的某一个准确的时间点的状态,而且可以预测一个甚至多个时间点的状态。
改进的地方

  • input embedding 的地方从原来的512维缩小为511维,然后concat需要预测的时间与最新的数据之间的时间差
  • encoder的输出也为511层,得到的特征与时间间隔concat作为decoder的输出,最终预测未来时间点的病症状况

6. 笛卡尔坐标系转为极坐标系

为了增大视杯视盘的结构,将笛卡尔坐标系转化为极坐标系下进行计算
文献阅读(49)—— 基于Transformer青光眼预测_第9张图片

文章结果

1. SOTA比较(SIGF)

文献阅读(49)—— 基于Transformer青光眼预测_第10张图片

2. SOTA比较(Tumor-CIFAR)

在这里插入图片描述

3.消融实验

文献阅读(49)—— 基于Transformer青光眼预测_第11张图片
文献阅读(49)—— 基于Transformer青光眼预测_第12张图片
这部分消融实验,主要针对超参数进行,因为A和B是两个可学习的变量,初始值的不同收敛的效果和速度也不同,作者控制变量找到最佳。δ最终确定为96,文中赋予96的可解释性是:96个月即8年,数据集中随访跨度超过96个月的只有4%多一点,最大的时间跨度是256个月,显然使用该值进行标准化会出现bias,毕竟只有一组或者极少数跨度为256。

4. Conditional Glaucoma Forecast Network

文献阅读(49)—— 基于Transformer青光眼预测_第13张图片
这部分,作者阐述C-GLIM可以同时预测2个甚至多个未来时间点的青光眼状况,但是可以看出预测第一个的效果还不错,但是第二个就相对不准确,猜测:第一个的错误会对后来的预测结果产生影响,即错误的迭代。
此外,如果想要模型一次输出一个预测值,需要训练的模型loss是一个数值产生的,如果还想要同时输出两个时间点的预测值,则需要重新训练,此时loss是有两个值的和产生的。——这也是使用者的不便,还存在一些不足的地方。

总结

1. 文章优点

  • 方法上还是有一些卖点的,虽然一些地方都是大家可以想到的,但是不得不说,他的设计非常巧妙
  • 因为时间因素在时间序列的预测上非常重要,所以作者在多次将时间纳入输入,中间concat。这应该给大家一些启发,如果一个因素很重要,是不是可以在前期和中间部分处理一下!加强这部分因素的信号强度
  • 其次为了验证模型的鲁棒性,在一个肿瘤验证集上做验证,这也可以给大家一点启发,有时相关的数据集不足时,可以借用其他的数据集处理。
  • 此外这个外部验证集也很有意思,它的序列数据每个序列有五张图片,都是根据第一张图片生成的,因为良性肿瘤和恶性肿瘤的进展速度不同,恶性是良性的3倍,所以该数据集使用生长率来生成后续的图片,生成式的数据也可以作为一个好的想法,大家如果没有数据,不妨试试生成式!不是时间序列可以用GAN湖畔这VAE来生成,这样不但数据有了,而且也增色不少!

2. 文章不足

  • 文章的数据量,至少临床上青光眼的数据量并不多,而且时间跨度这么久,这些时间序列的数据在拍摄过程中可能是不同的机器,像素值清晰度或许都存在差异,不知道作者有没有考虑到?但是在分析过程中,看文章的阶段,我没有看到有做处理,只是全部resize到224*224
  • 在预测多个时间点的时候,不同时间点个数需要重新训练,而且第二个预测的点误差很大,可信度不高!是不是需要改进的地方!

可借鉴点/学习点?

  • 方法的巧妙改进和数据集的使用都很值得学习!

你可能感兴趣的:(文献阅读,transformer,深度学习,人工智能,分类)