深度学习是从机器学习里面发展出来的,机器学习分为下面两个:
一.频率派——统计学习:正则化、核化(Kernel SVM)、集成化、层次化(神经网络)
神经网络中几个较为著名的代表:
1.MLP(多层感知机)
2.Autoenconder
3.CNN、RNN
以上三种统称为Deep neural network(深度神经网络)
二.贝叶斯派(PGM)——:有向图模型(贝叶斯网络)、无向图模型、有向模型加无向模型(即模型中既有向又有无向,为混合模型)
三个加上深度后统称为:深度生成模型(Deep Generative model)(概率图模型)
贝叶斯网络(有向图)+深度=深度有向网络(Deep directed network):
代表:Sigmoid belief network ; Variational Autoenconder(VAE) ; GAN(生成式对抗网络)
无向图+深度=深度无向网络(Deep bottzmam machine)
混合模型+深度=深度信念网络(Deep belief network)
现在所说的深度学习就是指: 深度神经网络 和 深度生成模型 两大类
前馈神经网络(多层感知机)是最简单的神经网络
深度前向网络(Deep Feedforward network)通常也称为前向神经网络(FFN),或者多层感知机(MLPs),是很典型的(quintessential)深度学习模型。前向网络的目的是估计出一些函数f∗,比如分类器y=f∗(x),就是将输入x映射到某个类别y。前馈网络定义了映射y=f(x;θ),通过学习参数θ估计出最好的映射,得到最佳的函数近似。上述模型中的前向是指信息流从输入x,经过中间计算(f)后得到输出y,整个过程中不存在从输出到输入的反向连接。如果网络中带有反馈连接,则称之为循环神经网络(Recurrent neural network)。
前馈神经网络之所以称之为网络,是因为它由许多不同的函数复合在一起, 如f(x)=f(3)(f(2)(f(1)(x))),则这个网络共有三层,称之为模型的深度。最后一层称之为输出层,中间的层称之为隐藏层(hidden layer)
前馈(feedforward):信息一直往下流动,一路向前,不回头。例如:CNN(卷积神经网络)
反馈(feedbackward):前馈的扩展,增加反馈连接,走一段,回头看看。例如:RCNN
线性模型(例如线性回归和逻辑回归)的优点:简单快速;缺点:模型的能力被局限在线性函数中,所以它无法理解任何两个输入变量之间的相互作用。
从非线性问题出发引出MLP
为了扩展线性模型的性能,解决非线性函数,选择映射,方法如下:
(1)使用通用函数作为,但是当
(x)维数够高时,总能你和训练集,但是对于测试集的泛华往往不佳。非通用函数的特征映射通常只基于局部光滑的原则,并且没有将足够的先验信息进行编码来解决高级问题;
(2)手动设计函数,这个方法是比较主流的方法,但是季度依赖专家且不同的领域之间难以迁移;
(3)自动去学习函数,这也是深度学习的策略,可以同时学习函数参数和权重参数,放弃凸性的方法,利大于弊。这种方法的优点是只需要一个广泛的函数族,不用太过精确,人类专家也可以将他们的知识编码到网络中进行辅助泛化,只需要设计那些他们期望能够表现优异的函数族φ(x;θ)。
训练一个前馈网络需要做什么?
首先需要选择一个优化模型、代价函数、以及输出单元的形式;还需要考虑网络结构如何设计,即多少层,链接如何设置,每层设置多少个单元,用于计算隐层函数层值的激活函数如何选择?在深度学习中还需要考虑如何高效地计算梯度。
2.实例:学习XOR(XOR1958年提出)
感知机无法解决异或问题,使得机器学习陷入低谷(1969年)
XOR函数(‘异或’逻辑问题)是两个二进制值x1和x2的运算
相同的就是0,不同的就是1