0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于神经网络的十大学习率衰减提效策略

深度学习自然语言处理 来源:炼丹笔记 作者:时晴 2021-06-16 17:48 次阅读

十大学习率衰减策略!

简 介

目前越来越多非结构化问题的出现,神经网络也扮演着愈加重要的作用。一个好的神经网络对于最终任务的预测至关重要,但要得到一个好的神经网络则需要考虑众多的因素,本文我们重点介绍神经网络中调参重学习率衰减的调节策略。本文介绍目前tensorflow中的9大学习率衰减策略。

exponential_decay = learning_rate_decay.exponential_decay

piecewise_constant = learning_rate_decay.piecewise_constant

polynomial_decay = learning_rate_decay.polynomial_decay

natural_exp_decay = learning_rate_decay.natural_exp_decay

inverse_time_decay = learning_rate_decay.inverse_time_decay

cosine_decay = learning_rate_decay.cosine_decay

cosine_decay_restarts = learning_rate_decay.cosine_decay_restarts

linear_cosine_decay = learning_rate_decay.linear_cosine_decay

noisy_linear_cosine_decay = learning_rate_decay.noisy_linear_cosine_decay

学习率衰减

01

分段常数衰减

在对应区间置中不同的学习率的常数值,一般初始学习率会大一些,后面越来越小,要根据样本量的大小设置区间的间隔大小,样本量越大,区间间隔要小一点。在真正的网络训练中,需要操作人员根据具体任务对学习率具体设置

该方法有助于针对不同任务进行精细地调参,在任意步长后下降任意数值的learning rate。

02

指数衰减

指数衰减的方式,学习率的大小和训练次数指数相关,指数衰减简单直接,收敛速度快,是最常用的学习率衰减方式,其数学公式为:

如下图所示,红色的为学习率随训练次数的指数衰减方式,蓝色的即为分段常数衰减 。

2089ade2-cab3-11eb-9e57-12bb97331649.png

03

自然指数衰减

自然指数衰减和指数衰减方式相似,不同的在于它的衰减底数是,所以它的收敛的速度更快,一般用于相对比较容易训练的网络,便于较快的收敛,其更新公式为:

和分段常数以及指数衰减相比,其中绿色的是自然指数衰减。

04

多项式衰减

多项式衰减的方式进行更新学习率,需要给定初始学习率和最低学习率,然后按照给定的衰减方式将学习率从初始值衰减到最低值,其更新规则即为:

此处需要注意有两个机制:

降到最低学习率后,到训练结束可以一直使用最低学习率进行更新;

另一个是再次将学习率调高,使用decay_steps的倍数,取第一个大于global_steps的结果,即:

可以用它来防止神经网络在训练的后期由于学习率过小而导致的网络一直在某个局部最小值附近震荡,在后期增大学习率跳出局部极小值。

05

倒数衰减

倒数衰减的数学公式为:

21befb18-cab3-11eb-9e57-12bb97331649.png

06

余弦衰减

顾名思义,就是采用余弦方式进行学习率的衰减。其更新机制如下:

其中alpha可以看作是baseline,保证学习率不会低于某个值。不同alpha的影响如下:

221ba6a6-cab3-11eb-9e57-12bb97331649.png

07

循环学习率衰减

学习率以循环周期进行衰减。是循环学习率的cycle版本。

余弦函数式的下降模拟了大lr找潜力区域然后小lr快速收敛的过程,加之restart带来的cycle效果,有涨1-2个点的可能。

08

线性余弦衰减

线性余弦衰减方式是基于余弦方式的衰减策略,其数学公式为:

线性余弦衰减一般应用领域是增强学习领域,

09

噪声线性余弦衰减

在线性余弦衰减的基础上,加入了噪声。就得到了噪声线性余弦衰减。噪声线性余弦衰减提升了学习率寻找最优值的随机性和可能性。

0110

自定义学习率

大家还可以依据自己的想法自定义学习率衰减策略,例如可以依据验证集合的表现,来更新学习率,如果验证集合上评估指标在不断变好,则保持lr,否则降低学习率。

参考文献

tensorflow learning schedule之分段常数衰减用法

An Overview of Deep Learning Optimization Methods and Learning Rate Attenuation Methods

Tensorflow中learning rate decay的奇技淫巧

TensorFlow使用记录 (三):Learning Rate Scheduling

深度学习中的固定学习率衰减策略总结

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/training/learning_rate_decay.py

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 噪声
    +关注

    关注

    13

    文章

    1118

    浏览量

    47380
  • 神经网络
    +关注

    关注

    42

    文章

    4765

    浏览量

    100592
  • 函数
    +关注

    关注

    3

    文章

    4310

    浏览量

    62472

