【第三周】吴恩达团队AI for Medical Diagnosis课程笔记

系列文章目录

【第一周】吴恩达团队AI for Medical Diagnosis课程笔记_十三豆腐脑的博客-CSDN博客

【第一周】吴恩达团队AI for Medical Diagnosis课程实验_十三豆腐脑的博客-CSDN博客

【第一周】吴恩达团队AI for Medical Diagnosis大作业_十三豆腐脑的博客-CSDN博客

【第二周】吴恩达团队AI for Medical Diagnosis课程笔记_十三豆腐脑的博客-CSDN博客

【第二周】吴恩达团队AI for Medical Diagnosis大作业_十三豆腐脑的博客-CSDN博客 


目录

系列文章目录

前言

1.医学图像分割

2.探索MRI数据和标签(实验)

二、图像分割

1.MRI 数据和图像配准

2.分割

3.提取一个子集(实验)

4.卷积神经网络(阅读材料)

5.2D U-Net 和 3D U-Net

6.更多关于 U-Net(可选阅读材料)

7.U-Net模型(实验)

8.用于分割的数据增强

9.用于图像分割的损失函数 

二、实际考虑

1.不同人群和诊断技术

2.外部验证

3.测量患者结果

总结


前言

到本周末,您将准备 3D MRI 数据,为图像分割实现适当的损失函数,并应用预训练的 U-net 模型来分割 3D 脑 MRI 图像中的肿瘤区域。
学习目标
1.对 3D MRI 数据执行图像分割。
2.从 3D 图像中随机抽取子样本。
3.标准化输入图像。
4.应用预训练的 U-Net 模型。
5.为模型训练实施适当的损失函数(soft dice损失)。
6.通过计算敏感性和特异性来评估模型性能。


一、探索MRI数据

1.医学图像分割

本周,您将学习构建模型,这些模型不仅能够对医学图像是否包含疾病进行分类,而且还可以勾勒出图像的哪些部分包含疾病。 这就是图像分割的任务。 图像分割在许多医学成像应用中起着至关重要的作用,例如组织大小的量化、疾病的定位和治疗计划。 我们将重温您在过去两周中学到的一些相同的想法,看看它们如何扩展到图像分割。 在本课中,我们将了解 MRI 数据和肿瘤分割。 了解 MRI 数据对于指导我们如何考虑如何表示数据以在下一课中构建分割模型非常重要。

2.探索MRI数据和标签(实验)

另写一篇

二、图像分割

1.MRI 数据和图像配准

在这个非常激动人心的课程中,您将学习如何训练和评估您的分割模型以识别 MRI 数据中的肿瘤。您将了解 UNet 架构以及我们可以用来成功训练分割模型的过程。您很快就会看到,使用 3D 医疗数据会带来一些重大挑战,您将了解一些创造性的想法来应对这些挑战。我们将首先讨论表示 MRI 数据。我们希望能够以可以输入到分割模型中的形式表示 MRI 数据。如您所见,我们的 MRI 图像不仅仅是像 X 射线那样的单个 2D 图像,而且 MRI 序列是在轴向视图中看到的 3D 体积。

这个 MRI 的平面是冠状的,而不是轴向的

此外,一个 MRI 示例将由多个序列组成,因此将由多个 3D 体积组成。我们将看看如何将这些多个 3D 体积组合成一个 3D 体积。为此,让我们从大脑中挑选一片。这是在三个不同的 MRI 序列上观察到的大脑切片。我们将用于组合来自不同序列的信息的关键思想是将它们视为不同的通道。我们可以说其中一个通道是红色,一个是绿色,一个是蓝色通道,就像我们拥有 RGB 图像的三个通道一样。表示 RGB 通道的三个通道的类比对于我们可视化如何组合通道非常有用。三号没什么特别的。使用不同通道的想法也延伸到当我们可能有四个或五个序列时,可以用四个或五个通道来表示。一旦每个序列用不同的通道表示,我们现在要做的就是将这些序列组合在一起以产生一张图像,这是所有序列的组合。对我们来说,这现在是一个 RGB 图像。对于机器来说,这些是在深度维度上堆叠的通道。组合这些序列的一个挑战是它们可能不会相互对齐。例如,如果患者在获取这些序列中的每一个之间移动,则与其他序列相比,他们的头部可能在一个序列中倾斜。如果我们组合图像时图像没有相互对齐,则红色通道中一个位置的大脑区域与绿色或蓝色通道中的同一位置不对应。那么我们如何解决这个对齐问题呢?通常用于解决此问题的预处理方法称为图像配准。图像配准的基本思想是转换图像,使它们相互对齐或配准。我们不会更详细地介绍图像配准。在作业中,您将使用已配准的图像。但是,在尝试组合 3D 体积时,了解图像配准是一种有用的工具是很有用的。

