图像分类是将图像归入预定义类别的过程。在机器学习中,模型要学习识别和分类图像。
人类从小就开始对图像进行分类。当老师要求幼儿园小朋友将植物和动物的图片分类堆放时,他们会运用学习到的关于每一类别的特征来完成这项任务。每个类别都包含不同的特征,用以区分植物和动物。成年人可能不记得曾学习过区分这两类生物的具体特征,因为我们对分类的理解在很大程度上是自然而然形成的。
教一个人工智能 (AI) 模型执行相同的任务可能会困难得多。这里的主要区别在于,AI 模型需要被教导如何“看”,而人类天生就具备这种能力。因此,人类从一开始就能区分鞋子和生物。基于规则的图像分类依赖于标签或注释来创建这些区别。统计图像分类通过训练模型识别图像中嵌入的模式来执行相同的任务,从而消除了大量的手动标记工作。
该方法依赖于严格开发的图像收集和标记流程,以匹配特定的分类任务或目标。这一过程由专家手动完成,他们会选取图像中能提供最多视觉信息的关键特征。基于规则的图像分类通过应用这些规则将相似的像素簇归入不同类别,这些规则是由专业知识构建的。它还允许进行可解释且可定制的分类,而无需依赖复杂的机器学习模型。
想象一下,您被分配整理一盒照片。这盒照片中包含湖泊、狗和汽车的照片。由于使用这种方法您没有任何高科技工具可用,因此需要自己制作一份清单。
清单可能类似于以下内容:
这个例子说明了基于规则的分类依赖于人类预设的规则和工具。这种方法与让计算机自行“学习”新规则形成对比。这种形式的图像分类可以包括模板匹配和阈值处理等技术。
模板匹配是指将一个模板图像在较大的输入图像上滑动,并在每个位置计算相似性度量,以找到与模板图像匹配的区域。
阈值处理通过根据设定的阈值将像素值转换为二进制来分割图像。这种方法根据强度将特征与背景区分开来。
这些技术与基于规则的强化学习相结合,有助于构建强大且可解释的图像分类系统。基于规则的分类可以通过实现 k 最近邻 或随机森林算法来完成。
这种分类方法比基于规则的图像分类方法要复杂一些。统计图像分类旨在自动学习和识别图像中的模式。为了高效地对图像进行分类,这种方法在很大程度上依赖于大型带标签的数据集和强大的架构,通常是卷积神经网络 (CNN)。这些 CNN 使用三种层类型,每种层的复杂性都在增加,以识别图像的各个部分。随着数据在各个 CNN 层中传递,越来越多的特征被识别,直到图像可以被分类。
传统的基于分布的技术依赖于对图像数据统计特性的明确假设。诸如最大似然估计 (MLE) 和贝叶斯分类器等方法,通过分析像素强度或特征的概率分布来进行分类。在图像分类中,MLE 将图像的每个像素分配给其统计模型最能解释所收集数据的类别。贝叶斯分类使用贝叶斯定理,根据先验知识和收集到的数据计算图像属于某一类别的概率。该定理允许“反转”条件概率。它将类别的先验概率与观测到的特征的可能性结合,以预测特定图像片段最可能的类别。这些算法需要对每个类别进行统计建模,并通过根据这些模型估计特定像素或片段属于每个类别的可能性来执行分类。
最大似然估计 (MLE) 是一种统计方法,用于通过寻找使观测数据最可能出现的参数值来估计模型的参数。在图像分类中,MLE 会将每个像素或图像片段分配给其统计模型最可能生成该观测数据的类别。
卷积神经网络 (CNN) 代表一种更现代的、无分布的方法,可以直接从数据中学习特征,而不依赖于明确规定的统计规则。CNN 由多层组成,从最简单到最复杂,逐步检测图像特征。它们使用卷积和池化等操作。卷积是 CNN 用于从输入数据(在本例中为图像)中提取特征的数学运算。该操作使用一个在输入上滑动的滤波器或卷积核。池化同样将滤波器应用于整个输入,但与卷积不同,这种滤波器没有加权参数。训练 CNN 需要带标签的大型数据集和计算资源,但由于其能够自动从原始图像数据中提取层次化特征,因此通常能够显著提高准确性。
数据收集和预处理:第一步是为每组收集大量不同的图像。必须对数据进行标记,然后进行归一化处理。归一化和其他数据增强技术包括将图像大小调整为固定尺寸、标准化像素值等。
模型选择:工作流的下一步是模型选择。所选架构很可能是 CNN。如前所述,随着数据通过 CNN 的各层,网络开始检测更复杂的特征。
模型训练和验证:完成选择后,已标记图像将被划分为训练数据集、验证数据集和测试数据集。网络利用这些集合来优化并反复调整其权重,从而最大限度地减少预测标签和实际标签之间的误差。验证数据有助于防止过拟合,并且该训练过程可以继续,直到结果达到预定的标准。
在此步骤中,可能会应用像 ImageNet 这样的人工标注图像数据集。ImageNet 是一个包含超过 1400 万张图像的庞大集合。这些图像都经过组织和标记,以教计算机识别图片中的物体。数据库中的每张图像都被标记为特定的类别,称为“同义集”。这些同义集包括“dog”、“car”或“apple”等类别,并使用一个叫做 WordNet 的框架。
特征提取:在这一步,与基于规则的图像分类不同,深度学习模型从提取的原始图像数据中学习其特征。这种方法允许网络建立内部描述,以区分组别或类别。
评估和部署:接下来,根据测试数据评估模型,并在必要时进行微调。如果满足预期的指标,模型随后会被部署到实际环境中,对新图像进行预测。
目前已开发出各种图像分类模型和算法。这些方法包括 K 最近邻 (KNN)、随机森林和支持向量机 (SVM) 等方法,以及 AlexNet、GoogLeNet 和 ResNet 等架构。每种方法在准确性、可扩展性和复杂性方面各有优势。这些选项允许用户在更简单的分类器和能够从图像中学习深层次层次特征的高度复杂的卷积神经网络 (CNN) 之间进行选择。我们将更深入地研究这些算法和模型。
汽车产业:图像分类和对象检测在汽车领域正变得越来越普遍。对象检测用于为驾驶员提供周围环境的实时信息。这种能力在不熟悉的或交通繁忙的区域中非常有帮助。有效的对象检测很大程度上依赖于 CNN 的图像分类效果。
植物病害的叶片图像分类:研究人员开发了一种模型,能够检测健康叶片上的 13 种植物病害。该模型还可以将叶片与周围环境区分开来。像这样的模型在判断环境是否受到诸如山毛榉叶病 (BLD) 等感染时可能具有重要作用。
医疗保健和医学成像:利用 CNN 进行深度学习图像分类,可提供肺炎感染肺部的 X 光图像。医生和医疗技术人员或许能够更快、更准确地识别肺炎病例,同时还能以经济有效的方式做到这一点。
图像分类是计算机视觉的关键组成部分。它使机器能够像人类一样理解视觉世界。从依赖手动特征选择的基于规则的图像分类方法,到能够高精度识别微妙模式的先进统计图像分类(如 CNN),这一领域正快速发展。它的影响已经在医疗、汽车和环境等行业显现。这一工具为用户提供了更快速的决策能力,从而整体提高安全性。随着图像分类模型变得更加复杂,它们不仅会增强现有应用,还将开启全新的可能性。