目录

1. 神经网络概述

1.1 概念和起源

1.2 神经网络基本结构

1.2.1 神经元数学模型

1.2.2 sigmoid激活函数

1.2.3 神经网络结构

1.3 我对神经网络的构建和流程理解

1.3.1 单个神经元

1.3.2 单个隐含层

1.3.3 多个隐含层

1.3.4 调参

1.4 BP算法

2. 梯度消失或爆炸

3. 人们对神经网络的预期与现实

参考


​​​​​​​1. 神经网络概述

1.1 概念和起源

概念:神经网络是一种由许多非线性计算单元(或称神经元、节点)组成的分层系统。

网络深度:就是不包括输入层的层数。

多层感知器(multilayer perceptron):在隐含层数大于1时常常称为深层感知器,实际上是一种由多层节点有向图构成的前馈神经网络。其中,每一个非输入节点时具有非线性激活函数的神经元,每一层与其下一层是全连接的。

1.2 神经网络基本结构

1.2.1 神经元数学模型

MP神经元数学模型,包含n个输入,n个权值,一个偏置b,以及一个输出y。 ==>即我们高中学到的多元一次方程:

y表示激活函数

​​​​​​​

1.2.2 sigmoid激活函数

f是一个非线性变换,称为激活函数,通常选为sigmoid函数,公式为:

1.2.3 神经网络结构

在训练神经网络方面,BP(Back Propagation)反向传播无疑是最常用最著名的算法。这是一种有监督的学习算法。

浅层网络:主要是指具有一个隐含层的神经网络。

深层网络:主要是指具有2个及以上隐含层的神经网络。

1.3 我对神经网络的构建和流程理解

1.3.1 单个神经元

单个神经元即高中多元一次方程。

激活函数:sigmoid(y).

1.3.2 单个隐含层

1.3.3 多个隐含层

1.3.4 调参

iteration(迭代):每一次迭代都是一次权重更新,每一次权重更新需要batch_size个数据进行Forward运算得到损失函数,再BP算法更新参数。1个iteration等于使用batchsize个样本训练一次

bath_size:

epochs/ˈiː.pɒk/:被定义为向前和向后传播中所有批次的单次训练迭代。这意味着1个周期是整个输入数据的单次向前和向后传递。简单说,epochs指的就是训练过程中数据将被“轮”多少次,就这样

one epoch = numbers of iterations = N = 训练样本的数量/batch_size

1.4 BP算法

在训练神经网络方面,BP(Back Propagationi)反向传播无疑是最常用、最著名的算法。

这是有监督学习算法,应提供一组训练样本,对给定的输入,指明相应的输出。

2. 梯度消失或爆炸

problem:1991年,Hochreiter正式指出,典型的深层网络存在梯度消失或爆炸问题,从而明确了深度学习的一个里程碑。

该问题是,累积反向传播误差信号在神经网络的层数增加时会出现指数衰减或增长的现象,从而导致数值计算快速收缩或越界。这就是深层网络很难用反向传播算法训练的主要原因。

梯度消失或爆炸问题又称为长时滞后问题,在循环神经网络CNN中也会出现。

1990-2000年,Hochreiter的深邃思想推动了若干新方法的探索。

但除了卷积神经网络之外,训练深层网络的问题直到2006年才开始得到严肃认真的对待。因为1995年之后,支持向量机SVM的快速发展减缓了神经网络的有关工作进展。

所以,普遍认为,深度学习正式发端于2006年,以Hinton及其合作者发表的两篇重要论文为标志。"A fast learning algorithm for deep belief nets"; "Reducing the dimensionality of data with neural networks"。

从那以后,大量的深度学习模型如雨后春笋般迅速发展起来,其中主要包括受限玻尔兹曼机(Restricted Boltzman Machine, RBM)、深层自编码器(deep AutoEncoder, deep AE)、深层信念网络(deep beliefnet)、深层玻尔兹曼机(Deep Boltzman Machine, DBM)、和积网络(Sum-Product Network, SPN)、深层堆叠网络(Deep Stacked Network, DSN)、卷积神经网络(Convolutional Neural Network, CNN)、循环神经网络(Recurrent Neural Network, RNN)、长短时记忆网络(Long Short-Term Memory network, LSTM network)、强化学习网络(Reinforcement Learning Network, RLN)、生成对抗网络(Generative Adversarial Network, GAN)等。

训练技巧:最大池化(max pooling)、丢弃输出(dropout)、丢弃连接(dropconnect)

取得了许多历史性突破和成就的领域:手写数字识别、ImageNet分类和语音识别。

3. 人们对神经网络的预期与现实

一个具有浅层结构或层数不够深的神经网络虽然在节点数足够大时也可能充分逼近地表达任意的多元非线性函数,但这种浅层表达在具体实现时往往由于需要太多的结点而无法实际应用。

期望:一般说来,对于给定数目的训练样本,如果缺乏其他先验知识,人们更期望使用少量的计算单元来建立目标函数的“紧表达”,以获得更好的泛化能力。

