Tan Z., Zhang Y., Yang J. and Yuan Y. Contrastive learning is spectral clustering on similarity graph. ICLR, 2024.
概
本文将对比学习与谱聚类联系在一起.
主要内容
-
我们知道, 一般的对比学习形如:
minθEx,x+,{x−k}Kk=1−logexp(sim(f(x;θ),f(x+;θ)))∑Kk=1exp(sim(f(x;θ),f(x−k;θ))),
其中 sim(⋅,⋅) 是相似度函数, 比如标准的 InfoNCE 采取的是
sim(x,y)=1τ⋅xTy∥x∥2∥y∥2.
这里 τ>0 为 temperature.
-
现在, 令 z=f(x) 为隐变量, 然后让我们简单地关注如下问题:
minZL=Ez,z+,{z−k}Kk=1−logexp(sim(z,z+))∑Kk=1exp(sim(z,z−)),
-
首先, 进行一些简化:
L=Ez,z+,{z−k}Kk=1−logexp(sim(z,z+))∑Kk=1exp(sim(z,z−))Lmain=Ez,z+[−sim(z,z+)]+LR.
其中 LR 是一正则化项.
-
进一步地, 假设 Ez,z+ 所服从的分布为 P∈[0,1]N×N, 满足 ∑ijPij=1, 则
Lmain=−∑ijPijsim(zi,zj).
-
在特殊情况下, 如
sim(zi,zj)=−∥zi−zj∥22,
我们有
Lmain=−∑ijPijsim(zi,zj)=∑ijPij∥zi−zj∥22=Tr(ZTLZ),
其中 L=diag(1TP)−P 为 P 的 Laplacian 矩阵.
-
换言之, L 在这种情况下相当于是一个谱聚类的效果.
-
进一步地, 作者从谱聚类的角度解释了为什么 InfoNCE 是这个样子的 (请会看原文, 很有意思).
-
于是本文设计了 kernel-InfoNCE 损失:
sim(x,y;γ,τ)=−∥x−y∥γτ.
原文代码
[official-code]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix