0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

提供一种logit的调整方法来应对长尾分布的问题

工程师邓生 来源:GiantPandaCV 作者:Garfield 2022-09-05 14:31 次阅读

1. 论文信息

2. 介绍

在传统的分类和识别任务中,训练数据的分布往往都受到了人工的均衡,即不同类别的样本数量无明显差异,如最有影响力的ImageNet,每种类别的样本数量就保持在1300张左右。

aece2de2-2cd9-11ed-ba43-dac502259ad0.jpg

在实际的视觉相关任务中,数据都存在如上图所示的长尾分布,少量类别占据了绝大多少样本,如图中Head部分,大量的类别仅有少量的样本,如图中Tail部分。解决长尾问题的方案一般分为4种:

重采样 (Re-sampling):采样过程中采样不同的策略,如对tail中的类别样本进行过采样,或者对head类别样本进行欠采样。

重加权 (Re-weighting):在训练过程中给与每种样本不同的权重,对tail类别loss设置更大的权重,这样有限样本数量。

新的学习策略 (Learning strategy):有专门为解决少样本问题涉及的学习方法可以借鉴,如:meta-learning、transfer learning。另外,还可以调整训练策略,将训练过程分为两步:第一步不区分head样本和tail样本,对模型正常训练;第二步,设置小的学习率,对第一步的模型使用各种样本平衡的策略进行finetune。

其实就笔者喜欢的风格而言,我对重加权这一方向的工作更为喜欢,因为通过各种统计学上的结论,来设计很好的loss改进来解决长尾/不均衡分布问题,我喜欢这类研究的原因是,他们(大部分)实现简单,往往只需几行代码修改下loss,就可以取得非常有竞争力的结果,因为简单所以很容易运用到一些复杂的任务中。

而从“奥卡姆剃刀”来看,我觉得各种迁移模型的理念虽然非常好,从头部常见类中学习通用知识,然后迁移到尾部少样本类别中,但是往往会需要设计复杂的模块,有增加参数实现过拟合的嫌疑,我认为这其实是把简单问题复杂化。我觉得从统计方面来设计更加优美,因此本文来介绍一篇我非常喜欢的从统计角度出发的工作。这篇论文来自Google Research,他们提供了一种logit的调整方法来应对长尾分布的问题。由于研究风格更偏向 machine learning, 所以论文风格更偏向统计类。

本文首先总结了对于logit的调整方法:

聚焦于测试阶段:对学习完的logit输出进行处理(post-hoc normalization),根据一些先验假设进行调整。

聚焦于训练阶段:在学习中调整loss函数,相对平衡数据集来说,调整优化的方向。

aeddeafc-2cd9-11ed-ba43-dac502259ad0.png

如上图,这两种方法都有许多较为优秀的工作,但是文中描述了这两种方法的几种限制:

weight normalization非常依赖于weight的模长会因为class的data数量稀少而变小,然而这种假设非常依赖于优化器的选择

直接修改loss进行重加权,也会影响模型的表征学习,从而导致优化过程不稳定,同时模型可能对尾部类过拟合,伤害了模型表征学习能力。

论文的motivation就是克服这些缺点,让不同类(head and tail classed)之间的logit能有一个相对较大的margin,设以一个consistent的loss,来让模型的性能更好。

3. 问题设定和过往方法回顾

3.1 Problem Settings

论文先从统计学的角度定义了一下这个problem settings,其实就是训练一个映射,让这个scorer的误分类损失最小:

但是类别不平衡的学习的setting导致P(y)分布是存在高度地skewed,使得许多尾部类别标签出现的概率很低。在这里,错误分类的比例就不是一个合适的metric: 因为模型似乎把所有的尾部类别都分类成头部类别也更够取得比较好的效果。所为了解决这个问题,一个自然的选择是平衡误差,平均每个类的错误率,从而让测试计算出的metric不是有偏的。

论文总结出了一个比较general的loss形式:

这里 是类别 yy 的权重;是另一个超参, 用来控制 margin 的大小。

3.2 Post-hoc weight normalization

