深度学习简介

来源:互联网 发布:极限编程和瀑布模型 编辑:程序博客网 时间:2024/06/05 20:40

深度学习是指多层神经网络上运用各种机器学习算法解决图像、文本等各种问题的算法集合。深度学习从大类上可以归入神经网络,不过在具体实现上有许多变化。深度学习的核心是特征学习,旨在通过分层网络获取分层次的特征信息,从而解决以往需要人工设计特征的重要难题。深度学习是一个框架,包含多个重要算法:

Convolutional Neural Networks(CNN)卷积神经网络

AutoEncoder(AE)自动编码器

Sparse Coding 稀疏编码

Restricted Boltzmann Machine(RBM)限制玻尔兹曼机

Deep Belief Networks(DBN) 深度信念网络

Recurrent neural Network(RNN)多层反馈循环神经网络/递归神经网络

对于不同问题(图像、语言、文本),需要选用不同网络模型才能达到更好效果。此外,最近几年增强学习(Reinforcement Learning)与深度学习的结合也创造了许多了不起的成果。

1、卷积神经网络(CNN)

 是一种深层神经网络模型。它的特殊性体现在两个方面

a.相邻层的神经元之间的连接是非全连接的

b.同一层中某些神经元之间的连接的权重是共享的

    前馈神经网络,各神经元从输入层开始,接收前一级输入,并输出到下一级,直至输出层。整个网络中无反馈,可用一个有向无环图表示。每一层节点是一个线性的一维排列状态,层与层的网络节点之间是全链接的。假设一下,如果前馈神经网络中层与层之间的节点连接不再是全连接,而是局部连接的,这样,就是一种最简单的一维卷积网络。

局部连接:

CNN在网络的相邻两层之间使用局部连接来获取图像的局部特性。具体地说,第m层的隐藏单元只与第m-1层的局部区域有链接,第m-1层的这些局部区域被称为空间连续的接收域。

权值共享:

在CNN中,对整个图像进行一次卷积操作,不同局部区域使用的是同一个卷积核(即权重参数相同),由此生成了一个特征映射(feature map)。通过对不同的卷积核对整个图像进行卷积可生成不同feature map。

基本组成部分:

卷积层:

  池化层:

是CNN的重要组成部分,通过减少卷积层之间的连接,降低运算复杂程度。以下是常用的几种池化算法:(1)Lp池化;(2)混合池化;(3)随机池化;(4)Spectral池化

激活函数:

常用的非线性激活函数有sigmoid、tanh、relu等等,前两者sigmoid/tanh比较常见于全链接层,后者relu常见于卷积层。

1)Relu;2)Leaky Relu;3)Parametric Relu;4)Randomized ReLU;5)ELU;6)Maxout;7)Probout;

  Loss函数:

1)Softmax loss;2)Hinge loss;3)Contrastive loss;

优化:

1)初始化权重;2)随机梯度下降;3)批量标准化;4)Shortcut连接







原创粉丝点击