百度360必应搜狗淘宝本站头条
当前位置:网站首页 > SEO教程 > 正文

梯度集中(GC):一种新的深度神经网络优化技术

gaoyangw 2024-10-04 16:53 11 浏览 0 评论

梯度集中:一种新的深度神经网络优化技术

题目:

Gradient Centralization: A New Optimization Technique for Deep Neural Networks

作者:

Hongwei Yong, Jianqiang Huang, Xiansheng Hua, Lei Zhang

来源:

Computer Vision and Pattern Recognition

笔误:文档链接、代码链接https://arxiv.org/pdf/2004.01461v2.pdf https://github.com/Yonghongwei/Gradient-CentralizationSubmitted on 3 Apr 2020 (v1), last revised 8 Apr 2020 (this version, v2)

文档链接:

https://arxiv.org/pdf/1707.06642v2.pdf

代码链接:

https://github.com/tensorflow/models/tree/master/research/object_detection

摘要

优化技术对于有效、高效地训练深度神经网络具有重要意义。研究表明,使用一阶和二阶统计量(如均值和方差)对网络激活或权向量进行z分数标准化(如批量标准化(BN)和权向量标准化(WS)),可以提高训练性能。与现有的基于激活或权值的方法不同,我们提出了一种新的优化技术,即梯度集中(GC),它通过将梯度向量集中到零均值直接作用于梯度上。GC可以看作是一种具有约束损失函数的投影梯度下降法。结果表明,该算法可以同时对权空间和输出特征空间进行正则化,从而提高神经网络的泛化性能。此外,GC改进了损失函数及其梯度的Lipschitzness,使训练过程变得更加高效和稳定。GC的实现非常简单,只需一行代码就可以很容易地嵌入到现有的基于梯度的DNN优化器中。它也可以直接用于调整预先训练好的DNNs。我们在通用图像分类、细粒度图像分类、检测和分割等各种应用上的实验表明,GC可以不断地提高DNN学习的性能。GC的代码可以在下面的 URL中找到。


英文原文

Optimization techniques are of great importance to effectively and efficiently train a deep neural network (DNN). It has been shown that using the first and second order statistics (e.g., mean and variance) to perform Z-score standardization on network activations or weight vectors, such as batch normalization (BN) and weight standardization (WS), can improve the training performance. Different from these existing methods that mostly operate on activations or weights, we present a new optimization technique, namely gradient centralization (GC), which operates directly on gradients by centralizing the gradient vectors to have zero mean. GC can be viewed as a projected gradient descent method with a constrained loss function. We show that GC can regularize both the weight space and output feature space so that it can boost the generalization performance of DNNs. Moreover, GC improves the Lipschitzness of the loss function and its gradient so that the training process becomes more efficient and stable. GC is very simple to implement and can be easily embedded into existing gradient based DNN optimizers with only one line of code. It can also be directly used to fine-tune the pre-trained DNNs. Our experiments on various applications, including general image classification, fine-grained image classification, detection and segmentation, demonstrate that GC can consistently improve the performance of DNN learning. The code of GC can be found at this https URL.


引言


优化算法简介


深度学习的广泛成功在很大程度上归功于大型数据集[43]、强大的计算资源(如gpu和TPUs)、复杂的网络架构[15,16]和优化算法[4,24]等方面取得的进展。


带动量[38]的随机梯度下降法(SGD)Adagrad[10]和Adam[24]等有效的优化技术使得用大数据集训练非常深的神经网络(DNNs)成为可能。


一个好的DNN优化器有两个主要目标:加速训练过程和提高模型泛化能力。第一个目标是花费更少的时间和成本来达到一个良好的局部最小值,而第二个目标是确保所学习的DNN模型能够对测试数据做出准确的预测。


SGD技术及其改进方法

各种优化算法[38,10,24,10,24]已经被提出来实现这些目标。SGD[4,5]及其扩展动力SGD (SGDM)[38]是最常用的SGD。它们在一个训练步骤中沿着梯度的相反方向更新参数。现有的DNN优化方法大多基于SGD,并对SGD进行改进,以更好地克服梯度消失或爆炸问题。已有一些成功的技术被提出,如权值初始化策略[11,14]、有效的激活函数(如ReLU[35])、梯度裁剪[36,37]、自适应学习速率优化算法[10,24]等。


基于样本/特征统计量的归一化处理方法

除上述技术外,样本/特征统计量(如均值和方差)也可用于对网络活动或权值进行归一化处理,使训练过程更加稳定。激活操作的代表性方法有批处理规范化(batch normalization,BN)[19]、实例规范化(instance normalization,IN)[47,18]、层规范化(layer normalization,LN)[29]和组规范化(group normalization,GN)[51]。其中BN是应用最广泛的一种优化技术,它将样本维数方向上的特征进行小批量归一化处理进行训练。BN平滑了优化景观[45],当使用合适的批量大小时,可以加快训练过程,提高模型泛化性能[53,15]。然而,当训练批量较小时,BN的效果不是很好,这限制了它在对象检测[13,42]、视频分类[21,2]等内存消耗任务中的应用


