当前位置: 首页 > 科技观察

用AI代替SGD?无需训练ResNet-50,AI秒级预测全部2400万个参数,准确率60%

时间:2023-03-19 01:05:09 科技观察

只需一次forwardpass,这个图神经网络,或者说元模型,就可以预测一个模型的所有参数图像分类模型。有了它,无需等待梯度下降收敛!来自圭尔夫大学的论文BorisKnyazev介绍,该元模型可以预测ResNet-50的所有2400万个参数,而这个ResNet-50无需任何训练就可以在CIFAR-10上达到近60%的准确率。特别是,该模型几乎适用于任何神经网络。基于这个结果,作者给我们发来了一个灵魂的问题:我们以后还需要SGD还是Adam来训练神经网络?“我们离用一个单一的元模型取代手工制作的优化器又近了一步,该元模型可以在一次前向传递中预测几乎所有神经网络的参数。”令人惊讶的是,在训练时,这个元模型没有收到任何类似ResNet-50的网络(作为训练数据)。这个元模型的适用范围很广,不仅是ResNet-50,它还可以预测ResNet-101、ResNet-152、Wide-ResNets、VisualTransformers,“应有尽有”的所有参数。不仅是CIFAR-10,即使在像ImageNet这样更大的数据集上,也能带来不错的效果。同时,效率也很好。元模型平均可以在不到1秒的时间内预测给定网络的所有参数,即使在CPU上也是如此!但是毕竟天下没有免费的午餐,所以当元模型预测其他不同类型的架构时,预测的参数不会很准确(有时可能是随机的)。一般来说,离训练分布越远(见图中绿色方框),预测越差。然而,即使使用预测参数的网络分类准确率很差,也不要绝望。我们仍然可以将其用作具有良好初始化参数的模型,而不是像过去那样使用随机初始化,“我们可以从这种迁移学习中受益,尤其是在少样本学习任务中。”作者还表示,“作为图神经网络的粉丝”,他们特地选择了GNN作为元模型。该模型基于ChrisZhang、MengyeRen和RaquelUrtasun发表的ICLR2019论文“GraphHyperNetworksforNeuralArchitectureSearch”GHN。论文地址:https://arxiv.org/abs/1810.05749在他们的基础上,作者开发并训练了一个具有更好泛化能力的新模型GHN-2。简而言之,关键是在多个架构上更新GHN参数,并正确规范化预测参数,改善图中的远程交互,提高收敛性。为了训练GHN-2,作者引入了一个神经架构数据集——DeepNets-1M。这个数据集分为三部分:训练集、验证集和测试集。此外,他们还使用更宽、更深、更密和非规范化的网络进行分布外测试。作者补充说,DeepNets-1M可以作为对不同图神经网络(GNN)进行基准测试的良好测试平台。“使用我们的PyTorch代码,插入任何GNN(而不是我们的门控GNN)应该是微不足道的。除了解决参数预测任务和用于网络初始化外,GHN-2还可以用于神经架构搜索,”GHN-2可以搜索最准确、最稳健(在高斯噪声方面)、最有效和最容易训练的网络。”这篇论文已经发表在NeurIPS2021上,研究人员来自圭尔夫大学和多伦多大学。人工智能研究所、CIFAR、FAIR和麦吉尔大学。论文地址:https://arxiv.org/pdf/2110.13100.pdf项目也已经开源了,赶紧膜拜一下这个神经网络优化器吧!项目地址:https://github.com/facebookresearch/ppuda1,模型详解考虑到在大型标注数据集(如ImageNet)上训练深度神经网络的问题,这个问题可以形式化为寻找最佳的最优参数w。损失函数通常通过SGD和Adam等迭代优化算法最小化,收敛到架构a的性能参数w_p。尽管在提高训练速度和收敛性方面取得了进展,但w_p获取仍然是大规模机器学习管道中的瓶颈。例如,在ImageNet上训练ResNet-50可能需要相当多的GPU时间。随着网络规模的不断增长,以及重复训练网络的必要性(例如超参数或架构搜索),获得w_p的过程在计算上变得不可持续。对于新的参数预测任务,在优化新架构a的参数时,典型的优化器会忽略过去优化其他网络所获得的经验。然而,利用过去的经验可能是减少对迭代优化的依赖从而减少高计算需求的关键。为了朝着这个方向前进,研究人员提出了一项新任务,即使用超网络HD的单次前向传递进行迭代优化。为了解决这个任务,HD利用了它从过去优化其他网络中学到的知识。例如,我们考虑CIFAR-10和ImageNet图像分类数据集D,其中测试集性能是测试图像的分类精度。教HD如何优化其他网络的一种简单方法是在[architecture,parameter]对的大型训练集上训练它们,但是,这个过程非常困难。因此,研究人员遵循元学习中常见的两层优化范式,即不是迭代M个任务,而是在单个任务(例如图像分类)上迭代M个训练架构。图0:GHN原始架构概览。A:随机采样一个神经网络架构并生成一个GHN。B:图传播后,GHN中的每个节点都会生成自己的权重参数。C:通过训练GHN来最小化具有生成权重的采样网络的训练损失。根据生成网络的性能排序。来源:https://arxiv.org/abs/1810.05749通过优化,HypernetHD逐渐获得了如何预测训练架构的性能参数的知识,然后可以在测试时利用这些参数。为此,需要设计建筑空间F和HD。对于F,研究人员建立在现有的神经架构设计空间之上,我们以两种方式对其进行扩展:对不同架构进行采样的能力以及包括多种架构(例如ResNet和VisualTransformers)的扩展设计空间。这种架构可以用计算图的形式进行完整描述(图1)。因此,为了设计超网络HD,我们将依赖图结构数据机器学习的最新进展。特别是,研究人员的方案建立在GraphHyperNetworks(GHNs)方法的基础上。通过设计多样化的架构空间F和改进GHN,当GHN-2在CIFAR-10和ImageNet上预测未见过的架构时,图像识别准确率分别提高到77%(top-1)和48%(top-5)。).令人惊讶的是,GHN-2表现出良好的分布外泛化能力,即与训练集相比,它还可以预测更大更深的架构的良好参数。例如,GHN-2可以在不到1秒的GPU或CPU上预测ResNet-50的所有2400万个参数,在没有任何梯度更新的情况下在CIFAR-10上实现约60%的准确率(图1,(b))。总的来说,该框架和结果为训练网络开辟了一个新的、更有效的范例。本文的贡献如下:(a)介绍了使用单个超网络前向传播预测不同前馈神经网络性能参数的新任务;(b)引入DEEPNETS-1M数据集,这是一个标准化的基准,具有分布内和分布外的数据,用于跟踪任务的进度;(c)定义了几个基线并提出了GHN-2模型,该模型在CIFAR-10和ImageNet上表现出奇的好(第5.1节);(d)这个元模型学习了神经网络架构的良好表示,对初始化神经网络很有用。图1:GHN模型概览上图1(a)为GHN模型概览(详见Section4),基于给定的图像数据集和DEEPNETS-1M架构数据集,通过反向传播训练GHN模型到预测图像分类模型的参数。研究人员对vanillaGHN所做的主要改进包括Meta-batching、Virtualedges、Parameternormalization等。其中,Meta-batching仅在训练GHN时使用,而Virtualedges和Parameternormalization用于训练和测试。a1的可视化计算图如表1所示。图1(b)比较了GHN对ResNet-50预测的所有参数的分类精度与其参数用SGD训练时的分类精度。虽然通过自动预测??参数得到的网络的准确率仍然远低于人工训练的网络,但可以作为一种很好的初始化方法。2.实验:参数预测尽管GHN-2从未观察到测试架构,但GHN-2为它们预测了良好的参数,使得测试网络在两个图像数据集(表3和表4)上表现出奇的好。表3:GHN-2onDEEPNETS-1MunseenIDandOODarchitecturepredictionparameterresults(CIFAR-10)表4:GHN-1,GHN-2,MLP-basedmeta-model在DEEPNETS-1M上的结果,以及使用SGD和Adam优化器训练分类器(ImageNet数据集),其中在CIFAR-10上的结果尤为突出,部分预测参数架构的准确率达到了77.1%,而使用SGD训练50个epochs的最佳准确率是约15%。GHN-2甚至在ImageNet上也取得了不错的成绩,对于某些架构,它达到了高达48.3%的前5准确率。虽然这些结果不足以直接用于下游应用,但由于三个主要原因,它们非常有趣。首先,不依赖于通过SGD训练架构F的昂贵过程。其次,GHN依靠单次前向传递来预测所有参数。第三,这些结果是针对未见过的架构(包括OOD架构)获得的。即使在严重的分布变化(例如ResNet-506)和代表性不足的网络(例如ViT7)的情况下,GHN-2仍然可以预测比随机参数表现更好的参数。在CIFAR-10上,GHN-2的泛化能力特别好,在ResNet-50上的准确率为58.6%。在两个图像数据集上,GHN-2在DEEPNETS-1M的所有测试子集上都明显优于GHN-1,在某些情况下绝对增益超过20%,例如在BN-FREE网络上的36.8%和13.7%(表3).利用计算图的结构是GHN的一个关键特征,当用MLP替换GHN-2的GatedGNN时,ID(甚至OOD)架构的准确率从66.9%下降到42.2%。与迭代优化方法相比,GHN-2在CIFAR-10和ImageNet上分别对SGD的~2500次和~5000次迭代预测参数具有相似的精度。相比之下,GHN-1的表现相似,分别只有约500次和约2000次(未在表4中显示)迭代。消融实验(表5)表明第4节中提出的所有三个组成部分都很重要。表5:GHN-2在CIFAR-10上的消融,计算模型在所有ID和OOD测试架构中的平均排名总结:GHN-2是一个图神经网络优化器,可以在几秒钟内训练出所需的AI模型,相比之下to经典的优化器非常快,节省计算能力和时间。即使得到的模型效果不是最优的,也可以作为一种很好的初始化方法。