神经网络与深度学习笔记 Chapter 3.
交叉熵
交叉熵是用于解决使用二次代价函数时当单个神经元接近饱和的时候对权重和bias权重学习的影响。
这个公式可以看出,当神经元饱和的时候,sigma的偏导接近于0,w的学习也会变小。但是应用交叉熵作为代价函数的话,只有当所有的神经元接近0或者1的时候才会出现这种情况。它解决了初始化w和bias时坏的w和bias带来的影响。
交叉熵对w求偏导:

,,,,有
最后得出:
由该公式可以看出,只有大部分样例的输出接近期望值时,w的学习才会变缓。bias同理。
上面的讨论只针对有一个神经元的网络。
如果代价函数是交叉熵函数,那么对应的BP1为:
BP4为
,可以看出,该公式中消除了delta对z的偏导。
但是,对于线性神经元且
,二次代价函数的误差为
,从而有:

这说明当神经元是线性的时候,就不存在学习率下降的情况了。与此同时,这个时候神经元的误差可以称为是a与期望值的差。
Overfitting and regularization
过度拟合在神经网络中的表现是,当训练周期太长时,对测试集的准确率一直在摇摆,而训练集的损失(cost)在一直降低,这个时候就相当于网络在记住训练集中的特性,而不是进行更具一般性的学习。所以我们需要知道过拟合什么时候发生,学习降低过拟合的影响的技术。
一般来说减少过拟合的方法之一就是增加训练集的大小,但是有时候训练数据的获取并不是那么容易。
另一个减少过拟合的方法是正则化,本章将讲述正则化技术的一种权重衰减(weight decay)或L2正则化。该方法是添加一个正则项(regularization term)到损失函数中,添加正则项的损失函数如下所示:
或
其中
叫做正则化参数( regularization parameter),而n一般是训练集的大小,注意正则项中不包含bias。
神经网络与深度学习笔记 Chapter 3.的更多相关文章
- 神经网络与深度学习笔记 Chapter 6之卷积神经网络
深度学习 Introducing convolutional networks:卷积神经网络介绍 卷积神经网络中有三个基本的概念:局部感受野(local receptive fields), 共享权重 ...
- 神经网络与深度学习笔记 Chapter 1.
转载请注明出处:http://www.cnblogs.com/zhangcaiwang/p/6875533.html sigmoid neuron 微小的输入变化导致微小的输出变化,这种特性将会使得学 ...
- 神经网络与深度学习笔记 Chapter 2.
转载请注明出处http://www.cnblogs.com/zhangcaiwang/p/6886037.html 以前都没有正儿八经地看过英文类文档,神经网络方面又没啥基础,结果第一章就花费了我将近 ...
- UFLDL深度学习笔记 (六)卷积神经网络
UFLDL深度学习笔记 (六)卷积神经网络 1. 主要思路 "UFLDL 卷积神经网络"主要讲解了对大尺寸图像应用前面所讨论神经网络学习的方法,其中的变化有两条,第一,对大尺寸图像 ...
- Deeplearning.ai课程笔记-神经网络和深度学习
神经网络和深度学习这一块内容与机器学习课程里Week4+5内容差不多. 这篇笔记记录了Week4+5中没有的内容. 参考笔记:深度学习笔记 神经网络和深度学习 结构化数据:如数据库里的数据 非结构化数 ...
- [DeeplearningAI笔记]神经网络与深度学习人工智能行业大师访谈
觉得有用的话,欢迎一起讨论相互学习~Follow Me 吴恩达采访Geoffrey Hinton NG:前几十年,你就已经发明了这么多神经网络和深度学习相关的概念,我其实很好奇,在这么多你发明的东西中 ...
- Google TensorFlow深度学习笔记
Google Deep Learning Notes Google 深度学习笔记 由于谷歌机器学习教程更新太慢,所以一边学习Deep Learning教程,经常总结是个好习惯,笔记目录奉上. Gith ...
- 深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)
深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam) 深度学习笔记(一):logistic分类 深度学习笔记(二):简单神经网络,后向传播算法及实现 ...
- UFLDL深度学习笔记 (一)反向传播与稀疏自编码
UFLDL深度学习笔记 (一)基本知识与稀疏自编码 前言 近来正在系统研究一下深度学习,作为新入门者,为了更好地理解.交流,准备把学习过程总结记录下来.最开始的规划是先学习理论推导:然后学习一两种开源 ...
随机推荐
- shell十分钟教程
1.先介绍下shell的工作原理 Shell可以被称作是脚本语言,因为它本身是不需要编译的,而是通过解释器解释之后再编译执行,和传统语言相比多了解释的过程所以效率会略差于传统的直接编译的语言. 但是s ...
- 使用cxf做webservice接口调用
一.服务端 建javaweb工程,去官网下载所需的cxf接口发布的jar包,导入到工程.官网地址:http://cxf.apache.org/download.html 1.建立调用接口 packag ...
- 有关conv_std_logic_vector和conv_integer
原文地址:关于conv_std_logic_vector 和 conv_integer 这两个函数的使用问题作者:xiphosura std_logic_arithThis is the librar ...
- 智联卓聘 卓聘IM(聊聊)开发实践
1. 卓聘IM开发背景 智联卓聘是智联旗下高端人才招聘平台,成立快4年多,业务增涨每年以100%速度增涨快,同时对产品和研发速度都比较高. 2015年提出IM开发,主要用于后选人与猎头及时交流,降低 ...
- JavaBean规范
JavaBean规范 (1)JavaBean 类必须是一个公共类,并将其访问属性设置为 public ,如: public class user{ …}(2)JavaBean 类必须有一个空的构造函 ...
- 50行代码实现的高性能动画定时器 raf-interval
写在前面 raf-interval 是基于 window.requestAnimationFrame() 封装的定时器. Github: https://github.com/dntzhang/raf ...
- 支持苹果IPV6 ONLY 的socket 修改方法
首先别错误理解以为app 必须支持 ipv6 的服务端, 只需要支持 ipv6的客户端需要访问 ipv4 的服务端. 目前需要经过 NAT64 转换就能达到目的,客户端只需要支持该转换就能实现, 在 ...
- Python面向对象编程(四)
1.多态 多态的概念虽然现在才说,但是我们一直在用.多态就是多种形态的意思,动物都猫,狗,猪等等,这些都是动物的多种形态. 反映在Python中,多态就意味着就算不知道变量所引用的对象类型是什么,也能 ...
- Spring+SpringMVC+MyBatis集成学习笔记【一】
一,首先要清楚,SpringMVC其实就是Spring的一个组件 例如我们知道Spring中有类似于,AOP TX等等类似的组件,所以SpringMVC其实就是Spring的一个组件,是S ...
- year:2017 month:08 day:03
2017-08-03 JAVAse 继承 继承:通过extends关键字可实现类与类之间的继承 父类:基类/超类 子类:派生类 1.继承的特点:单继承[一个类只能有一个父类]多层次[父类还可有父类] ...