另一类基于统计的方法对权重进行操作。代表性的有权重归一化(weight normalization, WN)[44,17]和权重标准化(weight standardization, WS)[39]。这些方法在训练过程中重新参数化权值以限制权向量。例如,WN将权向量的长度与其方向解耦,以加速DNNs的训练。WS使用权重向量的均值和方差来标准化它们,使它们具有零均值和单位方差。与BN类似,WS也可以平滑损失场景,加速训练。然而,这些对权重向量进行操作的方法不能直接采用预先训练好的模型(例如在ImageNet上),因为它们的权重可能不满足零均值和单位方差的条件


梯度集中(gradient centralization ,GC) 简介

与上述对激活或权向量进行操作的技术不同,我们提出了一种非常简单但有效的DNN优化技术,即梯度集中(GC),它对权向量的梯度进行操作。如图1(a)所示,GC只是将梯度向量集中到零平均值。它可以很容易地嵌入到当前基于梯度的优化算法(如SGDM [38], Adam[24]),只需一行代码。尽管简单,GC演示了各种期望的属性,比如加速训练过程提高泛化性能以及对预先训练好的模型进行微调的兼容性。

图2所示。GC的几何解释。

具体的公式推导,有需要的请阅读作者的原文研究。


本文的主要贡献如下:

1.我们提出了一种新的通用网络优化技术,即梯度集中化(GC),它不仅可以平滑和加速神经网络的训练过程,而且可以提高模型的泛化性能。

2.分析了遗传算法的理论性质,提出了遗传算法通过引入新的权向量约束来约束损失函数,使权空间和输出特征空间正则化,从而提高模型的泛化性能。此外,约束损失函数比原函数具有更好的Lipschitzness,使得训练过程更加稳定和高效。


数据集


数据集实验概述


  1. 我们从Mini-ImageNet数据集[48]上的实验开始,证明GC可以加速DNN训练过程,提高模型泛化性能。我们也评估了GC与BN和WS的组合,表明GC可以改善它们的DNN优化
  2. 然后,我们使用CIFAR100数据集[26]来使用各种DNN优化器(如SGDM、Adam、Adagrad)、各种DNN架构(如ResNet、DenseNet、VGG)和不同的超参数来评估GC
  3. 然后,我们在ImageNet数据集[43]上进行了实验,以证明GC在大规模图像分类中也可以很好地工作,并说明GC也可以在BN以外的归一化方法中很好地工作,比如GN。
  4. 因此,我们对4个细粒度图像分类数据集(FGVC Aircraft[34]、Stanford Cars[25]、Stanford Dogs[22]和cub200 -2011[50])进行了实验,表明GC可以直接用于对预先训练好的DNN模型进行细化和改进
  5. 最后,我们在COCO数据集[31]上进行了实验,结果表明GC也可以很好地完成其他任务,比如目标检测和分割


实验


Mini-ImageNet数据集实验结果


图5所示。训练损失(左)和测试精度(右)曲线与训练时间的对比。使用ResNet50作为DNN模型。比较的优化技术包括BN、BN+GC、BN+WS和BN+WS+GC。

我们在这里评估四种组合:BN、BN+GC、BN+WS和BN+WS+GC。优化器是带有momentum 0.9的SGDM。图5为四种组合的训练损耗和测试精度曲线。与BN相比,BN+GC的训练损失下降更快,测试精度提高更快。对于BN和BN+WS, GC可以进一步提高它们的训练速度。此外,我们可以看到BN+GC达到了最高的测试精度,验证了GC可以在加速训练的同时提高泛化性能




CIFAR100数据集实验结果

不同的网络:我们在不同的DNN架构上验证GC,包括ResNet18 (R18)、ResNet101 (R101)[15]、ResNeXt29 4x64d (X29)[52]、VGG11 (V11)[46]和DenseNet121 (D121)[16]。

不同的优化器:我们将GC嵌入到不同的DNN优化器中,包括SGDM[38]、Adagrad[10]、Adam[24]、SGDW和AdamW[32],以测试它们的性能。SGDW和AdamW优化器直接将权值衰减应用于权值,而不是使用L2权值衰减正则化。

不同的超参数设置:为了说明GC可以通过不同的超参数实现一致的改进,我们在CIFAR100数据集上展示了不同的权值衰减设置和学习速率的GC结果。使用ResNet50作为主干。




ImageNet数据集实验结果

我们在此评估四种模型:使用BN的ResNet50 (r500亿)、使用GN的ResNet50 (R50GN)、使用BN的ResNet101 (r1010亿)和使用GN的ResNet101 (R101GN)。

表5显示了使用和不使用GC训练的这四种DNN模型的前1大错误。我们可以看到,GC可以将ImageNet上的性能提高0.5% 1.2%。

