当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > 视网膜图像分类的深度集成学习算法

视网膜图像分类的深度集成学习算法

来源:51CTO.COM 2023-04-26 11:33:10 0浏览 收藏

小伙伴们有没有觉得学习科技周边很有意思?有意思就对了!今天就给大家带来《视网膜图像分类的深度集成学习算法》,以下内容将会涉及到,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!

译者 | 朱先忠

审校 | 孙淑娟

视网膜图像分类的深度集成学习算法

图1:原作者自己设计的Iluminado项目的封面

2019年世界卫生组织估计,全球共有约22亿视力障碍者,其中至少有10亿人本可以预防或仍在治疗。就眼部护理领域而言,全世界面临许多挑战,包括预防、治疗和康复服务的覆盖面和质量不平等。缺乏训练有素的眼部护理人员,眼部护理服务与主要卫生系统的整合也很差。我的目标是激发人们的行动来共同应对这些挑战。本文中展示的项目是我目前正在进行的数据科学顶峰项目Iluminado的一部分。

Capstone项目的设计目标

我创建本文项目的目的是想训练一个深度学习集成模型,最终实现该模型对于低收入家庭来说非常容易获得,并且可以以低成本执行初始疾病风险诊断。通过使用我的模型程序,眼科医生就可以根据视网膜眼底摄影确定是否需要立即进行干预。

项目数据集来源

OphthAI提供了一个名为视网膜眼底多疾病图像数据集(Retinal Fundus Multi-Disease Image Dataset,简称“RFMiD”)的公共可用图像数据集,该数据集包含3200张眼底图像,这些图像由三台不同的眼底相机拍摄,并由两名资深视网膜专家根据已裁决的共识进行注释。

这些图像是从2009-2010年期间进行的数千次检查中提取的,既选择了一些高质量的图像也包含不少低质量的图像,从而使数据集更具挑战性。

数据集共分为三个部分,包括训练集(60%或1920张图像)、评估集(20%或640张图像)和测试集(20%和640张)。平均而言,训练集、评估集和测试集中的患有疾病的占比分别为60±7%、20±7%和20±5%。该数据集的基本目的是解决日常临床实践中出现的各种眼部疾病,共确定了45类疾病/病理。这些标签可以分别在三个CSV文件中找到,它们是RFMiD_Training_Labels.CSV、RFMiD_Validation_Labels.SSV和RFMiD_Testing_Labels.CSV。

图像来源

下面这张图是用一种被称为眼底照相机的工具拍摄的。眼底照相机是一种专门的低倍显微镜,连接在一台闪光照相机上,用来拍摄眼底,即眼睛后部的视网膜层。

现在,大多数眼底照相机都是手持式的,因此患者只需直视镜头。其中,明亮的闪光部分表示已拍摄眼底图。

手持摄像机是有其优点的,因为它们可以被携带到不同的位置,并且可以容纳有特殊需求的患者,例如轮椅使用者。此外,任何接受过所需培训的员工都可以操作摄像头,从而能够使服务水平低下的的糖尿病患者可以快速、安全、高效地进行年度检查。

眼底视网膜成像系统拍照情况:

视网膜图像分类的深度集成学习算法

图2:基于各自视觉特征拍摄的图像:(a)糖尿病视网膜病变(DR)、(b)老年性黄斑变性(ARMD)和(c)中度霾(MH)。

最终诊断在哪里进行?

最初的筛查过程可以通过深度学习来辅助,但最终诊断由眼科医生使用裂隙灯检查进行。

这一过程也被称为生物显微镜诊断,它涉及对活细胞的检查。医生可以进行显微镜检查,以确定病人的眼睛是否出现任何异常。

视网膜图像分类的深度集成学习算法

图3:裂隙灯检查图示

深度学习在视网膜图像分类中的应用

与传统的机器学习算法不同,深度卷积神经网络(CNN)可以使用多层模型的办法实现从原始数据中自动提取和分类特征。

最近,学术界发表了大量文章,都是有关使用卷积神经网络(CNN)来识别各种眼部疾病的,如糖尿病视网膜病变和结果异常(AUROC>0.9)的青光眼等。

数据指标

AUROC分数将ROC曲线汇总为一个数字,该数字描述了模型在同时处理多个阈值时的性能。值得注意的是,AUROC分数为1代表是一个完美的分数,而AUROC得分为0.5对应于随机猜测。

视网膜图像分类的深度集成学习算法

图4:ROC曲线示意图展示

所用方法——交叉熵损失函数

交叉熵通常在机器学习中用作损失函数。交叉熵是信息理论领域的一种度量,它建立在熵定义的基础上,通常用于计算两个概率分布之间的差异,而交叉熵可以被认为是计算两个分布之间的总熵。

交叉熵也与逻辑损失有关,称为对数损失。尽管这两种度量方法来自不同的来源,但当用作分类模型的损失函数时,这两种办法计算的数量相同,可以互换使用。