2.分割

一旦图像被配准,我们就可以组合不同的序列。我们已经看到了如何将这种技术应用于大脑的单个切片。可以将相同的想法扩展到所有切片而无需进一步复杂化。现在,有一卷具有多个通道,其中包含许多不同序列的组合信息。现在我们已经了解了如何表示 MRI 数据,让我们转向脑肿瘤分割的任务。分割是定义各种组织边界的过程。在这种情况下,我们试图定义肿瘤的边界。我们还可以将分割视为确定 3D 体积中每个点的类别的任务。 2D 空间中的这些点称为像素,3D 空间中的这些点称为体素。让我们讨论两种使用 MRI 数据进行分割的方法。第一个是 2D 方法,第二个是 3D 方法。在 2D 方法中,我们将构建的 3D MRI 体积分解为许多 2D 切片。这些切片中的每一个都被传递到一个分割模型中,该模型输出该切片的分割。以这种方式将每个切片逐个通过分割模型,从而为每个切片生成一个分割。然后可以再次组合 2D 切片以形成分割的 3D 输出体积。这种 2D 方法的缺点是在使用这种方法时我们可能会丢失重要的 3D 上下文。例如,如果一个切片中有一个肿瘤,那么与其相邻的切片中很可能有一个肿瘤。由于我们一次将一个切片传入网络,因此网络无法学习这个有用的上下文。让我们看看如何使用 3D 方法解决这个问题。


在 3D 方法中,理想情况下,我们希望将整个 MRI 体积传递到分割模型中,并为整个 MRI 获取 3D 分割图。但是,MRI 体积的大小使其无法一次将其全部传递到模型中。它只会占用太多的内存和计算量。那么我们可以做些什么来让模型仍然能够在深度维度上获取上下文信息呢?在 3D 方法中,我们将 3D MRI 体积分解为许多 3D 子体积。这些子卷中的每一个都有一些宽度、高度和深度上下文。因此,就像在 2D 方法中一样,我们现在可以一次将一个子体积输入模型,然后在最后聚合它们以形成整个体积的分割图。这种 3D 方法的缺点是我们可能仍然会丢失重要的空间上下文。例如,如果一个子体积中有一个肿瘤,那么它周围的子体积中也可能有一个肿瘤。由于我们一次将一个子卷传入网络,因此网络将无法学习这个可能有用的上下文。 3D 方法的一线希望是,我们在所有宽度、高度和深度维度上捕获了一些上下文。这涵盖了 3D 分割方法。

3.提取一个子集(实验)

另写一篇

4.卷积神经网络(阅读材料)

本课程推荐的先决条件之一是之前对卷积神经网络 (CNN) 的理解。如果您还不熟悉 CNN,您仍然可以完成本课程,因为您不会根据从单个组件构建卷积神经网络的能力来评分。
如果您想在 CNN 方面打下基础,我们建议您参加卷积神经网络课程。
为了快速复习,请注意过滤器、填充、步幅和池化层等概念。
请注意,即使您没有完整的 CNN 基础,您仍然应该能够完成本课程。在实践中,由于您通常会使用预训练模型,因此本课程将让您练习使用预训练模型。您将在模型构建和训练之前和之后实施这些步骤,例如数据准备、实施适当的损失函数以及评估模型的性能。

5.2D U-Net 和 3D U-Net

现在我们已经介绍了 2D 和 3D 分割方法,让我们深入了解分割架构。我们将从分段架构开始。我们将使用 2D 任务来构建 3D 任务的分割架构。最流行的分割架构之一是 U-Net。 U-Net 最初是为生物医学图像分割而设计的,并在细胞跟踪任务中展示了出色的结果。 U-Net 的一个很酷的地方是它可以达到相对较好的结果,即使有数百个例子。 U-Net 架构得名于 U 形。 U-Net 由两条路径组成:收缩路径和扩展路径。收缩路径是典型的卷积网络,如用于图像分类。它由重复应用卷积和池化操作组成。这里的卷积操作称为向下卷积。这里的关键是,在收缩路径中,我们的特征图在空间上变得更小,这就是为什么它被称为收缩。然后是扩展路径。在某些方面,扩张路径与收缩路径相反。它通过一系列上采样和上卷积步骤将我们的小特征图恢复到图像的原始大小。它还将每个步骤的上采样表示与收缩路径上的相应特征图连接起来。最后,在最后一步,该架构输出图像中每个像素的肿瘤概率。 U-Net 架构可以在 2D 方法中在 2D 切片的输入输出对上进行训练。我们已经介绍了用于 2D 方法的 U-Net。让我们看看当我们在 3D 方法中有 3D 子体积时我们可以做什么。如果我们可以用对应的 3D 操作替换所有 2D 操作,我们可以将任何 3D 子体积输入到分割架构中。这正是 U-Net 的扩展称为 3D U-Net 所做的事情。 2D 卷积变为 3D 卷积,2D 池化层变为 3D 池化层。如果您以前没有见过 3D 卷积,那也没关系。这里要理解的重要一点是 3D U-Net 允许我们传入 3D 子体积并获得体积中每个体素的输出,指定肿瘤的概率。作为 3D 方法的一部分,可以对 3D U-Net 进行子体积输入和输出的训练。

