《深入浅出深度学习:原理剖析与python实践》第八章前馈神经网络(笔记)
8.1 生物神经元(BN)结构
1、人脑中有100亿-1000亿个神经元,每个神经元大约会和其他1万个神经元相连

2、细胞体:神经元的主体,细胞体=细胞核+细胞质+细胞膜,存在膜电位
3、树突:从细胞体向外延伸出许多突起的神经纤维。输入端
4、轴突:细胞体伸出的最长的一条突起,也叫神经纤维。长而细。末端细分支为神经末梢。输出端
5、突触:一个神经元轴突的神经末梢和另一个神经元的细胞体或树突进行通信连接。
6、神经传导流程:多个树突接受输入信息,输入信息累加大于某一个特定阈值,信息通过轴突传播出去,神经元被激活。否则,若输入信息小于阈值,神经元处于抑制状态。
8.2 人工神经元模型(AN/M-P模型)

1、AN处理数据流程
预激活阶段:接受来自其他m个神经元传递过来的输入信号,这些输入信号通过与相应权重进行加权求和传递给下一阶段
h = b + ( i∑wi × xi ) i=1...m
第二阶段:将预激活的加权结果传递给激活函数,经过激活函数处理,预激活的数据被压缩到一个范围区间内,数值的大小决定神经元处于活跃状态还是抑制状态,输出结果传递给下一层的神经元
a = ƒ ( h )
| 生物神经元 | 人工神经元 |
| 细胞核 | 神经元 |
| 树突 | 输入 |
| 轴突 | 输出 |
| 突触 | 权重 |
8.3 单层感知机
1、单层感知机是1957年由计算机科学家Rosenblatt提出的神经网络模型,由输入层和输出层构成

