人工神经网络(ANN)简述

本文是这几天学习人工神经网络入门知识的总结。

我们从下面四点认识人工神经网络(ANN: Artificial Neutral Network):神经元结构、神经元的激活函数、神经网络拓扑结构、神经网络选择权值和学习算法。

1. 神经元:
我们先来看一组对比图就能了解是怎样从生物神经元建模为人工神经元。

人工神经元建模过程

下面分别讲述:
生物神经元的组成包括细胞体、树突、轴突、突触。树突可以看作输入端,接收从其他细胞传递过来的电信号;轴突可以看作输出端,传递电荷给其他细胞;突触可以看作I/O接口,连接神经元,单个神经元可以和上千个神经元连接。细胞体内有膜电位,从外界传递过来的电流使膜电位发生变化,并且不断累加,当膜电位升高到超过一个阈值时,神经元被激活,产生一个脉冲,传递到下一个神经元。

为了更形象理解神经元传递信号过程,把一个神经元比作一个水桶。水桶下侧连着多根水管(树突),水管既可以把桶里的水排出去(抑制性),又可以将其他水桶的水输进来(兴奋性),水管的粗细不同,对桶中水的影响程度不同(权重),水管对水桶水位(膜电位)的改变就是水桶内水位的改变,当桶中水达到一定高度时,就能通过另一条管道(轴突)排出去。


神经元是多输入单输出的信息处理单元,具有空间整合性和阈值性,输入分为兴奋性输入和抑制性输入。

按照这个原理,科学家提出了M-P模型(取自两个提出者的姓名首字母),M-P模型是对生物神经元的建模,作为人工神经网络中的一个神经元。

M-P模型


由MP模型的示意图,我们可以看到与生物神经元的相似之处,x_i表示多个输入,W_ij表示每个输入的权值,其正负模拟了生物神经元中突出的兴奋和抑制;sigma表示将全部输入信号进行累加整合,f为激活函数,O为输出。下图可以看到生物神经元和MP模型的类比:


往后诞生的各种神经元模型都是由MP模型演变过来。

2. 激活函数
激活函数可以看作滤波器,接收外界各种各样的信号,通过调整函数,输出期望值。ANN通常采用三类激活函数:阈值函数、分段函数、双极性连续函数(sigmoid,tanh):

3. 学习算法
神经网络的学习也称为训练,通过神经网络所在环境的刺激作用调整神经网络的自由参数(如连接权值),使神经网络以一种新的方式对外部环境做出反应的一个过程。每个神经网络都有一个激活函数y=f(x),训练过程就是通过给定的海量x数据和y数据,拟合出激活函数f。学习过程分为有导师学习和无导师学习,有导师学习是给定期望输出,通过对权值的调整使实际输出逼近期望输出;无导师学习给定表示方法质量的测量尺度,根据该尺度来优化参数。常见的有Hebb学习、纠错学习、基于记忆学习、随机学习、竞争学习。

  • Hebb学习:
    (贴公式不方便,只简述原理)这是最早提出的学习方法,原理是如果突触(连接)两边的两个神经元被同时(同步)激活,则该突触的能量(权重)就选择性增加;如果被异步激活,则该突出能量减弱或消除。
  • 纠错学习:
    计算实际输出和期望输出的误差,再返回误差,修改权值。原理简单,用到最多,最小梯度下降法(LMS最小均方误差算法)就是这种方法。
  • 基于记忆的学习:
    主要用于模式分类,在基于记忆的学习中,过去的学习结果被存储在一个大的存储器中,当输入一个新的测试向量时,学习过程就是把新向量归到已存储的某个类中。算法包括两部分:一是用于定义测试向量局部领域的标准;二是在局部领域训练样本的学习规则。常用最近邻规则。
  • 随机学习算法:
    也叫Bolzmann学习规则,根据最大似然规则,通过调整权值,最小化似然函数或其对数。
    模拟退火算法是从物理和化学退火过程类推过来,是“对物体加温后再冷却的处理过程”的数学建模。整个过程分为两步:首先在高温下进行搜索,此时各状态出现概率相差不大,可以很快进入“热平衡状态”,这时进行的是“粗搜索”,也就是大致找到系统的低能区区域;随着温度降低,各状态出现的概率差距逐渐被扩大,搜索精度不断提高,这就可以越来越准确地找到网络能量函数的全局最小点。
  • 竞争学习:
    神经网络的输出神经元之间相互竞争,在任一时间只能有一个输出神经元是活性的。

4. 神经网络拓扑结构
常见的拓扑结构有单层前向网络、多层前向网络、反馈网络,随机神经网络、竞争神经网络。


