详细解读:扩散模型生成神经网络参数,速度快了44倍:Neural Network Diffusion论文解读
摘要:
扩散模型在图像和视频生成方面取得了显著的成功。在这项工作中,我们证明了扩散模型也可以生成高性能的神经网络参数。我们的方法很简单,利用自动编码器和标准潜在扩散模型。自动编码器提取经过训练的网络参数子集的潜在表示。然后训练扩散模型,从随机噪声中合成这些潜在参数表示。然后,它生成通过自动编码器解码器传递的新表示形式,其输出可用作网络参数的新子集。在各种架构和数据集中,我们的扩散过程始终如一地生成与经过训练的网络具有可比或改进性能的模型,同时将额外成本降至最低。值得注意的是,我们通过经验发现,生成的模型在训练网络中的表现不同。我们的研究结果鼓励了对扩散模型的多功能应用的更多探索。
仔细观察神经网络训练和扩散模型,基于扩散的图像生成与随机梯度下降(SGD)学习过程在以下方面具有共性(如图)
i) 神经网络训练和扩散模型的逆向过程都可以看作是从随机噪声/初始化到特定分布的过渡。
ii) 高质量的图像和高性能参数也可以通过多次噪声添加而退化为简单分布,例如高斯分布。
基于上述观察,我们引入了一种新的参数生成方法,称为神经网络扩散(p-diff,p代表参数),它采用标准的潜在扩散模型来合成一组新的参数。这是因为扩散模型能够将给定的随机分布转换为特定的随机分布。我们的方法很简单,包括一个自编码器和一个标准的潜在扩散模型,用于学习高性能参数的分布。首先,对于由 SGD 优化器训练的模型参数子集,对自动编码器进行训练以提取这些参数的潜在表示。然后,我们利用标准的潜在扩散模型从随机噪声中合成潜在表示。最后,将合成的潜在表示传递到经过训练的自动编码器的解码器中,以产生新的高性能模型参数。
我们的方法具有以下特点:
i) 它在几秒钟内跨多个数据集和架构实现与其训练数据(即由 SGD 优化器训练的模型)相似甚至增强的性能。
ii)我们生成的模型与训练好的模型有很大的不同,这说明我们的方法可以合成新的参数,而不是记住训练样本。我们希望我们的研究能够为将扩散模型的应用扩展到其他领域提供新的见解。
神经网络扩散:
我们提出了神经网络扩散(p-diff),旨在从随机噪声中生成高性能参数。如图 2 所示,我们的方法由两个过程组成,分别是参数自动编码器和生成。给定一组经过训练的高性能模型,我们首先选择这些参数的一个子集,并将它们展平为一维向量。随后,我们引入了一个编码器来从这些向量中提取潜在表示,并伴随着一个负责从潜在表示中重建参数的解码器。然后,训练一个标准的潜在扩散模型,以从随机噪声中合成潜在表示。训练后,我们利用 p-diff 通过以下链生成新参数:随机噪声→反向处理→训练的解码器→生成的参数。
结果:
表 1 显示了在 8 个数据集和 6 个架构中与两个基线的结果比较。表 1 显示了在 8 个数据集和 6 个架构中与两个基准的结果比较。基于这些结果,我们有以下几点看法:i) 在大多数情况下,我们的方法取得了与两个基线相似或更好的结果。这表明我们的方法可以有效地学习高性能参数的分布,并从随机噪声中生成卓越的模型。