当前位置: 首页 > news >正文

神经网络复习--神经网络算法模型及BP算法

文章目录

  • 神经网络模型的构成
  • BP神经网络

神经网络模型的构成

三种表示方式:
在这里插入图片描述
神经网络的三要素:

  1. 具有突触或连接,用权重表示神经元的连接强度
  2. 具有时空整合功能的输入信号累加器
  3. 激励函数用于限制神经网络的输出

感知神经网络
在这里插入图片描述

BP神经网络

BP神经网络的学习由信息的正向传播和误差的反向传播两个过程组成,学习规则采用W-H学习规则(最小均方差,梯度下降法),通过反向传播,不断调整网络的权重和阈值,使得网络的误差平方和最小。

BP神经网络模型通用描述:
z ( k ) = w ( k ) x ( k ) + b ( k ) y ( k ) = f ( z ( k ) ) z^{(k)} = w^{(k)}x^{(k)} + b^{(k)} \\y^{(k)} = f(z^{(k)}) z(k)=w(k)x(k)+b(k)y(k)=f(z(k))

o ( k ) = f ( w ( k ) o ( k − 1 ) + b ( k ) ) o^{(k)} = f(w^{(k)}o^{(k - 1)} + b^{(k)}) o(k)=f(w(k)o(k1)+b(k))

损失函数的构建 E = 1 2 n ∑ p = 1 n ( T p − Q p ) 2 E = \frac{1}{2n} \sum\limits_{p=1}^{n}(T_p - Q_p)^2 E=2n1p=1n(TpQp)2
预测的输出值减期望的输出值的均方差

梯度下降法:
W ( k + 1 ) = W k − a ∗ α α w k ∗ E ( w k , b k ) b ( k + 1 ) = b k = a ∗ α α b k ∗ E ( w k , b k ) W_{(k +1)} = W_{k} - a * \frac{\alpha}{\alpha w_k} * E(w_k, b_k) \\ b_{(k + 1)} = b_k = a * \frac{\alpha}{\alpha b_k} * E(w_k, b_k) W(k+1)=WkaαwkαE(wk,bk)b(k+1)=bk=aαbkαE(wk,bk)

而:
α α w k ∗ E = 1 2 m ∗ ∑ i = 1 m ∗ 2 ∗ ( w k x i + b − y i ) ∗ x i α α b k ∗ E = 1 2 m ∗ ∑ i = 1 m ∗ 2 ∗ ( w k x i + b − y i ) \frac{\alpha}{\alpha w_k} * E = \frac{1}{2m} * \sum\limits_{i = 1}^{m} *2 * (w_k x^i + b - y^i) * x^i \\ \frac{\alpha}{\alpha b_k} * E = \frac{1}{2m} * \sum\limits_{i = 1}^{m} *2 * (w_k x^i + b - y^i) αwkαE=2m1i=1m2(wkxi+byi)xiαbkαE=2m1i=1m2(wkxi+byi)

当采用sigmoid激活函数:
导数: f ′ ( n e t j l ) = f ( n e t j l ) ( 1 − f ( n e t j l ) ) f'(net^l_j) = f(net^l_j)(1 - f(net^l_j)) f(netjl)=f(netjl)(1f(netjl))
( 1 1 + e − z ) ′ = ( 1 1 + e − z ) ∗ ( 1 − 1 1 + e − z ) (\frac{1}{1 + e^{-z}})' = (\frac{1}{1 + e^{-z}}) * (1 - \frac{1}{1 + e^{-z}}) (1+ez1)=(1+ez1)(11+ez1)
对于交叉熵损失函数有:
在这里插入图片描述
例题:
给定神经网络如下:
在这里插入图片描述
输入值为:x1, x2 = 0.5, 0.3
期望输出值为y1, y2 = 0.23, -0.07
给出正向传播的初始参数为 w 1 w_1 w1~ w 8 w_8 w8为0.2 -0.4 0.5 0.6 0.1 -0.5 -0.3 0.8
采用平方损失函数,梯度下降法求解第一轮更新后的参数。

在这里插入图片描述

训练步骤

  1. 表达:计算训练的输出矢量 A = W ∗ P + B A = W * P + B A=WP+B,以及与期望输出之间的误差;
  2. 检查:将网络输出误差的平方和与期望误差相比较,如果其值小于期望误差,或训练以达到实现设定的最大训练次数,则停止训练;否则继续。
  3. 学习:采用最小均方差和梯度下降方法计算权值和偏差,并返回到1

BP算法的改进

  1. 带动量因子算法
  2. 自适应学习速率
  3. 改变学习速率的方法
  4. 作用函数后缩法
  5. 改变性能指标函数
http://www.lryc.cn/news/347476.html

相关文章:

  • 【Java】/*方法的使用-快速总结*/
  • kotlin中协程相关
  • (自适应手机端)物流运输快递仓储网站模板 - 带三级栏目
  • Navicat导出表结构到Excel或Word
  • Golang编译优化——稀疏条件常量传播
  • 人工智能培训讲师咨询叶梓介绍及智能医疗技术与ChatGPT临床应用三日深度培训提纲
  • HCIP(BGP综合实验)--8
  • 深入理解C++中的Vector容器:用容器构建高效程序
  • 目标检测YOLO实战应用案例100讲-基于深度学习的交通场景多尺度目标检测算法研究与应用(下)
  • react 类组件 和 函数组件 声明周期 对比
  • 智慧变电站守护者:TSINGSEE青犀AI视频智能管理系统引领行业革新
  • 【Ubuntu20.04安装java-8-openjdk】
  • HTTPS对于网站到底价值几何?
  • Docker私有仓库Harbor
  • 48. 旋转图像/240. 搜索二维矩阵 II
  • wsl安装Xfce桌面并设置系统语言和输入法
  • 短信清空了!华为手机短信删除了怎么恢复?
  • Linux实现Flappy bird项目
  • 【python量化交易】qteasy使用教程07——创建更加复杂的自定义交易策略
  • SpringBoot整合SpringScurity权限控制(菜单权限,按钮权限)以及加上SSH实现安全传输
  • 力扣每日一题119:杨辉三角||
  • AI语音模型PaddleSpeech踩坑(安装)指南
  • 如何更好地使用Kafka? - 运行监控篇
  • 数据可视化训练第四天(模拟投掷筛子并且统计频次)
  • 4.1 编写程序,从键盘接收一个小写字母,然后找出他的前导字符和后续字符,再按顺序显示这三个字符
  • (Java)心得:LeetCode——18.四数之和
  • 网络编程套接字详解
  • 蓝桥杯备战11.歌唱比赛
  • 微信小程序中的图像奥秘:图片与Base64的华丽变身记
  • 【35分钟掌握金融风控策略25】定额策略实战2