感知机

感知机(perceptron)是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别。

感知机接收多个输入信号, 输出一个信号。 这里所说的“信号”可以想象成电流或河 流那样具备“流动性”的东西。 像电流流过导线, 向前方输送电子一样, 感知机的信 号也会形成流, 向前方输送信息。

感知机学习旨在求出将训练数据进行线性划分的分离超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。

以上图来说感知机分为三层,图中从左至右依次分为输入层,隐含层和输出层,其中,x1,x2是输入信号,y是输出信号,w1,w2是权重,o是“神经元”,或者叫做节点

BP神经网络

BP神经网络是一种按误差逆传播算法训练的多层前馈网络,是应用最广泛的神经网络模型之一。 BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。

BP神经网络的核心思想:学习过程由信号的正向传播和误差的反向传播两个过程组成。
正向传播:
将上一层的输出作为下一层的输入,并计算下一层的输出,一直到运算到输出层为止。
反向计算:

允许来自代价函数的信息通过网络向后流动,以便计算梯度。反向计算是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数(代价函数)

BP神经网络计算流程:

计算过程中如果隐含层中的神经元节点设置过少,结果可能造成神经网络的训练过程收敛 变慢或者不收敛。如果隐层中节点过多,模型的预测精度会提高,但收敛速度慢,普遍性会减弱。故需要对隐层节点的设置进行规定,遵循以下式子

BP神经网络的推导:

首先进行赋值

正向传播

输入层到隐含层:

计算h1的输入加权和:

neth1 =  w1* i1 + w2 * i2 + b1 * 1

= 0.15*0.05+0.2*0.1+0.35*1=0.3775

输出:

outh1 = 1/1+e^-0.3775 = 0.593269992

同理,计算出h2的输出 o2

outh2 = 0.596884378

隐含层到输出层:

如图所示,所得结果与实际值0.01和0.99还相差很远,所以需要反向计算,更新权值,重新计算输出

 反向计算

计算总误差:

所用式子如下

分别计算o1和o2的误差,总误差为两者之和:

Eo1 = 1/2(0.01-0.75136507)^2 = 0.274811083

同理 Eo2 = 0.023560026

隐含层到输出层的更新:

以w5为例,如果想要知道w5对整体的误差产生了多少影响,可以用整体误差啊对w5求偏导得到:

最后得 =0.149780716

同理更新权值

接着重新计算,得到数字0.015912196和0.984065734。与原输入(0.01,0.99)接近,说明效果很好。若不理想,只需重新迭代直到接近理想值即可

深度学习第二次培训(BP神经网络)相关推荐

  1. 0.0 目录-深度学习第二课《改善神经网络》-Stanford吴恩达教授

    文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...

  2. 学习笔记:深度学习(3)——卷积神经网络(CNN)理论篇

    学习时间:2022.04.10~2022.04.12 文章目录 3. 卷积神经网络CNN 3.1 卷积神经网络的概念 3.1.1 什么是CNN? 3.1.2 为什么要用CNN? 3.1.3 人类的视觉 ...

  3. 深入理解吴恩达老师深度学习课程(01神经网络和深度学习 第二周)

    深入理解吴恩达深度学习(01神经网络和深度学习 第二周) 1引言 2.1 二分类(Binary Classification) 2.1.1 符号定义(视频给出的) 2.2 逻辑回归(Logistic ...

  4. 深度学习 vs. 大数据:神经网络权值的版权属于谁?

     深度学习 vs. 大数据:神经网络权值的版权属于谁? width="22" height="16" src="http://hits.sinaj ...

  5. 深度学习导论(4)神经网络基础

    深度学习导论(4)神经网络基础 一. 训练深度学习模型的步骤 二. 线性层(或叫全链接层)(Linear layer(dense or fully connected layers)) 1. 定义一个 ...

  6. 花书+吴恩达深度学习(一)前馈神经网络(多层感知机 MLP)

    目录 0. 前言 1. 每一个神经元的组成 2. 梯度下降改善线性参数 3. 非线性激活函数 4. 输出单元 4.1. 线性单元 4.2. sigmoid 单元 4.3. softmax 单元 5.  ...

  7. 图像处理神经网络python_深度学习使用Python进行卷积神经网络的图像分类教程

    深度学习使用Python进行卷积神经网络的图像分类教程 好的,这次我将使用python编写如何使用卷积神经网络(CNN)进行图像分类.我希望你事先已经阅读并理解了卷积神经网络(CNN)的基本概念,这里 ...

  8. 深度学习笔记其五:卷积神经网络和PYTORCH

    深度学习笔记其五:卷积神经网络和PYTORCH 1. 从全连接层到卷积 1.1 不变性 1.2 多层感知机的限制 1.2.1 平移不变性 1.2.2 局部性 1.3 卷积 1.4 "沃尔多在 ...

  9. 深度学习与计算机视觉教程(4) | 神经网络与反向传播(CV通关指南·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/37 本文地址:https://www.showmeai.tech/article-d ...

  10. 深度学习小白专场之循环神经网络和递归神经网络

    深度学习小白专场之循环神经网络和递归神经网络 全连接神经网络和卷积神经⽹网络,都只能单独的去处理单个的输入,且前后的输入之间毫无关系.但是在一些任务中,我们需要更好的去处理序列的信息,即前后的输⼊之间 ...

最新文章

  1. 线上直播丨KDD 2021预训练Workshop,谷歌MSRA等5位顶尖研究者参与研讨
  2. mx:button加skin光晕点击时,大小不一样
  3. conj--复数的共轭值
  4. MyBastis 三种批量插入方式的性能比较
  5. 让浏览器认为现在处于登录状态
  6. Standard C Library - 思维火花 - 博客频道 - CSDN.NET
  7. 3807. 构造字符串——AcWing题库
  8. 2022年11月网络工程师考试知识点分布
  9. memory exhausted mysql 42000 1064
  10. 基于Java Swing编写的简易运费计算工具
  11. 王者荣耀苹果微信多久更新服务器,8月23日王者荣耀ios版更新不了一直显示维护怎么回事 王者荣耀苹果手机微信区一直显示维护...
  12. 基于Win32框架的OpenGL程序
  13. 【题解】P3387 【模板】缩点
  14. HANA 如何创建XS Job来完成定时任务
  15. 国货美妆下半场:拼研发,开线下店与扎堆出海
  16. 位宽512bit显卡_显卡位宽是什么?详解显卡位宽基础知识科普!
  17. java canvas类画直线_canvas教程(二) 绘制直线
  18. Bootstrap3基础 table-responsive 响应式表格
  19. vue用户没有头像用姓名首字母做头像
  20. 实现js动态设置css样式,js动态设置全局样式主题色

热门文章

  1. Linux内核设计与实现 Robert Love
  2. Java将Word转为图片完美解决方案(免费无损不乱码)
  3. 有什么什么比较好用又不流氓的独立的弹窗拦截软件?这4款App让你杜绝流氓软件弹窗
  4. 图解网络(一)——计算机网络基础
  5. QUIC会成为互联网传输的颠覆者吗?
  6. java 正则 标点符号_js实现正则匹配中文标点符号的方法
  7. 马蜂窝都斌出席广西自驾游大会:大数据将成自驾市场增长新引擎
  8. win系统自带校验命令
  9. tkinter的图片格式
  10. 雷达原理-雷达接收机