无独有偶,近期发布在 arXiv 上的论文《Addressing Representation Collapse in Vector Quantized Models with One Linear Layer》[1] 提出了改善 VQ 的另一个技巧:给编码表加一个线性变换。这个技巧单纯改变了编码表的参数化方式,不改变 VQ 背后的理论框架,但实测效果非常优异,称得上是简单有效的经典案例。
基础
由于在《VQ-VAE的简明介绍:量子化自编码器》[2]、《简单得令人尴尬的FSQ:“四舍五入”超越了VQ-VAE》等文章中我们已经多次介绍了 VQ 和 VQ-VAE 了,所以这里不再娓娓道来,直接给出普通 AE 和 VQ-VAE 的数学形式:
▲ SimVQ 的实验效果
根据论文的描述,SimVQ 的代码就是在第一行 VQGAN 的代码上改的,改动就只有往 VQ 层插入了个线性变换,然后提升就非常显著了,不仅在相同编码表大小下达到了最优的重构质量,还能通过增加编码表大小进一步提高重构质量,这足以体现 SimVQ 的魅力——简单且有效。
可以看到:
2. 由于 的存在,不管编码i有没有被选中,它的更新都几乎不会为零;
3. 相当于是高利用率方向的投影,它使得每个编码都往高利用率方向走。
抛开 VQ 的背景,像 SimVQ 这种引入额外的参数但又在数学上等价,即不改变模型的理论拟合能力,只改变优化过程的动力学的做法,我们称为“过参数化(Overparameterization)”。
这是因为不少人认为,深度学习模型之所以“好训”,过参数化有不可忽视的作用,因此贸然去掉已经充分验证的模型的过参数化风险很大。这里的“好训”,主要是指梯度下降这种理论上容易陷入局部最优的方法居然经常可以找到一个实际表现很好的解,这本身就是一件很不可思议的事情。
还有《On the Optimization of Deep Networks: Implicit Acceleration by Overparameterization》[3] 等工作,表明过参数化隐式地加速了训练,作用类似于 SGD 中的动量。
最后,VQ 本质上可以理解为一种稀疏训练方案,所以 SimVQ 所带来的启发和改动,也许还能用于其他稀疏训练模型,比如 MoE(Mixture of Experts)。
本文介绍了 VQ(Vector Quantization)的另一个训练技巧——SimVQ——只在 VQ 的编码表多加一个线性变换,无需其他改动,就能达到加速收敛、提升编码利用率、降低重构损失等效果,相当简单有效。
参考文献
[1] https://papers.cool/arxiv/2411.02038
[2] https://kexue.fm/archives/6760
[3] https://papers.cool/arxiv/1802.06509
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