使用深度神经网络对肿瘤图像进行分类

简介: 使用 Inception-v3 深度神经网络对可能不适合内存的多分辨率全玻片图像 (WSI) 进行分类。用于肿瘤分类的深度学习方法依赖于数字病理学,其中整个组织切片被成像和数字化。生成的 WSI 具有高分辨率,大约为 200,000 x 100,000 像素。WSI 通常以多分辨率格式存储,以促进图像的高效显示、导航和处理。

一、前言
使用 Inception-v3 深度神经网络对可能不适合内存的多分辨率全玻片图像 (WSI) 进行分类。
用于肿瘤分类的深度学习方法依赖于数字病理学,其中整个组织切片被成像和数字化。生成的 WSI 具有高分辨率,大约为 200,000 x 100,000 像素。WSI 通常以多分辨率格式存储,以促进图像的高效显示、导航和处理。
概述使用基于块的处理来训练大型 WSI 的体系结构。该示例使用迁移学习技术训练基于 Inception-v3 的网络,将各个块分类。
二、准备训练数据
按照预处理训练分类网络的多分辨率图像中的说明准备训练和验证数据。预处理示例将预处理的训练和验证数据存储保存在名为 的文件中。将变量的值设置为文件所在的位置。将定型和验证数据存储加载到变量中。

三、设置用于迁移学习的 Inception-v3 网络层
此示例使用 Inception-v3 网络,这是一个卷积神经网络,在 ImageNet 数据库中的 3 多万张图像上进行训练 [48]。该网络有 1 层深,可以将图像分类为 000,<> 个对象类别,例如键盘、鼠标、铅笔和许多动物。

inceptionv3(深度学习工具箱)函数返回一个预先训练的 Inception-v3 网络。Inception-v3 需要 Inception-v3 Network 的深度学习工具箱模型支持包。如果未安装此支持包,则该函数将提供下载链接。

网络的卷积层提取图像特征。最后一个可学习层和最后一个分类层使用图像特征对输入图像进行分类。这两个图层包含有关如何将要素组合到类概率、损失值和预测标签中的信息。要重新训练预训练网络以对新图像进行分类,请将这两个层替换为适应新数据集的新层。
此示例的目标是在两个类,为两个类创建新的全连接图层。将最终的全连接层替换为新层。为两个类创建新的分类图层。将最终分类图层替换为新图层。

三、指定训练选项
使用均方根传播 (RMSProp) 优化训练网络。使用深度学习工具箱指定 RMSProp 的超参数设置。
减少到一个小数字,因为大量的训练数据使网络能够更快地实现收敛。根据您的可用 GPU 内存指定。虽然较大的小批量大小可以使训练更快,但较大的大小会降低网络的泛化能力。设置为 以防止完全读取训练数据以计算规范化统计信息。

四、训练网络或下载预训练网络
默认情况下,此示例使用帮助程序函数下载已训练分类网络的预训练版本。预训练网络可用于运行整个示例,而无需等待训练完成。

五、下载测试数据
Camelyon16测试数据集由130个WSI组成。这些图像具有正常组织和肿瘤组织。每个文件的大小约为 2 GB。要下载测试数据,请访问Camelyon17网站,然后单击第一个“CAMELYON16数据集”链接。打开“测试”目录,然后按照以下步骤操作。

六、预处理测试数据
创建阻止的映像对象以管理测试映像。获取测试映像的文件名。然后,创建管理测试图像的阻止映像对象数组。每个对象都指向磁盘上的相应映像文件。
创建组织面膜,为了有效地处理WSI数据,请为每个测试图像创建一个组织掩模。此过程与用于预处理正常训练图像的过程相同。组织面膜只有一个级别,并且足够小以适合记忆。使用帮助程序功能在图像浏览器应用程序中显示组织蒙版。
1.png

预处理肿瘤地面真相图像。指定肿瘤掩膜的分辨率级别。

七、预测肿瘤概率的热图
使用经过训练的分类网络预测每个测试图像的热图。热图给出了每个块属于该类的概率分数。该示例对每个测试映像执行以下操作以创建热图:
可视化热图,选择要显示的测试图像。在图形的左侧,使用帮助程序函数将地面实况边界坐标显示为手绘 ROI。此帮助程序函数作为支持文件附加到示例。正常区域(用绿色边界显示)可以发生在肿瘤区域(用红色边界显示)内。
在图的右侧,显示测试图像的热图。链接轴并放大到感兴趣区域。
2.png