由于头部类别多,容易过拟合,自然会对头部类别overconfidence,所以我们需要通过一定的映射来调整logit。具体到调整的策略,自然是让大类置信度低一点,小类置信度高一点。

for , where and . Intuitively, either choice of upweights the contribution of rare labels through weight normalisation. The choice is motivated by the observations that tends to correlate with . Further to the above, one may enforce during training.

这里引用了一些其他做long-tail learning的论文,可以参考以便更好地对这一块进行理解。

3.3 Loss modification

至于对于loss的修改,就是很直接了在前面加一个权重,对于的取值,自然就是各个工作重点关注和改进的地方。

af02f478-2cd9-11ed-ba43-dac502259ad0.png

论文给予原有的各种方法各种比较全面的总结。

4. 方法

首先进行Post-hoc logit adjustment:

其实等号左边就是一个根据类别的样本数进行re-weighting。但是为了在exp的线性变换加上temperature时候不影响排序问题,所以把等号右边变成上式,通过这种方式放缩不会导致原本的排序出现问题。从而使得重加权仍能够给尾部类更高的权重。

af2dc766-2cd9-11ed-ba43-dac502259ad0.png


把loss改写成易于理解的方式就如下:

下面这个更为直接的loss被成为为pairwise margin loss,它可以把 y 与 y' 之间的margin拉大。

然后就是实现结合:

af47e862-2cd9-11ed-ba43-dac502259ad0.png

通过一些特殊的取值和另外的trick,可以实现两者的结合。

5. 实验结果

af5f3152-2cd9-11ed-ba43-dac502259ad0.png

这张图非常有意思,可以看出两个设计理念非常有效果。

af842f0c-2cd9-11ed-ba43-dac502259ad0.pngafa47d2a-2cd9-11ed-ba43-dac502259ad0.png

可以发现该方法在头部类和尾部类的性能都有所提升。

6. 结论

摘要:这篇写得很好的论文重新审视了logit调整的想法,以解决长尾问题。本文首先建立了一个统计框架,并以此为基础提出了两种有效实现对数平差的方法。他们通过在合成和自然长尾数据集上使用几个相关基线对其进行测试,进一步证明了这种方法的潜力。



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 映射
    +关注

    关注

    0

    文章

    47

    浏览量

    15806
  • 双线性变换
    +关注

    关注

    0

    文章

    2

    浏览量

    5563

原文标题:Google提出面向长尾分布的logit的调整新方法

