关注上方“深度学习技术前沿”,选择“星标公众号”,
作者:Hassassin
知乎链接:https://zhuanlan.zhihu.com/p/121507249
本文仅供学习参考,如有侵权,请联系删除!
只需要一行代码,立刻提升迁移性能。
这就是我们出的新方法:批量核范数最大化(Batch Nuclear-norm Maximization)。
本文中我们通过理论推导和分析,发现类别预测的判别性与多样性同时指向批量响应矩阵的核范数,这样就可以最大化批量核范数来提高迁移问题中目标域的性能。
在迁移任务中,目标域由于没有标签,常常导致分界面附近混淆较多的数据。而我们基于这一现象,分析了批量类别响应组成的批量矩阵A,并希望从判别性和迁移性进行优化。
所谓判别性,指的是预测类别的过程是否坚定。比如对于二类问题的响应
[0.9,0.1]判别性较高,
[0.6,0.4]判别性较低。
常见的方法采用最小化熵来得到较高的判别性。我们发现矩阵A的F范数与熵有着相反的单调性,从而可以通过最大化A的F范数来提升判别性。
多样性可以近似表达为批量矩阵中预测的类别数量,即预测的类别数量多则响应多样性大。
考虑不同类别响应的线性相关性,如果两个响应属于不同类别,那么响应会差别较大线性无关,如果属于相同类别则近似线性相关。
[0.9,0.1]与[0.1,0.9]线性无关,
[0.9,0.1]与[0.8,0.2]近似线性相关。
那么预测类别数也就是矩阵中最大的线性无关向量数,即矩阵的秩。
核范数是矩阵奇异值的和,在数学上有两点结论
核范数与F范数相互限制界限,
核范数是矩阵秩的凸近似。
所以类别预测的判别性与多样性同时指向矩阵的核范数,我们可以最大化矩阵核范数(BNM)来提升预测的性能。
比如上图中,如果使用熵最小化(EntMin)和BNM来优化,当熵相同的时候,使用BNM优化更容易使得核范数更大,从而正确预测绵羊的样本(保障类别比重较少的数据有利于提高整体的多样性)
在常用的框架Pytorch与Tensorflow中,均可通过一行代码实现BNM
Pytorch:
L_BNM = -torch.norm(A,'nuc')
Tensorflow:
L_BNM = -tf.reduce_sum(tf.svd(A, compute_uv=False))
我们将BNM应用到三个标签不足的场景中,半监督学习,领域适应和开放域物体识别。实验表明,在半监督学习中可以提升现有方法,在领域适应中BNM约束明显优于EntMin,并且单一的BNM约束可以达到与现有方法相近的性能,如下图:
在开放域物体识别中单一的BNM约束超过有着冗杂损失函数的UODTN,达到SOTA性能,如下图:
同时在开放域物体识别中,我们统计了随机采样的批量响应中未知类所占比例,如图:
我们发现BNM确实可以保持未知类所占比例,从而保障整体预测的类别数量与准确性,从而保持多样性。
值得一提的是,我们的方法主要针对的是缺少标签场景下分界面附近数据密度较大的问题,对于迁移相关的任务有着较为普遍的改善价值。
论文地址:https://arxiv.org/pdf/2003.12237.pdf
代码地址:https://github.com/cuishuhao/BNM
推荐阅读
(点击标题可跳转阅读)
干货|最全面的卷积神经网络入门教程
史上最强神经网络绘制神器来啦!一系列暗黑操作!
【目标检测系列】CNN中的目标多尺度处理方法
撒花!港中文周博磊--强化学习课程完结(附课件下载!)
【基础积累】1x1卷积到底有哪些用处?
一文详解深度学习中的Normalization:BN/LN/WN
重磅!DLer-计算机视觉交流群已成立!
欢迎各位Cver加入计算机视觉微信交流大群,本群旨在交流图像分类、目标检测、点云/语义分割、目标跟踪、机器视觉、GAN、超分辨率、人脸检测与识别、动作行为/时空/光流/姿态/运动、模型压缩/量化/剪枝、NAS、迁移学习、人体姿态估计等内容。更有真实项目需求对接、求职内推、算法竞赛、干货资讯汇总、行业技术交流等,欢迎加群交流学习!
进群请备注:研究方向+地点+学校/公司+昵称(如图像分类+上海+上交+小明)
广告商、博主请绕道!
???? 长按识别添加,邀请您进群!