八、在特定阈值下对测试图像进行分类
要将块分类,请对热图概率值应用阈值。选择一个阈值概率,高于该阈值的块被分类为 .理想情况下,您将使用验证数据集上的受试者工作特征 (ROC) 或精度-召回率曲线来计算此阈值。对每个测试图像中的块进行分类,并使用应用函数和帮助程序函数定义的处理操作计算混淆矩阵。
计算所有测试图像的全局混淆矩阵。显示归一化全局混淆矩阵的混淆图。WSI图像中的大多数块都是正常组织的,导致高比例的真阴性预测。

3.png

可视化分类结果
将真实 ROI 边界坐标与分类结果进行比较。在图形的左侧,将地面实况边界坐标显示为手绘 ROI。在图的右侧,显示测试图像,并根据混淆矩阵在每个块上叠加颜色。将真阳性显示为红色,将误报显示为青色,将漏报显示为黄色,将真阴性显示为无色。

假阴性和假阳性出现在肿瘤区域的边缘,这表明网络难以对具有部分类的块进行分类。
4.png

注意:为了减少肿瘤周边的分类误差,您可以使用较少的同质块重新训练网络。预处理训练数据集的块时,请减小名称-值参数的值。

九、使用 AUC-ROC 曲线量化网络预测
使用帮助程序函数计算不同阈值下的 ROC 曲线值。计算曲线下面积 (AUC) 指标。该指标返回 [0, 1] 范围内的值,其中 1 表示完美的模型性能。此数据集的 AUC 接近 1。您可以使用 AUC 微调训练过程。
5.png

目录
相关文章
|
15天前
|
网络协议
计算机网络的分类
【10月更文挑战第11天】 计算机网络可按覆盖范围(局域网、城域网、广域网)、传输技术(有线、无线)、拓扑结构(星型、总线型、环型、网状型)、使用者(公用、专用)、交换方式(电路交换、分组交换)和服务类型(面向连接、无连接)等多种方式进行分类,每种分类方式揭示了网络的不同特性和应用场景。
|
13天前
|
机器学习/深度学习 Serverless 索引
分类网络中one-hot的作用
在分类任务中,使用神经网络时,通常需要将类别标签转换为一种合适的输入格式。这时候,one-hot编码(one-hot encoding)是一种常见且有效的方法。one-hot编码将类别标签表示为向量形式,其中只有一个元素为1,其他元素为0。
26 3
|
2月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
79 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
26天前
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习入门案例:运用神经网络实现价格分类
深度学习入门案例:运用神经网络实现价格分类
|
14天前
|
存储 分布式计算 负载均衡
|
14天前
|
安全 区块链 数据库
|
26天前
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
|
2月前
|
机器学习/深度学习 自然语言处理 计算机视觉
用于图像和用于自然语言的神经网络区别
主要区别总结 数据结构:图像数据是二维像素矩阵,具有空间结构;文本数据是一维序列,具有时间结构。 网络架构:图像处理常用CNN,注重局部特征提取;自然语言处理常用RNN/LSTM/Transformer,注重序列和全局依赖。 操作单元:图像处理中的卷积核在空间上操作;自然语言处理中的注意力机制在序列上操作。
22 2
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
深度学习实践:构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行分类
本文详细介绍如何使用PyTorch构建并训练卷积神经网络(CNN)对CIFAR-10数据集进行图像分类。从数据预处理、模型定义到训练过程及结果可视化,文章全面展示了深度学习项目的全流程。通过实际操作,读者可以深入了解CNN在图像分类任务中的应用,并掌握PyTorch的基本使用方法。希望本文为您的深度学习项目提供有价值的参考与启示。
|
3月前
|
算法 前端开发 数据挖掘
【类脑智能】脑网络通信模型分类及量化指标(附思维导图)
本文概述了脑网络通信模型的分类、算法原理及量化指标,介绍了扩散过程、路由协议和参数模型三种通信模型,并详细讨论了它们的性能指标、优缺点以及在脑网络研究中的应用,同时提供了思维导图以帮助理解这些概念。
44 3
【类脑智能】脑网络通信模型分类及量化指标(附思维导图)

热门文章

最新文章