本文共 1908 字,大约阅读时间需要 6 分钟。
1.统计机器学习常用的四种方法:正则化、核化、集成化和层次化
2.深度神经网络包括多层感知机、卷积神经网络和循环神经网络等
3.深度生成网络包括深度有向网络、深度信念网络和深度波尔茨曼机
4.解决非线性问题的方法有非线性转换、核方法和神经网络
5.非线性问题称为明转、核方法称为暗转、神经网络称为自转
6.神经网络本质是一个复合函数
我们知道,机器学习按照频率派和贝叶斯派可以分为统计机器学习和概率图模型。
统计机器学习常用的四种方法有:
正则化——L1与L2等
核化——核函数,比如SVM
集成化——AdaBoost与Boosting
层次化——深度神经网络
正则化是对原有模型的改进,大多是为了避免过拟合而引进的对参数进行惩罚。
核化最经典的是核函数,在应对低维空间无法线性可分的条件下利用核函数映射到高维空间,使得其线性可分,代表是支持向量机。
集成化有两条思路——Adaboost和Boosting,前者是并行式的训练模型,后者是有迭代顺序的训练模型。
层次化常用的代表有多层感知机、CNN、RNN等,它的“深”就是形式上的深度,它们统称为深度神经网络(DNN)
概率图模型分为有向图和无向图模型,对于贝叶斯网络,加入层次化后就发展为深度有向网络,包括生成对抗网络(GAN),变分自编码(VAE)和Sigmoid Belief Network;马尔科夫网络加入层次化后的一个代表是深度波尔茨曼机;把有向图和无向图混合后加入层次化就是深度信念网络。
从概率图模型加入层次化的统称为深度生成网络。
机器学习发展史
严格意义上,深度学习是由机器学习发展而来的。它从1958年感知机算法开始,就已经有了理论的发展,由于受到现实计算机等各方面的影响,在此后很长的一段时间里,深度学习都没有占据机器学习的主要地位。直到2009年,GPU的发展,计算机算力的发展,使得深度学习得已在现实中实现。最主要的是训练效果也是令人满意的,所以2010~2020十年间才迅速火起来。
1958年,提出感知机算法,但它无法解决非线性问题;
1981年,多层感知机的出现解决上面的问题
1986——1989年,BP算法应用在MLP上,随后CNN、RNN算法相继问世,于此同时,深度神经网络无法解决BP算法梯度消失问题
1993年开始,核函数的发展应用到SVM上,使得其大放异彩,接着相继问世集成化方法,随机森林等提出,使得DL逐渐没落
1997年在RNN基础上提出了LSTM算法
2006年,基于RBM(受限波尔茨曼机)的深度信念网络和深度自编码出现
直到2009年,计算机硬件的发展,使得DL成为落地可能
2011年,DL在语音、图像上开始应用
2013年,变分自编码提出
2014年,生成对抗网络提出
2016年,人工智能AlphaGO打败人类顶尖选手
2018年,图神经网络提出,给予神经网络推理能力
非线性问题的解决方案
对于非线性问题,传统上有三种解决方法:
非线性转换
核方法
神经网络方法
在一文中,我们提到过一个定理:
Cover Theme:高维空间比低维空间更易线性可分
做非线性转换就是为了将低维空间转换到高维空间,使得其线性可分。
在之前我们介绍过一个例子:
这个例子称为亦或问题(XOR Problem),它是指输出只有两种可能:二维随机变量取值相同输出为1,否则输出为0,数学表达为:
它在二维平面里找到一条直线将这两类分开,需要做非线性转换:
把二维空间映射到三维空间上,就能找到一个超平面将其分开。我们把这种非线性转换称为明转——直接转换到高维空间找到线性可分的超平面。
但这种方法可能会导致维度灾难,并且可能很难得到这个变换函数,接着我们介绍了核方法,就是找到一个正定核函数,使得其等于在高维空间做內积:
我们这种转换称为暗转(隐藏了转换Φ)——找到不直接在高维空间做运算的线性可分超平面。
第三种是神经网络方法,我们把这种称为自转。
在位运算里,最基本的三个运算符是或(OR)、与(AND)、非(NOT),它们的记号是:
XOR问题里面我们定义了输出逻辑:
这个逻辑可以用数学符号表示:
该式子称为亦或运算(读者可仔细琢磨,这是可行的).
我们把这个式子分为两步完成:
第一步,执行运算1和运算2,第二步,执行运算3。
把这个过程图模型化:
这个就是一个有向无环图,运行这个概率图,就能把非线性问题的0,1分类分开。
实际上,这个就是一个简单的深度神经网络,我们把亦或运算看成一个复合函数的话:
那么神经网络就是一个复合函数。
神经网络中的每一个节点被称为神经元,它由三部分组成:输入、内部参数和输出。
转载地址:http://solnn.baihongyu.com/