龚光鲁,钱敏平著应用随机过程教程一与在算法和智能计算中的应用 清华大学出版社,2003 第15章与数据建模有关的几个算法 1EM算法一隐状态变量分布中参数的最大似然估计 EM算法的基本想法 在数据资料不全时,由已有的资料Y估计缺失变量X,或在观测到的资料Y并不是状 态变量时,估计状态变量X时(或者估计其分布密度f(9,x)中的未知参数9),就与古典统 计很不相同,此时需要用观测到的资料Y,同时估计X与未知参数 这样的估计将面临如下困难:如果把在参数9下的期望记为E,那么,在估计状态 变量X时,估值当然应该用条件期望X=E(X|Y)(如果在Y=y及9的条件下,X的 Bas分布密度∫(x1,9)为已知,则也常用 Bayes估计x=x(x1,9)x).然而这 时就需要知道参数9的值;另一方面,为了知道9,又必须先知道X的估值X(作为状态 的已知样本值).这样,估计状态与估计未知参数之间是耦合的 在统计中通常对付这类困难的解耦方法是:假定一个已知,迭代地分别交替估计它们中 的另一个,直至稳定.此类算法通称为酬M算法,较为确切的表达是: (1)设置初值9 (2)(E-步骤)对n≥0,令X(m=E(X|Y)(或用 Bayes估计 f(x r, 9, dx ) (3)(M-步骤)(修正⑨的估计)取9n+1使之满足: log f(9m I, X )=Maxg log f(9, x) 其中E-步骤为取条件期望( Expectation),而M-步骤为取最大( Maximu 这种交替 迭代的方法,称为简单的EM方法 这个算法的构思很简单,但计算量过大,且一般很难看出是否稳定.为了克服这个缺 点, Dempster, Laird和 Rubin提出了直接递推估计9的想法(仍旧称为EM方法),这种 经过本质改进后的方法,至少在直观上看起来有稳定趋势 1.2 Rubin算法 假定(x,Y)具有联合分布密度f(9,x,y) Rubin算法的核心构思为:直接使用状态变量Y的分布密度g(9,y)代替(X,Y)的分 419
419 龚光鲁, 钱敏平著 应用随机过程教程 – 与在算法和智能计算中的应用 清华大学出版社, 2003 第 15 章 与数据建模有关的几个算法 1 EM 算法 – 隐状态变量分布中参数的最大似然估计 1. 1 EM 算法的基本想法 在数据资料不全时,由已有的资料Y 估计缺失变量 X ,或在观测到的资料Y 并不是状 态变量时,估计状态变量 X 时(或者估计其分布密度 f (J, x) 中的未知参数J ),就与古典统 计很不相同,此时需要用观测到的资料Y ,同时估计 X 与未知参数J . 这样的估计将面临如下困难: 如果把在参数J 下的期望记为 EJ , 那么, 在估计状态 变量 X 时,估值当然应该用条件期望 ( | ) ^ X = EJ X Y ( 如果在Y = y及J 的条件下, X 的 Bayes 分布密度 f (x | y,J) 为已知, 则也常用 Bayes 估计 ò X = x f (x | Y, )dx ^ J ). 然而这 时就需要知道参数J 的值; 另一方面,为了知道J ,又必须先知道 X 的估值 ^ X (作为状态 的已知样本值). 这样, 估计状态与估计未知参数之间是耦合的. 在统计中通常对付这类困难的解耦方法是: 假定一个已知,迭代地分别交替估计它们中 的另一个, 直至稳定.此类算法通称为 EM 算法, 较为确切的表达是: (1) 设置初值 J0; (2) (E-步骤) 对n ³ 0, 令 ( | ) ^ ( ) X E X Y n n = J (或用 Bayes 估计 ò X = x f x Y dx n n ( | , ) ^ ( ) J ); (3)(M -步骤)(修正J 的估计) 取Jn +1使之满足: log ( , ) log ( , ) ^ ( ) ^ ( ) 1 n n f Jn+ X = MaxJ f J X , 其中 E-步骤为取条件期望 ( Expectation ), 而 M-步骤为取最大( Maximum ). 这种交替 迭代的方法, 称为简单的 EM 方法. 这个算法的构思很简单, 但计算量过大, 且一般很难看出是否稳定. 为了克服这个缺 点, Dempster, Laird 和 Rubin 提出了直接递推估计J 的想法(仍旧称为 EM 方法), 这种 经过本质改进后的方法, 至少在直观上看起来有稳定趋势. 1. 2 Rubin 算法 假定(X,Y) 具有联合分布密度 f (J, x, y) Rubin 算法的核心构思为: 直接使用状态变量Y 的分布密度 g(J, y) 代替(X,Y) 的分
布密度∫(9,x,y),来求9关于g(9,y)的最大似然估计9.也就是求使logg(9,Y)达到 最大的9 由于g(9,y)在实际上并不好求, Dempster- Laird-Rbin利用了下述等式 f(9,x,y)=f(9,x|y)g(9,y) (15.1) 于是 log g(o, Y)=log f(, X, y)-logf(, XY) (15.1) 其右方是状态变量的对数似然密度与对数条件似然密度的差.对等式两边取关于Y的条件 期望得到 L(o)=log g(o, r)(=Eg(og g(o, r)r) g( Llogf(o, X, Y)IY-Es log [f(,X Q(q|9)-H(q|9). (15.2) 在观测资料是y的时候即Y=y的时候),Q(q|9)的表达式为 g(o|9)= log /(p, x,D)xr(0,xly)d 而H(|9)的表达式为 H(o19)= log/(o, x,yf(e, xly) =∫lgf1(X1)所(,x1yx 为了求L(9)的极大值点,我们将沿用第10章中对得到隐 Markov模型的模型参数估 计的 Baum-Welsh算法的思想.为此注意 L(q)-L(9)=[Q(q|9)-Q(9|9+[H(9|9)-H(q|9 (9,x|y) Q(o|9)-Q(9|9)+∫pog ≥[Q(q|9)-Q(9|9, (15.3) 其中用到第2项是相对熵的非负性.由(15.3)可知 只要Q(q|9)-Q(9|9≥0就有L(q)-L(9)≥0 420
420 布密度 f (J, x, y) , 来求J 关于 g(J, y) 的最大似然估计 ^ J . 也就是求使log g(J,Y) 达到 最大的 ^ J . 由于 g(J, y) 在实际上并不好求, Dempster– Laird- Rubin 利用了下述等式 f (J, x, y) = f (J, x | y) g(J, y) , (15. 1) 于是 log g(j,Y) = log f (j, X,Y) - log f (j, X |Y) , (15. 1)’ 其右方是状态变量的对数似然密度与对数条件似然密度的差. 对等式两边取关于Y 的条件 期望得到 L(j) log g(j,Y) D = ( E (log g(j,Y) | Y) = J ) E log f (j, X,Y) | Y E log f (j, X | Y)] = J([ ] )- J [ =Q(j |J) - H (j |J) D . (15. 2) 在观测资料是 y 的时候(即Y = y 的时候), Q(j |J) 的表达式为 Q(j |J) f x y f x y d x X Y log ( , , ) ( , | ) | j q ò = , 而 H (j |J) 的表达式为 H (j |J) = f x y f x y d x X Y log ( , , ) ( , | ) | j q ò f x y f x y d x X Y X Y log ( , | ) ( , | ) | | j q ò = . 为了求 L(J) 的极大值点, 我们将沿用第 10 章中对得到隐 Markov 模型的模型参数估 计的 Baum-Welsh 算法的思想. 为此注意 L(j) - L(J) = [Q(j |J) - Q(J |J)] + [H(J |J) - H (j |J)] f x Y dx f x Y f x Y Q Q X Y X Y X Y ] ( , | ) ( , | ) ( , | ) [ ( | ) ( | )] [log | | | J j J j J J J ò = - + ³ [Q(j |J) - Q(J |J)] , (15. 3) 其中用到第2项是相对熵的非负性. 由(15. 3)可知: 只要 Q(j |J) - Q(J | J) ³ 0 就有 L(j) - L(J) ³ 0
所以,为了将9的较粗估计9,修改为较精的估计⑨n1,只需找9n1使 L(9n1)-L(9n)≥0.也就是只需要找n1使 Q(9n1|9n)-Q(9n|9n)≥0 (15.4) 于是我们就得到如下的 Dempster- Laird- Rubin的酬M算法,简称 Rub in算法或EM算法 (1)设置初值9 (2)(E步骤)对于n20,计算Q(|9,)=「g/(,xy)/(0,x1y)dx (3)(M-步骤)(修正9的估计)取⑨n+!使 Q(9m+1 9n)=Max @( 9n) (15.5) 由于将9n修正为9n时,Q(9n1|9)比Q(9n|9n)大,所以L(⑨n)是不减的,这就说明 9有收敛的趋势. Rubin证明了,在一定的条件下,9确实按概率收敛于某个9.于是我 们可以合理地把9作为分布的参数9的较佳的估计 注1L(9)是多峰函数的时候,9有可能是L(9)的局部最大值,甚至是鞍点,为了 纠正这种不足,一般可以从多个初始值出发,找到多个9值进行比较 注2所谓“缺失资料”可见之于两种情形:一种是观测资料的丢失,另一种是人为 地设置一些“后台操作的”辅助随机变量,称之为潜变量,将他们视为缺失的资料,即将他 们视为不能直接测量到的状态随机变量.这种潜变量的取法可以非常灵活,依赖于人们对于 问题的认识,经验的积累与对于技术掌握的成熟程度.从数学处理的角度考虑,最好能选取 潜变量X,使它与观测随机变量γ的联合分布是指数型分布(参见第1章),这时E-步骤就 很容易计算. 注3在离散随机变量的情形,E一步骤中的积分应该相应的改为求和。 以上算法也同样将隐马氏模型中的Baum- Welsh算法,纳入了EM算法的框架. 1.3EM算法的变通一广义EM算法 在实际计算中,又因为E-步骤的计算量很大,人们常常并不真去计算条件期望,而 是采用随机模拟.即:用在(9,})已知的条件下,用随机模拟得到X的 Bayes分布的若 干独立随机数,代入log∫(φ,Ⅺ)后作样本平均,用来代替Q(φ|9n)·这就大大地减少了 计算量.实践表明这样的简化,常可以得到相当满意的效果 同样,也因为M步骤的计算量也很大,人们也常常并不去算最大,而是任意找一个 φ,只要满足Q(φ|9)-Q(9|9n)≥0,就取φ为⑨n1·这样简化了的算法,称为广义 421
421 所 以 , 为 了 将 J 的较粗估计 Jn , 修改为较精的估计 Jn+1 , 只需找 Jn+1 使 L(Jn+1 ) - L(Jn ) ³ 0. 也就是只需要找Jn+1 使 Q(Jn+1 |Jn ) -Q(Jn | Jn ) ³ 0 . (15. 4) 于是我们就得到如下的 Dempster– Laird- Rubin 的 EM 算法, 简称 Rubin 算法或 EM 算法: (1) 设置初值 J0; (2)(E-步骤)对于n ³ 0, 计算 ( | ) Q j Jn f x y f x y d x X Y log ( , , ) ( , | ) | j q ò = ; (3)(M -步骤)(修正J 的估计) 取Jn +1 使 ( | ) ( | ) Q Jn+1 Jn = Maxj Q j Jn . (15. 5) 由于将Jn修正为Jn+1时, ( | ) Q Jn+1 Jn 比 ( | ) Q Jn Jn 大, 所以 ( ) L Jn 是不减的, 这就说明 Jn有收敛的趋势. Rubin 证明了,在一定的条件下,Jn确实按概率收敛于某个 ^ J .于是我 们可以合理地把 ^ J 作为分布的参数J 的较佳的估计 注 1 L(J) 是多峰函数的时候, ^ J 有可能是 L(J) 的局部最大值,甚至是鞍点,为了 纠正这种不足,一般可以从多个初始值出发,找到多个 ^ J 值进行比较. 注 2 所谓“ 缺失资料”可见之于两种情形:一种是观测资料的丢失,另一种是人为 地设置一些“后台操作的”辅助随机变量,称之为潜变量,将他们视为缺失的资料,即将他 们视为不能直接测量到的状态随机变量. 这种潜变量的取法可以非常灵活, 依赖于人们对于 问题的认识, 经验的积累与对于技术掌握的成熟程度. 从数学处理的角度考虑, 最好能选取 潜变量 X ,使它与观测随机变量Y 的联合分布是指数型分布 (参见第 1 章), 这时 E-步骤就 很容易计算. 注 3 在离散随机变量的情形,E-步骤中的积分应该相应的改为求和。 以上算法也同样将隐马氏模型中的 Baum-Welsh 算法, 纳入了 EM 算法的框架. 1.3 EM 算法的变通 – 广义 EM 算法 在实际计算中, 又因为 E-步骤的计算量很大, 人们常常并不真去计算条件期望, 而 是采用随机模拟. 即: 用在( ,Y) Jn 已知的条件下, 用随机模拟得到 X 的 Bayes 分布的若 干独立随机数, 代入 log f (j, X) 后作样本平均, 用来代替 ( | ) Q j Jn . 这就大大地减少了 计算量. 实践表明这样的简化, 常可以得到相当满意的效果. 同样, 也因为 M-步骤的计算量也很大, 人们也常常并不去算最大, 而是任意找一个 j , 只要满足Q(j |Jn ) - Q(Jn |Jn ) ³ 0, 就取j 为 Jn+1 . 这样简化了的算法, 称为广义
EM算法,常称为GEM算法 注]在应用EM方法时,为了避免M-步骤中求最大值的复杂计算,还可以采取其它的灵活的替代 方法.例如有 ECM算法〔 conditional max imum,cM),在多个参数的时候,例如9=(91,92)的情形,如下的交 替地求条件极值的最大化的方法,也常被用来代替M-步骤: (1)先取92满足 Q(9),92|9)=maxQ(91",92)9") (2)再取91满足 Q(9),92m)1(91",92")= maxi. o(9',92")1(9",92") 称之为ECM算法。一般地,ECM算法比M算法达到稳定的时间长 另有一种ECME算法(混合算法),它就是交替地使用FCM算法和M算法 2.在数据不完全时,用增补潜在数据,对参数的 Bayes分布作估计- Tanner-Wong的潜变量法 基本想法一估计后验分布 在数据资料不全(缺失数据),或观测到的资料Y并不是状态变量时,估计状态变量X的分布密度 f(9,x)中的未知参数9,与古典统计不同处是只能用观测到的资料Y,这时可以通过后验分布密度 p(9|Y)得到参数9的 Bayes估计.然而,后验分布p(9|Y)一般并不知道,就需要用观测到的资料y 对后验分布p(9|y)进行估计,这就是本段的目的 Tanner-Wong的想法是:在某些情形下,由观测数据Y可以通过条件分布取样的机制,来构造某 种”增补数据”(记为Z,称为潜变量, L atent Variable)的样本值.于是Z的这些样本值取自条件分布密 度P(=|y,9).P(=|y)称为预测分布.而在Y=y已知的条件下,潜变量的各个样本值彼此是条件 独立的 潜变量Z是观测不到的,如何选好它,最为重要.最简单的情形是:观测数据Y=Y1,2…,YN 为N个时刻的历史资料,其中Y1是一个m维向量,如果它的第1个分量是缺失的,而其它m-1维就 是状态变量.这时候潜变量就可取为那个缺失的一维变量 然而,一般情形远非如此简单.潜变量的选取是关系到能否有效地计算的关键, Tanner-wong选取 z的原则是,同时满足以下两个条件(注意在上面所提到最简单情形,下面的条件是满足的) 422
422 EM 算法, 常称为 GEM 算法. [注] 在应用 EM 方法时, 为了避免M-步骤中求最大值的复杂计算, 还可以采取其它的灵活的替代 方法.例如有 ECM 算法(Conditional Maximum, CM), 在多个参数的时候,例如 ( , ) J = J1 J2 的情形,如下的交 替地求条件极值的最大化的方法,也常被用来代替 M-步骤: (1) 先取 ( 1) 2 n+ J 满足 = + (( , ' | ) ( 1) ( ) 2 ( ) 1 n n n Q J J J max (( , ' ) | ) ( ) 2 ( ) 2 ' 1 n n J Q J J J ; (2) 再取 ( 1) 1 n+ J 满足 (( , ) | ( , )) ( 1) 2 ( ) 1 ( 1) 2 ( 1) 1 n+ n+ n n + Q J J J J max (( ', )| ( , )) ( 1) 2 ( ) 1 ( 1) 1 ' 1 2 + + = n n n J Q J J J J , 称之为 ECM 算法。一般地,ECM 算法比 EM 算法达到稳定的时间长. 另有一种 ECME 算法 (混合算法),它就是交替地使用 ECM 算法和 EM 算法. * 2. 在数据不完全时,用增补潜在数据,对参数的 Bayes 分布作估计 – Tanner–Wong 的潜变量法 2.1 基本想法-估计后验分布 在数据资料不全(缺失数据), 或观测到的资料 Y 并不是状态变量时, 估计状态变量 X 的分布密度 f (J, x) 中的未知参数J , 与古典统计不同处是只能用观测到的资料Y ,这时可以通过后验分布密度 p(J | Y) 得到参数J 的 Bayes 估计.然而,后验分布 p(J | Y) 一般并不知道,就需要用观测到的资料Y 对后验分布 p(J | Y) 进行估计,这就是本段的目的. Tanner – Wong 的想法是: 在某些情形下,由观测数据Y 可以通过条件分布取样的机制,来构造某 种"增补数据" (记为 Z ,称为潜变量,Latent Variable)的样本值.于是 Z 的这些样本值取自条件分布密 度 p(z | y,J) . p(z | y) 称为预测分布.而在Y = y 已知的条件下, 潜变量的各个样本值彼此是条件 独立的. 潜变量 Z 是观测不到的, 如何选好它, 最为重要. 最简单的情形是: 观测数据Y Y Y YN , , , = 1 2 L 为 N 个时刻的历史资料,其中Yi 是一个m 维向量, 如果它的第1个分量是缺失的,而其它m -1维就 是状态变量.这时候潜变量就可取为那个缺失的一维变量. 然而,一般情形远非如此简单. 潜变量的选取是关系到能否有效地计算的关键. Tanner-Wong选取 Z 的原则是,同时满足以下两个条件(注意在上面所提到最简单情形,下面的条件是满足的):
(1)易于模拟条件分布P(二|y9)随机数, (2)容易计算后验分布密度p(9|y,=) 下面的讨论都基于(1),(2)均能够施行 2.2未知参数的后验分布的迭代估计 旦选定潜变量以后,利用广义全概率公式,就得到 p(9|)=p9|,)(|y) p(|1)=「pe|9)p(9|y)d9 这两个关系式是设计迭代算法的基点 (迭代可能性的理论依据粗略地为:把(15.7)代入(15.6)得到 p(91y)=[ p(913,2)P(=ly, 9')d=]p(9'lyydg =JK(99m(91y)9 这说明Pp(9|y)是积分核K(9,9)的不变函数.积分核K(9,9)依赖于观测值y,但是观测值y是 固定的,所以没有将它计入记号.只要对积分核K(9,9)作适当的假定,就可以使迭代算法收敛到积分 核的不变函数) 由于积分核是不知道的,我们就不可能直接利用以下的迭代算法 gn(9)=「K(9.9gn(9d9 近似其不变函数, Tanner-Wong提出用 Monte carlo迭代方法给出p(9|y)的一个估计 Tanner-Wong 设计的迭代算法是,利用按预测分布的多个独立取样,得到潜变量的多个样本值,通过它们由后验分布 p(9|,=)们更新未知参数9的后验密度p(9|j)迭代估计.注意(5.6说明p(9|是 p(9|y,二)关于预测分布密度p(=|y)的数学期望。因此如果得到了潜变量的多个样本值 (1)→(m) 就可以作P(9|y)的如下的估计 p(9|y)=-∑p(9|y=) (15.8) 对此还需要计算潜变量加入条件的后验分布p(9|y,=) 于是,估计未知参数9的后验密度p(9|y)就归结为以下的迭代程序 (1)置初值P0(9|y)
423 (1)易于模拟条件分布 p(z | y,J) 随机数, (2)容易计算后验分布密度 p(J | y,z) . 下面的讨论都基于(1),(2)均能够施行. 2.2 未知参数的后验分布的迭代估计 一旦选定潜变量以后, 利用广义全概率公式, 就得到 p(J | y) p(J | y,z) p(z | y)dz ò = (15. 6) 和 * * * p(z | y) p(z | y,J ) p(J | y)dJ ò = . (15. 7) 这两个关系式是设计迭代算法的基点. (迭代可能性的理论依据粗略地为: 把 (15. 7)代入(15. 6)得到 * * * p(J | y) [ p(J | y,z) p(z | y,J )d z]p(J | y)dJ ò ò = * * * K(J,J )p(J | y )dJ ò = 记为 . 这说明 p(J | y) 是积分核 ( , ) * K J J 的不变函数.积分核 ( , ) * K J J 依赖于观测值 y ,但是观测值 y 是 固定的,所以没有将它计入记号. 只要对积分核 ( , ) * K J J 作适当的假定, 就可以使迭代算法收敛到积分 核的不变函数). 由于积分核是不知道的,我们就不可能直接利用以下的迭代算法 * * n * n g J K(J,J )g (J )dJ ò +1 ( ) = 近似其不变函数. Tanner – Wong 提出用Monte Carlo 迭代方法给出 p(J | y) 的一个估计.Tanner – Wong 设计的迭代算法是,利用按预测分布的多个独立取样,得到潜变量的多个样本值, 通过它们由后验分布 ( | , ) (i) p J y z 们更新未知参数J 的后验密度 p(J | y) 迭代估计.注 意(15. 6)说明 p(J | y) 是 p(J | y,z) 关于预测分布密度 p(z | y) 的数学期望。 因 此如果得到了潜变量的多个样本值 (1) ( ) , , m z L z , 就可以作 p(J | y) 的如下的估计 ( | , ) 1 ( | ) ( ) 1 ^ i m i p y z m p J y å J = = . (15. 8) 对此还需要计算潜变量加入条件的后验分布 p(J | y,z) . 于是, 估计未知参数J 的后验密度 p(J | y) 就归结为以下的迭代程序: (1) 置初值 ( | ) 0 p J y ;
假定已经算出了第n次选代的Pn(9|y),那么第n+1次迭代的Pn+1(9|y)用以下的两个步骤轮番地 修改得到 (2)1( Imputation)步骤(得到潜变量的条件样本):先按pn(9|y)对9n作随机取样,再 按p(=|y9)独立地取样m个:二,…,二(m充分大 (3)P( Poster ior)步骤(用增补后验分布更新后验分布):令 pn+1(9|y) p(9|y,z) 3几种智能算法 3.1背景 随着髙性能计算机的发展,岀现了一系列算法,如神经网络,模拟退火,遗传算法,演 化算法,隐 Markov模型,自适应算法等.它们大多出自仿真人的思维,不仅具有通用,稳 健( robust),简单及便于并行处理等优点,而且也有望成为将数值计算与语义表达,形象思 维等与高级智能行为相联系的桥梁.事实上,把人的智能与思维仅仅理解为主要是逻辑思维 是有很大的片面性的.与逻辑思维相反的以因果思维与统计判决为代表的非逻辑推断,应该 说在日常推断中是更为本质的.例如,在逻辑推理中,从”A蕴涵B”这个命题能作的推 理是:一旦A出现,就立知B发生.这只是一种简单思维.而人类的智能推断是更为高级 的思维.其判断过程却往往是一个由”结果”探求其”原因”的相反过程.例如,医生 诊断疾病时,常常是:由”疾病A有症状B”这一命题,从病人有症状B,反过来推断病 人有多大的可能有疾病A.这是一种非逻辑的推断,含有不确定性,还有犯错误的风险.然 而这正体现了人类的高级智能活动.同样的推理还有:法医尸检死因,侦探寻找作案人,天 气预报,考古分析,矿藏探测等等.与之相联系的计算方法都可归入智能算法 一般地,智能算法常具有以下的特点 (1)大都引入了人为的随机因素,因而其计算过程实际上是作随机过程的模拟.然 而,这种人工噪声的作用不仅不起干扰的作用,而是相反地起正面的作用.使用它完全是为 了控制计算的进行方向 (2)大都具有自适应机制,可以在计算过程中不断调整. (3)大都是针对通用的目标函数而设计的,并不采用具体问题具体处理的启发式方 (4)不少算法是对高维及复杂情形设计的.它们在低维或简单的情形有时效果很差, 有时也显得很笨拙 3.2决定性的人工神经网络 神经网络是一个由彼此具有相互作用的多个神经元联结在一起的一个系统.作为神经 网络的整个系统的协同工作产生一个总的效应.这个总的效应是一种功能,它可以是对应于 定的输入时有一定的相应输出,也可以是一种记忆功能.神经网络的重点是功能研究.在 功能研究的基础上,构造具有相互作用的粒子系统,称为人工神经网络,以仿真地起到成为 模拟某种功能的功能器.在数学上,人工神经网络也可以用来构造具有某种绐定功能的分片 线性处理器.人工神经网络的操作一般具有黑箱的特点.神经网络方法的精神在于 由从例子(即样品)学习中,归纳出规律 424
424 假定已经算出了第 n 次迭代的 p ( | y) n J , 那么第n +1次迭代的 ( | ) 1 p y n+ J 用以下的两个步骤轮番地 修改得到 (2) I (Imputation) 步骤 (得到潜变量的条件样本): 先按 p ( | y) n J 对Jn 作随机取样, 再 按 ( | , ) n p z y J 独立地取样m 个: (1) ( ) , , m z L z (m 充分大); (3) P (Posterior) 步骤 (用增补后验分布更新后验分布): 令 ( | , ) 1 ( | ) ( ) 1 1 i m i n p y z m p J y å J = + = . 3 几种智能算法 3. 1 背景 随着高性能计算机的发展, 出现了一系列算法, 如神经网络, 模拟退火, 遗传算法, 演 化算法, 隐 Markov 模型, 自适应算法等. 它们大多出自仿真人的思维, 不仅具有通用, 稳 健(robust), 简单及便于并行处理等优点, 而且也有望成为将数值计算与语义表达, 形象思 维等与高级智能行为相联系的桥梁. 事实上, 把人的智能与思维仅仅理解为主要是逻辑思维, 是有很大的片面性的. 与逻辑思维相反的以因果思维与统计判决为代表的非逻辑推断,应该 说在日常推断中是更为本质的. 例如, 在逻辑推理中, 从 ”A 蕴涵 B” 这个命题能作的推 理是: 一旦 A 出现, 就立知 B 发生. 这只是一种简单思维. 而人类的智能推断是更为高级 的思维. 其判断过程却往往是一个由 ”结果” 探求其 ”原因” 的相反过程. 例如, 医生 诊断疾病时, 常常是: 由 ”疾病 A 有症状 B” 这一命题, 从病人有症状 B, 反过来推断病 人有多大的可能有疾病 A. 这是一种非逻辑的推断, 含有不确定性, 还有犯错误的风险. 然 而这正体现了人类的高级智能活动. 同样的推理还有: 法医尸检死因, 侦探寻找作案人, 天 气预报, 考古分析, 矿藏探测等等. 与之相联系的计算方法都可归入智能算法. 一般地, 智能算法常具有以下的特点: (1) 大都引入了人为的随机因素, 因而其计算过程实际上是作随机过程的模拟. 然 而,这种人工噪声的作用不仅不起干扰的作用, 而是相反地起正面的作用. 使用它完全是为 了控制计算的进行方向. (2) 大都具有自适应机制, 可以在计算过程中不断调整. (3) 大都是针对通用的目标函数而设计的, 并不采用具体问题具体处理的启发式方 法. (4) 不少算法是对高维及复杂情形设计的. 它们在低维或简单的情形有时效果很差, 有时也显得很笨拙. 3.2 决定性的人工神经网络 神经网络是一个由彼此具有相互作用的多个神经元联结在一起的一个系统. 作为神经 网络的整个系统的协同工作产生一个总的效应. 这个总的效应是一种功能, 它可以是对应于 一定的输入时有一定的相应输出, 也可以是一种记忆功能. 神经网络的重点是功能研究. 在 功能研究的基础上, 构造具有相互作用的粒子系统, 称为人工神经网络, 以仿真地起到成为 模拟某种功能的功能器. 在数学上, 人工神经网络也可以用来构造具有某种给定功能的分片 线性处理器. 人工神经网络的操作一般具有黑箱的特点. 神经网络方法的精神在于: 由从例子(即样品)学习中, 归纳出规律
因此,它并不需要知道数据来自的对象的机理.这是它的长处.当然,在规律较为明显的情 形,它也就会显出不足.总体看来,可以说神经网络方法是有别于经典统计的一种另类统计 方法 人工神经网络可分为决定性的和随机的两大类.它们又各自包括各种不同类型的神经 网络.这种不同的神经网络的构造,是根据要求它完成某种制定的特殊功能而设计的.而随 机因素的引入,是为了使计算更稳定,减少往错误的方向进行的可能性 决定性的人工神经网络,如前传神经网络与随机过程并没有关系.但是它是人工神经网 络的基础,它有广泛的应用.再则,通过它不仅可以了解人工神经网络的原理与功能,并 且也可以更好地理解随机的神经网络.所以本书也采纳了决定性的人工神经网络.以下我 们先介绍决定性的前传人工神经网络,而把更为一般的决定性的递归神经网络放在随机神 经网络中一并处理 3.2.1决定性的前传人工神经网络 前传网络的概念 最常见的人工神经网络是多层前传网络.这种网络可分为多层,其中每层有一些单元组 成.一般分为3种层次,依次为:输入层(由接受输入数据的神经元组成,它们不受其他神 经元的相互作用),隐层和输出层.作为中间层的隐层,又可分为若干个子层(由 Kolmogorov 的理论结果,它等价于只有一个隐层的某个系统.然而在实际计算中,往往以采用多层更为 方便,灵活).所谓前传网络,就是信息只能由前向后传,只有前一层的单元对其后一层的 单元可能有相互作用.每一个隐层或输出层都由许多感受子( perceptron)组成.每一个感 受子就是一个受到网络相互作用的神经元.在前传网络中,这种相互作用只允许来自上一层 的神经元 最典型的是具有3层的全连接前传网络,其隐层元,例如,可以取6个至8个神经元.网 络的效果相当于分片线性近似.它是一种进行自适应学习的非线性处理器.其典型的模式是 如下的受门限限制的线性作用:设输入层为m个输入神经元x=(x1…,xn),隐层有l个 神经单元(体现为分量)h=(h…,h1),而输出层为n个单元y=(1…,yn).用权重 2,23)分别表示输入元给隐元k的作用(强度),和隐元k给输出元j的作用.通常取 门限函数g为在0点的单位阶跃函数 (15.9) 0(x0) (15.10) 于是输入层到隐层间的转递为 h=g∑k2x-0) (15.11) 而隐层到输出层的转移为 g(∑3h4-0") 其中6,0,是为了方便而预先设置的门限常数,称为阈值.在g为在0点的单位阶跃函数 425
425 因此, 它并不需要知道数据来自的对象的机理. 这是它的长处. 当然, 在规律较为明显的情 形, 它也就会显出不足. 总体看来, 可以说神经网络方法是有别于经典统计的一种另类统计 方法. 人工神经网络可分为决定性的和随机的两大类. 它们又各自包括各种不同类型的神经 网络. 这种不同的神经网络的构造, 是根据要求它完成某种制定的特殊功能而设计的. 而随 机因素的引入, 是为了使计算更稳定, 减少往错误的方向进行的可能性. 决定性的人工神经网络,如前传神经网络与随机过程并没有关系. 但是它是人工神经网 络的基础, 它有广泛的应用. 再则, 通过它不仅可以了解人工神经网络的原理与功能, 并 且也可以更好地理解随机的神经网络. 所以本书也采纳了决定性的人工神经网络. 以下我 们先介绍决定性的前传人工神经网络, 而把更为一般的决定性的递归神经网络放在随机神 经网络中一并处理. 3.2.1 决定性的前传人工神经网络 1. 前传网络的概念 最常见的人工神经网络是多层前传网络. 这种网络可分为多层, 其中每层有一些单元组 成. 一般分为 3 种层次, 依次为: 输入层(由接受输入数据的神经元组成, 它们不受其他神 经元的相互作用), 隐层和输出层. 作为中间层的隐层, 又可分为若干个子层(由 Kolmogorov 的理论结果, 它等价于只有一个隐层的某个系统. 然而在实际计算中, 往往以采用多层更为 方便, 灵活). 所谓前传网络, 就是信息只能由前向后传, 只有前一层的单元对其后一层的 单元可能有相互作用. 每一个隐层或输出层都由许多感受子(perceptron) 组成. 每一个感 受子就是一个受到网络相互作用的神经元. 在前传网络中, 这种相互作用只允许来自上一层 的神经元. 最典型的是具有3层的全连接前传网络, 其隐层元, 例如, 可以取 6个至8个神经元. 网 络的效果相当于分片线性近似. 它是一种进行自适应学习的非线性处理器. 其典型的模式是 如下的受门限限制的线性作用: 设输入层为 m 个输入神经元 ( , , ) 1 m x = x L x , 隐层有 l 个 神经单元(体现为分量) ( , , ) h = h1 L hl , 而输出层为 n 个单元 ( , , ) 1 n y = y L y . 用权重 (1,2 ) (2,3) , wik wkl 分别表示输入元i 给隐元k 的作用(强度),和隐元k 给输出元 j 的作用. 通常取 门限函数 g 为在 0 点的单位阶跃函数 ç ç è æ 0) . (15. 10) 于是输入层到隐层间的转递为 ( ) (1,2) i k i k ik h = g åw x -q , (15. 11) 而隐层到输出层的转移为 ( ') (2,3) k j k y j = g åwkj h -q , (15. 12) 其中 , ' qk q j 是为了方便而预先设置的门限常数, 称为阈值..在g 为在 0 点的单位阶跃函数
时,g取值1对应于神经元处于激发状态,取值0就表示处于抑制状态.在g为S形函数 时,对应神经单元取连续的状态值,这种假定有利于在一些近似运算中求导数.此外即使在 神经元只取抑制和激发两种状态时,也可以设置抑制和激发以外的一些缓冲状态 前传神经网络是一种最简单的非线性处理器,即一种分片线性处理器,其输入是输出的 分片线性函数也就是由样品确定参数的分片线性近似器(把它与用样条函数( Spline)近似 作比较,前传神经网络除了有输出对输入并不可微的缺点外,操作与运行都远为简单) 2.前传人工神经网络的建模与应用 神经网络主要用在建模,模式识别,图像处理,基因表达等领域.多层前传网络的使用 可以分为两个相位:训练学习相位与运转相位(操作相位) 学习相位就是通过对样品的加工计算,得到权重常数w2),g2和门限0,0,等参 数的估计值,使得在这组参数估计值下,该神经网络能相对最好地执行我们冀望它完成的任 务 神经网络的学习方法分为有监督的学习与无监督的学习.多层前传网络大多采用有监 督的学习.其中最广为应用的是误差后传法.有监督的学习是指我们可以得到一组给定输出 的输入样品.在学习时可利用已知的输出参照比较.学习的目的就是找出最佳未知参数,使 得当将样品的输入部分输进这组参数下的网络时,能使输出最接近样品相应的输出.其要点 就是根据已知的典型输入和输出,来估计连接系数2),v3),而其实质是灵活地运用最 小二乘法 误差后传法的主要步骤是 (1).设定参数的初始值 2).逐个或按随机顺序将样品的输入,输进初始参数所对应的网络,得到输出,并 将其与该样品应有的已知输出进行比较 3).校正最后一层(设为第n层)的网络参数,得到使得输出最接近于应有输出的 最后一层参数,并解出使得误差最小的第n-1层输出 (4).将第n-1层当作第n层,重复(3),校正第n-1层的参数,并求出第n-2层 输出,使得第n-1层的输出误差最小 (5).重复(4),向前面各层推进,直到求出所有各层的参数 (6).重复步骤(2)至(5),直到看起来稳定 这个算法是在未知状态(各个神经元的状态)的情况下估计参数,这也是缺失数据的 种参数估计.在估计参数的优化过程中,由于目标函数是非线性的,且变量数又十分大,计 算往往会陷于局部极值,因此,也可考虑应用模拟退火等整体优化方法. 另一个相位是运转相位.它是在学习相位的基础上(就是在确定参数以后),神经网络中 各结点(即神经元)的状态按规定的方式运行(即进行运算),以执行希望达到的任务,如预测 识别,分类等目的 前传网络在计算机科学,人工智能等领域中有广泛的应用,它是一种比较好的另类回归 模型 般的决定性的人工神经网络模型(神经元未必只取1或0) 在一般的情形,神经网络对神经元x的总相互作用可以表示为 h(x)=8(> w(x,y)n(y)-e(r) (15.13) 其中w(x,y)是神经元y对神经元x的相互作用势,h(y)是神经元y所处的状态,而
426 时, g 取值 1 对应于神经元处于激发状态, 取值 0 就表示处于抑制状态. 在g 为 S 形函数 时, 对应神经单元取连续的状态值, 这种假定有利于在一些近似运算中求导数. 此外即使在 神经元只取抑制和激发两种状态时, 也可以设置抑制和激发以外的一些缓冲状态. 前传神经网络是一种最简单的非线性处理器,即一种分片线性处理器, 其输入是输出的 分片线性函数. 也就是由样品确定参数的分片线性近似器 (把它与用样条函数(Spline)近似 作比较, 前传神经网络除了有输出对输入并不可微的缺点外, 操作与运行都远为简单). 2. 前传人工神经网络的建模与应用 神经网络主要用在建模, 模式识别, 图像处理, 基因表达等领域. 多层前传网络的使用 可以分为两个相位: 训练学习相位与运转相位(操作相位). 学习相位就是通过对样品的加工计算,得到权重常数 (1,2 ) (2,3) , wik wkj 和 门限 , ' qk q j 等参 数的估计值, 使得在这组参数估计值下, 该神经网络能相对最好地执行我们冀望它完成的任 务. 神经网络的学习方法分为有监督的学习与无监督的学习. 多层前传网络大多采用有监 督的学习. 其中最广为应用的是误差后传法. 有监督的学习是指我们可以得到一组给定输出 的输入样品. 在学习时可利用已知的输出参照比较. 学习的目的就是找出最佳未知参数, 使 得当将样品的输入部分输进这组参数下的网络时, 能使输出最接近样品相应的输出. 其要点 就是根据已知的典型输入和输出, 来估计连接系数 (1,2 ) (2,3) , wik wkl , 而其实质是灵活地运用最 小二乘法. 误差后传法的主要步骤是: (1). 设定参数的初始值; (2). 逐个或按随机顺序将样品的输入, 输进初始参数所对应的网络, 得到输出, 并 将其与该样品应有的已知输出进行比较; (3). 校正最后一层(设为第 n 层)的网络参数, 得到使得输出最接近于应有输出的 最后一层参数, 并解出使得误差最小的第n -1层输出; (4). 将第n -1层当作第n 层, 重复(3), 校正第 n-1 层的参数, 并求出第n - 2层 输 出, 使得第n -1层的输出误差最小; (5). 重复(4), 向前面各层推进,直到求出所有各层的参数; (6). 重复步骤(2)至(5), 直到看起来稳定. 这个算法是在未知状态(各个神经元的状态)的情况下估计参数, 这也是缺失数据的一 种参数估计. 在估计参数的优化过程中, 由于目标函数是非线性的, 且变量数又十分大, 计 算往往会陷于局部极值, 因此, 也可考虑应用模拟退火等整体优化方法. 另一个相位是运转相位. 它是在学习相位的基础上(就是在确定参数以后), 神经网络中 各结点(即神经元)的状态按规定的方式运行(即进行运算), 以执行希望达到的任务, 如预测, 识别, 分类等目的. 前传网络在计算机科学,人工智能等领域中有广泛的应用,它是一种比较好的另类回归 模型. 3.2.2 一般的决定性的人工神经网络模型(神经元未必只取 1 或 0) 在一般的情形, 神经网络对神经元 x 的总相互作用可以表示为 ( ) = (å ( , ) ( ) - ( )) y h x g w x y h y q x , (15. 13) 其中 w( x, y) 是神经元 y 对神经元 x 的相互作用势, h( y) 是神经元 y 所处的状态, 而
θ(x)则是神经元x的激发门限值.在神经元只取0或1(抑制或激发)两种状态时,乘积 v(x,y)h(y)是神经元y对神经元x的作用力,g为门限函数,它是对自变量的总相互作用 超过门限的部分起的作用,其中的和号取遍一切对于神经元x有相互作用的神经元y的全 体. 3.3随机的人工神经网络 3.3.1一般概念 在随机的神经网络中,下一层神经元x被激发的概率取为 B-h(r) p(x) (15.14) 显见在h(x)越大处,p(x)也越大,即该处的神经元x被激发的概率越大.随机的神经网 络与相互作用粒子的随机系统非常类似,它的运转是一个 Markov链 随机因素的加入,在下面的递归网络中能起控制计算进行方向的稳定作用 3.3.2递归(或反馈)( recurrent)网络与 Boltzman机 递归( recurrent)网络也称为反馈网络,它实际上是以全体神经元所处的状态(称为一 个组态)为变元的一个动力系统,因而也具有反馈的连接.在数学上反馈提供了迭代的功能 所以,同样作为离散动力系统,递归网络比前传网络具有更大的非线性功能,因而有更强大 的应用潜力.递归网络也可以是决定性的,也可以是随机的.随机情形的网络,是按一个随 机的规则发展的,因此,全体神经元所处的状态的时间发展,就是一个 Markov链 1. Hopfield网络 Hopfield把网络与吸引子联系起来,由此给出了一种联想记忆的模型,并给出了一种 学习方法,通过学习训练确定网络连接参数,以能够使它达到所希望有的功能. Hopfield 网络是一种典型的递归网络.它源自人脑机制的研究. Hopfield提出这种网络是希望用数 学模型仿真人脑的功能.这种网络具有反馈的连接,相当于一个离散的动力系统.它不像前 传网络那样简单地对输入与输出的关系感兴趣.决定性的 Hopfield网络,一般地没有输入 与输出,在给定初值后,就可以通过网络的运转不断地自动更新,最后落到网络系统的某些 不变集上.在这意义下可以说并没有真正的输出,但是可以通过某些手段观测到它的自动更 新的进程 (1)决定性的 Hopfield网络 神经网络是一个由N个神经元彼此由相互作用而联结在一起的一个系统,整个系统在 协同工作下产生一个总体效应. Hopfield网络的总体效应,是提供记忆的数学模型,即联 想记忆模型.设每个神经元可以取-1与+1两个状态之一,其中-1代表该神经元处于抑制 态,+1代表该神经元处于激发态。把N个神经元处的整体所处的状态的全体记为X,即 X={(x1…,xx):x1=-1或+1,(i≤N)} 设神经网络对神经元x的总相互作用是(它是(15.13)的特殊情形) y=g∑x4-0,), (15.13) 其中与神经元i相连接的神经元k有一个连接系数wk,并且假定满足w= 427
427 q( x) 则是神经元 x 的激发门限值. 在神经元只取0或1(抑制或激发)两种状态时, 乘积 w( x, y)h( y) 是神经元 y 对神经元 x 的作用力, g 为门限函数, 它是对自变量的总相互作用 超过门限的部分起的作用, 其中的和号取遍一切对于神经元 x 有相互作用的神经元 y 的全 体. 3.3 随机的人工神经网络 3.3.1 一般概念 在随机的神经网络中, 下一层神经元 x 被激发的概率取为 å × × = x h x h x e e p x ( ) ( ) ( ) b b , b > 0 . (15. 14) 显见在h(x) 越大处, p( x) 也越大, 即该处的神经元 x 被激发的概率越大. 随机的神经网 络与相互作用粒子的随机系统非常类似, 它的运转是一个 Markov 链. 随机因素的加入, 在下面的递归网络中能起控制计算进行方向的稳定作用. 3.3.2 递归(或反馈)(recurrent)网络与 Boltzman 机 递归( recurrent )网络也称为反馈网络, 它实际上是以全体神经元所处的状态(称为一 个组态)为变元的一个动力系统, 因而也具有反馈的连接. 在数学上反馈提供了迭代的功能, 所以, 同样作为离散动力系统, 递归网络比前传网络具有更大的非线性功能, 因而有更强大 的应用潜力. 递归网络也可以是决定性的, 也可以是随机的. 随机情形的网络, 是按一个随 机的规则发展的, 因此, 全体神经元所处的状态的时间发展, 就是一个 Markov 链. 1.Hopfield 网络 Hopfield 把网络与吸引子联系起来, 由此给出了一种联想记忆的模型, 并给出了一种 学习方法, 通过学习训练确定网络连接参数, 以能够使它达到所希望有的功能. Hopfield 网络是一种典型的递归网络. 它源自人脑机制的研究. Hopfield 提出这种网络是希望用数 学模型仿真人脑的功能. 这种网络具有反馈的连接, 相当于一个离散的动力系统. 它不像前 传网络那样简单地对输入与输出的关系感兴趣. 决定性的 Hopfield 网络, 一般地没有输入 与输出, 在给定初值后, 就可以通过网络的运转不断地自动更新, 最后落到网络系统的某些 不变集上. 在这意义下可以说并没有真正的输出, 但是可以通过某些手段观测到它的自动更 新的进程. (1) 决定性的 Hopfield 网络 神经网络是一个由 N 个神经元彼此由相互作用而联结在一起的一个系统,整个系统在 协同工作下产生一个总体效应. Hopfield 网络的总体效应, 是提供记忆的数学模型, 即联 想记忆模型. 设每个神经元可以取 - 1与+ 1两个状态之一,其中- 1代表该神经元处于抑制 态,+ 1代表该神经元处于激发态。把 N 个神经元处的整体所处的状态的全体记为 X , 即 {( , , ) : 1 1,( )} X = x1 L xN xi = - 或 + i £ N . 设神经网络对神经元 x 的总相互作用是(它是(15. 13) 的特殊情形) sgn( ) 1 ik k i N k yi = å w x - q = , (15. 13)’ 其中与神经元i 相连接的神经元k 有一个连接系数 wik , 并且假定满足wik = wki
学习位相就是要估计这些参数,可以用酬M算法 运转相位有异步动力学与同步动力学两种不同的方式. Hopfield的异步动力学发展是每 次只容许依次地改变一个神经元,其具体步骤为: (A)先按(15.13)把x1更新为y1并用y取代(15.13)”右方的x1 (B)把x2更新为用(15.13)计算出的新的y2,并用此y2取代(15.13)右方的x2; (C)再把x3更新为用(1513计算出的新的y3,并用此y3取代(15.13)右方的x (D)如此依次地,一个一个地使网络中的所有N个神经元都更新一遍 (E)重复(A)至(D Hopfield同步动力学发展与 Hopfield异步动力学发展的不同之处是,不限于每次只改 变一个神经元同步动力学的时间发展,是通过(15.13)把网络的状态从x=(x12…,xx)转 移为y=(y1…,yx).把它改写为通常的离散的动力系统就是 x=(x1)…,x{)→x=(x x"=g(∑mx-0) (15.13) 同步动力学常常比异步动力学有更多的不变集 递归神经网络更接近于生物神经网络.特别是 Hopfield网络,它提供了一种联想记忆 模式,即把神经网络动力学发展的一个不动点,或一个不变集(统称为神经网络的吸引子), 解释为一个记忆.这种记忆模式具有与传统的地址记忆模式(如笔记本,硬盘,光盘等)完全 不同的机制.它的记忆恢复不需要利用存入记忆的目录索引,而是按内容存取,因而它是迄 今为止最接近于脑记忆功能的网络模式.当然为了增加新的记忆,就必须不断地更新整个神 经网络,使得它能容纳新的吸引子 (2)随机的 Hopfield网络 ●随机的 Hopfield异步神经网络 随机的 Hopfield异步网络,是按照类似于随机场那样给出相互作用的.神经网络的 时间发展是随机的,即按照一个 Markov链ξn作随机转移,其中整个网络的状态(组态,记为 x=(x1…,xx))之间的转移概率,例如可以取为 ,Vi,ri xx),i≤N) P(n4=y5=x 0 (其它情形) 此处y=gm∑xk-0),(=1…,N) 注意,异步 Markov发展的要义在于,转移矩阵是 Gibbs型的,即转移时在网络的N个 428
428 学习位相就是要估计这些参数, 可以用 EM 算法. 运转相位有异步动力学与同步动力学两种不同的方式.Hopfield 的异步动力学发展是每 次只容许依次地改变一个神经元, 其具体步骤为: (A) 先按(15.13)’把 1 x 更新为 1 y . 并用 1 y 取代(15.13)’右方的 1 x ; (B) 把 2 x 更新为用(15.13)’计算出的新的 2 y , 并用此 2 y 取代(15.13)’右方的 2 x ; (C) 再把 3 x 更新为用(15.13)’计算出的新的 3 y , 并用此 3 y 取代(15.13)’右方的 3 x ; (D) 如此依次地, 一个一个地使网络中的所有N 个神经元都更新一遍; (E) 重复(A)至(D). Hopfield 同步动力学发展与 Hopfield 异步动力学发展的不同之处是, 不限于每次只改 变一个神经元. 同步动力学的时间发展, 是通过(15.13)’把网络的状态从 ( , , ) 1 N x = x L x 转 移为 ( , , ) 1 N y = y L y .把它改写为通常的离散的动力系统就是 = ® D ( , , ) ( ) ( ) 1 ( ) n N n n x x L x ( , , ) ( 1) ( 1) 1 ( 1) + + + D = n N n n x x L x : sgn( ) ( ) 1 ( 1) i n ik k N k n xi = å w x - q = + . (15. 13)’’ 同步动力学常常比异步动力学有更多的不变集. 递归神经网络更接近于生物神经网络. 特别是 Hopfield 网络, 它提供了一种联想记忆 模式, 即把神经网络动力学发展的一个不动点, 或一个不变集 (统称为神经网络的吸引子), 解释为一个记忆. 这种记忆模式具有与传统的地址记忆模式(如笔记本,硬盘,光盘等)完全 不同的机制. 它的记忆恢复不需要利用存入记忆的目录索引, 而是按内容存取,因而它是迄 今为止最接近于脑记忆功能的网络模式. 当然为了增加新的记忆, 就必须不断地更新整个神 经网络, 使得它能容纳新的吸引子. (2)随机的 Hopfield 网络 l 随机的 Hopfield 异步神经网络 随机的 Hopfield 异步网络,是按照类似于随机场那样给出相互作用的.神经网络的 时间发展是随机的, 即按照一个 Markov 链 n x 作随机转移, 其中整个网络的状态(组态,记为 ( , , ) 1 N x = x L x ) 之间的转移概率,例如可以取为 ï ï î ï ï í ì = £ = = = = - + + D 0 ( ) ( ( , , , , , , ), ) 1 ( | ) 1 1 1 1 , 其它情形 y x x y x x i N N p P y x i i i N n n x y L L x x , 此处 sgn( ) 1 ik k i N k yi = å w x -q = , (i = 1,L, N) . 注意, 异步 Markov 发展的要义在于, 转移矩阵是 Gibbs 型的, 即转移时在网络的N 个