现实:在网络深度不够时,这种紧表达可能根本无法建立起来。因为理论研究表明,深度为k的网络能够紧表达的函数在用深度为k-1的网络来表达时有时需要的计算单元会呈指数增长。

但在网络深度不够时,这种紧表达可能根本无法建立起来,因为理论研究表明,深度为k的网络能够紧表达的函数在用深度为k-1的网络来表达时有时需要的计算单元会呈指数增长。​​​​​​​

解决:深层神经网络(又称深度神经网络)在一定的条件下具有非常重要的应用前景。

参考

[1] 深度学习:卷积神经网络从入门到精通。李玉鑑,张婷

深度学习基础知识(一): 概述-神经网络起源和发展相关推荐

  1. 基于人脸的常见表情识别(1)——深度学习基础知识

    基于人脸的常见表情识别(1)--深度学习基础知识 神经网络 1. 感知机 2. 多层感知机与反向传播 卷积神经网络 1. 全连接神经网络的2大缺陷 2. 卷积神经网络的崛起 卷积神经网络的基本网络层 ...

  2. 深度学习基础知识(八):神经网络基础之导数

    这个专栏主要是想和大家分享一下深度学习的基础知识,主要是以吴恩达老师深度学习课程内容作为基础,并补充了很多其他内容希望让整体内容更加容易理解和系统化.如果想要了解具体专栏里面有什么内容的话,可以看一看 ...

  3. 深度学习基础知识每日更 upupup

    深度学习基础知识点总结 提示:菜鸟入门日记,若总结有错误,各路大佬多多指教! 文章目录 深度学习基础知识点总结 Looking for my friends 一.零散知识点 1.网络拼接和相加的区别 ...

  4. 深度学习基础知识介绍

    背景知识 深度学习又是如何运作的呢? 神经网络 训练神经网络 如何减小损失函数呢? 小结 这是一篇Medium上获得近2万赞的深度学习入门指南,用图文为你详解深度学习中的各个基础概念. 在我们的日常生 ...

  5. 深度学习基础知识整理

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/kwame211/article/details/81165381 本文是在七月的BAT机器学习面试1 ...

  6. [ 深度学习 ] 基础知识:深度学习的57个术语

    转自:https://www.cnblogs.com/hmy-blog/p/6555939.html 激活函数(Activation Function) 为了让神经网络能够学习复杂的决策边界(deci ...

  7. 2023双非计算机硕士应战秋招算法岗之深度学习基础知识

    word版资料自取链接: 链接:https://pan.baidu.com/s/1H5ZMcUq-V7fxFxb5ObiktQ 提取码:kadm 卷积层 全连接神经网络需要非常多的计算资源才能支撑它来 ...

  8. 【深度学习基础】经典卷积神经网络

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 导语 卷积神经网络(Convolutional Neural Ne ...

  9. 【深度学习基础知识 - 28】三维重建中的点云、体素、mesh

    点云.体素和mesh都是三维重建中常用的三维物体的表示方法. 1. 点云 1.1 点云的概念 点云是不规则的数据结构,就是用一堆点来表示物体,这种方法的限制是点与点之间没有联系,缺乏物体的表面信息. ...

最新文章

  1. SQL Server 2005:你应该知道的13件事情
  2. python3.6 使用pyinstaller 打包web程序的方法
  3. 50句看后可以变换心情豁然开朗的话
  4. rabbitmq-5-案例2-简单的案例+exchange
  5. 二叉树的遍历(非递归方式)
  6. 图像处理-自适应中值滤波
  7. 数据库事务处理差异:可提交读和重复读区别
  8. jvm 性能_JVM性能魔术
  9. 测试开发面试技巧_面试技巧将给您带来信心并帮助您获得开发工作
  10. Python《突破JS动态加载,成功爬取漫画》
  11. mysql查询当前时间和用户_MySQL学习笔记(3) - 查询服务器版本,当前时间,当前用户...
  12. 安装flash cs6失败解决方案
  13. 误差的基本性质与处理matlab实验,基于matlab的误差数据处理实验报告.doc
  14. 学3D建模,次时代游戏的制作流程以及游戏美术需要掌握哪些基本软件?
  15. Worthington毒液中核酸外切酶的特征及相关文献
  16. 互联网内容产业永远有机会
  17. C++,软开测开,CV岗面试常考知识点
  18. 归一化数字角频率_说一说信号与系统中的“归一化处理“
  19. 杰理之蓝牙认证【篇】
  20. 回文日期(日期合法判断)

热门文章

  1. SCCM2012SP1---配置客户端发现方法和边界组
  2. 《Adobe Illustrator大师班:经典作品与完美技巧赏析》—Bree Léman
  3. tomcat、腾讯云主机和微信
  4. 遭遇内存无法读写的错误
  5. jquery源码解析:jQuery数据缓存机制详解2
  6. Sherri Sparks
  7. linux history 历史命令行查询和使用
  8. Android 教程
  9. 《剑指offer》第1~11题:刷题week1[C++题解]
  10. 算法基础课-动态规划-区间dp-AcWing 282. 石子合并:区间dp