图像分类是计算机视觉中的一项任务,根据图像的视觉内容为其分配一个或多个类别标签。分类器可以区分不同花卉的照片、识别物体所属的类别,或对整个场景进行分类。在机器学习中,分类器通常从示例中学习图像与标签之间的关系,再为此前未见过的图像预测标签。这项任务的核心输出是图像级别的类别,而不是对物体所在位置的描述。(tensorflow.org)
任务定义
在单标签分类中,每幅图像都会获得预定义类别集合中的一个标签。二分类用于区分两种可能的类别,多分类则用于区分两个以上的类别。在多标签分类中,多个标签可以同时适用,例如一幅图像中可能既有自行车,也有人。这些任务形式需要采用不同的输出解释方式和评估流程。(github.com)
图像分类不同于目标检测:后者不仅识别物体,还确定其位置,通常以边界框表示。语义分割则为每个像素分配类别标签。仅凭“狗”这样的图像级标签,无法确定动物的位置、轮廓,也无法知道图像中有多少只狗。(github.com)
分类器可以表示为从图像 到各类别得分的映射。对于互斥类别,Softmax函数常用于将得分转换为总和为一的非负数值。这些数值被解释为估计的类别概率,但模型给出的数值较高,并不自动意味着预测正确的概率也相应较高;要建立这种对应关系,还需要进行校准。(tensorflow.org)
表征与模型
传统系统通常将特征提取与分类分开进行。图像先被转换为数值描述符,例如对局部视觉模式的概括,再由分类器作出判断。例如,关键点词袋方法汇总具有代表性的局部描述符的出现情况,并可使用支持向量机区分物体类别。这类处理流程在很大程度上取决于视觉表征的构建方式。(robots.ox.ac.uk)
深度学习将表征学习与分类整合到一个可训练的模型中。卷积神经网络使用通过学习得到的滤波器,对不同空间位置进行处理。各层逐步将局部响应组合为更复杂的表征,再通过池化和最终的分类头汇总信息,生成图像级预测。与规模相近的全连接图像处理层相比,在不同位置共享滤波器能够减少参数数量。(papers.nips.cc)
视觉Transformer则将图像划分为图像块,将这些图像块嵌入为一个序列,并使用Transformer架构进行处理。最初的视觉Transformer研究表明,通过大规模预训练,即使不以卷积层作为主体架构,也能取得优异的分类效果。这确立了一种不同的视觉表征学习方法。(arxiv.org)
数据与训练
在监督学习中,训练数据由图像及其对应的类别标签组成。图像需要经过解码,调整至模型要求的输入尺寸,并按照模型的预处理约定进行归一化或数值缩放。保持预处理一致十分重要,因为使用一种输入表示训练的模型,在接收另一种输入表示时可能表现不同。(tensorflow.org)
训练通过调整模型参数来降低损失函数的值。对于互斥类别,交叉熵衡量目标标签与预测类别概率之间的差异。神经网络通常通过反向传播计算参数梯度,并使用基于梯度的优化方法更新参数。仅凭训练时的表现,无法确定模型在新图像上的表现。(tensorflow.org)
数据增强通过变换生成新的训练样本,变换方式包括裁剪、翻转、旋转或改变外观。变换必须与类别定义相容:如果某种变换改变了正确标签,它就不是保持标签不变的数据增强。数据增强和正则化方法可以减轻过拟合,即模型过度拟合训练样本,而未能充分掌握可推广到未见数据的模式。(tensorflow.org)
在迁移学习中,在其他数据集上预训练的模型提供可复用的视觉特征。可以保持特征提取器不变,只训练一个新的分类头;也可以通过微调,针对新任务更新部分或全部预训练参数。这些方法减少了从头学习整套表征的需求。(tensorflow.org)
评估与基准
验证集用于模型选择,而独立的测试集用于在开发阶段的各项选择确定后估计模型性能。如果正常预测时无法获得的信息影响了训练或模型选择,就会发生数据泄漏(机器学习),可能使评估结果过于乐观。因此,需要从数据中学习的预处理步骤应纳入训练流程,而不应不加区分地在所有可用样本上进行拟合。(tensorflow.org)
Top-1 准确率衡量得分最高的类别与真实标签一致的图像所占的比例。Top- 准确率则在真实标签位于得分最高的 个类别之中时,将该图像的预测计为正确。精确率、召回率和F值提供互补的评估信息,尤其适用于各类别出现频率不均衡的情况。混淆矩阵记录各个真实类别被误判为哪些预测类别。(scikit-learn.org)
ImageNet 数据集和ImageNet 大规模视觉识别挑战赛成为重要的大规模评测基准。2012 年,AlexNet在该挑战赛中取得了 15.3% 的 Top-5 错误率,而排名第二的参赛系统为 26.2%。这一结果展示了借助加速计算训练的大型卷积网络的有效性。(papers.nips.cc)
可靠性与部署
在基准测试中取得较高准确率,并不意味着模型一定具有良好的鲁棒性。分布偏移,包括图像质量或采集条件的变化,可能降低分类性能。ImageNet-C 和 ImageNet-P 专门用于衡量模型对常见图像损坏和扰动的鲁棒性,将其与普通无损图像上的准确率区分开来。(arxiv.org)
校准是另一项独立的性质:被赋予相近置信度的预测,其实际观察到的正确率也应相近。校准研究记录了神经网络置信度与准确率之间的差异。部署后的分类器也可以在移动设备和嵌入式设备上运行,此时模型、预处理流程和标签映射必须始终与应用的输入输出要求相容。(arxiv.org)