原文标题:神经网络十大学习率衰减提效策略!

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    神经网络优化器有哪些

    神经网络优化器是深度学习中用于调整网络参数以最小化损失函数的重要工具。这些优化器通过不同的策略来更新网络权重,以提高训练效率和模型性能。以下
    的头像 发表于 07-11 16:33 527次阅读

    神经网络辨识模型具有什么特点

    神经网络辨识模型是一种基于人工神经网络的系统辨识方法,它具有以下特点: 非线性映射能力 :神经网络能够处理非线性问题,可以很好地拟合复杂的非线性系统。 泛化能力 :神经网络通过
    的头像 发表于 07-11 11:12 421次阅读

    BP神经网络学习机制

    BP神经网络(Backpropagation Neural Network),即反向传播神经网络,是一种基于梯度下降算法的多层前馈神经网络,其学习机制的核心在于通过反向传播算法
    的头像 发表于 07-10 15:49 474次阅读

    BP神经网络和卷积神经网络的关系

    BP神经网络(Backpropagation Neural Network)和卷积神经网络(Convolutional Neural Network,简称CNN)是两种在人工智能和机器学习领域
    的头像 发表于 07-10 15:24 1286次阅读

    rnn是递归神经网络还是循环神经网络

    RNN(Recurrent Neural Network)是循环神经网络,而非递归神经网络。循环神经网络是一种具有时间序列特性的神经网络,能够处理序列数据,具有记忆功能。以下是
    的头像 发表于 07-05 09:52 513次阅读

    递归神经网络是循环神经网络

    递归神经网络(Recurrent Neural Network,简称RNN)和循环神经网络(Recurrent Neural Network,简称RNN)实际上是同一个概念,只是不同的翻译方式
    的头像 发表于 07-04 14:54 660次阅读

    循环神经网络和卷积神经网络的区别

    循环神经网络(Recurrent Neural Network,RNN)和卷积神经网络(Convolutional Neural Network,CNN)是深度学习领域中两种非常重要的神经网络
    的头像 发表于 07-04 14:24 1153次阅读

    深度神经网络与基本神经网络的区别

    在探讨深度神经网络(Deep Neural Networks, DNNs)与基本神经网络(通常指传统神经网络或前向神经网络)的区别时,我们需要从多个维度进行深入分析。这些维度包括
    的头像 发表于 07-04 13:20 706次阅读

    卷积神经网络与循环神经网络的区别

    在深度学习领域,卷积神经网络(Convolutional Neural Networks, CNN)和循环神经网络(Recurrent Neural Networks, RNN)是两种极其重要
    的头像 发表于 07-03 16:12 2834次阅读

    如何使用神经网络进行建模和预测

    神经网络是一种强大的机器学习技术,可以用于建模和预测变量之间的关系。 神经网络的基本概念 神经网络是一种受人脑启发的计算模型,由大量的节点(神经
    的头像 发表于 07-03 10:23 690次阅读

    卷积神经网络训练的是什么

    卷积神经网络(Convolutional Neural Networks,简称CNN)是一种深度学习模型,广泛应用于图像识别、视频分析、自然语言处理等领域。本文将详细介绍卷积神经网络的基本概念、结构
    的头像 发表于 07-03 09:15 357次阅读

    卷积神经网络和bp神经网络的区别

    化能力。随着深度学习技术的不断发展,神经网络已经成为人工智能领域的重要技术之一。卷积神经网络和BP神经
    的头像 发表于 07-02 14:24 3127次阅读

    神经网络架构有哪些

    神经网络架构是机器学习领域中的核心组成部分,它们模仿了生物神经网络的运作方式,通过复杂的网络结构实现信息的处理、存储和传递。随着深度学习技术
    的头像 发表于 07-01 14:16 628次阅读

    电机控制系统的神经网络优化策略

    电机控制系统作为现代工业自动化的核心组成部分,其性能直接影响到整个生产线的效率和稳定性。随着人工智能技术的快速发展,神经网络在电机控制系统中的应用越来越广泛。神经网络优化策略通过模拟人脑神经
    的头像 发表于 06-25 11:46 596次阅读

    详解深度学习神经网络与卷积神经网络的应用

    处理技术也可以通过深度学习来获得更优异的效果,比如去噪、超分辨和跟踪算法等。为了跟上时代的步伐,必须对深度学习神经网络技术有所学习和研究
    的头像 发表于 01-11 10:51 1947次阅读
    详解深度<b class='flag-5'>学习</b>、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用