1、神经网络

感知机就是一个人工神经元,是最简单的神经网络,可以用来解决简单“与”和“或”分类问题,但是无法解决“异或”逻辑分类问题这一基础功能。这也导致了神经网络研究陷入低谷。

为解决XOR问题,1974年哈佛大学的一片博士论文证明在神经网络多加一层,并利用“反向传播”学习方法,可以解决XOR问题。这就是多层神经网络也叫前馈神经网络。

2、深度学习

深度神经网络通常是前馈神经网络,至少有 一个隐层,可以为复杂非线性系统提供建模,多的隐层可以提供更高的抽象特征。深度神经网络是一种结构不是一种算法。深度学习可以用来从高维、复杂的数据中快速抽取特征。深度学习是神经网络的一个分支,其基本结构是深度神经网络。

高层特征是底层特征的组合,从底层到高层的特征表达越来月抽象和概念化,即越来越能表现语义或意图。不同的图片可以由基本的组成单元构成。从下图可以看出,底层特征看起来基本一致,高一层就能看出来不同了,再往上一层就能识别具体物体了。

2.1浅层学习和深度学习

含有一个隐藏层的就叫做多层感知机,也叫神经网络,这种模型叫浅层结构,这种模型可以用于人工规则的统计学习方法,利用这种浅层模型实现较复杂的训练,实现基本的分类。例如SVM、Boosting、最大熵方法。 深度学习不止一层隐层,如上图,最底层的基本线条看起来一致,如果要从基础线条中识别出脸、汽车、大象则需要不断手工修改参数,才有可能训练出只区分脸和汽车的模型。这种情况下需要调整的参数过多,需要的样本巨大,且需要人工的干预,这就是深度不够的缺陷。
直到2006年,以Hinton为首的研究员在深度信念网络(DBN)方面的工作,将此问题终结。他们训练网络的原则是:(1)、非监督学习用来预训练各个层(2)、分监督在之前学习到的层次上,一次只学习一个层次,每个层次学习到的结果作为下一层的输入(3)、用监督学习来调整层与层之间的权重

2.2深度学习和神经网络

深度学习和传统的神经网络之间的相同之处,就是二者都有相似的分层结构,包括输入层、隐层和输出层,其中只有邻层之间有连接,同一层及跨层之间没有连接。不同之处在于,传统神经网络一般只有二至三层,参数和计算单元有限,对复杂函数的表示能力有限,学习能力有限;而深度学习具有五至十层,甚至更多。

2.3如何训练神经网络

BP的全称是Back Propagation,意思是误差反向传输。基本想法是:有信号正向传播和误差反向传播。(1)、信号正向传播:输入样本从输入层传入,经各个隐层逐层处理后,传至输出层。若输出层的实际输出与期望不符,则转入误差反向传播阶段。(2)、误差反向传播:将输出以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元误差信号。
注意:5层以内的神经网络可以用BP算法训练,5层以上的神经网络用BP算法训练就不理想了。会出现梯度消失或者梯度爆炸情况。

2.4总结

在图像处理中,我们可以用像素集合体表示完整的图像,这时特征选取的好坏对于分类或预测结果影响非常大,因此选取一个什么特征,怎么选取特征对于解决实际问题非常重要。然而,人为的选取特征是一件耗时耗力且没有规律可循。那能不能让机器自动学校一些特征?答案是能,深度学习就是来干这个的。因此自动学习特征的方法,统称为深度学习。
深度学习首先利用无监督学习对每一层进行逐层训练去学习特征;每次单独训练一层,并将训练结果作为更高层的输入;然后到最上层改用监督学习从上到下进行微调(Fine-Tune)去学习模型。
具体过程如下:
(1)使用自上而下的非监督学习(就是从底层开始,一层一层地往顶层训练)。采用无标定数据(有标定也行)分层训练各层参数。用无标定数据训练隐层的最底层,训练时先学习最底层的参数,(可以看成是得到一个使得输入和输出差别最小的三层神经网络的隐层)。
(2)自顶向下的监督学习,就是通过带标签的数据去训练,误差自顶向下传输,对网络进行微调。基于第一步的各层参数进一步Fine—tune整个多层模型参数;类似神经网络的随机初始化处置过程,深度学习的第一步不是所及初始化,而是通过学习输入数据的结构得到的,因此这个初值接近全局最优,能够取得更好的效果;所以深度学习效果好很大程度上归功于第一步(特征学习过程)。

参考资料

《神经网络与深度学习》——吴岸城

http://www.cnblogs.com/alexcai/p/5506806.html

