交叉熵

  交叉熵是用于解决使用二次代价函数时当单个神经元接近饱和的时候对权重和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.的更多相关文章

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

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

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

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

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

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

  4. UFLDL深度学习笔记 (六)卷积神经网络

    UFLDL深度学习笔记 (六)卷积神经网络 1. 主要思路 "UFLDL 卷积神经网络"主要讲解了对大尺寸图像应用前面所讨论神经网络学习的方法,其中的变化有两条,第一,对大尺寸图像 ...

  5. Deeplearning.ai课程笔记-神经网络和深度学习

    神经网络和深度学习这一块内容与机器学习课程里Week4+5内容差不多. 这篇笔记记录了Week4+5中没有的内容. 参考笔记:深度学习笔记 神经网络和深度学习 结构化数据:如数据库里的数据 非结构化数 ...

  6. [DeeplearningAI笔记]神经网络与深度学习人工智能行业大师访谈

    觉得有用的话,欢迎一起讨论相互学习~Follow Me 吴恩达采访Geoffrey Hinton NG:前几十年,你就已经发明了这么多神经网络和深度学习相关的概念,我其实很好奇,在这么多你发明的东西中 ...

  7. Google TensorFlow深度学习笔记

    Google Deep Learning Notes Google 深度学习笔记 由于谷歌机器学习教程更新太慢,所以一边学习Deep Learning教程,经常总结是个好习惯,笔记目录奉上. Gith ...

  8. 深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)

    深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam) 深度学习笔记(一):logistic分类 深度学习笔记(二):简单神经网络,后向传播算法及实现 ...

  9. UFLDL深度学习笔记 (一)反向传播与稀疏自编码

    UFLDL深度学习笔记 (一)基本知识与稀疏自编码 前言 近来正在系统研究一下深度学习,作为新入门者,为了更好地理解.交流,准备把学习过程总结记录下来.最开始的规划是先学习理论推导:然后学习一两种开源 ...

随机推荐

  1. Chrome浏览器扩展开发系列之十八:扩展的软件国际化chrome.i18n API

    i18n是internationalization 的简写,这里将讨论软件国际化的问题.熟悉软件国际化的朋友应该知道,软件国际化要求,页面中所有用户可见的字符串都必须置于资源属性文件中.资源属性文件中 ...

  2. AngularJS 和 Bootstrap

    AngularJS Bootstrap AngularJS 的首选样式表是 Twitter Bootstrap, Twitter Bootstrap 是目前最受欢迎的前端框架. 查看 Bootstra ...

  3. python多线程爬虫设计及实现示例

    爬虫的基本步骤分为:获取,解析,存储.假设这里获取和存储为io密集型(访问网络和数据存储),解析为cpu密集型.那么在设计多线程爬虫时主要有两种方案:第一种方案是一个线程完成三个步骤,然后运行多个线程 ...

  4. 说说BroadcastReceiver和ContentProvider

    上一篇说了Activity,Fragment和Service,今天来说说四大组件中的另外两个吧. BroadcastReceiver: 广播在实际开发中非常有用,是各个组件间通讯的利器.广播接收器分为 ...

  5. Java使用拦截器的两种方式

    拦截器是个好东西,之前用到过,现在记录一下,供以后参考使用! 其一,使用org.aspectj.lang.annotation.Aspect 先上代码: package com.test.interc ...

  6. (转)log4j(三)——如何控制不同级别的日志信息的输出?

    一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 老规矩,先来个栗子,然后再聊聊感受 package test.log4j.test3; import org.apac ...

  7. Thread(线程)四

    今天继续讲讲线程的异常处理.线程取消.多线程的临时变量和线程安全lock的问题. 1.异步处理. 一般来说如果是同步方法的异步处理,我们大多都是try catch住,但是异步方法应该怎么做呢. #re ...

  8. mysql5.7.18的安装与主从复制

    CentOS6.7安装mysql5.7.18 1.  解压到/usr/local目录 # tar -zxvf mysql-5.7.18-linux-glibc2.5-i686.tar.gz -C /u ...

  9. 27. leetcode 401. Binary Watch

    A binary watch has 4 LEDs on the top which represent the hours (0-11), and the 6 LEDs on the bottom ...

  10. POJ 3669 Meteor Shower (BFS+预处理)

    Description Bessie hears that an extraordinary meteor shower is coming; reports say that these meteo ...