(有关具体详情,请参考:https://machinelearningmastery.com/logistic-regression-with-maximum-likelihood-estimation/)

什么是交叉熵?

交叉熵是给定随机变量或事件集的两个概率分布之间差异的度量。您可能还记得,信息量化了编码和传输事件所需的位数。低概率事件往往包含更多的信息,而高概率事件则包含较少的信息。

在信息论中,我们喜欢描述事件的“惊讶”。事件发生的可能性越小,就越令人惊讶,这意味着它包含了更多的信息。

  • 低概率事件(令人惊讶):更多信息。
  • 高概率事件(不足为奇):信息较少。

在给定事件P(x)的概率的情况下,就可以为事件x计算信息h(x),如下所示:

h(x) = -log(P(x))

视网膜图像分类的深度集成学习算法

图4:完美的插图(图片来源:Vlastimil Martinek)

熵是从概率分布中传输随机选择的事件所需的比特数。偏态分布具有较低的熵,而事件具有相等概率的分布一般具有较大的熵。

视网膜图像分类的深度集成学习算法

图5:目标与预测概率之比的完美说明(图片来源:Vlastimil Martinek)

偏态概率分布具有较少的“意外”,反过来也具有较低的熵,因为可能的事件占主导地位。相对来说,平衡分布更令人惊讶,而且熵更高,因为事件发生的可能性相同。

  • 偏态概率分布(不足为奇):低熵。
  • 平衡概率分布(令人惊讶):高熵。

熵H(x)可以针对具有x个离散状态中的一组x的随机变量及其概率P(x)计算,如下图所示:

视网膜图像分类的深度集成学习算法

图6:多级交叉熵公式(图片来源:Vlastimil Martinek)

多类别分类——我们使用多分类交叉熵——属于交叉熵的一种具体应用情形,其中的目标采用的是单热编码向量方案。(有兴趣的读者可参考Vlastimil Martinek的文章)

视网膜图像分类的深度集成学习算法

图7:熊猫和猫损失计算的完美分解图(图片来源:Vlastimil Martinek)

视网膜图像分类的深度集成学习算法

图8:损失值的完美分解图1(图片来源:Vlastimil Martinek)

视网膜图像分类的深度集成学习算法

图9:损失值的完美分解图2(图片来源:Vlastimil Martinek)

视网膜图像分类的深度集成学习算法

图9:关于概率和损失的可视化展示(图片来源:Vlastimil Martinek)

二元交叉熵怎么样?

视网膜图像分类的深度集成学习算法

图10:分类交叉熵公式图解(图片来源:Vlastimil Martinek)

在我们的项目中选择使用了二元分类——二元交叉熵方案,即目标为0或1的交叉熵方案。如果我们将目标分别转换为[0,1]或[1,0]的热编码向量方式并进行预测,那么我们就可以使用交叉熵公式来进行计算。

视网膜图像分类的深度集成学习算法

图11:二元交叉熵计算公式图解(图片来源:Vlastimil Martinek)

使用非对称损失算法处理不平衡数据

在一个典型的多标签模型环境中,数据集的特征可能存在不成比例数量的正标签和负标签的情况。此时,数据集倾向于负标签的这种趋势对于优化过程具有主导性影响,并最终导致正标签的梯度强调不足,从而降低预测结果的准确性。

这也正是我当前选用的数据集所面临的情况。

本文项目中采用了BenBaruch等人开发的非对称损失算法(参考图12),这是一种解决多标签分类的方法,不过其中的类别也存在严重不平衡分布情形。

我想到的办法是:通过不对称地修改交叉熵中的正负分量,从而减少负标签部分的权重,最终实现突出上述处理起来较为困难的正标签部分的权重。

视网膜图像分类的深度集成学习算法

图12:非对称多标签分类算法(2020,作者:Ben-Baruch等)

待测试的体系架构

总体归纳一下,本文项目使用了如图所示的体系架构:

视网膜图像分类的深度集成学习算法

图13(图片来源:Sixu)

上述架构所采用的关键算法主要包括:

  • DenseNet-121
  • InceptionV3
  • Xception
  • MobileNetV2
  • VGG16

另外,上述有关算法有关内容一定会在我完成本文Capstone项目后加以更新!有兴趣的读者敬请期待!

译者介绍

朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。

原文标题:Deep Ensemble Learning for Retinal Image Classification (CNN),作者:Cathy Kam

到这里,我们也就讲完了《视网膜图像分类的深度集成学习算法》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于深度学习,集成模型的知识点!

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
GNN的基础、前沿和应用GNN的基础、前沿和应用
上一篇
GNN的基础、前沿和应用
2022出圈的ML研究:爆火的Stable Diffusion、通才智能体Gato,LeCun转推
下一篇
2022出圈的ML研究:爆火的Stable Diffusion、通才智能体Gato,LeCun转推
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    508次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 可图AI图片生成:快手可灵AI2.0引领图像创作新时代
    可图AI图片生成
    探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
    16次使用
  • MeowTalk喵说:AI猫咪语言翻译,增进人猫情感交流
    MeowTalk喵说
    MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
    17次使用
  • SEO标题Traini:全球首创宠物AI技术,提升宠物健康与行为解读
    Traini
    SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
    18次使用
  • 可图AI 2.0:快手旗下新一代图像生成大模型,专业创作者与普通用户的多模态创作引擎
    可图AI 2.0图片生成
    可图AI 2.0 是快手旗下的新一代图像生成大模型,支持文本生成图像、图像编辑、风格转绘等全链路创作需求。凭借DiT架构和MVL交互体系,提升了复杂语义理解和多模态交互能力,适用于广告、影视、非遗等领域,助力创作者高效创作。
    23次使用
  • 毕业宝AIGC检测:AI生成内容检测工具,助力学术诚信
    毕业宝AIGC检测
    毕业宝AIGC检测是“毕业宝”平台的AI生成内容检测工具,专为学术场景设计,帮助用户初步判断文本的原创性和AI参与度。通过与知网、维普数据库联动,提供全面检测结果,适用于学生、研究者、教育工作者及内容创作者。
    35次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码