6.更多关于 U-Net(可选阅读材料)

有关原始创建者 Olaf Ronneberger、Philipp Fischer、Thomas Brox 对 U-Net 的简短视频介绍,请访问他们的网站 U-Net: Convolutional Networks for Biomedical Image Segmentation。
如果您想了解更多详细信息,请从 Heet Sankesara “UNet” 的这篇博文开始。
要深入了解,您可以阅读 Olaf Ronneberger、Philipp Fischer、Thomas Brox 的原始研究论文 U-Net: Convolutional Networks for Biomedical Image Segmentation
提醒一下,您将使用预训练的 U-Net 模型,因此您仍然可以在不知道从头开始实施 U-Net 的具体细节的情况下完成本课程。

7.U-Net模型(实验)

另写一篇

8.用于分割的数据增强

既然我们已经讨论了分割架构,那么让我们来谈谈我们可以应用于这种模型的训练的一种技术,即数据增强。我们之前看到了如何输入胸部 X 射线的转换,以使每个示例的分类标签状态相同。现在让我们看看我们如何将相同的原则应用于具有几个关键区别的分割。分割期间数据增强的一个关键区别是我们现在有一个分割输出。因此,当我们将输入图像旋转 90 度以产生变换后的输入时,我们还需要将输出分割旋转 90 度以获得变换后的输出分割。第二个区别是我们现在有 3D 体积而不是 2D 图像。因此,转换必须应用于整个 3D 体积。有了这个,我们几乎拥有了训练我们的脑肿瘤分割模型所需的所有部分。我们需要查看的最后一件事是损失函数。在我们的损失函数中,我们希望能够指定误差。给定模型预测和基本事实,我们应该分配一个示例。

让我们举一个非常简单的例子。实际上,我们将拥有更高分辨率的图像,并且我们将看到一个 3D 体积。但是我们这里的简单 2D 示例将使我们能够快速获得直觉。这里大写 P 表示分割模型在 9 个像素上的输出。在每个位置,我们都有预测的肿瘤概率。大写 G 指定每个像素位置的基本事实。九个像素中的三个是肿瘤,表示为 1,其余六个是正常脑组织,表示为 0。

9.用于图像分割的损失函数 

我们可以在表格中的每个像素上表示 p 和 g 的值。在这里,表格的每一行都是一个单元格位置,以及它们对应的预测值和真值。比如这里的 i4 对应这里的这个单元格,它指定概率输出为 0.8,ground truth 为 0。在这个表中表示 p 和 g 可以让我们更清楚地理解损失函数。我们将使用soft dice损失来优化分割模型。soft dice损失是分割模型的一种流行损失函数。soft dice损失的优点是它在存在不平衡数据的情况下效果很好。这在我们的脑肿瘤分割任务中尤为重要,因为大脑的一小部分将是肿瘤区域。让我们看看soft dice损失。soft dice损失将测量我们的预测图 P 和我们的真实图 G 之间的误差。这部分损失在这里测量预测和真值之间的重叠,我们希望这个分数是大的。在这里,当 G 等于 1 时,我们希望 P 接近 1,这样这个分子项就大了。我们还希望分母很小。所以当 G 等于 0 时,我们希望 P 接近于 0。否则,这个项会很大,分母会很大。现在,我们用 1 减去这个分数,这样较高的损失对应于小重叠,低损失对应于高重叠。有了这种直觉,现在让我们计算这个特定示例的损失。

为了计算这个例子的损失分子,我们将 P 和 G 元素相乘得到 pigi。例如,0.9 乘以 1 得到 0.9,所以在此处输入。为了计算分母,我们需要 pi 的平方和和 gi 的平方和。类似地,我们可以通过对 p 列进行平方得到 pi 平方和 g 列得到 gi 平方来计算这些。然后我们可以对这些列求和,以获得所有像素的总和。我们可以将这些值代入这个特定示例的软骰子损失中,即 1-2 乘以 2.2/2.47 + 3,即 1-4.4/5.47。这大约是 0.2,这是这个特定预测的损失,以及这个例子的这个特定基本事实。该模型优化了这个损失函数以获得越来越好的分割。这完成了我们训练脑肿瘤分割模型所需的所有部分。接下来我们将看看分割模型的评估。