神经网络与深度学习笔记相关推荐

  1. 神经网络与深度学习笔记汇总一

    神经网络与深度学习笔记汇总一 梯度下降法: 向量化:代替for循环 广播 ReLU激活函数 逻辑回归 损失函数(误差函数) 代价函数 卷积神经网络 往期回顾 梯度下降法: 通过最小化代价函数(成本函数 ...

  2. 神经网络与深度学习笔记汇总二

    神经网络与深度学习笔记汇总二 正交化(方便调整参数) 迭代 单实数评估指标(判断几种手段/方法哪个更好) 指标选取 训练集.开发集.测试集作用与用途 评估指标 判断算法是好是坏 迁移学习 总结 往期回 ...

  3. 神经网络与深度学习笔记汇总三

    神经网络与深度学习笔记汇总三 往期回顾 将之前掘金写的学习笔记所遇困难搬到这里,方便查看复习 遇到问题: 异常值处理 学习内容 1..drop() 返回的是一个新对象,原对象不会被改变. 2.遇到问题 ...

  4. 神经网络与深度学习笔记汇总五

    神经网络与深度学习笔记汇总五 往期回顾 将之前掘金写的学习笔记所遇困难搬到这里,方便查看复习 遇到问题: 报错 (未解决) 学习内容: 1.报错operand should contain 1 col ...

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

    神经网络与深度学习--笔记1 一.线性回归及线性分类 1.多元线性回归 2.线性多分类(softmax回归) 3.SGD算法更新参数 二.感知机 1.单神经元模型与单层感知机 2.多层感知机(MLP) ...

  6. 神经网络与深度学习笔记 (五)深层神经网络

    摘要:本文知识点主要有简单介绍深层神经网络.深层神经网络的传播过程.保证矩阵维数的正确性.深度神经网络强大的原因.神经网络正向传播和反向传播的流程图.参数和超参数和神经网络与人脑机制的关系. 1.深层 ...

  7. 神经网络与深度学习笔记(二)正向传播与反向传播

    文章目录 正向传播 反向传播 矢量计算 cost function由来 神经网络层每层向量的形状 正向传播 正向传播计算的是神经网络的输出 如上图,就是一次类似的正向传播的过程,正向传播计算最后的输出 ...

  8. 神经网络与深度学习笔记(三)python 实现反向传播算法

    1.BP方程式 2.计算步骤 3.代码 def backprop(self, x, y): """Return a tuple "(nabla_b, nabla ...

  9. 深度学习笔记(5) 深层神经网络

    深度学习笔记(5) 深层神经网络 1. 深层神经网络 2. 前向传播和反向传播 3. 核对矩阵的维数 4. 参数和超参数 5. 深度学习和大脑的关联性 1. 深层神经网络 当算神经网络的层数时,不算输 ...

最新文章

  1. 如何写出让 CPU 跑得更快的代码?
  2. python学习_22(文件)
  3. SpringMVC简单项目配置
  4. Spring中的AOP(三)——基于Annotation的配置方式(一)
  5. python 内置函数转list_python 内置函数等的相互转换示例
  6. 回归树与基于规则的模型(part1)--if-then语句
  7. WPJAM网址导航:最轻便快捷的WordPress网址导航插件
  8. python升级pip怎么出错了_pip 的高阶玩法
  9. Linux系统下载谷歌浏览器
  10. 2020校招途家名宿开发笔试
  11. 弗吉尼亚理工大学计算机科学,美国弗吉尼亚理工大学计算机科学本科.pdf
  12. NVIDIA Jetson TK1学习与开发——手动刷机
  13. Python迭代器和生成器详解(包括yield详解)
  14. OpenPose 运行指令 (Version@1.7)
  15. Android 插件开发实现
  16. Cortex-M3 处理器
  17. 每天干的啥?(2018.11)
  18. MTK平台驱动调试的资料
  19. (ubuntu)YOLOv5报错:RuntimeError: CUDA error: no kernel image is available for execution on the ...
  20. liunx系统下安装crontab

热门文章

  1. 单行子查询返回多个行_sql多表查询练习,习题总结
  2. python计算条件概率_用Python实现贝叶斯定理(附代码)
  3. 中国35位“大国工匠”榜单出炉!西工大、西电合计占半壁江山!清华仅1人!...
  4. 这是我的C语言入门笔记。
  5. 基于物品的协同过滤推荐算法_《推荐系统实践》3.基于物品的协同过滤算法
  6. 笔记本超频会烧吗_如何判断电脑是否支持DIY 超频?这篇文章告诉你
  7. 常见人名大全_生辰八字起名取名:2020年属鼠的女孩起名字大全
  8. python tempfile cleanup_python tempfile 模块---生成临时文件和目录
  9. 无失真压缩法可以减少冗余_机考样题(选择题带标准答案).docx
  10. classpath环境变量