训练神经网络的过程,就是在求未知参数(权重)。让网络搭建起来,得到理想的结果。

分类-监督学习。

反向传播求权重:每一层在算偏导数。局部梯度,链式法则。

激活函数:

sigmoid仅中间段趋势良好

对复杂的神经网络(累计),会出现梯度消失、梯度爆炸

训练网络是为了求权重;

反向传播方法,更新权重;

使用的是梯度来更新,如果梯度趋近于0,

sigmoid梯度最大才0.25。

Batch Normalization

BN解决了梯度消失同时保留非线性

ICS现象(internel  shift)输入数据在每一层上分布发生了改变

神经网络初始输入要初始化,是为了落在梯度大的区间

随着网络的深入,数据落在

解决方法:移回去

一个神经网络可以解决问题最大的优势:非线性

sigmoid中,把shift移回去。中间部分类似线性了,和非线性初衷相悖。线性的网络表达能力特别差。
BN的高明之处,除了限定在一定标准差之内。拓展一下,还是以0为中心,拓宽。避免落在线性空间。
正态分布(均值影响中心位置,标准差sigma),通过控制参数来改变函数形状。

训练中直接训练BN的两个参数。

BN解决梯度消失,从而在深层网络中仍可以训练。

BN在网络中的位置:

但是层数深了还是无法避免梯度消失。

深度残差网络(Deep Residual Network )

Residual Network通过引入Skip Connection到CNN网络结构中,使得网络深度达到了千层的规模,并且其对于CNN的性能有明显的提升

参考:Skip Connection为何有效及其它 - 张俊林的博客 https://blog.csdn.net/malefactor/article/details/67637785

神经网络Batch Normalization——学习笔记的更多相关文章

  1. 深度学习(二十九)Batch Normalization 学习笔记

    Batch Normalization 学习笔记 原文地址:http://blog.csdn.net/hjimce/article/details/50866313 作者:hjimce 一.背景意义 ...

  2. Batch Normalization 学习笔记

    原文:http://blog.csdn.net/happynear/article/details/44238541 今年过年之前,MSRA和Google相继在ImagenNet图像识别数据集上报告他 ...

  3. batch normalization学习理解笔记

    batch normalization学习理解笔记 最近在Andrew Ng课程中学到了Batch Normalization相关内容,通过查阅资料和原始paper,基本上弄懂了一些算法的细节部分,现 ...

  4. 从零开始构建并编写神经网络---Keras【学习笔记】[1/2]

    Keras简介:   Keras是由纯python编写的基于theano/tensorflow的深度学习框架.   Keras是一个高层神经网络API,支持快速实验,能够把你的idea迅速转换为结果, ...

  5. 神经网络与深度学习笔记 Chapter 1.

    转载请注明出处:http://www.cnblogs.com/zhangcaiwang/p/6875533.html sigmoid neuron 微小的输入变化导致微小的输出变化,这种特性将会使得学 ...

  6. 神经网络与深度学习笔记 Chapter 6之卷积神经网络

    深度学习 Introducing convolutional networks:卷积神经网络介绍 卷积神经网络中有三个基本的概念:局部感受野(local receptive fields), 共享权重 ...

  7. 神经网络与深度学习笔记 Chapter 3.

    交叉熵 交叉熵是用于解决使用二次代价函数时当单个神经元接近饱和的时候对权重和bias权重学习的影响.这个公式可以看出,当神经元饱和的时候,sigma的偏导接近于0,w的学习也会变小.但是应用交叉熵作为 ...

  8. 神经网络与深度学习笔记 Chapter 2.

    转载请注明出处http://www.cnblogs.com/zhangcaiwang/p/6886037.html 以前都没有正儿八经地看过英文类文档,神经网络方面又没啥基础,结果第一章就花费了我将近 ...

  9. 神经网络系列学习笔记(四)——神经网络之RNN学习笔记

    不同于传统的FNNs(Feed-forward Neural Networks,前向反馈神经网络),RNNs引入了定向循环,能够处理那些输入之间前后关联的问题. RNNs的目的是用来处理序列数据. 具 ...

随机推荐

  1. 【Linux】head命令

    用途 它是用来显示开头或结尾某个数量的文字区块 全称 head的全称即为head 参数 -q :隐藏文件名 -v :显示文件名 -c :<字节>显示字节数 -n :<行数>显示 ...

  2. 用记事本编写一个Servlet项目

    第一步:建立目录 新建一个文件夹FirstServlet,然后在FirstServlet目录下面再建两个文件夹,分别为:WEB-INF和src.最后在WEB-INF下面建一个classes文件夹 第二 ...

  3. 【微信小程序】再次授权地理位置getLocation+openSetting使用

    写在前面:在tarbar主页面,再次授权JS代码请放在onshow里面:在详情页(非一级主页面),再次授权JS代码请放在onReady里面,具体原因我前面博客讲了的. 我们知道: 1.微信的getLo ...

  4. Linux索引节点(Inode)用满导致空间不足

    一.问题出现 在创建新目录和文件是提示“no space left on device”!按照以前的情况,很有可能是服务器空间又被塞满了,通过命令查看,发现还有剩余.再用df -i查看了一下/分区的索 ...

  5. AndroidStudio调用so文件

    将*.so文件拷贝到app\libs\armeabi文件夹下 修改build.gradle文件,在buildTypes下添加 sourceSets { main { jniLibs.srcDirs = ...

  6. Eclipse删除文件的恢复(转)

    与vs不同,在eclipse中删除的文件是不会放进回收站的, 很多人以为eclipse是直接在磁盘删除文件,所以一般都会用反删除软件恢复. 其实不必那么麻烦的,只要对着被删除文件的上一层目录按右键, ...

  7. 学习XML(添加一个子节点) 摘录

    这里介绍添加XML节点的方法. 首先定义XML文件:(bookstore.xml) <?xml version="1.0" encoding="utf-8" ...

  8. Netty(四):粘包问题描述及解决

    拆包粘包问题解决 netty使用tcp/ip协议传输数据.而tcp/ip协议是类似水流一样的数据传输方式.多次访问的时候有可能出现数据粘包的问题,解决这种问题的方式如下: 1 定长数据流 客户端和服务 ...

  9. C++ vector 和 map的删除

    1.连续内存序列容器(vector,string,deque) 序列容器的erase方法返回值是指向紧接在被删除元素之后的元素的有效迭代器,可以根据这个返回值来安全删除元素. vector<in ...

  10. android.animation(3) - ValueAnimator-ofObject(TypeEvaluator evaluator, Object... values)

    一.ofObject()概述 前面我们讲了ofInt()和ofFloat()来定义动画,但ofInt()只能传入Integer类型的值,而ofFloat()则只能传入Float类型的值.那如果我们需要 ...