二、实际考虑

1.不同人群和诊断技术

既然您已经了解了医学成像的分类和分割模型,并且您之前已经构建了胸部 X 射线分类模型,您可能想知道为什么这些系统今天没有在我们周围的医院或诊所中使用。在本课中,您将了解使这些系统成为常规医疗实践的一部分的一些挑战和机遇。在临床中应用 AI 算法的主要挑战之一是实现可靠的泛化。由于各种原因,泛化可能很困难。让我们看一个例子。假设我们根据美国数据开发了胸部 X 光模型,我们想将其应用到另一个国家的医院,比如印度。在印度,患者群体的 X 光片看起来可能与模型训练过的不同。作为一个非常具体的例子,结核病在印度非常普遍,但不太可能在我们在美国训练我们的模型的医院中普遍存在。在印度应用该模型之前,我们想测试该模型检测结核病或结核病的能力。让我们看另一个例子。这次使用我们的脑肿瘤分割模型。几年来,我们已经能够根据从几个国家收集的数据来衡量模型的性能,但 MRI 技术在全球和不同时间都不是标准的。最新的扫描仪比旧的扫描仪具有更高的分辨率。在我们将分割模型应用于新医院之前,我们希望确保该模型能够推广到医院扫描仪的分辨率。

2.外部验证

为了能够测量模型在未见过的总体上的泛化能力,我们希望能够对来自新总体的测试集进行评估。这称为外部验证。当测试集来自与模型的训练集相同的分布时,外部验证可以与内部验证形成对比。

如果我们发现我们没有推广到新群体,那么我们可以从新群体中获得更多样本来创建一个小的训练和验证集,然后根据这些新数据微调模型。

我们讨论过的所有这些研究都使用回顾性数据,这意味着他们使用历史标记数据来训练和测试算法。但是,要了解 AI 模型在现实世界中的效用,需要将它们应用于现实世界数据或预期数据。对于胸部 X 射线模型,这可能意味着我们应用经过训练的模型来解释为新患者拍摄的胸部 X 射线。

为什么模型的结果在预期数据上看起来会有所不同?造成这种情况的一个原因是,对于追溯数据,通常会采取一些步骤来处理和清理数据,但在现实世界中,模型必须处理原始数据。作为这方面的一个具体示例,您训练模型的数据集已被过滤为仅包括正面 X 射线,其中 X 射线是从患者的正面或背面拍摄的。然而,在现实世界中,从患者侧面拍摄一小部分 X 射线也很常见。这些被称为横向 X 射线。在将我们的模型应用于现实世界之前,我们要么需要过滤掉此类胸部 X 光片,要么需要调整模型以对其进行处理。

3.测量患者结果

人工智能模型在现实世界中部署的另一个挑战是我们需要指标来反映临床应用。我们已经看到了一些评估我们构建的模型的方法,其中包括查看 AUROC 曲线下的区域或查看dice分数。然而,在现实世界中,我们希望能够看到我们的模型对真实患者的影响。具体来说,我们关心的是衡量该模型是否最终会改善患者的健康结果。应对这一挑战的一种方法包括决策曲线分析,它可以帮助量化使用模型来指导患者护理的净收益。另一种方法是看看在随机对照试验的设置中会发生什么,在该试验中,我们将应用 AI 算法的患者与未应用 AI 算法的患者的患者结果进行比较。我们将在课程三中研究随机对照试验的设置。在现实世界中,我们不仅要分析模型的整体效果,还要分析人口子群的效果。这将包括不同年龄、性别和社会经济地位的患者。这使我们能够找到关键的算法盲点或意外偏差。例如,当用于浅色皮肤患者时,可以达到与皮肤科医生相当的性能水平的皮肤癌分类器以前在较深肤色的图像上表现不佳。算法偏差是一个重要且开放的研究领域。在关于医学预后的课程二中,我们将介绍一种情况,在这种情况下,像滥用缺失数据这样简单的事情可能会导致偏差模型。最后,在现实世界中应用人工智能医学模型的主要挑战和机遇之一是更好地理解这些算法将如何与临床医生的决策相互作用。人工智能模型的限制之一,即使是我们在本课程中看到的那些,是很难并且通常不可能理解模型的内部工作原理以理解它们如何以及为什么做出特定决定。在课程三中,我们将了解如何解释我们建立的胸部 X 射线模型,以及了解这些算法的临床决策过程的几种不同方法。


总结

祝贺本周完成了建立医学医学图像分割模型的工作。您已经了解了 MRI 数据、深度学习架构和分割损失函数以及评估方法。在本周的作业中,您将了解所有这些想法如何用于构建和评估您自己的脑肿瘤分割模型。最后,您现在也意识到将这些模型作为临床护理的一部分所带来的一些挑战和机遇。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值