首页 > 其他分享 >2024-03-18 闲话

2024-03-18 闲话

时间:2024-03-18 18:13:45浏览次数:16  
标签:03 input 18 feature label 2024 representation theta linear

今天听了 [FAI] UMich 胡威 | 神经网络表示中的隐藏结构

【Neural Collapse】

假设我们的神经网络在经过映射 \(h\) 之后再经过 Linear + softmax 得到输出,考虑经过 \(h\) 映射后的 representation。如果是分类任务(总共 \(T\) 类),那么会根据 input 的 label 聚合到 \(T\) 个点。同时这些点有非常好的特征,其两两之间夹角 \(\alpha\) 满足 \(\cos \alpha = -\frac{1}{T-1}\)

这个结论是对大量实验数据进行可视化得到的,现在的研究行至:

记原先的 Loss function 为 \(L(\theta,W,B)=\sum\limits_{i=1}^n l(W h_{\theta}(x_i) + b) + \lambda||(\theta,W,b)||\),因为神经网络( \(h_{\theta}\) )的表现能力很强,所以可以将 \(h_{\theta}(x_i)\) 换成 \(h_i\),这样就不用对 \(h_{\theta}\) 进行研究了。

最后的结论是在这个 setting 下确实会收敛到 \(K\) 个点,它们之间的夹角也满足上面说的性质。但是这个 drawback 也太显然了,怎么能忽略 \(h_{\theta}\) 呢?

不难发现这个研究至此都认为 representation 和 label 极度相关,但是这和 input 到底有没有关系呢?那么 UMich 老师的研究的 motivation 便是这样的。

实验的做法就是构造 label 和 input 的 mismatch,在 CIFAR-10 中将两个类的图片混合成一个类。结果确实是 collapse 到了 5 个点。但是把聚合到一起的点(下文称其为一个集合里面的点)拉出来再做 visualization,效果是这样的:(这里我们仍然认为每个集合里面的点 label 相同,我们只是将点附上了颜色)

image

其实不同 label 的 feature 信息还是保留到 representation 里面。这个发现的作用是我们可以通过聚类恢复原有的 label,再拿来训练 Linear 层并进行 softmax,最后 test accuracy 能做到和原始给 10 个 label 几乎相同。这样的话 supervision 中提供的信息量可以折半。

后面开展了 “semantic similarity 是否对子结构中的聚合有影响” 的研究,利用了 CIFAR-100 中的 super class 将图片 label 合并,下图是某个 super class 可视化之后的结果。感觉上还是可解释的。

image

有一个蒸馏算法应用了这个结论,将 teacher model 的 linear+softmax 层之前的 representation 提取出来,然后进行 linear projection。motivation 是通过投影轴进行信息提取,并构造一些 pseudo subclass(在原先分类任务的 class 变成了 super class),通过 linear + softmax 得到在这些伪分类上的概率,拿去给学生模型学习。学生模型拟合 subclass 结果之后再将这些结果合并(进行 构造 subclass 过程的逆过程)得到真正分类任务的标签概率。

这个方法能 work 的原因,按照我的理解是,它把 feature 具体化(subclass)再聚类了。

【(linear) mode connectivity】

假设 \(f_!,f_2\) 是分别针对某一任务分别训练的两个(结构相同,只是训练过程不同)神经网络(已经收敛,test accuracy 都是最好的),那么在某些 condition 下,模型 \(\alpha f_1+(1-\alpha)f_2\) 也能达到差不多高的 test accuracy。这其实表明两个模型所收敛到的 minima 是(在高维空间中是)相连的。

有两种方法可以实现这样的 connectivity:

  • 将 \(f_!\) 训练 \(k\) 个 epoch(据说 \(k=5\)),然后令 \(f_2=f_1\)(拷贝一份),再用不同的训练方法训练 \(f_!,f_2\) 直到收敛

  • 训练 \(f_1\),令 \(f_2=f_1\)。再将 \(f_2\) 中每层的 neuron 重新排列来实现 \(f_1,f_2\) 层间 neuron 的 matching,数学上来讲就是最小化:

    • weight matching:\(\displaystyle \sum_{i=1}^L ||W_A^{(i)} -P^{(i)} W_B^{(i)} \left(P^{(i-1)}\right)^T||\),\(L\) 表示网络层数,\(P\) 表示置换矩阵,我的理解是有 \(n\) 个位置是 \(1\)
    • activation matching:\(\displaystyle \sum_{i=1}^L ||H_A^{(i)} -P^{(i)} H_B^{(i)} ||\),\(L\) 表示网络层数,\(P\) 表示置换矩阵,\(H\) 和 \(W\) 的区别顾名思义,一个是经过 activation function 之后的表示,一个是参数。

这里不难有个 motivation 是将 modelwise 的 connectivity 强化到 layerwise 的 connectivity,结论是:新模型每层 feature representation 可以通过两个模型线性插值得到,那么可以认为新模型和原来两个模型效果相同。另有两页 slide:

