李宏毅深度学习——优化方法

2023-11-15

m_{t+1}记录了关于梯度的历史

 

SGD 

SGD with Momentum

防止gradient为0,SGD停止不动了

sgd with momentum,前面的移动会累加到下一步

sgd with momentum,前面的移动会累加到下一步,所以小球不会卡在局部的一个最优的位置

Adagrad

前几个time step如果坡度很大,就会暴走,走到不好的位置上,有个分母就会走小步一点

RMSProp

怕使用adagrad时,一开始的坡度很大,那么步幅就会很小,走没几步就停了

 RMSProp保证分母不会无止境变大

Adam

一开始,m_{t}帽等式右边分母小于1,保证m_{t}帽一开始不为0,且不会随时间变化变得太大

adam:一开始冲的很快

sgdm:冲的不会太快,稳一些,不会有太大的上下起伏的情况 

冲的快会形成sharp mininum,generalization gap 大

冲的不快 flat mininum,generalization gap 小

combine一下,一开始用adam后面用sgdm

如何让adam像sgdm一样收敛得又快又好

 m_{t}帽等式10的5次方,v_{t}等于10^5*10^5*0.001=10^7

前面100998步都是乱走,并且走了很长,100999步才是对的,然而走了很短。

记住以前最大的grad,但是这和adagrad有一样的错误,分母容易变成0 

让learning_rate自己调整 

sgdm最后很稳,但是速度太慢了

可以通过调整learning_rate加快速度 

 learning_rate大小大小变化,周期性变化

一开始gradient很乱

方向比较乱的时候走小步一点,方向不乱的时候走大步一点

一开始用sgdm后面用adam

RAdam一开始不用Adam,因为Adam不稳,并且<4的时候是不能用RAdam 

SWATS一开始用Adam,因为Adam一开始快,后面用sgdm稳

 

 

实践中用的最多,用weight decay的效果会比较好 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

李宏毅深度学习——优化方法 的相关文章