图6为ResNet50的训练和验证误差曲线(以GN为特征归一化)。我们可以看到,GC可以很大程度上加快GN的训练速度。




细粒度图像分类数据集实验结果

这四个数据集的详细统计信息汇总在表6中。原始图像大小调整为512X512,我们裁剪中心区域,输入448X448作为训练和测试的输入。这些模型是在ImageNet上预先训练的。我们使用0.9动量的SGDM在4个gpu上对ResNet50进行100个epoch的微调,批量大小为256。最后一层的初始学习速率为0.1,所有预训练的Conv层的初始学习速率为0.01。在第50和80年代,学习率乘以0.1。

请注意,我们的目标是验证GC的有效性,但不是推动最新的结果,所以我们只使用简单的训练技巧。我们重复实验10次,并以平均std格式报告结果。

图7显示了4个细粒度图像分类数据集上SGDM和SGDM+GC前40个epoch的训练和测试准确性。

表7显示了最终测试的准确性。




COCO数据集实验结果

我们使用MMDetection [6] toolbox作为检测框架,它包含了对象检测和分割任务的综合模型。所有实验都使用官方的实现和设置。所有训练前的模型都是由他们的官方网站提供的,我们在COCO train2017上对他们进行了微调,每个GPU有8个GPU和2张图片。优化器有SGDM和SGDM+GC。骨干网络包括ResNet50 (R50)、ResNet101 (R101)、ResNeXt101-32x4d (X101-32x4d)、ResNeXt101-64x4d (X101-32x4d)。特征金字塔网络(FPN)[30]也被使用。更快的R-CNN[42]和掩模R-CNN[13]的学习速率调度都是1X,除了GN的R50和GN的R101使用2X的学习速率调度。


表8显示了更快的R-CNN的平均精度(AP)结果。可以看出,所有经过GC训练的骨干网在目标检测方面的性能提升约0.3% ~ 0.6%。

表9给出了边界框(AP ^b)和实例分割(AP^m)的平均精度。


结论

我们对各种应用程序进行了综合实验,包括一般图像分类、细粒度图像分类、对象检测和实例分割。结果表明,在不同的应用中,GC可以不断地提高学习的DNN模型的性能。它是一种简单、通用、有效的网络优化方法。

相关推荐

网络推广引流策略:选准平台提升品牌影响力

网络推广引流是企业和个人自媒体发展中不可或缺的关键步骤,它能有效提升品牌名声、促进产品销售、吸引众多潜在消费者。为了做好这项工作,我们需深入了解众多细节和策略。下面,我将逐一为大家详细介绍网络推广引流...

王心凌翻红,南京某公司专门发文为其拉票?

前不久,“刘耕宏女孩”们纷纷加入健身大军,一起跳起了《本草纲目》。最近,“王心凌男孩”们又跳起了《爱你》,登上热搜。一首《爱你》重新翻红5月20日,《乘风破浪3》开播。今年39岁的王心凌在初舞台上,绑...

项目招标山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公

项目招标山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商

关于山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告

关于山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告

最新项目山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商

最新项目山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告

山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商

山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商...

山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告

山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告...

最新公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商

最新公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告...

最新招标公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性

最新招标公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告

最新公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公

最新公告山海湾金澜锦翠项目广告设计及网络推广服务竞争性磋商公告...

合肥网站建设大概流程是怎么样的(合肥网站建设方案开发)

合肥网站建设是指在合肥地区进行网站建设的一系列流程和步骤。随着互联网的快速发展,网络在经济、商务、政府、教育和其他领域的作用越来越大,一个高效、安全、易用的网站在合肥的发展中起着重要的作用。下面将简要...

网站SEO优化如何制定策略(网站seo的主要优化内容)

原文地址:网站SEO优化如何制定策略作者:怎么可以那么难取名字做网站优化首先需要制定好SEO策略,SEO策略贯穿整个SEO工作中心,每一步都是按照这个策略走,循序渐进,一步一步进行。执行SEO之前一定...

2025年Google SEO趋势:AI如何重塑你的流量策略?

2025年,GoogleSEO正迎来一场由AI驱动的革命。作为一名拥有16年经验的SEO专家,我见证了无数网站因未能适应变化而流量暴跌,也看到那些紧跟趋势的网站实现逆袭。AI如何影响SEO?Goog...

网站建设费用包含哪些方面?(网站建设费用计入哪个科目)

在网站建设中,费用通常由多个方面组成,这些因素共同决定了网站的整体成本。首先,最基本的费用是域名和主机的购买。域名是网站的地址,而主机则是存放网站内容的服务器,这两者都是网站上线的必要条件。选择合适的...

做一个公司官网大概多少钱呢?(做一个公司官网大概多少钱呢知乎)

制作公司官网的费用因需求复杂度和服务商不同差异较大,以下是一个大致的费用范围和分析,供参考:#公司官网##网站搭建---**一、影响价格的核心因素**1.**网站类型**-**基础展示型**(5...

取消回复欢迎 发表评论: