5/1-3 BP神经网络的改进及MATLAB实现(下)

2023-05-16

5/1-3 BP神经网络的改进及MATLAB实现(下)

文章目录

  • 5/1-3 BP神经网络的改进及MATLAB实现(下)
    • 1. 自适应梯度下降法(Adagrad )
    • 2.动量法(momentum)

1. 自适应梯度下降法(Adagrad )

\qquad 我们知道,在更新权重与偏置时设置了学习率 η \eta η控制下降速度详见5/1-1 神经网络识别手写数字及MATLAB程序。
W k = W k − 1 − η ∂ C ∂ W k − 1 W^{k}=W^{k-1}-\eta\frac{\partial C}{\partial W^{k-1}} Wk=Wk1ηWk1C b k = b k − 1 − η ∂ C ∂ b k − 1 b^{k}=b^{k-1}-\eta\frac{\partial C}{\partial b^{k-1}} bk=bk1ηbk1C其中C为损失函数。若学习率设置过小,则权重与偏置更新缓慢,若学习率设置过大则容易越过最小值点(我们的目标是最小化损失函数),导致一直不能求得最小值点。所以学习率的选择非常关键。
\qquad 以开口向上的抛物线为例,我们希望越靠近最小值点学习率越小;梯度越大学习率越大,梯度越小学习率越小,于是我们可以用如下方法改进: η w = η ∑ i = 1 t ( ∂ C ∂ W i ) 2 + ϵ \eta_w=\frac{\eta}{\sqrt{\sum_{i=1}^t(\frac{\partial C}{\partial W^{i}})^2+\epsilon}} ηw=i=1t(WiC)2+ϵ η
上式表明,随着更新次数的变大,学习率越来越小。当 ∂ C ∂ W i \frac{\partial C}{\partial W^{i}} WiC趋于0时 η w \eta_w ηw趋于一个常数。此时 W k = W k − 1 − η w ∂ C ∂ W k − 1 W^{k}=W^{k-1}-\eta_w\frac{\partial C}{\partial W^{k-1}} Wk=Wk1ηwWk1C b k = b k − 1 − η w ∂ C ∂ b k − 1 b^{k}=b^{k-1}-\eta_w\frac{\partial C}{\partial b^{k-1}} bk=bk1ηwbk1C

2.动量法(momentum)

\qquad 当前步的下降方向,不只是由当前的梯度决定,而是由当前梯度与以往梯度共同决定。这样有可能跳出局部极小值,例如下图
在这里插入图片描述
从C点出发,A点是局部极小值点,如果点走到B点,此时梯度与历史梯度反向,故更新方向会往A点走,很容易陷入局部极小。若改用动量法,以上一刻的梯度与此刻梯度的加权平均决定总梯度的方向(如上图,虽然在B点梯度与C点梯度相反,但若想达到全局最小,需要向C同负梯度方向更新)。故可用$ V t = β V t − 1 + ( 1 − β ) ∂ C ∂ W t V^t=\beta V^{t-1}+(1-\beta)\frac{\partial C}{\partial W^{t}} Vt=βVt1+(1β)WtC W t = W t − 1 − η V t W^t=W^{t-1}-\eta V^t Wt=Wt1ηVt这里 β \beta β一般取 0.9 0.9 0.9

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