2、Perceptron由m个输入神经元和n个输出神经元构成,是一个全连接的二分图结构。
(1)单层感知机在输入层接收数据,把输入数据与相应权重参数累加
hk = bk + ( i∑wik × xi ) k = 1...n. i = 1...m
(2)将累加结果输入到激活函数中,单层感知机的输出层可以采用Logistic/softmax函数作为最后的结果输出
yk = softmax(hk) k = 1...n
3、感知机的工作原理:本质是在高维空间中,构造出合理的边界超平面(b + ∑wixi),把不同类别的数据集分离。对于线性可分或近似线性可分的数据集有很好的效果。对于线性不可分数据集,效果不理想。
8.4 多层感知机
1、理论依据:1991年Kurt Hornik提出的全局逼近定理----对于含有一个隐藏层的前馈神经网络,如果隐藏层可以由任意多的神经元构成,那么神经网络能够逼近实数范围内的任意连续函数。
简而言之,对于分类问题,隐藏层的作用就是把线性不可分的数据,通过线性变换(预激活阶段)和非线性的激活(激活阶段)的操作,使得数据在输出层变成线性可分
2、神经网络中包含的隐藏层越深,隐藏层包含的神经元越多,它能提取的特征就越丰富,就具备更强大的学习能力,但是实际上,随着网络逐渐加深,神经网络的性能在达到一个极值后(一般两到三层),就停止提升。
8.5 激活函数
1、激活态:处在活跃状态的神经元
2、抑制态:处在非活跃状态的神经元
3、隐藏层神经元中引入了激活函数使MLP模型能力提升。如果多层神经网络只添加隐藏层,而没有添加激活函数,或者激活函数是线性函数,那么MLP等价于单层感知机。
4、激活函数在神经网络中的作用
(1)非线性的激活函数使得模型能够处理更加复杂的非线性数据集问题,提高了模型的学习能力
(2)通过激活函数的处理,神经元被划分为激活态和抑制态,因此,在训练的过程中,能够把重点的神经元置为激活态,把相对无关的神经元置为抑制态,自动特征提取。
5、激活函数性质:非线性、可微性、单调性
6、常用激活函数
(1)阶跃函数:不连续、不光滑、不可导
(2)sigmoid函数和tanh函数:有缺陷
(3)近似生物神经元的激活函数:例ReLU和softplus
《深入浅出深度学习:原理剖析与python实践》第八章前馈神经网络(笔记)的更多相关文章
- 推荐《深入浅出深度学习原理剖析与python实践》PDF+代码
<深入浅出深度学习原理剖析与Python实践>介绍了深度学习相关的原理与应用,全书共分为三大部分,第一部分主要回顾了深度学习的发展历史,以及Theano的使用:第二部分详细讲解了与深度学习 ...
- 深入浅出深度学习:原理剖析与python实践_黄安埠(著) pdf
深入浅出深度学习:原理剖析与python实践 目录: 第1 部分 概要 1 1 绪论 2 1.1 人工智能.机器学习与深度学习的关系 3 1.1.1 人工智能——机器推理 4 1.1.2 机器学习—— ...
- 参考《深度学习原理与应用实践》中文PDF
读国内关于深度学习的书籍,可以看看<深度学习原理与应用实践>,对深度学习原理的介绍比较简略(第3.4章共18页).只介绍了"神经网络"和"卷积神经网络&quo ...
- 学习《深度学习入门:基于Python的理论与实现》高清中文版PDF+源代码
入门神经网络深度学习,推荐学习<深度学习入门:基于Python的理论与实现>,这本书不来虚的,一上来就是手把手教你一步步搭建出一个神经网络,还能把每一步的出处讲明白.理解神经网络,很容易就 ...
- 给深度学习入门者的Python快速教程
给深度学习入门者的Python快速教程 基础篇 numpy和Matplotlib篇 本篇部分代码的下载地址: https://github.com/frombeijingwithlove/dlcv_f ...
- 深度学习入门者的Python快速教程 - 基础篇
5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇
始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...
- 30个深度学习库:按Python、C++、Java、JavaScript、R等10种语言分类
30个深度学习库:按Python.C++.Java.JavaScript.R等10种语言分类 包括 Python.C++.Java.JavaScript.R.Haskell等在内的一系列编程语言的深度 ...
随机推荐
- bzoj 3589: 动态树【树链剖分+容斥】
因为一开始调试不知道unsigned怎么输出就没有加\n结果WA了一上午!!!!!然而最后放弃了unsigned选择了&2147483647 首先链剖,因为它所给的链一定是某个点到根的路径上的 ...
- 【POJ - 1661】Help Jimmy (动态规划)
Help Jimmy Descriptions: "Help Jimmy" 是在下图所示的场景上完成的游戏. 场景中包括多个长度和高度各不相同的平台.地面是最低的平台,高度为零,长 ...
- Linux 虚拟机配置网络
- 《windows核心编程系列》二十一谈谈基址重定位和模块绑定
每个DLL和可执行文件都有一个首选基地址.它表示该模块被映射到进程地址空间时最佳的内存地址.在构建可执行文件时,默认情况下链接器会将它的首选基地址设为0x400000.对于DLL来说,链接器会将它的首 ...
- 贪心 Codeforces Round #273 (Div. 2) C. Table Decorations
题目传送门 /* 贪心:排序后,当a[3] > 2 * (a[1] + a[2]), 可以最多的2个,其他的都是1个,ggr,ggb, ggr... ans = a[1] + a[2]; 或先2 ...
- Oracle10g修改数据库字符集
Oracle10g修改字符集记录: 版本:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production 参考 ...
- jmeter(三)参数传递
[一]参数化 录制脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统. 这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不 ...
- joomla建站-双语CMS系统开发的实现
首先,请确保你的网站安装了你所需的双语语言,详细安装过程见:https://www.cnblogs.com/surfer/p/9619345.html 第一步:设置内容管理 可以按照个人需求进行语言编 ...
- R in action读书笔记(13)第十章 功效分析
功效分析 功效分析可以帮助在给定置信度的情况下,判断检测到给定效应值时所需的样本量.反过来,它也可以帮助你在给定置信度水平情况下,计算在某样本量内能检测到给定效应值的概率.如果概率低得难以接受,修改或 ...
- Node.js——请求头
var http = require('http') var server = http.createServer(); server.on('request', function (req, res ...