image

上面主要是讲了 L(linear)L(layer)F(feature)C(connectivity) 的两个条件,下面讲了 LLFC 和 permutation method(第二个方法) 之间的关系。

image

有两个感受:第一是关注 input feature 是非常重要的,将 input feature 和 hidden representation 联系起来有些奇效;第二是理论还是太难了,感觉 paper 有大量放缩凑系数。

标签:03,input,18,feature,label,2024,representation,theta,linear
From: https://www.cnblogs.com/yspm/p/18079865/WasteWords20240318

相关文章

  • 云原生周刊:Istio 加入 Phippy 家族 | 2024.3.18
    开源项目推荐ko"ko"是一个用于构建和部署Go应用程序的简单、快速的容器镜像构建工具。它适用于那些镜像中只包含单个Go应用程序且没有或很少依赖于操作系统基础镜像的情况(例如没有cgo,没有操作系统软件包依赖)。"ko"在本地机器上通过执行"gobuild"的方式构建镜像,因此不......
  • oracle数据库执行报错:ORA-01861: 文字与格式字符串不匹配
    报错sql:selectto_date(sysdate,'yyyy-mm-dd')afromuser原因是:to_date()函数第一个参数,要求的是一个字符串格式,当这个值是一个日期格式的时候就会报错,解决方案:方案一:使用to_char(日期,'yyyy-mm-dd')将日期转为字符,再使用to_date(),方案二:修改数据库配置,让数据库隐式......
  • Go03-函数+包+异常处理
    Go03-函数+包+异常处理1.函数的基本介绍funcmain(){ //1为完成某一功能的程序指令的集合,成为函数。 //2函数分为自定义函数和系统函数。 //3函数的定义,使用关键字func来定义一个函数。 /* func函数名(形参列表)(返回值列表){ 函数执行的语句 return返回......
  • 2024年企业架构TOGAF认证培训
    企业架构TOGAF培训简介TOGAF证书介绍企业架构可依据业务战略形成顶层设计,帮助企业形成数字化规划。目前,业界最有名的企业架构框架是TOGAF(TheOpenGroupArchitectureFramework)。TOGAF由国际标准权威组织TheOpenGroup制定。TheOpenGroup于1993年开始应客户要求制定系......
  • CorelDRAW2024中文免费专业平面设计软件,让创意无限飞翔!
    CorelDRAW2024是一款功能强大的专业平面设计软件,它提供了丰富的绘图工具和特效,使用户能够轻松创建各种类型的设计,如图标、海报、宣传册等。无论是从事平面设计、插画、品牌设计还是其他创意领域,CorelDRAW2024都能满足你的需求,帮助你释放无限的创意潜力,让你的设计脱颖而出。......
  • 打造专业人像照片的必备神器Portraiture2024免费中文版PS/LR专用智能磨皮插件
    打造完美肤质,PortraiturePS/LR专用智能磨皮插件让你的照片焕发魅力副标题:让你的照片告别粗糙皮肤和毛孔,展现自然细腻的肤质在摄影后期处理中,给照片进行磨皮和肤质优化是一项必不可少的步骤。而今天,我们为你带来了一款专为Photoshop(PS)和Lightroom(LR)设计的智能磨皮插件——Po......
  • Ubuntu 18.04.06 PCL C++学习记录(四)知识点补充
    @[TOC]PCL中K-Dtree模块的学习学习背景参考书籍:《点云库PCL从入门到精通》以及官方代码PCL官方代码链接学习内容PCL库中的智能指针和回调函数智能指针pcl::PointCloud<pcl::PointXYZRGBA>::PtrCloudOut(newpcl::PointCloud<pcl::PointXYZRGBA>());//存储输出点云......
  • 代码随想录算法训练营第五十天 | 123. 买卖股票的最佳时机 III,188. 买卖股票的最佳时
    123.买卖股票的最佳时机III 已解答困难 相关标签相关企业 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。注意:你不能同时参与多笔交易(你必须在再次购......
  • 2024.03.17【补】【品牌设计】佐藤可士和-品牌设计的六大方法
    品牌设计的六大元素包括1.商标2.产品3.空间4.建筑5.城市6.方法1.商标:商标在现代品牌战略中,是必不可缺少的一部分,商标就是品牌的门面,让顾客看见商标就能认识到这是哪一个品牌。2.产品:产品应该通过使用简洁明了的视觉标志,从整体的角度来捕捉产品的定位,使用售卖的产品来开展......
  • 20240318每日一题题解
    20240318每日一题题解Problem若将一个正整数化为二进制数,在此二进制数中,我们将数字\(1\)的个数多于数字\(0\)的个数的这类二进制数称为\(A\)类数,否则就称其为\(B\)类数。例如:\((13)_{10}=(1101)_2\),其中\(1\)的个数为\(3\),\(0\)的个数为\(1\),则称此数为\(A\)......