赞
踩
最近在调研医疗图像领域关于模态缺失数据的处理。整理了一些文章的思路写了一篇博客。
主要是使用CycleGAN代表的域到域转换算法。在数据层面或特征层面用已有数据还原缺失数据。
文章的主要思想:
K表示模态数量,l表示feature-map的id(back-end部分最后的特征通道数),最后所有特征拼接起来进行解码。
这篇文章主要提出了以下方法:
参考U-Net的结构,不同模态拥有独立的编码器,之间采用仅仅在decoder处使用相加方式fusion(decoder部分的skip-connection让深层信息分别和不同模态的skip信息融合,然后相加),不同层次设有辅助分割结果,用来迫使不同层次学习到不同的特征。
生成对抗损失:一种用于让模型在模态缺失情况下生成相似特征的损失函数。主要目标是使得模态缺失情况下的底层feature map和全模态情况下相似。方法上使用的是类似GAN的损失函数,由于模态缺失造成的融合特征的期望值下降(采用加法,直接不加缺失的模态),采取缩放方式平衡。
最终损失函数:
包括:
本文提出了一种用于核磁图像生成的网络结构,能够自动用现有的模态还原缺失的模态。网络也是基于自编码器的,无监督的。
基于自编码器的结构,fusion方式原文采用的是max方式,在特征空间的各个位置选择max的值。作者认为这种方式训练的模型在缺失模态的情况下至少也会比只是用单一模态要好。也可以考虑结合均值fusion等。
作者确保modality-invariant的方法主要是在损失函数上,文章认为要做到modality-invariant,模型的目标需要有:
每个模态encode后的特征需要能够尽可能精确还原出该模态的原始图像(MAE表示mean absolute error)。
各个模态encode后的特征之间在欧氏距离上应该尽可能接近。
经过fuse后的特征应该能够尽可能还原出各个模态的原始图像。
本文在多模态任务中提出和测试使用了多种无监督的跨模态特征学习方式,在医疗影像中获得了很好的结果。
不同模态经过各自encoder后获得feature,在各个模态之间取平均值。该平均值又在各个模态的decoder中还原出原始输入。类似auto-encoder的无监督学习方式。
整体损失函数如下:
对各个模态求平均不足以使得模型学习到好的跨模态特征,因为模型可能会把不同模态的数据用于求解固定的特征,无法做到解耦。
该方法通过为损失函数添加项,要求各个模态的feature靠近平均值。直接使用mse来进行距离度量。
为了防止similarity损失通过减小特征的绝对值来完成,需要进行normalization。
为了防止模型通过disable某一部分的特征来使得不同的特征出现较大差异,将每一个模态的特征进行normalization到均值0方差1。
训练分类器进行拟合:
same-modality:学习和验证的特征来自于同一个模态。
cross-modality:学习和验证的特征来自于不同模态。
可以看到这些方法确实提高了效果。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。