🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀论文精读_十二月的猫的博客-CSDN博客💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光
目录
1. 摘要
2. 介绍
3. 相关工作
4. 方法
4.1 生成多样化的尾部图像
4.1.1 获取现有尾部类说明列表
4.1.2 获取扩展尾类说明列表
4.1.3 将描述转换为图像
4.2 混合平衡
5. 总结
1. 摘要
长尾识别具有挑战性,因为它要求模型从尾部类别中学习良好的表示,并解决所有类别之间的不平衡。在本文中,我们提出了一个新的生成和微调框架,LTGC,通过利用生成的内容来处理长尾识别。首先,受大型模型(例如大型语言模型,llm)中丰富的隐含知识的启发,LTGC利用这些模型对原始尾数据进行解析和推理,以产生多样化的尾类内容。然后,我们提出了几种新的LTGC设计,以确保生成数据的质量,并使用生成的和原始数据有效地微调模型。可视化显示了LTGC生成模块的有效性,生成了准确多样的尾数据。此外,实验结果表明,我们的LTGC在流行的长尾基准测试中优于现有的最先进的方法。
2. 介绍
在现实世界中,数据通常呈现长尾分布,这对计算机视觉识别提出了重大挑战[44,54]。这些挑战包括(1)类不平衡:在数据集中,一些类(称为“头”类)有大量的代表,而另一些类(称为“尾”类)只有很少的样本。训练过程中的这种不平衡分布可能会导致模型更多地关注头部类,而忽略尾部类[42]。(2)尾部数据稀缺性:数据稀缺性是指样本极其有限的尾部类,缺乏多样性,不足以有效训练模型[8,24]。它阻碍了模型学习特征不变量的能力,而特征不变量是正确识别这些类别所必需的[35]。
两个问题:
1、类不平衡:更新时,在梯度上头部类会拉扯尾部类
2、特征学习:尾部类数据稀缺,导致特征学习不好
图1所示:上图:在这里,我们的lmm使用ChatGPT。对于Trogon Rufus类别,当我们问ChatGPT,“图片中是什么物种?”。由于问题的复杂性,我们没有得到预期的答案。中间和下面:相反,当我们为ChatGPT问一些简单的问题时,“请描述一下图像。或“请描述Trogon Rufus的特点。”它可以准确地回答这些问题。
为了应对这些挑战,长尾识别领域出现了许多方法,如重采样[5,19]、损失重加权[1,6,12,23,26,27,29,39,48]、集成学习[42,47,56]、解耦[20]和对比学习[11,25,40,59]。他们的主要目标是平衡模型的决策边界和参数权重,以提高长尾识别。
两个方法:
1、决策边界再平衡:针对类不平衡导致决策边界不准确提出的在平衡决策边界
2、类再平衡:针对长尾问题中类不平衡提出的类再平衡方法
然而,由于尾类数据的稀缺性和有限的多样性特征,这些方法遇到了瓶颈[24]。为了获得更多样化的尾类表示,出现了两种方法:一些方法通过数据增强来增加尾类的多样性[9,24,52,55]。其他方法通过转移相关类[8]或大型预训练模型(例如CLIP[32])的特征来增加尾类多样性。这些基于CLIP的迁移学习方法[13,28,36]最近在提高长尾识别方面显示出巨大的潜力。LPT[13]对预训练模型进行微调以适应目标数据集。VL-LTR[36]利用CLIP中的文本特征来增强图像特征的学习。然而,这些方法很难获得正确和期望的尾部类别知识。例如,在现实世界的数据iNauralist 2018[17]中,Aquilegia Pubescens类别的特征仅为白色或淡黄色和带刺的形状。如果我们转移相似的类别特征或盲目地增加语义信息,如红色语义,这个类别会变得更加混乱。
核心方法:
1、数据增强。增加尾部类的多样性
2、大型预训练模型或其他方法增加尾部类多样性
最近,大型语言模型(llm)(如ChatGPT)和大型多模态模型(lmm)(如GPT4V (ChatGPT with Vision[50])和Minigpt4[7,58])由于其丰富的潜在知识,已被用于各种下游任务,如机器人任务计划[34],开放集对象识别[30],自动机器人学习[43]和各种视觉推理任务[50,51,60]。然而,由于训练数据不平衡的偏差,lmm在一些复杂任务上表现不佳[10]。我们在长尾识别中也发现了这种困境,如图1所示。当我们问lmm关于Trogon rufus类别的图像时:“图像中是什么物种?”,我们没有得到预期的答案。相反,当我们问一些简单的问题关于这个图像:“请描述一下这个图像。或“请描述Trogon Rufus的独特之处”,我们都会得到想要的答案。这表明,尽管大型模型在长尾识别中表现不佳(例如,很难将复杂的图像特征与标签对齐),但它们仍然包含所需的潜在知识(例如,正确描述图像和提供物种知识)。受此启发,我们的目标是利用几个大型模型丰富的潜在知识来解决长尾数据稀缺性的挑战,并很好地执行长尾识别。然而,有效地利用大型模型来应对这些挑战并非易事:(1)大型模型中知识的潜在性质使得很难提取出促进长尾识别任务的所需知识。(2)由于生成的数据与原始数据之间存在领域差距[38],有效利用这些混合数据仍然是一个悬而未决的问题。
大语言模型(大型预训练语言模型)存在的困境:由于 训练数据的不平衡+很难将图像特征和标签对齐 大语言模型很难直接用于下游的识别任务中。
这就意味着需要基于预训练语言模型自己搭建一个适用解决长尾数据下的下游任务的模型
大语言模型(大型预训练语言模型)可利用之处:
1、大语言模型虽然难以直接解决长尾问题,因为(预训练模型本身的训练数据也是相当不平衡+图片到文字需要标签对齐)两个问题作用导致。
2、但是大语言模型对于尾部数据本身,仍然是有很大数据量的投入(只是相比于头部数据比较少)。
3、因此,虽然大语言模型不能直接根据图片做长尾数据的判断(头部类有影响),但是大语言模型仍然有很多的潜在知识可以利用
为此,我们提出了一种新的基于生成内容的长尾识别框架,表示为LTGC,如图2所示。我们的LTGC旨在利用大型模型的能力来生成针对长尾类定制的明确多样的内容[15],并结合新颖的设计来增强长尾识别。首先,由于大型模型中潜在知识的丰富以及文本更可控的事实,我们使用它们来扩展尾部类。具体来说,为了产生更加多样化和可控性的尾数据,我们遵循先分析已有特征再生成缺失特征的原则。为了实现这一点,LTGC利用lmm来分析已经在尾类中的图像,以获得现有的尾类描述列表。然后LTGC将现有的描述列表输入llm,以获得现有尾类中缺失的图像所需的扩展尾类描述列表。其次,LTGC利用文本到图像(tt2i)模型(如DALL-E[33])将这些文本描述转换为图像。此外,受到思维链的好处[46]的启发,我们为这一过程提出了一个自我反思和迭代评估模块,以确保生成内容的多样性和质量。最后,受Mixup[52]在合并不同图像域方面的优势的启发,我们提出了BalanceMix模块来解决生成图像在微调过程中的域移位问题。
综上所述,我们的工作贡献如下:
1. 首先,我们通过生成内容提出了一个新的框架,LTGC,它利用大型模型的力量来解决长尾识别的挑战。
2. 我们设计了一系列新颖的模块来解决尾类图像稀缺问题,并设计了BalanceMix模块来利用生成的数据和原始数据对模型进行有效的微调。
3. 实验结果表明,我们的LTGC在流行的长尾基准测试中优于现有的最先进的方法。此外,可视化说明了我们生成的尾部图像的多样性和可控性。
3. 相关工作
长尾识别:近年来,人们提出了许多方法来应对长尾识别挑战,如重新采样 [5, 19]、损失再平衡 [1, 6, 12, 23, 26, 27, 29, 39, 48] 来提高模型对尾部类别的关注度,集合学习 [42, 53, 56] 通过提高模型性能来提高识别尾部样本的能力、 对比学习 [11, 21, 25, 40, 49, 59] 和校准学习 [9, 57] 来改进模型的决策边界,但由于尾部数据稀少,模型仍然没有足够的特征来学习长尾识别的类别表征。最近,基于数据增强的方法 [8, 9, 24] 提出通过增强相关特征来处理稀缺尾部数据。然而,这些方法很难获得正确的尾类知识。其他方法 19511[13,36]通过迁移学习[37]视觉语言预训练模型(如 CLIP [32])的特征来进行长尾识别,取得了良好的效果。
长尾往期方法:
1、类再平衡:重采样、损失函数调参再平衡、损失函数优化梯度调整
2、决策边界再平衡:集成学习、对比学习和校准学习
与以往的方法不同,本文从一个新颖的角度出发,探索了一种生成和微调框架,利用大型模型的丰富潜在知识来处理长尾识别。具体来说,我们设计了几个新颖的模块,利用正确的知识生成尾部数据,并对生成的数据进行有效的微调,以提高长尾识别率。
大型模型:最近,出现了一些大型模型,包括大型语言模型(如 ChatGPT [50])、大型多模式模型(如 GPT-4 (ision) [50]、MiniGPT [58])和大型生成模型(如 DALLE [33])。这些庞大的模型是大量知识的宝库[15],在机器人任务计划[34]、开放集物体识别[30]、上下文物体检测[51]、视频生成[22]和少镜头分割[60]等各种应用中都受到了严格的审查。在这项工作中,我们利用这些大型模型的丰富潜在知识来应对长尾识别挑战。
核心思想:
1、基于大语言模型中关于尾部数据的大量知识,利用这些潜在知识来解决长尾问题
4. 方法
要很好地进行长尾识别,面临的挑战是让模型从尾部类别中学习不同的表征,并解决所有类别中的不平衡问题。在本文中,我们提出了一个新颖的长尾识别框架 LTGC 来应对这些挑战。如图 2 所示,LTGC 利用各种现成的大规模模型中的潜在知识来生成和迭代评估尾类的质量和多样性(第 3.1 节)。此外,LTGC 还提出了平衡混合(BalanceMix)模块,以促进生成数据集和原始数据集的微调过程(第 3.2 节)。下文将详细介绍这些模块。
4.1 生成多样化的尾部图像
为了从尾部类别中学习多样性表征,以往的方法采用了数据增强 [9, 24] 或迁移学习 [13, 36]。然而,这些方法很难获得正确和理想的尾部类别多样性知识。受到 LLM 中常识性知识和文本描述更可控这一事实的启发 [33, 50],LTGC 利用这些优势来控制生成的尾部类别的细节和多样性。首先,为了更好地生成多样化图像并控制图像细节,LTGC 致力于生成原始尾部数据中不存在的图像,并以文本形式表示这些图像。具体来说,LTGC 采用 LMM 分析原始尾部数据,获得现有的尾部类别描述列表。然后,LTGC 利用 LLM 的常识性知识,在现有尾类描述列表的基础上获得扩展的尾类描述。最后,由于图像更适合作为长尾识别任务的训练数据,我们利用文本到图像模块,根据这些尾类描述生成多样化的图像。
问题:
1、数据增强、迁移学习等方法生成新的尾部数据,其缺点在于难以复刻尾部数据的多样性知识。
解决方案:
2、利用LLM针对尾部类别去生成相联系/相近似的关键词,再利用关键词在文本到图像模块去生成图像,从而做到真正的重采样。
4.1.1 获取现有尾部类说明列表
为了确保尾类图像的多样性,我们在生成新的尾类图像之前,首先分析原始尾类图像的特征信息。这保证了生成图像的内容与现有尾类图像的内容截然不同。此外,由于文本描述更具可控性[33],我们利用文本描述来控制生成图像的细节和多样性。为此,我们的 LTGC 采用语言模型多模态(LMM),如 GPT-4V(Vision)[50],来分析特征信息并提取现有尾类的文本描述。在这一过程中,LMMs 的文本响应可能多种多样,有时甚至是冗余的,这可能会妨碍生成所需的图像。因此,我们采用文本模板来约束 LMM 的响应,旨在统一文本描述格式。受对象类别和特征列表可完整描述或生成对象图像的启发[4, 41],我们设计的文本模板包括给定的类别及其特征。此外,在场景中引入变化对增强模型的泛化能力起着至关重要的作用[2],这一问题在长尾数据集中尤为突出[35]。因此,场景的文本信息对于图像生成也很重要
为此,我们针对给定类别 y 设计了 LMM 响应模板 1(Prompt1) 如下: “[y]类的一张照片,{具有显著特征}{在特定场景中}",其中包括给定类别、其显著特征以及特定场景或环境。有了回复模板,对于给定的我的号码类别 y,我们将这些尾类图片依次输入 LMM,同时输入[提示 1],以分析这些图片的特征: “请使用模板 1 简要描述 [y] 类的图像"。图 3 展示了这一过程,其中 y 是给定的类别标签。如图所示,通过使用模板进行描述,LMM 会自动替换回复中的类别、特征和背景。在对每个类别的所有图像进行上述处理后,我们将编译出与每个类别相对应的文本描述列表。然后,我们打算用现有的尾类描述列表来扩展尾类描述列表,以生成尾类中缺少的图像。
核心思想:
1、利用LLM分析原始尾类图像的特征
2、考虑到LLM输出文本的结构统一,因此设定特定的输出模板(prompt1)
4.1.2 获取扩展尾类说明列表
在本节中,我们旨在分析尾类中缺失的特征,并在现有尾类描述列表的基础上丰富这些类的描述。为此,受大型语言模型(LLMs)(如 ChatGPT [50])丰富的常识知识的启发,我们通过两个步骤扩展尾类描述列表: 1) 将现有描述列表输入 LLM,2) 设计提示 2,引导 LLM 为给定尾类 y 中不存在的图像生成所需的描述: “除上述描述外,请使用模板 1 列出[y]类的其他可能的{显著特征}和{特定场景}",如图 4 所示。对于每个类别,我们都要重复上述两步流程,然后得到所有尾类的尾类描述列表。
此外,为了让这些生成的描述更好地补充每个尾类,我们鼓励 LLM 生成足够数量和多样性的描述。为了实现这一目标,我们在此过程中引入了自我反思模块,旨在引导 LMM 反思是否有遗漏或重复的特征或场景。它包括两个关键设计:数字检查模块和重复检查模块。(1) 数字检查模块旨在引导 LMM 重新思考是否有其他遗漏的特征或场景。为此,在为 y 类提出初始 [提示 2]之后,我们更新扩展描述列表,并结合新获得的列表重新向 LLMs 提出 [提示 2]问题。对于每个类别 y,这种数字检查迭代过程一直持续到尾部类别的最大数量 Ky,其中 Ky = My+Ny,Ny 是类别 y 生成的描述数量。 (2) 重复检查模块旨在引导 LMM 重新思考在数字检查迭代结束时是否有其他特征或场景重复。具体来说,我们输入每个类别 y 的扩展描述列表和以下[提示 3],供 LLMs 进行重复检查: “请排除此描述列表中 [y] 类的任何重复的{显著特征}和{特定场景}"。之后,LLM 将根据此提示过滤掉有重复特征的描述,并返回新的描述列表。通过植入
核心思想:
1、利用LLM输出结构(Prompt1)限定,来保证其输出为一个Tail-class Descriptions List
2、利用Prompt2来实现自我反思模块,保证一轮轮迭代自我反思(Self-Reflection)后达到尾部类别的最大数量。
3、利用Prompt3来供给LLM进行重复性检查,保证描述列表质量是高的
4.1.3 将描述转换为图像
以上,我们得到了每个类别 y 的扩展尾类描述列表,用 Ly 表示。由于图像更适合执行视觉识别任务,因此在本节中我们的目标是利用文本到图像(T2I)方法的图像生成能力,从尾类描述列表中生成图像。具体来说,我们采用 T2I 方法根据描述列表生成图像,表示为:
其中,n ∈ N 表示第 n 次生成的 y 类描述,表示 T2I 模型根据 生成的图像。不过,有些生成的图像质量可能不够高,不能准确地代表所需的类别,如质量较低的图像。如图 7 所示7 所示,质量较低的图像输出的特征不明显,会造成更多的类别混淆。因此,在训练中直接使用这些生成的图像可能会破坏模型对尾部类别的预测。
背景知识:
1、文生图容易出现不准确的图片
2、大模型从图生文+自我迭代增加的方式可以确定图生文准确度还可以
为了解决质量较低的图像无法准确表达其所需类别的难题,我们的目标是自动检测这些图像,完善其文本描述,并相应地重新生成图像。为了实现这一目标,我们从人类通过同伴反馈来提高理解能力的理念中汲取灵感,研究了一个大型模型通过整合另一个基本模型的反馈来提高其输出的可能性。因此,我们提出了一个迭代评估模块,如图 5 所示。该模块利用基本模型 CLIP 作为 “反馈提供者”,CLIP 擅长理解图像并有效地将图像与文本上下文联系起来[32]。它将质量较低的图像反馈给 LLM,从而帮助其完善相应的描述。
核心思想:
1、利用模型间的反馈检查来对图片进行筛选
流程:
利用extended description生成图片——新图片利用CLIP转为图片编码——extended description利用CLIP转为文字编码——比较两个编码的余弦相似度——相似度高则保留新图片——相似度低则利用旧图片通过LLM结合Prompt5(另一套Prompt)重新生成description——利用新的description通过T2I生成新的图片
此外,为了便于 CLIP 抓住图像中的特征,一种直接的方法是检查图像与其类模板之间的匹配程度: “一张 [y] 的照片"。然而,由于 CLIP 的文本编码器可能包含较少的尾类特征知识(例如,在 iNaturalist 2018 数据集上出现的零镜头识别性能较差的情况[13]),我们的目标是为每个类设计一个新的文本特征模板,突出其独特的特征。然后,CLIP 利用它来确定模板与图像之间的对应关系。思维链[30, 46]的概念表明,如果能提供额外的线索,LMM 的表现会更好,我们从这一概念中汲取灵感,进一步引导 LMM 总结每个类别最显著的特征。具体来说,在获得扩展的尾类描述列表后,我们通过以下[提示 4]和模板 2,为给定的类 y 获取包含最显著特征的类特征模板 Cy: [提示 4] “请使用模板 2 总结类 [y]} 的最显著特征"。模板 2:“具有{特征 1}{特征 2}{......}的类别[y]的照片”。这个过程可以引导 LMM 重新思考和总结最显著的特征,并为每个类别 y 生成类别特征模板 Cy。此外,由于我们的重点是检查图像的特征信息是否能代表其所需的类别,因此在类别特征模板中不包含场景信息。然后,我们介绍迭代评估模块的细节。
核心思想:
1、利用LLM+Prompt模板为每一个类生成显著特征,并根据显著特征生成每一个类的特征模板
如图 5 所示,我们的迭代评估模块反复进行以下三个步骤:(1)检测。为了识别质量较差的图像,我们首先利用 CLIP 强大的图像与文本对齐能力,将生成的图像的特征与其类特征模板 Cy 用余弦相似度指标进行匹配,如下所示:
其中, 表示 CLIP 的视觉编码器,表示 CLIP 的文本编码器。如果图像 的相似度得分 S 低于阈值 µ,则图像将被检测为低质量图像并被过滤掉。接下来,同样受思维链[46]的启发,我们提出了以下改进描述的提示。具体来说,如果 被识别为质量较低的图像,我们会根据 CLIP 提供的反馈(即[提示 5]),提示 LLM 改进其相应的描述,以更准确地表示预定的类别 y: “这个描述似乎不能代表 [y] 类。您能否对其进行改进,以增强 [y] 类的显著特征?" (3) 重新生成。最后,T2I 模型根据改进后的文字描述重新生成图像 。
核心思想:
1、如果相似度不高,因为文生图容易出错,因此重新生成图片。结合特征模板让LLM重新生成描述词。
2、利用新的描述词(特征模板强化过的描述词)(Prompt5)输入到T2I中,重新生成图片。
3、如此迭代直到相似度准确
4.2 混合平衡
有了生成的新的尾部类图像,最后的问题是如何有效地利用这些生成数据和原始数据来很好地进行长尾识别。由于生成数据和原始长尾数据之间存在领域差距 [38],我们提出了一种名为 BalanceMix 的方法来应对这一挑战。我们首先将原始数据和生成数据定义为 Do 和 Dg。然后,BalanceMix 从 Do 中平衡采样 [5] 图像 xi,并从 Dg 中采样图像 xj。同时,它将图像 xi 和 xj 及其对应的标签混合在一起,标记为:
其中,λ 为 Beta (0,1) 分布。最后,我们在所有混合数据对上使用 LORA [18] 对 CLIP 的视觉编码器进行微调,以实现高效的长尾识别。
5. 总结
如果想要学习更多深度学习论文,大家可以点个关注并订阅,持续学习、天天进步
你的点赞就是我更新的动力,如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~