首页 > 其他分享 >2.3类神经网路训练不起来怎么办 (三):自动调整学习速率 (Learning Rate)

2.3类神经网路训练不起来怎么办 (三):自动调整学习速率 (Learning Rate)

时间:2023-06-07 17:00:13浏览次数:44  
标签:loss learning 训练 gradient rate Rate 参数 Learning 2.3

1. 自适应学习率调整(Adaptive Learning Rate)

1.1 为什么需要调整学习率

  首先认识一个现象.Training stuck ≠ Small Gradient

  训练卡住的原因不一定是因为 gradient 太小,即critical point,也有可能是因为振荡.
  怎么看出是因为振荡导致训练 loss 降不下去呢:在训练过程中,gradient的大小有较大的波动(红色框中),loss的变化可能就是左图的绿箭头.而产生振荡的原因就是learning rate设定太大.
image
  实际上,如果仅仅使用gradient下降的方式,是很难走大局部最小点或者鞍点的,我们往往需要采用其他优化方式.比如下面那张图,使用gradient下降的方式是很难画出来的.所以在实际训练中,如果训练卡住了不一定是因为 critical point.
image

1.2 为什么非critical point训练也可能被卡住

  我们举一个简单的例子.有个error surface 是凸面,横轴参数的loss变化很小,而纵轴参数的loss变化快,坡度陡峭.黑点是初始点,叉叉是 loss 最低点.假如设置个较大的 learning rate,纵轴参数更新时会振荡;假如设置个较小的 learning rate,纵轴参数能较好更新,而横轴参数却更新很慢,因为横轴坡度本来就平缓,再设个小的 lr 更新速度当然更慢了!!所以没有哪个 learning rate能一劳永逸,适应所有参数更新速度!!
image

1.3 对参数特制化

标签:loss,learning,训练,gradient,rate,Rate,参数,Learning,2.3
From: https://www.cnblogs.com/newblg/p/17463303.html

相关文章

  • Using generated security password
    springsecurity默认的用户名(user)和随机生成的密码,在控制台输出Usinggeneratedsecuritypassword:1dfdgki3-q234-76hj-6h7l-1re87f546r646也可以手动配置spring:security:user:name:123password:123......
  • Learning to Pre-train Graph Neural Networks 学习如何预训练GNN
    ......
  • 2.3. 接口与抽象类
    接口和抽象类是Java中两种实现抽象和多态的方法。它们之间有一些区别,但也有一些相似之处。这一节我们将通过详细的例子来更深入地了解接口和抽象类。2.3.1.接口接口可以定义一组方法签名,但不能包含方法的实现。一个类可以实现多个接口,实现接口的类必须实现接口中定义的所有方......
  • Reward Modelling(RM)and Reinforcement Learning from Human Feedback(RLHF)for Large la
    一、RLHF技术的背景OpenAI推出的ChatGPT对话模型掀起了新的AI热潮,它面对多种多样的问题对答如流,似乎已经打破了机器和人的边界。这一工作的背后是大型语言模型(LargeLanguageModel,LLM)生成领域的新训练范式:RLHF(ReinforcementLearningfromHumanFeedback),即以强化......
  • Contrastive Learning for Representation Degeneration Problem in Sequential Recom
    目录概符号说明MotivationDuoRecContrastiveRegularization代码QiuR.,HuangZ.,YingH.andWangZ.Contrastivelearningforrepresentationdegenerationprobleminsequentialrecommendation.WSDM,2022.概对比学习之于序列推荐.符号说明\(\mathcal{V}\),ite......
  • 每日记录(2.3双向链表)
    双向链表的基本概念双链表顾名思义,就是链表由单向的链变成了双向链。使用这种数据结构,我们可以不再拘束于单链表的单向创建于遍历等操作,大大减少了在使用中存在的问题。每一个节点都有两个指针分别指向该节点的前驱和后继。定义:structDuLNode{EtypedeflemTypedata;......
  • Achieving a Better Stability-Plasticity Trade-off via Auxiliary Networks in Cont
    摘要连续学习过程中的稳定性-可塑性权衡是一个重要的问题。作者提出了AuxiliaryNetworkContinualLearning(ANCL),通过auxiliarynetwork提高了模型的可塑性。方法TheFormulationofAuxiliaryNetworkContinualLearning传统的continuallearning方法通常是在新数据集上......
  • iOS MachineLearning 系列(19)—— 分析文本中的问题答案
    iOSMachineLearning系列(19)——分析文本中的问题答案本篇文章将介绍Apple官方推荐的唯一的一个文本处理模型:BERT-SQuAD。此模型用来分析一段文本,并根据提供的问题在文本中寻找答案。需要注意,BERT模型不会生成新的句子,它会从提供的文本中找到最有可能的答案段落或句子。BERT模型的......
  • iOS MachineLearning 系列(20)—— 训练生成CoreML模型
    iOSMachineLearning系列(20)——训练生成CoreML模型本系列前面的文章详细的介绍了在iOS中与AI能力相关的API的使用,也介绍了如何使用训练好的CoreML模型来实现更强大的AI能力。然而,无论是成熟的API提供的能力,还是各种各样的三方模型,有时候都并不能满足某一领域内的定制化需求。当我......
  • JBPM5 Designer 2.3源码问题
    最新本2.4发布,但是里面是使用Maven的module方式来管理,鉴于知识有限,不会这种方式,所以选择2.3版本的源码[color=blue][b]2.4[/b][/color]war:[url]http://sourceforge.net/projects/jbpm/files/designer/designer-2.4/[/url]源码:[url]https://github.com/dro......