论文笔记-An Ensemble of Fine-Tuned Convolutional Neural Networks for Medical Image Classification

An Ensemble of Fine-Tuned Convolutional Neural Networks for Medical Image Classification

  • 期刊:IEEE Journal of Biomedical and Health Informatics

  • 作者:Kumar, Ashnil Kim, Jinman Lyndon, David Fulham, Michael Feng, Dagan

  • 贡献

    • 提出医疗图像分类的新方法: 结合不同CNN
      • 既能区分差异巨大的类,也能区分差异较小的类

0 摘要

  • 各种医疗数据增加 和 CV的发展 给 图像诊断, 教学, 生物研究提供了机会
  • 不同形式的图像 在内容和语义差异巨大, 因此 识别图像形式是第一步
  • 识别图像的形式(modality) 难点在于 不同形式(modality)的视觉特点:有些差异巨大, 有些只有微小差异

The key challenge for automatically classifying the modality of a medical image is due to the visual characteristics of different modalities: some are visually distinct while others may have only subtle differences.

  • 这些难点来自于:
    • 外观差异大的疾病图像缺失
    • 对某些形式缺少足够的训练数据
  • 提出医疗图像分类的新方法: 结合不同CNN
    • 假设不同CNN学到不同图像表示, 因此结合不同CNN能够提取更高质量的特征
    • 通过在自然图像上预训练, 提出一个新的特征提取器
    • 这些特征用于训练大量分类器, 然后将这些分类器的输出概率融合用于预测未知图像
  • 实验:
    • 数据集。。
    • 微调CNN取得更高精度

1 引言

  • 数据的增加,给研究提供了机会, 但是大多是没有标签的数据
  • 识别图像形式(modality)是图像分类的基础, 因为不同形式的图像的内容和语义差很多
    • 识别图像形式主要困难在于:
      • 某些形式差异巨大,某些形式很相似
      • 外观差异大的图像缺失
  • 目前的解决方法是:手工标记更多数据, 但是这对人力要求很高
  • 不同的框架能够学习到不同的特征:
    • 浅层网络学到通用特征, 无法获取图片的细微差异
    • 深层网络对细微差异高度敏感,无法提取到图片普通的相似点
  • 本文提出用组装不同CNN的方法 对 图像形式分类
    • 预训练微调 解决数据不平衡问题

2 相关工作

  • CNN
  • ImageNet
  • GPU
  • GOOGLeNet
  • ResNet
  • CNN的性能是最好的,如果有大型数据集
    • 小的数据集会导致CNN过拟合
  • 迁移学习
  • 迁移学习学到的特征 无法反映医疗图像的本质
  • 微调

3 方法

3.1 概述

image-20201116080938006

  • 每个CNN有两个任务:
    • 提取特征训练SVM
    • 作为一个分类器,输出概率
  • 采用不同CNN:
    • AlexNet
    • GoogLeNet
    • 选择这两个是因为,已有的工作已经证明这两个网络在医学图像上有很好的性能
  • 采用两种分类器:
    • softmax
    • 1vs1 多分类 SVM

3.2 CNN微调

  • 在ImageNet上预训练

  • 损失函数

    image-20201116081737446

  • 梯度下降

    image-20201116091726186

  • 训练错误

    image-20201116091913586

    • 训练50个epoch已达到平缓

3.3 超参数微调

  • epoch =50 (理由如上)
  • batch size,b=256, 取决于显存
  • 学习率,η=5*10^(-6), 根据之前工作, 经验性的决定
  • 动量, α=0.9
  • 正则化项,λ=1

3.4 集成设计

  • 由以下分类器组成:
    • 微调AlexNet+softmax
    • 微调GoogLeNet+softmax
    • AlexNet提取特征+ 1vs1 多分类SVM + PCA
    • GoogLeNet提取特征+ 1vs1 多分类SVM + PCA
    • AlexNet&GoogLeNet提取特征 + 1vs1 多分类SVM+PCA
  • 1vs1 SVM 强化区分差异小的类别
  • 概率合成image-20201116093337847
    • Pi,k(m)是第i张裁剪图片(形式为m) 用第k个分类器得到的概率

4 实验

4.1 实验准备

  • 对比方法
    • 迁移学习CNN + 多分类SVM
    • 微调CNN + softmax
    • 微调CNN + 多分类SVM
  • 用AlexNet和GoogLeNet作为CNN, 性能指标 top1 和 top5
  • 对比了ImageCLEFt 2016的其他方法
  • 测试了我们的CNN 对不平衡数据集的分类能力

4.2 结果

  • image-20201116094436020

    • top1 acc

      结果现象 原因分析
      ensemble 达到最好原因 1. 微调 2. 集成多个CNN框架
      迁移学习没有取得最高的成绩 因为学到的特征不是medical-specific
      GoogLeNet比AlexNet差 更浅的网络学到更通用的特征
      softmax+ 微调,AlexNet提升0.41%, VGG下降1% softmax不是1vs1比较,对微小差异的会误分类,而SVM是1vs1比较
      微调+SVM:GoogLeNet比AlexNet提升要多 更深的网络微调时会学到更相关的特征
    • top5 acc, 比迁移AlexNet+SVM要差

      结果现象 原因分析
      ensemble比迁移AlexNet+SVM差 微调会最大化全体acc,相对会忽略对特定特征的提取能力;而迁移学习能提取更通用的特征
  • image-20201116100105752

    • 格子中的数字表示两种方法都分类正确的数量
    • 该表示为了展示集成方法和每个单独方法都高度相似
  • image-20201116100242897

    • *代表扩充了数据集
    • ensemble 微调50epoch就已经取得最好的成绩(其它CNN微调60-500epoch)
    • 比某些用了扩充数据集的方法要差
  • image-20201116192358471

    image-20201116192410549

    • 大多数类别分类正确
    • 误分类主要出现在一个组内,
    • GFIG 出现误分类 (并且不是组内误分类)是因为它是最大的一个类,并且差异最大
    • 有些类别精确度为0的原因:
      • 训练样本太少
      • 和某个类别差异太小

4.3 讨论

  • ensemble方法不仅能区分差异大的类别,也能区分差异小的类别,
    • 因为它融合了浅层网络AlexNet的general和GoogLeNet的specific
  • 微调ensemble 方法 强化了 提取相关特征的
  • 之后考虑加入ResNet

5 结论

  • 我们提出了一种ensemble CNN, 比单独的CNN要好
  • 如果有足够的数据,能够区分modality
posted @ 2020-11-16 20:09  意志  阅读(199)  评论(0)    收藏  举报