随机推荐

  • SQLServer 2008R2 配置允许外网访问

    SQL Server 2008 1433端口启用的解决方案 cqs 2012 CSDN博客
  • R聚类分析航空公司数据(筛选出不同的客户类别)

    效果图如下 图片是将3万四千条航空公司数据用k means算法分成五个类 并通过ggplot2包作图作出来的特征属性 我们将通过不同的属性值 分析出高价值用户 低价值用户 主力用户 一般用户 潜力用户 可以分析得F M C自然是越高越好 C
  • ext3grep恢复linux下误删除的文件

    在linux下使用rm rf时千万要小心 但是总有不小心的时候 导致误删除一些文件 这里我做个试验 故意删除 data 2 txt文件 测试文件恢复 此时2 txt文件已经删除 1 安装ext3grep软件 wget http ext3gr
  • vue之路由的嵌套(父子路由)

    路由的嵌套 1 配置路由 main js文件中 import Users from components Users import UserAdd from components Users UserAdd import UserList
  • 第二章 Scala入门——让你的代码跑起来

    一 Scala的安装方法 要使用Scala 首先需要保证已经安装好了Java 8 对于Linux操作系统 Java 8已经默认安装了 而使用Windows操作系统的用户 则需要在Java官网下载安装包进行安装 请在CMD PowerShel
  • 小米解bl锁跳过168小时_红米K30S至尊纪念版秒解BL工具分享支持小米红米机型秒解BL跳过168小时...

    目前小米的新机 官方风控都默认绑定7天也就是168小时才能解锁BL 部分账号需要绑定15天才能满足条件 导致很多爱玩机的小伙伴被拒门外 并不是所有人都愿意等待官方解锁时候 而跳过168小时解锁 也成为了很多小伙伴希望的事情 本工具来自ROM
  • 操作系统CPU调度

    概述 多道程序操作系统的基础 通过在进程之间切换CPU 操作系统可以提高计算机的吞吐率 对于单处理器系统 每次只允许一个进程运行 任何其他进程必须等待 直到CPU空闲能被调度为止 CPU按一定的调度算法从就绪队列中选择一个进程 把CPU的使
  • TorchVision中使用FasterRCNN+ResNet50+FPN进行目标检测

    TorchVision中给出了使用ResNet 50 FPN主干 backbone 构建Faster R CNN的pretrained模型 模型存放位置为https download pytorch org models fasterrcn
  • PE文件资源解析(七)manifest资源的解析

    mainfest资源 在这里指的是资源类型为RT MANIFEST的资源信息 通过ResHacker看到的效果图如下 manifest资源存储编码格式是UTF 8 开始3个字节是EF BB BF 解析代码如下 UTF8 EF BB BF H
  • Java练习10:输入两个正整数m和n,求其最大公约数和最小公倍数

    辗转相除法 package com qiqi test import java util Scanner 输入两个正整数m和n 求其最大公约数和最小公倍数 辗转相除法 1 用大数m 小数n得第一个余数 2 余数为0则n为最大公约数 3 余数
  • 【数据库原理选择题1-4章】

    1 1 数据库系统概述 1 1 DB DBMS 和DBS 三者之间的关系是 A DBMS包括DB和DBS B DB 包括DBMS和DBS C 不能相互包括 D DBS包括DB和DBMS 正确答案 D 2 位于用户和操作系统之间的一层数据管理
  • VS2017 登录账户时,反复让输入密码,而一直无法登陆。

    问题描述 VS2017 登录账户时 反复让输入密码 而一直无法登陆成功 最后显示无法刷新此账户凭据 解决办法 在排除是自己账户或者网络有问题后 通过清理用户数据解决问题 具体步骤如下 使用管理员权限打开命令终端 转到VS安装目录下的 Com
  • torch中的model.eval()、model.train()详解

    个人简介 深度学习图像领域工作者 工作总结链接 https blog csdn net qq 28949847 article details 128552785 链接中主要是个人工作的总结 每个链接都是一些常用demo 代码直接复制运行即
  • 欧几里得距离(欧式距离)

    文章目录 一 定义 二 公式 一 定义 欧几里得度量 欧氏距离 Euclidean Metric Euclidean Distance 指在m维空间中两个点之间的真实距离 或者向量的自然长度 即该点到原点的距离 比如 在二维和三维空间中的欧
  • 液滴/液膜蒸发过程—in文件模拟-后处理分析-Ovito/Python绘图

    关注 M r m a t e r i a l color Violet rm Mr material Mr material
  • FDR计算

    FDR计算 FDR的计算很简单 我折腾了一上午主要是因为遇到了以下几个问题 问题 FDR是什么 有什么用 怎么计算 我把几个模型的P值都合并成一个表了 所以每次运算FDR时 我需挑选特定的对象 我有多个模型 所以我想着要如何构建循环 FDR
  • 机器学习-人为设置函数方法和神经网络方法解决智能五子棋问题

    2 智能决策 2 1 博弈树模型算法 2 1 1 全局估算函数 此次项目中评估函数有两种 1 人为设定函数方法 更具人的经验 对一些特定的棋形在棋盘上进行检索 并且计数 最后赋予相应权值求和得到对棋盘的评价值 典型的棋形有 活一 活二 活三
  • 集成学习-理论概述

    1 集成学习概述 集成学习 ensemble learning 本身不是一个单独的机器学习算法 而是通过构建并结合多个机器学习器来完成学习任务 集成学习的特点 集成方法是一种将几种机器学习技术组合成一个预测模型的元算法 以减小方差 bagg
  • IDEA中如何导入module并成功运行

    在写Java项目的时候我们通常需要导入module 需要注意的是导入过程需要以下两大步骤 否则会出现无法运行的情况 以下我以导入 service edu 模块为例 一 将module文件拷贝到工程目录下 直接将需要导入的module文件 s
  • 李宏毅深度学习——优化方法

    记录了关于梯度的历史 SGD SGD with Momentum 防止gradient为0 SGD停止不动了 sgd with momentum 前面的移动会累加到下一步 sgd with momentum 前面的移动会累加到下一步 所以小