1、第二部 计算智能 Computational Intelligence,计算智能的概念,计算智能(Computational Intelligence)1992贝兹德克(Bezdek):CI取决于数据,不依赖知识;AI应用知识精品.计算智能 : 生命科学 + 信息科学 计算智能是信息科学、生命科学、认知科学等不同学科相互交叉的产物。它主要借鉴仿生学的思想,基于人们对生物体智能机理的认识,采用数值计算的方法去模拟和实现人类的智能。 计算智能的主要研究领域包括:神经计算、进化计算、模糊计算、蚂群计算等。,计算智能的主要研究领域,神经网络是一种对人类智能的结构模拟方法,它是通过对大量人工神经元的广泛
2、并行互联,构造人工神经网络系统去模拟生物神经系统的智能机理的。 进化计算是一种对人类智能的演化模拟方法,它是通过对生物遗传和演化过程的认识,用进化算法去模拟人类智能的进化规律的。 模糊计算是一种对人类智能的逻辑模拟方法,它是通过对人类处理模糊现象的认知能力的认识,用模糊逻辑去模拟人类的智能行为的。,人工智能与计算智能,AI :基于知识处理 CI :基于数值计算高级认知形式 低级认知形式逻辑计算 自然计算推理学习 优化适应 计算复杂度: CI - AI - BI (Biological) 大量实践证明,只有把AI和CI很好地结合起来,才能更好地模拟人类智能,才是智能科学技术发展的正确方向。,组合
3、优化问题求解,局部搜索(LS:Local Search) 遗传算法 (GA:Genetic Algorithm) 人工神经网络( ANN: Artificial Neural Network ) 模拟退火算法(SA:Simulated Annealing ) 蚂蚁群算法 (ACA :Ant Colony Algorithm) 免疫算法 (IA:Immune Algorithm ) 粒子群优化算法(PSO:Particle Swarm Optimization ) ,第六章 人工神经网络 ( ANN : Artificial Neural Network ),人工神经网络概述 多层前馈神经网络(
4、BP网络) HOPFIELD神经网络 HOPFIELD网络应用,6.1 人工神经网络概述(一),人工神经网络( Artificial Neural Network : ANN ) : 抽象,简化与模拟大脑生物结构的计算模型,也称连接主义或并行分布处理( Paralell Distributed Processing : PDP)模型人工神经元ANN的三大要素:神经元,网络拓扑结构, 学习算法 拓扑结构: 分层结构, 互连结构 学习算法: 监督型(有指导), 非监督型(没指导),生物神经元结构,神经元的工作机制,神经元组成:细胞体(处理器)、树突(输入端)、轴突(输出端) 神经元有两种工作状态:
5、兴奋和抑制 神经元间的连接权是可以接受外界刺激而改变的,这构成了学习机能的基础。,什么是神经元网络,神经元网络(Neural Net)指由大量神经元互连而成的网络,有点象服务器互连而成的国际互连网(Internet). 人脑有1000亿个神经元,每个神经元平均与10000个其他神经元互连,这就构成了人类智慧的直接物质基础。,人工神经元的基本结构,x1,xn,xi,F( ),yi=f(uj) =f(wixi-),uj,w1,wn,wi,激励函数(或传播函数),要素 : 权值(wi), 门限值(), 非线性激励函数(f) 状态 : 被激活的兴奋状态 (ui = )没被激活的抑制状态(ui ),常用
6、神经元激励函数(一),1,-1,a 阶跃函数,1,-1,b 斜坡函数,f(x)= 1 x1kx -1 x 1-1 x-1,f(x)= 1 x0-1 x 0,常用神经元激励函数(二),1,-1,Sigmoid函数,f(x) = 1 / ( 1+exp(-x) ),yj= f( (wijhi) -j) 激励函数为Sigmoid,多层神经网络,输入层,隐层1,x1,xn,y1,yn,隐层2,输出层,Hj = f( (wijxi) -j) hj = f( (wijhi) -j),6.1 人工神经网络概述(二),ANN的突出特点 信息的分布存储:即使局部损坏,通过联想可恢复。 自适应,自组织,自学习:根
7、据环境自动改变网络及结构。并行处理:速度快。 非线性映射:任意精度逼近。 从训练样本中自动获得知识:特别是针对复杂环境。 ANN的应用-走向实用化 诊断与检测:疾病诊断、故障检测等。 识别:图像、文字、指纹、语音等。 分析与预测:天气、市场、股票,决策控制、管理等。,6.1 人工神经网络概述(二),ANN的分类 拓扑结构:无反反馈/有反馈、层次/全连接 学习方法:有教师/无教师 网络性能:连续型/离散型、线性/非线性 确定性 :确定性/随机型 ANN的发展 到50年代中期前 到60年代末期 到80年代初期 至今 产生时期 - 高潮时期 - 低潮时期 - 蓬勃发展时期神经元模型 双层感知器模型
8、69年Minsky论著 1982年Hopfield的成功 求解TSP NP难题,6.2 单层感知机神经网络(一),单层感知机神经网络 : 1957年Rosenblatt提出, 可实现二分类学习算法(为二分类问题)Step1 初始化劝值(wi)以及阀值Step2 提交训练示例 (x1,xn, d),如 x 属于A类, d=1; 否则x 属于B类,d=0; Step3 计算输出Step4 修正数值: wij(t+1) = wij(t) + kdj(t) - yj(t) yj(t) Step5 goto 2, 直到w对一切样本都稳定不变.当f=sgn(wx- )时, 以上学习算法一定收敛.,yj =
9、 f( (wijxi) -j),单层感知机神经网络基本结构,输入部分,输出层,x1,xn,y1,ym,wij,可解决的问题 两类线性可分模式的分类问题不能解决的问题 复杂的模式分类问题,使用感知机的主要目的是为了对外部输入进行分类。罗森勃拉特已经证明,如果外部输入是线性可分的(指存在一个超平面可以将它们分开),则单层感知器一定能够把它划分为两类。其判别超平面由如下判别式确定:作为例子,下面讨论用单个感知器实现逻辑运算的问题。事实上,单层感知器可以很好地实现“与”、“或”、“非”运算,但却不能解决“异或”问题。,y= f( w1x1 +w2x2-),单层感知机分类器实例,输入部分,输出层,x1,
10、x2,y,w2,w1,例1 “与”运算(x1x2),可以证明此表有解,例如取w1=1,w2=1,=1.5,其分类结果如右图所示。其中,输出为1的用实心圆,输出为0的用空心圆。后面约定相同。,例2 “或”运算(x1x2),此表也有解,例如取w1=1,w2=1,=0.5,其分类结果如右图所示。,例3 “非”运算(x1),此表也有解,例如取w1=-1,=-0.5,其分类结果如右图所示。,例4 “异或”运算(x1 XOR x2),此表无解,即无法找到满足条件的w1、w2和,如右图所示。因为异或问题是一个非线性可分问题,需要用多层感知器来解决。,XOR问题,A2 (1,1),A1 (0,0),B1 (1
11、,0),B2 (0,1),无法用一条直线把节点正确分开-非线性问题,XOR问题,A2 (1,1),A1 (0,0),B1 (1,0),B2 (0,1),可以用二条直线把节点正确分开-多层网络,6.2 多层前馈网络(二),多层感知机神经网络(MPNN) MPNN的计算能力: 激励函数为S型函数时,二层MPNN: 足可以解决任意分类判定问题.三层MPNN:可形成任意复杂决策区域,以任意精度逼近任何连续函数. MPNN的应用领域:函数逼近, 模式识别, 分类等. BP学习算法:,yj= f( (wijhi) -j) 激励函数为Sigmoid,三层感知机神经网络基本结构简化图,输入层,隐层1,x1,x
12、n,y1,yn,隐层2,输出层,Hj = f( (wijxi) -j) hj = f( (wijhi) -j),y=x1 XOR x2,x1,X2,x12,1,-1,1,1,1,-1,输入层,隐层,输出层,权值,权值,图5.14 “异或”问题的多层感知器,阈值0.5,阈值-1.5,阈值1.5,隐层神经元x11所确定的直线方程为它可以识别一个半平面。隐层神经元x12所确定的直线方程为它也可以识别一个半平面。,输出层神经元所确定的直线方程为它相当于对隐层神经元x11和x12的输出作“逻辑与”运算,因此可识别由隐层已识别的两个半平面的交集所构成的一个凸多边形,如图所示。,y=x1 XOR x2 =
13、(x1Vx2) AND (-x1V-x2),反向传播法(Back Propagation)(一),反向传播法(BP) : 1985年 Rumellart等提出.正向计算 : 正向计算各层输出, 计算最终输出与目标输出间的误差.反向计算 : 逐层传播误差信号,修正劝值,直到误差小于给定值.Step1 初始化劝值(wij)及阀值为小的随机数.Step2 施加输入 (x0,x1,xn-1),期待输出(d0,d1,dn-1) Step3 正向计算: 各层的输出y0,y1, , yn-1Step4 反向计算: wij(t+1) = wij(t) + ki Xi(t) Step5 goto 3, 直到w对
14、一切样本都稳定不变.,输出层: i=yi(1-yi)(di-yi) 中间层: i=xi(1-xi)kwik,反向传播法(BP)(二),优点 : 算法推导清楚, 精度高. 计算能力强.训练后的网络运行速度块. 缺点 : 非线性优化, 可能陷入局部最小区间.学习算法的收敛速度慢,可能不收敛.网络中隐含节点的设置无理论指导.,基于神经网络的知识表示与推理,基于神经网络的知识表示并不像在产生式系统中那样独立地表示为每一条规则,而是将某一问题的若干知识在同一网络中表示(分布式)。例如,在有些神经网络系统中,知识是用神经网络所对应的有向权图的邻接矩阵及阈值向量表示的。,异或逻辑的神经网络,邻接矩阵,如果用
15、产生式规则描述,则该网络代表下述四条规则: IF x1=0 AND x2=0 THEN y=0 IF x1=0 AND x2=1 THEN y=1 IF x1=1 AND x2=0 THEN y=1 IF x1=1 AND x2=1 THEN y=0,基于神经网络的推理,基于神经网络的推理是通过网络计算实现的。把用户提供的初始证据用作网络的输入,通过网络计算最终得到输出结果。,正向神经网络推理的特征,同层神经元完全并行,层间的信息传递串行。 计算的数据结果是确定的,不会出现推理冲突。 学习训练的模式是自适应推理。 每个神经元的计算可以分为已知输入加权和与未知输入加权和,如果前者大于后者,则未知
16、输入的输入不影响结果判断,从而在信息不完全时,照样可以进行推理。,6.3 HOPFIELD神经网络(一),HOPFIELD神经网络(HOP网络) :全连接网络 同步离散HOP网络: S(t+1) = sgn WS(t) + I W: 权值矩阵 S :状态向量 当神经元不断更新状态使 S(t+1) =S(t) 时,网络收敛. 主要用于: 组合优化, 记忆与联想. 验证HOP网络的稳定性: 能量函数是下降函数 E = - 1/2 wijvivj + ivi wii=0, wij=wji设只有一个神经元的状态变化(1-0),那么E的增量:Ei=1/2 wijvj i 系统的稳定条件为: i = wi
17、j,6.3 HOPFIELD神经网络(二),节点间的权值:wij 每个节点的状态:sisi = 1 如果 WS(t) + I 0 0 其他情况,wij,6.3 HOPFIELD神经网络(三),能量函数 : 决定网络的平衡状态, 函数的极小点就是网络的平衡状态. 设计能量函数,利用极小点(平衡状态)存储信息.mWij = k (2xi-1)(2xj-1) ij 其它 wij = 0;s=1,6.3 HOP网络应用(一),1 N皇后问题 问题表示 : 矩阵 能量函数 : E = A/2 (sij-1)2 + A/2(sij-1)2 +(A+B)/2sij(1-sij)+C/2sij(si+k,j+
18、k + si+k,j-k),i,j,i,i,i,j,j,j,6.3 HOP网络应用(二),2 二分图问题 问题表示 :连接矩阵 Csi = 1 若 节点 i 属于节点集合A-1 若 节点 i 属于节点集合B问题可转化为:在si=0的条件下,最小化 - cijsisj 能量函数 : ?,6.3 HOP网络应用(二),2 二分图问题 问题表示 :连接矩阵 Csi = 1 若 节点 i 属于节点集合A-1 若 节点 i 属于节点集合B问题可转化为:在si=0的条件下,最小化 - cijsisj 能量函数 : E = - 0.5 cijsisj + 0.5k si2= 0.5Nk 0.5 wijsis
19、j ( wij=cij-k),6.3 HOP网络应用(三),3 行商问题 问题表示 : 1 2 3 4 顺序号A 0 1 0 0城市 B 0 0 1 0C 1 0 0 0D 0 0 0 1 能量函数 : E = ?,6.3 HOP网络应用(三),3 行商问题 能量函数 : E = 行限制 + 列限制 + 通过城市限制 + 成本限制= A/2sxi sxj= B/2sxi syi= C/2(sxi- N)2= D/2dxysxi (sx,(I+1) + sx(I-1)),x,i,6.4 ANN的局限,受脑科学研究的限制 没有完整成熟的理论体系 还带有浓厚的经验色彩 与传统技术的接口不成熟,练习题,计算智能有什么特点? 包括哪些领域? 什么是人工神经网络?主要特点是什么? 人工神经网络三大要素是什么? BP网络的工作原理是什么? 什么是HOP网络和能量函数? HOP网络有什么主要特点?,