⼈⼯神经⽹络(⼀)概述
百科解释:
⼈⼯神经⽹络(Artificial Neural Network,即ANN ),是20世纪80 年代以来⼈⼯智能领域兴起的研究热点。它从信息处理⾓度对⼈脑神经元⽹络进⾏抽象, 建⽴某种简单模型,按不同的连接⽅式组成不同的⽹络。在⼯程与学术界也常直接简称为神经⽹络或类神经⽹络。神经⽹络是⼀种运算模型,由⼤量的节点(或称神经元)之间相互联接构成。每个节点代表⼀种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表⼀个对于通过该连接信号的加权值,称之为权重,这相当于⼈⼯神经⽹络的记忆。⽹络的输出则依⽹络的连接⽅式,权重值和激励函数的不同⽽不同。⽽⽹络⾃⾝通常都是对⾃然界某种算法或者函数的逼近,也可能是对⼀种逻辑策略的表达。
最近⼗多年来,⼈⼯神经⽹络的研究⼯作不断深⼊,已经取得了很⼤的进展,其在模式识别、智能机器⼈、⾃动控制、预测估计、⽣物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。
机器最初被发明是为了服务⼈类,做⼈不擅长的事情,⽐如规律性,重复复杂运算,从第⼀代计算机诞⽣到现在,这个功能⼀次次提升,现在计算机核⼼部件cpu,在普通家⽤⽅⾯,⽐如i5-6600四个核⼼的计算能⼒⼤概在20gflops.,也就是每秒200亿次浮点运算,这是⼈类不能羡慕的⼀个能⼒,但是,机器
依然限制在机械性运算上,⼈类发明的这个 [“脑”] ⼀直希望成为真正的 [“类⼈脑”] ,在⽣物领域不断突破的前提下,我们破译⼈脑的⼯作,越来越深⼊,紧跟着就是将⼈脑运⾏机制复制到电脑,这样就产⽣“类⼈思维”,⽽这⼀领域就是现在⽕热的“AI”⼈⼯智能。
如果你觉得这篇⽂章看起来稍微还有些吃⼒,或者想要更系统地学习⼈⼯智能,那么推荐你去看床长⼈⼯智能教程。⾮常棒的⼤神之作,我也被圈粉了。教程不仅通俗易懂,⽽且很风趣幽默。点击可以查看教程。
⽣物神经
function怎么记忆⽣物神经元的结构:神经细胞是构成神经系统的基本单元,称之为⽣物神经元,简称神经元。神经元主要由三部分构成:
(1)细胞体;
(2)轴突;
(3)树突。
如下图所⽰:
突触是神经元之间相互连接的接⼝部分,即⼀个神经元的神经末梢与另⼀个神经元的树突相接触的交界⾯,位于神经元的神经末梢尾端。突触是轴突的终端。
⼤脑可视作为1000多亿神经元组成的神经⽹络。神经元的信息传递和处理是⼀种电化学活动.树突由于电化学作⽤接受外界的刺激,通过胞体内的活动体现为轴突电位,当轴突电位达到⼀定的值则形成神经脉冲或动作电位;再通过轴突末梢传递给其它的神经元.从控制论的观点来看;这⼀过程可以看作⼀个多输⼊单输出⾮线性系统的动态过程。
神经元的功能特性:
(1)时空整合功能;
(3)兴奋与抑制状态;
(4)结构的可塑性;
(5)脉冲与电位信号的转换;
(6)突触延期和不应期;
(7)学习、遗忘和疲劳。
总结:⼈类进⾏思考,就是⼀个体思考,每个神经细胞进⾏独⽴运⾏,和其他N个细胞相连接,进⾏信号接收和传递,且每次接收,都会影响细胞⾃⾝状态,这也是记忆的⼀部分由来,整体的思考,就是⼀千多亿神经细胞互相交叉影响形成的复杂电化学信号。
现在我们就⼀步步看⼈类是怎么认识及搭建神经⽹络的:
数学模型
⼈⼯神经元结构:⼈⼯神经元的研究源于脑神经元学说,19世纪末,在⽣物、⽣理学领域,Waldeger等⼈创建了神经元学说。
⼈⼯神经⽹络是由⼤量处理单元经⼴泛互连⽽组成的⼈⼯⽹络,⽤来模拟脑神经系统的结构和功能。⽽这些处理单元我们把它称作⼈⼯神经元。⼈⼯神经⽹络可看成是以⼈⼯神经元为节点,⽤有向加权弧连接起来的有向图。在此有向图中,⼈⼯神经元就是对⽣物神经元的模拟,⽽有向弧则是轴突—-突触—-树突对的模拟。有向弧的权值表⽰相互连接的两个⼈⼯神经元间相互作⽤的强弱。⼈⼯神经元结构如下图所⽰:
神经⽹络从两个⽅⾯模拟⼤脑:
(1)、神经⽹络获取的知识是从外界环境中学习得来的。
(2)、内部神经元的连接强度,即突触权值,⽤于储存获取的知识。
神经⽹络系统由能够处理⼈类⼤脑不同部分之间信息传递的由⼤量神经元连接形成的拓扑结构组成,依赖于这些庞⼤的神经元数⽬和它们之间的联系,⼈类的⼤脑能够收到输⼊的信息的刺激由分布式并⾏处理的神经元相互连接进⾏⾮线性映射处理,从⽽实现复杂的信息处理和推理任务。
对于某个处理单元(神经元)来说,假设来⾃其他处理单元(神经元)i的信息为Xi,它们与本处理单元的互相作⽤强度即连接权值为Wi,
i=0,1,…,n-1,处理单元的内部阈值为θ。
那么本处理单元(神经元)的输⼊为:,⽽处理单元的输出为:式中,xi为第i个元素的输⼊,wi为第i个处理单元与本处理单元的互联权重即神经元连接权值。f称为激活函数或作⽤函数,它决定节点(神经元)的输出。θ表⽰隐含层神经节点的阈值。
⼈⼯神经⽹络
结合以上数学模型,神经⽹络的主要⼯作是建⽴模型和确定权值,⼀般有前向型和反馈型两种⽹络结
构。通常神经⽹络的学习和训练需要⼀组输⼊数据和输出数据对,选择⽹络模型和传递、训练函数后,神经⽹络计算得到输出结果,根据实际输出和期望输出之间的误差进⾏权值的修正,在⽹络进⾏判断的时候就只有输⼊数据⽽没有预期的输出结果。神经⽹络⼀个相当重要的能⼒是其⽹络能通过它的神经元权值和阈值的不断调整从环境中进⾏学习,直到⽹络的输出误差达到预期的结果,就认为⽹络训练结束。
对于这样⼀种多输⼊、单输出的基本单元可以进⼀步从⽣物化学、电⽣物学、数学等⽅⾯给出描述其功能的模型。利⽤⼤量神经元相互连接组成的⼈⼯神经⽹络,将显⽰出⼈脑的若⼲特征,⼈⼯神经⽹络也具有初步的⾃适应与⾃组织能⼒。在学习或训练过程中改变突触权重wij 值,以适应周围环境的要求。同⼀⽹络因学习⽅式及内容不同可具有不同的功能。⼈⼯神经⽹络是⼀个具有学习能⼒的系统,可以发展知识,以⾄超过设计者原有的知识⽔平。通常,它的学习(或训练)⽅式可分为两种,⼀种是有监督(supervised)或称有导师的学习,这时利⽤给定的样本标准进⾏分类或模仿;另⼀种是⽆监督(unsupervised)学习或称⽆导师学习,这时,只规定学习⽅式或某些规则,⽽具体的学习内容随系统所处环境(即输⼊信号情况)⽽异,系统可以⾃动发现环境特征和规律性,具有更近似于⼈脑的功能。
在⼈⼯神经⽹络设计及应⽤研究中,通常需要考虑三个⽅⾯的内容,即神经元激活函数、神经元之间的连接形式和⽹络的学习(训练)。
神经⽹络的学习形式
在构造神经⽹络时,其神经元的传递函数和转换函数就已经确定了。在⽹络的学习过程中是⽆法改变转换函数的,因此如果想要改变⽹络输出的⼤⼩,只能通过改变加权求和的输⼊来达到。由于神经元只能对⽹络的输⼊信号进⾏响应处理,想要改变⽹络的加权输⼊只能修改⽹络神经元的权参数,因此神经⽹络的学习就是改变权值矩阵的过程。
神经⽹络的⼯作过程
神经⽹络的⼯作过程包括离线学习和在线判断两部分。学习过程中各神经元进⾏规则学习,权参数调整,进⾏⾮线性映射关系拟合以达到训练精度;判断阶段则是训练好的稳定的⽹络读取输⼊信息通过计算得到输出结果。
神经⽹络的学习规则
神经⽹络的学习规则是修正权值的⼀种算法,分为联想式和⾮联想式学习,有监督学习和⽆监督学习等。下⾯介绍⼏个常⽤的学习规则。
(1)、误差修正型规则:是⼀种有监督的学习⽅法,根据实际输出和期望输出的误差进⾏⽹络连接权值的修正,最终⽹络误差⼩于⽬标函数达到预期结果。
误差修正法,权值的调整与⽹络的输出误差有关, 它包括δ学习规则、Widrow-Hoff学习规则、感知器
学习规则和误差反向传播的
BP(Back Propagation)学习规则等。
(2)、竞争型规则:⽆监督学习过程,⽹络仅根据提供的⼀些学习样本进⾏⾃组织学习,没有期望输出,通过神经元相互竞争对外界刺
激模式响应的权利进⾏⽹络权值的调整来适应输⼊的样本数据。
对于⽆监督学习的情况,事先不给定标准样本,直接将⽹络置于“环境”之中,学习(训练)阶段与应⽤(⼯作)阶段成为⼀体。
(3)、Hebb型规则:利⽤神经元之间的活化值(激活值)来反映它们之间联接性的变化,即根据相互连接的神经元之间的活化值(激活值)
来修正其权值。
在Hebb学习规则中,学习信号简单地等于神经元的输出。Hebb学习规则代表⼀种纯前馈﹑⽆导师学习。该学习规则⾄今在各种神经⽹络模型中起着重要作⽤。典型的应⽤如利⽤Hebb规则训练线性联想器的权矩阵。
(4)、随机型规则:在学习过程中结合了随机、概率论和能量函数的思想,根据⽬标函数(即⽹络输出均⽅差)的变化调整⽹络的参
数,最终使⽹络⽬标函数达到收敛值。
激活函数
在神经⽹络中,⽹络解决问题的能⼒与效率除了与⽹络结构有关外,在很⼤程度上取决于⽹络所采⽤的激活函数。激活函数的选择对⽹络的收敛速度有较⼤的影响,针对不同的实际问题,激活函数的选择也应不同。
神经元在输⼊信号作⽤下产⽣输出信号的规律由神经元功能函数f(Activation Function)给出,也称激活函数,或称转移函数,这是神经元模型的外特性。它包含了从输⼊信号到净输⼊、再到激活值、最终产⽣输出信号的过程。综合了净输⼊、f函数的作⽤。f函数形式多样,利⽤它们的不同特性可以构成功能各异的神经⽹络。
常⽤的激活函数有以下⼏种形式:
(1)、阈值函数:该函数通常也称为阶跃函数。当激活函数采⽤阶跃函数时,⼈⼯神经元模型即为MP模型。此时神经元的输出取1或
0,反应了神经元的兴奋或抑制。
(2)、线性函数:该函数可以在输出结果为任意值时作为输出神经元的激活函数,但是当⽹络复杂时,线性激活函数⼤⼤降低⽹络的收
敛性,故⼀般较少采⽤。
(3)、对数S形函数:对数S形函数的输出介于0~1之间,常被要求为输出在0~1范围的信号选⽤。它是神经元中使⽤最为⼴泛的激活
函数。
(4)、双曲正切S形函数:双曲正切S形函数类似于被平滑的阶跃函数,形状与对数S形函数相同,以原点对称,其输出介于-1~1之
间,常常被要求为输出在-1~1范围的信号选⽤。
神经元之间的连接形式
神经⽹络是⼀个复杂的互连系统,单元之间的互连模式将对⽹络的性质和功能产⽣重要影响。互连模式种类繁多。
(1)、前向⽹络(前馈⽹络):⽹络可以分为若⼲“层”,各层按信号传输先后顺序依次排列,第i层的神经元只接受第(i-1)层神经元给出
的信号,各神经元之间没有反馈。前馈型⽹络可⽤⼀有向⽆环路图表⽰,如下图所⽰:
可以看出,输⼊节点并⽆计算功能,只是为了表征输⼊⽮量各元素值。各层节点表⽰具有计算功能的神经元,称为计算单元。每个计算单元可以有任意个输⼊,但只有⼀个输出,它可送到多个节点作输⼊。称输⼊节点层为第零层。计算单元的各节点层从下⾄上依次称为第1⾄第N层,由此构成N层前向⽹络。(也有把输⼊节点层称为第1层,于是对N层⽹络将变为N+1个节点层序号。)
第⼀节点层与输出节点统称为“可见层”,⽽其他中间层则称为隐含层(hidden layer),这些神经元称为隐节点。BP⽹络就是典型的前向⽹络。
(2)、反馈⽹络:典型的反馈型神经⽹络如下图a所⽰:
每个节点都表⽰⼀个计算单元,同时接受外加输⼊和其它各节点的反馈输⼊,每个节点也都直接向外部输出。Hopfield⽹络即属此种类型。在某些反馈⽹络中,各神经元除接受外加输⼊与其它各节点反馈输⼊之外,还包括⾃⾝反馈。有时,反馈型神经⽹络也可表⽰为⼀张完全的⽆向图,如上图b。图中,每⼀个连接都是双向的。这⾥,第i个神经元对于第j个神经元的反馈与第j⾄i神经元反馈之突触权重相等,也即wij=wji。
以上介绍了两种最基本的⼈⼯神经⽹络结构,实际上,⼈⼯神经⽹络还有许多种连接形式,例如,从输出层到输⼊层有反馈的前向⽹络,同层内或异层间有相互反馈的多层⽹络等等。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论