5/1-3 BP神经网络的改进及MATLAB实现(下) 的相关文章

  • 如何解决centos虚拟机每次启动都要自己登录root问题

    解决办法 xff1a 可以通过修改 etc gdm custom conf文件 xff0c 实现root用户免密码自动登陆 1 输入命令vi etc gdm cutstom conf 2 在 daemon 下增加 需要插入时按i进行插入模式
  • 关于word中最后一个分节符导致的空白页删除问题

    主要原因 xff1a 一般最后一个空白页出现的原因有两个 xff0c 一个是分节符或者分页符导致 xff0c 另一个是上一页内容太多顶出来导致多一些 xff08 这种情况可以选择调节前面内容长度 xff0c 并设置前页最后一个字符的行距 x
  • 逐层贪婪预训练(解决梯度消失的第一个成功方案,但现在除了NLP领域外很少使用)

    起因 背景 xff1a 梯度消失 vanishing gradient problem DNN的训练中 xff0c 由于梯度消失 xff0c 即输出层的错误在反向传播的过程中会显著地越来越小 xff0c 所以靠近输入层的层的梯度就接近0 x
  • 前端——块元素和内联元素的概念以及区别

    一丶块元素 xff1a 1 前后有换行符 xff0c 独占一行 xff0c 默认情况下 xff0c 垂直排列 2 默认情况下高度有内容决定 xff08 就比如由里边的图片和文字决定高度 xff09 xff0c 宽度是父级的宽度 xff0c
  • 【计算机网络】输入网址到显示网页,期间发生了什么?

    摘要 xff1a 如图1所示 xff0c 从输入网址 xff0c 按下回车键之后的数据传输流程发生了什么 注意 xff1a 各位大佬 xff0c 如果有哪里写的不清楚 xff0c 请在邮件pigmn 64 sina com友善的交流 图1
  • 灰度共生矩阵(超简单理解)

    1 灰度共生矩阵生成原理 灰度共生矩阵 GLDM 的统计方法是20世纪70年代初由R Haralick等人提出的 xff0c 它是在假定图像中各像素间的空间分布关系包含了图像纹理信息的前提下 xff0c 提出的具有广泛性的纹理分析方法 灰度
  • MATLAB基础(二)矩阵运算与可视化作图

    常见矩阵生成函数 zeros m n 生成一个 m 行 n 列的零矩阵 xff0c m 61 n 时可简写为 zeros n ones m n 生成一个 m 行 n 列的元素全为 1 的矩阵 m 61 n 时可写为 ones n eye m
  • eclipse 项目有红叉(解决方法)

    1 进入 eclipse xff0c 按图示操作 2 找到 General 下的 problems 双击 problems 就会在下 边提示你项目报错的原因 根据错误提示去解决就好 3 在弹出的problems删除错误信息
  • spring boot整合shiro(附带简单demo)

    shiro是目前主流的java安全框架 xff0c 主要用来更便捷的认证 xff0c 授权 xff0c 加密 xff0c 会话管理 废话不多说 xff0c 下面是一个简单的案例 xff0c Soring boot整合shiro xff1b
  • CUDNN_STATUS_NOT_INITIALIZED解决办法

    在某平台跑代码 xff0c 最开始尝试去训练 xff0c 发现训练成功后久终止 xff0c 修改部分参数后再次运行发现这个错误 CUDNN STATUS NOT INITIALIZED 解决方法 xff1a 就是python进程其实还在继续
  • 企业数据仓库总线架构、总线矩阵笔记 (第三篇)

    一 总线架构 维度建模的数据仓库中 xff0c 有一个概念叫Bus Architecture xff0c 中文一般翻译为 总线架构 总线架构是Kimball的多维体系结构 xff08 MD xff09 中的三个关键性概念之一 xff0c 另
  • Mininet使用教程

    注 xff1a 1 重要的链接 xff1a http mininet org walkthrough display startup options 2 IPv4与IPv6之间的地址转换 https www subnetonline com
  • 关系型数据库与非关系型数据库

    开发工作中我们常用的数据库大致分为关系型数据库和非关系型数据库两种 xff0c 那这两种到底是什么呢 xff1f 1 关系型数据库 所谓关系型数据库 xff0c 是建立在关系模型 基础上的数据库 关系模型由关系数据结构 关系操作集合 关系完
  • 深度学习常用优化算法moment/Adagrad/RMSProp/Adadelta/Adam

    1 经验风险和风险 经验风险是训练数据集的平均损失 xff0c 风险是整个数据群的预期损失 2 优化算法作用 在最小化目标函数方面的性能 xff0c 即减小训练误差 xff0c 而不是模型的泛化误差 3 深度学习的优化挑战 局部最小值 小批
  • K8S 快速入门(五)网络通信原理:Pod网络

    一 Pod网络 1 Pod结构 Pod的特点 xff1a 容器 1 有自己的IP地址 2 有自己的hostname 3 有自己的端口 Pod实际上可以理解为就是k8s云平台中的虚拟机 xff0c 而这个pod内部封装的是由docker引擎所
  • 代码优化之策略模式

    前言 xff1a 最近刚完成一个专项的代码codeing xff0c 今天花了一下午把代码优化了下 xff0c 总结了一些优化时用到的思想和方法 xff0c 后续也会继续补充好的代码习惯和最佳范式 策略模式 自我介绍 策略这个词应该怎么理解
  • python保存图片变色,与原始图像颜色不一致

    有时候将图片保存到本地会发现颜色与原来不一致 xff0c 有的变成相反的颜色了 针对这个问题 xff0c 我试了好多方法 xff0c 原理不大清楚 但多换一种保存方式就OK了 常用的有三种 xff1a 1 PIL span class to
  • 树莓派(Raspberry) WIFI 配置 (无显示器)

    目标 在没有显示器的情况下 xff0c 通过一根网线配置树莓派WIFI 然后开机自动连接WIFI xff0c 以后就可以直接通过主机通过VNC Viewer Putty也可以 控制树莓派 当然 xff0c 如果有网线也可以控制了 xff0c
  • 网站搭建教程(详细步骤 )

    目录 网站组成 一 服务器 二 网站程序 三 域名 四 空间基本介绍 搭建网站的基本步骤流程 教程解说 一 购买域名 二 购买服务器 三 相关配置 网站组成 一 服务器 什么是服务器 我们可以理解为一个容器 用来存放网站的内容部分 我们在互
  • c++11的regex使用

    首先不论在window下还是linux下 xff0c 你要通过c c 43 43 使用正则表达式 xff0c 你就必须包含所需的头文件regex 里面包含了所需的函数 xff0c 一般的第一步需要确定要匹配的模式pattern 使用rege