5. 神经网络的发展

  • 单层感知器:


    1958年提出,与MP模型不同处在于权值可变,这样就可以进行学习。它包含一个线性累加器和二值阈值元件(激活函数是阈值函数),还包括外部偏差b。单层感知器被设计用来对输入进行二分类,当感知器输出+1时,输入为一类;当输出为-1时,输入为另一类。之后还有应用LMS算法的单层感知器。
    单层感知器的缺陷是只能对线性问题分类。如下图,左边能用一根线分开,但右边却不能。
    该缺陷来自激活函数。改进思路就是修改激活函数(把分类线变成曲线,如椭圆线)、增加神经网络层数(让两条直线或多条直线来分类)。主流做法是增加层数,于是有了多层感知器。
  • 多层感知器:
    在输入层和输出层之间增加隐含层(因为不能在训练样本中观察到它们的值,所以叫隐含层)。


    多层感知器

    多层感知器分类能力如下:


    随着隐层层数的增多,凸域将可以形成任意的形状,因此可以解决任何复杂的分类问题。Kolmogorov理论指出:双隐层感知器就足以解决任何复杂的分类问题。但层数的增多带来隐含层的权值训练问题,对于各隐层的节点来说,它们并不存在期望输出,所以也无法通过感知器的学习规则来训练多层感知器。1966年,Minisky和Papert在他们的《感知器》一书中提出了上述的感知器的研究瓶颈,指出理论上还不能证明将感知器模型扩展到多层网络是有意义的。人工神经网络进入低谷期。直到出现误差反向传播算法(BP:ErrorBack Propagation),解决了多层感知器的学习问题。
  • BP神经网络:

    BP神经网络存在两条信号线,工作信号正向传播,误差信号反向传播。反向传播过程中,逐层修改连接权值。BP算法可以看作LMS算法的累加版,因为对于输出层的单个神经元,其学习算法为LMS算法。
    BP网络结构
BP神经网络信息流

(不能贴公式不好解释啊 -_-!)sigma是误差信号,yita是学习率,net是输入之和,V是输入层到隐含层的权重矩阵,W是隐含层到输出层的权重矩阵。

之后还有几种

  • 径向基网络(RBF:Radial Basis Function):
    RBF神经网络属于多层前向神经网络,它是一种三层前向网络。输入层由信号源节点组成;第二层为隐含层,隐单元个数由所描述的问题而定,隐单元的变换函数是对中心点径向对称且衰减的非负非线性函数;第三层为输出层。其基本思想是:用径向基函数作为隐单元的“基”,构成隐含层空间,隐含层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分。RBF网络分为正规化网络和广义网络。区别在于隐含层的个数。基函数一般选用格林函数。


    左边为正规化网络,右边为广义网络

    RBF要学习的算法有三个:基函数的中心、基函数的方差、权值。学习中心要用到聚类算法,常用K-均值聚类算法。确定中心后,可以用数学公式求出方差。学习权值可以用LMS算法。

    RBF网络与BP网络比较:RBF能够逼近任意非线性函数。BP网络是对非线性映射的全局逼近,而RBF网络使用局部指数衰减的非线性函数进行局部逼近。要达到相同的精度,RBF网络所需要的参数比BP网络要少得多。

  • 支持向量机(SVM:Support Vector Machine):
    之前的BP神经网络存在的几个问题:
    1、BP算法是用梯度法导出的,因此优化过程可能陷入局部极值。
    2、BP算法的目标函数是经验风险,它只能保证分类误差对于有限个样本是极小,无法保证对所有可能的点达到极小。
    3、神经网络结构的设计(如隐节点数目的选择)依赖设计者的先验知识,缺乏一种有理论依据的严格设计程序。
    于是有了支持向量机:


    支持向量机拓扑结构
  • 其他:
    还有Hopfield神经网络、随机神经网络Boltzmann机、Hamming竞争神经网络等。

随着计算机硬件计算能力越来越强,用来训练的数据越来越多,神经网络变得越来越复杂。在人工智能领域常听到DNN(深度神经网络)、CNN(卷积神经网络)、RNN(递归神经网络)。其中,DNN是总称,指层数非常多的网络,通常有二十几层,具体可以是CNN或RNN等网络结构。


参考资料

  1. 《神经网络》教材
  2. 漫谈ANN:http://hahack.com/reading/ann2/
  3. BP神经网络的数学原理及其算法实现
    http://blog.csdn.net/zhongkejingwang/article/details/44514073
  4. 神经网络:
    http://ufldl.stanford.edu/wiki/index.php/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C
  5. 反向传播算法:
    http://ufldl.stanford.edu/wiki/index.php/%E5%8F%8D%E5%90%91%E4%BC%A0%E5%AF%BC%E7%AE%97%E6%B3%95
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,509评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,806评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,875评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,441评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,488评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,365评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,190评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,062评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,500评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,706评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,834评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,559评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,167评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,779评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,912评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,958评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,779评论 2 354

推荐阅读更多精彩内容

  • 很多时候,我们在重组自己的偏见时,还以为自己是在思考;在重复以往的错误时,还以为是在坚持梦想;在消极荒废时,还以为...
    hnlzb2003_ba2d3阅读 214评论 0 0
  • 作者:李毓 雨淅淅沥沥,心情颇感到沉重,约了志趣相投好友出来咖啡店小坐一会,我们东聊西扯,渐渐说到他前几年一个要好...
    李毓2017阅读 479评论 0 0
  • 最近在学习OpenGL,把学习的一些过程写在这里,希望与大家共同分享讨论。欢迎光临我的个人网站Orient一起讨论...
    Orient_ZY阅读 2,307评论 1 2
  • 今天临时决定顶着烧烤天,去体验一把传说中的肚皮舞。 教舞的美女老师是我喜欢的style,外表秀丽大方,青春洋溢;做...
    晓珍JS阅读 554评论 0 1