你可以在我的 GitHub 仓库 →这里 ← 找到本文讨论的最后一种方法的实现方案。
在深入讨论核心问题之前,让我们重温一下一些关键概念。
机器学习中的图像分类是指从有限的标签集中为图像分配特定标签(或称 "类别 "或 "标签")。这可以在单个系列中进行(例如,在所有可能的品种中识别狗的品种),也可以为了区分不同的系列而进行(例如,确定图像显示的是汽车、房屋、船只还是动物)。
我们的目标是训练一个模型,利用图像特征(形状、颜色、纹理等)来预测其标签。由于处理图像的所有输入是不切实际的(例如,一幅 224x224 像素的彩色图像有 224 x 224 x 3 个输入,这意味着超过 15 万个特征),卷积神经网络(CNN)在不丢失关键信息的情况下提取并减少图像特征。虽然这种方法对预测非常有效,但却无法解释模型的系数,因为特征并不是可解释的信息。这正是 LLM 可以帮助解决的一个局限性。
另一个关键概念是 "零镜头分类"(zero-shot classification),它允许将图像归入模型训练过程中从未明确出现过的类别。这要归功于 CLIP(对比语言-图像预训练)等模型,它是一种文本-图像嵌入模型,能够将图像和文本矢量化到同一个嵌入空间。CLIP 是在 4 亿张标注过的图像上训练出来的。例如,狗的图片和短语 "狗的图片 "的嵌入空间非常接近。
零镜头分类过程如下:
这种方法在数学上可以表示为
其中,x 是要分类的图像,C={c1,c2,...,cn} 是预定义的标签集,jI / jT 是图像和文本编码器(如 CLIP),f(c) 是提示语"{c} 的一张照片"。
这是基本的零镜头分类方法,通常被称为 "Vanilla CLIP"。
首先,LLM 可以提供标签描述,从而轻松增强零镜头分类。事实上,我们嵌入的不是"{label}的照片",而是 LLM 提供的标签描述,从而完善了标签在嵌入空间中的定位。
这种方法用等式表示:
其中,D(c) 是标签 c 的描述。
值得注意的是,这里计算的是类描述的余弦相似度的平均值。这种被称为 "提示集合 "的技术(通常包括平均嵌入)可以提高分类的准确性。
这种方法特别有效,因为不同的提示技术(DCLIP、WaffleCLIP、CuPL)会根据数据集的不同产生不同的结果。因此,它能在嵌入空间中实现更稳健的标签定位。
例如,在他们的研究"利用多模态大型语言模型增强零镜头图像分类功能中,谷歌研究团队将重点放在通过结合三种不同的嵌入来优化输入图像的嵌入上:
下面是这种方法的直观演示:
下面的例子突出显示了从待分类图像中获得的三个输入中的两个:来自 LLM 的图像描述和 LLM 预测的标签("铅笔")。
即使作为输入的预测是错误的,在所有测试的数据集中,包含这一输入也能显著提高模型的性能(例如,对于 ImageNet,准确率从 70.7 提高到 73.4)。
我们刚刚介绍了 LLM 在图像分类中的核心作用:LLM 能够在共享嵌入空间中完善目标标签和输入图像的定位。
前面讨论的方法只有在标签的文本描述(由 LLM 生成)相关的情况下才能很好地发挥作用。然而,对于某些数据集,如著名的鸢尾花数据集,效果可能会很差。这主要有两个原因:
WaffleCLIP 方法(Roth et al.
视觉反馈迭代优化"方法通过提出一种优化标签描述的方法,引入了 "低镜头 "图像分类的概念。它结合了现实生活中的两个关键方面:与环境的互动和迭代优化。人类对新物体的识别是一个动态的过程:我们根据物体所处的环境逐步更新我们的知识,只保留有用的信息,而摒弃无关的细节。
该方法包括三个主要步骤,请参见上图:
其中,d′表示标签的描述,d 表示地面实况标签的描述。
下图是在 Flowers102 数据集上获得的结果,并与 CuPL 方法(采用特定提示技术的零点法之一)进行了比较。条形图突出显示了 "威尔士亲王羽毛 "标签的三个最佳和三个最差描述。
为什么称为 "低镜头 "图像分类?这种方法与 "零镜头 "分类法不同,因为它使用少量标记图像来优化目标标签描述。但是,最终目标仍然是改进零镜头预测。因此,这不是传统的机器学习训练,因为不存在过度拟合的风险。这就是使用 "low-shot "一词的原因。
LLM 是否也能改进传统的图像分类模型(导言中提到的模型)?研究论文"基于 LLM 的分层概念分解用于可解释的细粒度图像分类 "介绍了一种解决这一问题的方法。基于 LLM 的分层概念分解用于可解释的细粒度图像分类."这种方法的主要目标是克服前面提到的局限性--CNN 模型缺乏可解释性--使我们能够回答以下问题:
上述方法的示意图可描述如下(以 "狗 "类为例,其标签与不同品种相对应):
这样,我们就能利用 LLM 的知识为给定类别生成一组描述性短语("视觉线索")。下面是 "法国斗牛犬 "标签树的一部分示例(使用 pydot Python 库可视化):
由于这种方法可能适用于 Fifty-five 的某些用例(尤其是与优化广告创意相关的用例),为了说明它与传统图像分类方法相比的优势,我们实现了这种方法的编码版本,可在我的 GitHub 存储库中查看。在分享一些输出示例之前,先介绍一些初步的注意事项:
该方法在三个层面上实现了模型的可解释性:
我们可以分析哪些视觉线索对区分狗的品种最有效(或最无效)。特征重要性是通过应用于随机森林模型的特征排列技术计算得出的:
利用我们对 "视觉部分 "和 "视觉属性 "的区分,我们可以进一步研究哪些视觉部分对区分标签最有效:
对标签也可以进行类似的分析。例如,以下是每个标签中最重要和最不重要的三个特征(这次使用基尼系数计算,因此最不重要的特征值为正值):
混淆矩阵突出显示了模型最常错误分类的犬种:
最常见的混淆发生在 "拉萨 "和 "苏格兰梗 "这两个标签之间。通过研究每个标签中重要性最高的前 30 个特征,我们发现这两个标签共有 10 个特征,这就是混淆的原因:
为了进一步研究,我们可以检查模型错误分类这些标签的具体预测:
虽然很接近,但该图像中 "拉萨"(真实标签)的概率低于 "苏格兰梗"(预测标签)的概率。为了更好地理解模型的预测,SHAP(SHapley Additive exPlanations)值可以让我们更深入地了解特定预测的概率,这主要有两个原因:
在我们的示例中,由于苏格兰梗犬以黑色为主,尤其是在我们的数据集中,因此我们了解 "腹部颜色为黑色 "或 "背部毛色为黑色 "等视觉线索的重要性。因此,图像中拉萨犬身上的黑色外套很有可能解释了模型的误差。
这些例子展示了 LLM 在增强图像分类方面的潜力。这些改进与性能没有直接关系(CNN 模型通常具有更高的准确性),而是与模型的可解释性有关。
所有这些方法都有一个共同点:它们通过涉及少量图像和多模态嵌入模型("低镜头 "方法)的迭代过程,或通过分层树分解("增强标准 "方法),提供有关类别及其标签的描述性信息。因此,对 LLM 知识的依赖是一个值得注意的局限。
虽然我们将这些方法分为三个分类 "系列",但它们并不相互排斥。例如,我们可以考虑使用 "低镜头 "方法的描述作为 "增强标准 "模型的特征(即使我们必须确保有足够的图像用于这两种特定的训练过程)。
在我們的月度時事通訊《Tea O'Clock》中發現所有最新新聞、文章、網路研討會重播和 55 項活動。