如果你有被 Sora 生成的视频震撼到,那你就已经见识过集中模型在视觉生成方面的巨大潜力。当然,集中模型的潜力并不止步于此,它在许多其它分歧领域也有着让人期待的应用前景,更多案例可参阅机器之心不久前的报道《爆火Sora背后的技术,一文综述集中模型的最新发展方向》。
近日,来自新加坡国立大学的尤洋团队、加州大学伯克利分校、Meta AI Research 的一项新研讨找到了集中模型的一个新应用方向:用来生成神经网络的模型参数!
论文地址:https://arxiv.org/pdf/2402.13144.pdf
项目地址:https://github.com/NUS-HPC-AI-Lab/Neural-Network-Diffusion
论文标题:Neural Network Diffusion
这样一来,似乎就可以运用现有的神经网络来轻松生成新的神经网络了!这一点让 Yann LeCun 也忍不住点赞分享。不仅如此,生成的模型的本能表现甚至还能超越原始模型。
集中模型的起源可以追溯到非平衡热力学。2015 年时,Jascha Sohl-Dickstein 等在论文《Deep Unsupervised Learning using Nonequilibrium Thermodynamics》中最早运用集中历程来渐进式地移除输入中的噪声,进而生成清晰的图象。
之后的 DDPM 和 DDIM 等研讨工作优化了集中模型,使其训练范式有了前向和反向历程的鲜明特点。
当时,集中模型生成的图象的质量还未达到理想水平。
GuidedDiffusion 这项工作进行了充分的消融研讨并发现了一个更好的架构;这项开创性的工作开始让集中模型在图象质量上超越鉴于 GAN 的步骤。之后出现的 GLIDE、Imagen、DALL·E 2 和 Stable Diffusion 等模型已经可以生成照片级真实感的图象。
尽管集中模型在视觉生成领域已经取得了巨大成功,但它们在其它领域的潜力还相对欠开发。
新加坡国立大学、加州大学伯克利分校、Meta AI Research 近日的这项研讨则发掘出了集中模型的一个惊人能力:生成高本能的模型参数。
要知道,这项任务与传统的视觉生成任务存在根本性的差异!参数生成任务的重心是创造能在给定任务上表现良好的神经网络参数。之前已有研讨者从先验和概率建模方面探索过这一任务,比如随机神经网络和贝叶斯神经网络。但是,之前还没有人研讨运用集中模型来生成参数。
如图 1 所示,仔细观察神经网络的训练历程与集中模型,可以发现鉴于集中的图象生成步骤与随机梯度下降(SGD)学习历程有一些共同点:1)神经网络的训练历程和集中模型的反向历程都可以被看作是从随机噪声/初始化转换成特定分布的历程;2)通过多次增添噪声,可以将高质量图象和高本能参数降级为简单分布,比如高斯分布。
该团队鉴于上述观察提出了一种用于参数生成的新步骤:neural network diffusion,即神经网络集中,缩写为 p-diff,其中的 p 是指参数(parameter)。
该步骤的思路很直接,就是运用标准的隐集中模型来分解神经网络的参数集,因为集中模型能够将给定的随机分布转换为一个特定的分布。
他们的步骤很简单:组合运用一个自动编码器和一个标准隐集中模型来学习高本能参数的分布。
首先,对于一个运用 SGD 优化器训练的模型参数子集,训练一个自动编码器来提取这些参数的隐含表征。然后,运用一个标准隐集中模型从噪声开始分解隐含表征。最后,用经过训练的自动编码器来处理分解的隐含表征,得到新的高本能模型参数。
这种新步骤表现出了这两个特点:1)在多个数据集和架构上,其本能表现能在数秒时间内与其训练数据(即 SGD 优化器训练的模型)媲美,甚至还能有所超越;2)生成的模型与训练得到的模型差异较大,这说明新步骤能够分解新参数,而不是记忆训练样本。
神经网络集中
介绍集中模型
集中模型通常由前向和反向历程构成,这些历程组成一个多步调的链式历程并且可通过时间步调索引。
前向历程。给定一个样本 x_0 ∼ q(x),前向历程是在 T 个步调中逐渐增添高斯噪声,得到 x_1、x_2……x_T。
反向历程。分歧于前向历程,反向历程的目标是训练一个能递归地移除 x_t 中的噪声的去噪网络。该历程是多个步调的反向历程,此时 t 从 T 一路降至 0。
神经网络集中步骤概述
神经网络集中(p-diff)这种新步骤的目标是鉴于随机噪声生成高本能参数。如图 2 所示,该步骤包含两个历程:参数自动编码器和参数生成。
给定一组已经过训练的高本能模型,首先选取其参数的一个子集并将其展平为一维向量。
之后,运用一个编码器提取这些向量的隐含表征,同时还有一个解码器负责鉴于这些隐含表征重建出参数。
然后,训练一个标准的隐集中模型来鉴于随机噪声分解这种隐含表征。
训练之后,就可运用 p-diff 通过这样的链式历程来生成新参数:随机噪声 → 反向历程 → 已训练的解码器 → 生成的参数。
尝试
该团队在论文中给出了详细的尝试设置,可帮助其他研讨者复现其结果,详见原论文,我们这里更关注其结果和消融研讨。
结果
表 1 是在 8 个数据集和 6 种架构上与两种基准步骤的结果对照。
鉴于这些结果,可以得到以下观察:1)在大多数尝试案例中,新步骤能取得与两种基准步骤媲美或更优的结果。这表明新提出的步骤可以高效地学习高本能参数的分布,并能鉴于随机噪声生成更优的模型。2)新步骤在多个分歧数据集上的表现都很好,这说明这种步骤具有很好的泛化本能。
消融研讨和分析
表 2(a) 展示了分歧训练数据规模(即原始模型的数量)的影响。可以看到,分歧数量的原始模型的最佳结果之间的本能差异其实不大。
为了研讨 p-diff 在其它归一化层深度上的有效性,该团队还探索了新步骤分解其它浅层参数的本能。为了保证 BN 参数的数量相等,该团队为三组 BN 层(它们位于分歧深度的层之间)实现了新提出的步骤。尝试结果见表 2(b),可以看到在所有深度的 BN 层设置上,新步骤的表现(最佳准确度)都优于原始模型。
噪声增强的目的是提升训练自动编码器的稳健性和泛化能力。该团队对噪声增强在输入参数和隐含表征方面的应用进行了消融研讨。结果见表 2(c)。
此前,尝试评估的都是新步骤在分解模型参数子集(即批归一化参数)方面的效果。那么我们不禁要问:能否运用此步骤分解模型的整体参数?
为了解答这个问题,该团队运用两个小型架构进行了尝试:MLP-3 和 ConvNet-3。其中 MLP-3 包含三个线性层和 ReLU 激活函数,ConvNet-3 则包含三个卷积层和一个线性层。分歧于之前提到的训练数据收集策略,该团队鉴于 200 个分歧的随机种子从头开始训练了这些架构。
表 3 给出了尝试结果,其中将新步骤与两种基准步骤(原始步骤和集成步骤)进行了对照。其中报告了 ConvNet-3 在 CIFAR-10/100 以及 MLP-3 在 CIFAR-10 和 MNIST 上的结果对照和参数数量。
这些尝试表明新步骤在分解整体模型参数方面的有效性和泛化能力,也就是说新步骤实现了与基准步骤相当或更优的本能。这些结果也能体现新步骤的实际应用潜力。
但该团队也在论文中表明目前还无法分解 ResNet、ViT 和 ConvNeXt 等大型架构的整体参数。这主要是受限于 GPU 内存的极限。
至于为什么这种新步骤能够有效地生成神经网络参数,该团队也尝试探索分析了原因。他们运用 3 个随机种子从头开始训练了 ResNet-18 并对其参数进行了可视化,如图 3 所示。
他们通过 min-max 归一化步骤,分别得到了分歧层的参数分布的热力图。鉴于卷积层(Conv.-layer2)和全连接层(FC-layer18)的可视化结果,可以看到这些层中确实存在一定的参数模式。通过学习这些模式,新步骤就能生成高本能的神经网络参数。
p-diff 是单纯靠记忆吗?
p-diff 看起来能生成神经网络参数,但它究竟是生成参数还是仅仅记住了参数呢?该团队就此做了一番研讨,对照了原始模型和生成模型的差异。
为了进行量化对照,他们提出了一个近似度指标。简单来说,这个指标就是通过计算两个模型在错误预测结果上的交并比(IoU)来确定它们的近似度。然后他们鉴于此进行了一些对照研讨和可视化。对照结果见图 4。
图 4(a) 报告了原始模型和 p-diff 模型之间的近似度对照,其中涉及 4 种对照方案。
可以看到,生成的模型之间的差异比原始模型之间的差异大得多。另外,原始模型和生成的模型之间的最大近似度也低于原始模型之间的近似度。这足以表明,p-diff 可以生成与其训练数据(即原始模型)分歧的新参数。
该团队也将新步骤与微调模型和增添噪声的模型进行了对照。结果见图 4(b)。
可以看到,微调模型和增添噪声的模型很难超过原始模型。此外,微调模型或增添噪声的模型与原始模型之间的近似度非常高,这表明这两种操作步骤无法获得全新且高本能的模型。但是,新步骤生成的模型则表现出了多样的近似度以及优于原始模型的本能。
该团队也对照了隐含表征。结果见图 4(c)。可以看到,p-diff 可以生成全新的隐含表征,而增添噪声步骤只会在原始模型的隐含表征周围进行插值。
该团队也可视化了 p-diff 历程的轨迹。具体而言,他们绘出了在推理阶段的分歧时间步调生成的参数轨迹。图 5(a) 给出了 5 条轨迹(运用了 5 种分歧的随机噪声初始化)。图中红心是原始模型的平均参数,灰色区域是其标准差(std)。
随着时间步调增加,生成的参数整体上会更接近原始模型。但是也能看出,这些轨迹的终点(橙色三角形)与平均参数仍然有些距离。另外,这五条轨迹的形状也很多样化。
最后,该团队研讨了原始模型的数量(K)对生成的模型的多样性的影响。图 5(b) 可视化地展示了分歧 K 时原始模型与生成的模型之间的最大近似度。具体来说,他们的做法是生成 50 个模型,通过持续生成参数,直到生成的 50 个模型在所有情况下的表现均优于 76.5%。
可以看到,当 K=1 时,近似度很高且范围窄,说明这时候生成的模型基本是记忆了原始模型的参数。随着 K 增大,近似度范围也变大了,这表明新步骤可以生成与原始模型分歧的参数。