文章出处:【微信号:GiantPandaCV,微信公众号:GiantPandaCV】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一种创新的动态轨迹预测方法

    本文提出了一种动态轨迹预测方法,通过结合历史帧和历史预测结果提高预测的稳定性和准确性。它引入了历史预测注意力模块,以编码连续预测之间的动态关系,并通过三重因子注意力模块实现了最先进的性能。本
    的头像 发表于 10-28 14:34 339次阅读
    <b class='flag-5'>一种</b>创新的动态轨迹预测<b class='flag-5'>方法</b>

    一种基于光强度相关反馈的波前整形方法

    。在这里,课题组提出了一种基于光强度相关反馈的波前整形方法,该方法使用遗传算法在比传统方法更短的时间和更少的迭代次数内实现所需的波前整形。在该方法
    的头像 发表于 10-27 16:28 213次阅读
    <b class='flag-5'>一种</b>基于光强度相关反馈的波前整形<b class='flag-5'>方法</b>

    一种简单高效配置FPGA的方法

    本文描述了一种简单高效配置FPGA的方法,该方法利用微处理器从串行外围接口(SPI)闪存配置FPGA设备。这种方法减少了硬件组件、板空间和成本。
    的头像 发表于 10-24 14:57 481次阅读
    <b class='flag-5'>一种</b>简单高效配置FPGA的<b class='flag-5'>方法</b>

    一种完全分布式的点线协同视觉惯性导航系统

    在本文中,我们提出了一种完全分布式的点线协同视觉惯性导航系统。我们通过蒙特卡罗模拟和真实环境数据集,在稠密特征或稀疏特征环境下将所提出的算法与其他四算法进行了比较。所有结果表明,我们的PL-CVIO优于独立的MSCKF和CVI
    的头像 发表于 09-30 14:45 348次阅读
    <b class='flag-5'>一种</b>完全<b class='flag-5'>分布</b>式的点线协同视觉惯性导航系统

    THS4551是否可以通过在Vocm引脚处接入电阻调整分压比例的方法来配置输出共模电压?

    引脚处接入电阻调整分压比例的方法来配置输出共模电压。 打个比方,比如 Vs+ = 5V,Vs- = 0V (PD常On)时,是否可以如下图所示,通过在Vocm和Vs-间接入300k电阻将输出信号共模电压调整值1.66V左右。
    发表于 08-06 07:14

    一种无透镜成像的新方法

    使用OAM-HHG EUV光束对高度周期性结构进行成像的EUV聚光显微镜 为了研究微电子或光子元件中的纳米级图案,一种基于无透镜成像的新方法可以实现近乎完美的高分辨率显微镜。 层析成像是一种强大的无
    的头像 发表于 07-19 06:20 353次阅读
    <b class='flag-5'>一种</b>无透镜成像的新<b class='flag-5'>方法</b>

    rup是一种什么模型

    部分)开发的,它基于统建模语言(UML)和面向对象的软件开发方法。RUP提供一种结构化的方法来开发软件,它包括
    的头像 发表于 07-09 10:13 1212次阅读

    AD8338有没有可行的方法来测量大增益?

    AD8338是款VGA芯片,可变增益范围为-10dB至70dB。然而,理论上的70dB增益过大,导致来自源的输入信号非常小,容易受到干扰,导致70dB增益未得到验证。有没有可行的方法来测量大增益?
    发表于 05-21 07:06

    如果是使用六步方波的方法来控制电机,要如何实现过电流保护?

    请问下如果是使用六步方波的方法来控制电机,要如何实现过电流保护? 以免电流过大造成板子损坏
    发表于 04-22 08:10

    下通过采用HPC方法来解决汽车行业工程挑战的两个具体实例

    大家可能都知道,将Ansys解决方案与高性能计算(HPC)相结合,可带来巨大的投资回报(ROI)。接下来,让我们来看下通过采用HPC方法来解决汽车行业工程挑战的两个具体实例。
    的头像 发表于 03-12 14:29 540次阅读

    led驱动电源如何调整电流大小的方法

    LED(Light Emitting Diode)是一种半导体器件,经常被用作照明、显示和指示灯。为了驱动LED,需要使用LED驱动电源提供稳定的电流。调整LED的电流大小对于控制L
    的头像 发表于 02-27 17:50 6281次阅读

    一种使用石墨阳极制造快速充电锂离子电池的新方法

    锂离子电池 (LiB) 是目前广泛使用的电池,为我们日常使用的大多数电子产品提供动力。因此,确定可扩展的方法来提高这些电池的充电速度是能源领域的主要目标之,因为它不需要改用全新的电池成分。
    发表于 01-23 15:37 391次阅读
    <b class='flag-5'>一种</b>使用石墨阳极制造快速充电锂离子电池的新<b class='flag-5'>方法</b>

    一种简单易行的可编程振荡器构建方法

    本文介绍一种简单易行的可编程振荡器构建方法,其中振荡频率和幅度可以通过使用digiPOT彼此独立地调节。
    发表于 01-15 10:05 229次阅读
    <b class='flag-5'>一种</b>简单易行的可编程振荡器构建<b class='flag-5'>方法</b>

    触摸色彩滑环控制系统方案

    目前触控的需求几乎覆盖在所有应用领域,它提供一种用户友好、高效的方法来控制或调整各种设备或应用程序中的设置。
    的头像 发表于 01-13 17:10 672次阅读
    触摸色彩滑环控制系统方案

    电源电压变化对晶振性能的影响以及应对方法

    电源电压变化对晶振性能的影响以及应对方法  电源电压的变化是指电源输入电压的波动或变化,它可能产生系列的问题,对晶振的性能和工作稳定性产生影响。本文将详细讨论电源电压变化对晶振的影响,并提供应对方法
    的头像 发表于 12-18 14:09 1335次阅读