随机推荐

  • Qt信号与槽的五种连接方式

    qt信号与槽的五种连接方式 xff1a 1 默认连接 xff1a 如果是在同一线程等价于直连 xff0c 在不同线程等价于队列连接 2 直连 xff1a 信号在哪 xff0c 在哪个线程执行 xff08 最好只在同一线程中用 xff09 3
  • Android (Android studio3.0.1)一篇可以实现app多语言的转换(简单操作)的教程

    最近接触到了项目需要 xff0c 多语言的转换 网上有很多资料 xff0c 我整理一些 xff0c 简单适合自己使用的操作 第一步 打开Android studio 添加 Android Studio插件 AndroidLocalizati
  • Centos7部署java环境

    先更新 yum y update amp amp yum y upgrade 1 xff0c Wget 参考 xff1a https blog csdn net xieshen86 article details 125472698 htt
  • Ubuntu16.04安装deb包

    deb包是Debian xff0c Ubuntu等Linux发行版的软件安装包 xff0c 扩展名为 deb xff0c 是类似于rpm的软件包 xff0c Debian xff0c Ubuntu系统不推荐使用deb软件包 xff0c 因为
  • HCIE-RS面试--STP弊端

    1 收敛速度慢 监听状态15s是为了避免STP协议在收敛过程中产生临时环路 xff0c 让BPDU有足够的时间在整个网络进行传递 监听状态期间 xff0c MAC地址表受TC BPDU的影响会进行提前老化 xff0c 清除错误的MAC地址信
  • mapreduce 班级学生成绩统计

    这个是最近的一个实验 xff0c 其中这个实验老师的要求是 1 统计每个班成绩的最大值 最小值 并且输出姓名 如果有多个那么要都要输出 xff0c 然后输出每个班的平均值 再者就是每个班的成绩分布 xff0c 优秀良好 xff0c 及格不及
  • 解决修改css或js文件后,浏览器缓存未更新问题

    问题描述 xff1a 最近在上线新版本项目的时候 xff0c 发现有的用户的操作还是调用的老版本JS里面的内容 xff0c 这样就造成原来新的JS里面加上的限制不能限制用户的操作 xff0c 从而导致用户可以重复操作 问题产生原因 xff1
  • 最全UnityHub国际版下载链接Unity2022~2017各版本+Unity5.x【间歇性更新】

    Unity2022 2017各版本UnityHub国际版下载链接 间歇性更新 直链下载国际版UnityHub国际版下载链接Unity2022 xUnity2021 xUnity2020 xUnity2019 xUnity2018 xUnit
  • FreeRTOS教程——任务(一)

    文章目录 FreeRTOS教程 任务 xff08 一 xff09 概述任务状态任务优先级执行任务 单元xTaskCreatevTaskDeletevTaskDelayvTaskSuspendvTaskResume 综合实例 FreeRTOS
  • Maven的下载安装配置教程(详细图文)

    目录 一 简单了解一下什么是Maven 二 maven的下载 三 maven的安装 四 maven的环境变量配置 五 setting文件配置 六 开发工具配置Maven 一 简单了解一下什么是Maven Maven就是一款帮助程序员构建项目
  • ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程

    环境 xff1a OS X 10 10 5 43 JDK 1 8 步骤 xff1a 一 下载ELK的三大组件 E lasticsearch下载地址 xff1a https www elastic co downloads elasticse
  • 实时更新的Sci-Hub可用网址

    近期 xff0c Sci Hub似乎用起来又不流畅了 xff0c 有时候打开贼费劲 xff0c 而且有些网址又用不了 xff01 接下来给大家推荐一个网站 xff0c 他们会实时新Sci Hub网址 xff0c 大家可以去试试 xff01
  • RFC8314文档中对465端口和587端口的阐述

    最近在学习SMTP的时候发现SMTP在使用加密传输的时候涉及到465和587两个端口 xff0c 网上对两者之间的区别众说纷纭 xff0c 后来查到了RFC官方文档中对于这个争论较久的问题的定义和详细说明 xff0c 这里做转载和翻译用于记
  • nginx篇08-添加客户端证书认证

    本文主要介绍如何使用给nginx服务添加客户端证书认证从而实现双向加密 对于一般的https网站来说 xff0c 实际上https所使用的证书是属于单向验证 xff0c 即客户端单向验证服务器的安全性 xff0c 而服务器端是没有对客户端的
  • Linux 查找搜索命令 5种方式

    一 whereis命令 该指令会在特定目录中查找符合条件的文件 这些文件应属于原始代码 二进制文件 xff0c 或是帮助文件 该指令只能用于查找二进制文件 源代码文件和man手册页 xff0c 一般文件的定位需使用locate命令 简单理解
  • SUMO学习

    SUMO学习 SUMO简介1 车道模型2 跟驰模型跟驰模型CACC 3 变道模型1 Strategic change 战略变道2 Cooperative change 协同变道3 Tactical change 战术变道4 Obligato
  • 51单片机学习笔记4 -- 蜂鸣器控制

    蜂鸣器控制 1 蜂鸣器简介1 分类2 有源蜂鸣器和无源蜂鸣器3 区分有源蜂鸣器和无源蜂鸣器4 蜂鸣器驱动电路 2 电路图绘制3 蜂鸣器控制4 程序补充 1 蜂鸣器简介 蜂鸣器是一种一体化结构的电子讯响器 xff0c 采用直流电压供电 xff
  • 树莓派3B+安装系统,配置基本环境、更换国内镜像源,适用pi4

    树莓派3B 43 安装系统 系统镜像下载 树莓派官方镜像下载地址 xff1a 自行百度 xff0c 官方网站首页 xff0c 点击Downloads 安装镜像 准备一张8G以上的内存卡 xff0c 推荐16G以上 下载系统制作软件etche
  • Linux超强截图工具flameshot

    Pop OS自带的截屏快捷键如下 但讲道理这个是真的不好用 所以我们借助第三方的截图工具 xff0c 这里推荐flameshot 火焰截图 在终端键入以下命令即可安装 span class token function sudo span
  • 5/1-3 BP神经网络的改进及MATLAB实现(下)

    5 1 3 BP神经网络的改进及MATLAB实现 xff08 下 xff09 文章目录 5 1 3 BP神经网络的改进及MATLAB实现 xff08 下 xff09 1 自适应梯度下降法 xff08 Adagrad xff09 2 动量法