计算机视觉的机器学习
使用筛选器将效果应用于图像的功能在图像处理任务中非常有用,例如,你可以使用图像编辑软件执行。 但是,计算机视觉的目标通常是从图像中提取含义或至少可作的见解;这需要创建经过训练以基于大量现有图像识别特征的机器学习模型。
小窍门
本单元假设你熟悉机器学习的基本原则,并且你对神经网络的深度学习有概念知识。 如果你不熟悉机器学习,请考虑完成 Microsoft Learn 上的 机器学习概念简介 模块。
卷积神经网络(CNN)
计算机视觉最常见的机器学习模型体系结构之一是一种 卷积神经网络(CNN),这是一种深度学习体系结构。 CNN 使用筛选器从图像中提取数值特征映射,然后将特征值馈送到深度学习模型中以生成标签预测。 例如,在 图像分类 方案中,标签表示图像的主要主题(换句话说,图像是什么? 你可以使用不同类型的水果(如苹果、香蕉和橙色)的图像训练 CNN 模型,以便预测的标签是给定图像中的水果类型。
在 CNN 的 训练 过程中,筛选器内核最初是使用随机生成的权重值定义的。 然后,随着训练过程的进展,模型预测根据已知标签值进行评估,并调整筛选器权重以提高准确性。 最终,经过训练的水果图像分类模型使用筛选器权重,以最好地提取有助于识别不同类型的水果的特征。
下图演示了图像分类模型的 CNN 的工作原理:
- 具有已知标签的图像(例如,0:苹果、1:香蕉或 2:橙色)将馈送到网络中以训练模型。
- 一个或多个滤波器层用于在图像通过网络时提取每个图像的特征。 筛选器内核以随机分配的权重开头,并生成 特征映射的数值数组。
- 特征映射被展平为一维特征值数组。
- 特征值将馈送到完全连接的神经网络中。
- 神经网络的输出层使用 softmax 或类似函数生成包含每个可能类的概率值的结果,例如 [0.2, 0.5, 0.3]。
在训练过程中,输出概率与实际类标签进行比较 ,例如,香蕉(类 1)的图像应具有值 [0.0, 1.0, 0.0]。 预测和实际类分数之间的差异用于计算模型中的 损失,然后修改完全连接的神经网络中的权重和特征提取层中的过滤器核,以减少损失。
训练过程重复多次 迭代,直到获得最佳权重集。 然后,保存权重,模型可用于预测标签未知的新图像的标签。
注释
CNN 体系结构通常包括多个卷积滤波器层和其他层,以减少特征映射的大小、约束提取的值,以及其他方式处理特征值。 本简化的示例中省略了这些层,重点介绍关键概念,即筛选器用于从图像中提取数字特征,然后用于神经网络来预测图像标签。
接下来,让我们了解这些概念如何支持计算机视觉任务。