机器学习必知的八大神经网络架构机器学习必知的八大神经网络架构
为什么需要机器学习?
有些任务直接编码较为复杂,我们不能处理所有的细微之处和简单编码,因此,机器学习很有必要。相反,我们向机器学习算
法提供大量数据,让算法不断探索数据并构建模型来解决问题。比如:在新的杂乱照明场景内,从新的角度识别三维物体;编
写一个计算信用卡交易诈骗概率的程序。
机器学习方法如下:它没有为每个特定的任务编写相应的程序,而是收集大量事例,为给定输入指定正确输出。算法利用这些
事例产生程序。该程序与手写程序不同,可能包含数百万的数据量,也适用于新事例以及训练过的数据。若数据改变,程序在
新数据上训练且被更新。大量的计算比支付手写程序要便宜的多。
机器学习的应用如下:
1.模式识别:识别实际场景的面部或表情、语言识别。
2.识别异常:信用卡交易顺序异常,核电厂传感器读数模式异常。
3.预测:未来股价或货币汇率,个人观影喜好。
什么是神经网络?
神经网络是一种通用机器学习模型,是一套特定的算法集,在机器学习领域掀起了一场变革,本身就是普通函数的逼近,可以
应用到任何机器学习输入到输出的复杂映射问题。一般来说,神经网络架构可分为3类:
1.前馈神经网络:是最常见的类型,第一层为输入,最后一层为输出。如果有多个隐藏层,则称为“深度”神经网络。它能够计
算出一系列事件间相似转变的变化,每层神经元的活动是下一层的非线性函数。
2.循环神经网络:各节点之间构成循环图,可以按照箭头的方向回到初始点。循环神经网络具有复杂的动态,难以训练,它模
拟连续数据,相当于每个时间片段具有一个隐藏层的深度网络,除了在每个时间片段上使用相同的权重,也有输入。网络可以
记住隐藏状态的信息,但是很难用这点来训练网络。
3.对称连接网络:和循环神经网络一样,但单元间的连接是对称的(即在两个方向的连接权重相同),它比循环神经网络更容
易分析,但是功能受限。没有隐藏单元的对称连接的网络被称为“Hopfiels网络”,有隐藏单元的对称连接的网络则被称为“波兹
曼机器”。
一、感知机(Perceptron)
作为第一代神经网络,感知机是只有一个神经元的计算模型。首先将原始输入矢量转化为特征矢量,再用手写程序定义特征,
然后学习如何对每个特征加权得到一个标量,如果标量值高于某一阈值,则认为输入矢量是目标类的一个积极样例。标准的感
知机结构是前馈模型,即输入传送到节点,处理后产生输出结果:从底部输入,顶部输出,如下图所示。但也有其局限性:一
旦确定了手写编码特征,在学习上就受到了较大限制。这对感知器来说是毁灭性的,尽管转换类似于翻译,但是模式识别的重
点是识别模式。如果这些转换形成了一个组,学习的感知器部分不能学会识别,所以需要使用多个特征单元识别子模式的转
换。
没有隐藏单元的网络在输入输出映射建模上也有很大局限性。增加线性单元层也解决不了,因为线性叠加依然是线性的,固定
的非线性输出也不能建立这种映射。因此需要建立多层自适应的非线性隐藏单元。