89
人人人人人人人人人人人人ANN ANN 人人人 人人人

人工神经网络( ANN )方法简介

  • Upload
    gustav

  • View
    424

  • Download
    5

Embed Size (px)

DESCRIPTION

人工神经网络( ANN )方法简介. § 6.1 从生物神经元到人工神经网络. 1 、 生物神经系统和大脑的复杂性. 生物系统是世界上 最为复杂的系统 。. 生物神经系统活动和脑的功能,其 复杂性是难以想象 的。. 大脑与神经细胞、神经细胞与神经细胞构成了庞大天文数字量级的 高度复杂的网络系统 。也正是有了这样的 复杂巨系统 ,大脑才能担负起人类认识世界和改造世界的任务。 “世界上最大的未开发疆域,是我们两耳之间的空间。”(美国汉诺威保险公司总裁比尔 · 奥伯莱恩). 大脑的有关数据. ① 人大脑平均只有 3 磅左右。只占身体重量比例的 1/30 ; - PowerPoint PPT Presentation

Citation preview

Page 1: 人工神经网络( ANN )方法简介

人工神经网络人工神经网络(( ANNANN )方法简)方法简介介

Page 2: 人工神经网络( ANN )方法简介

§§6.16.1

从生物神经元到人工神经网络从生物神经元到人工神经网络

Page 3: 人工神经网络( ANN )方法简介

大脑与神经细胞、神经细胞与神经细胞构成了庞大天文数字量级的高度复杂的网络系统。也正是有了这样的复杂巨系统,大脑才能担负起人类认识世界和改造世界的任务。 “世界上最大的未开发疆域,是我们两耳之间的空间。”(美国汉诺威保险公司总裁比尔 · 奥伯莱恩)

11 、 生物神经系统和大脑的复杂性、 生物神经系统和大脑的复杂性 生物系统是世界上最为复杂的系统。 生物神经系统活动和脑的功能,其复杂性是难以想象的。

Page 4: 人工神经网络( ANN )方法简介

① 人大脑平均只有 3 磅左右。只占身体重量比例的 1/30 ;② 使眼睛可以辨别 1000 万种细微的颜色;③ 使肌肉 ( 如果全部向同一个方向运动 ) 产生 25 吨的拉力;④ 是由 100 亿个脑细胞和 10兆个神经交汇丛组成。整个大脑的神经网络足足有 10 英里长。

大脑的有关数据大脑的有关数据

Page 5: 人工神经网络( ANN )方法简介

“你的大脑就像一个沉睡的巨人。” (英国的心理学家、教育家托尼 · 布赞) “如果我们迫使头脑开足 1/4 的马力,我们就会毫不费力地学会 40 种语言,把整个百科全书从头到尾背下来,还可以完成十几个大学的博士学位。”(前苏联学者伊凡)

——一个正常的大脑记忆容量有大约 6 亿本书的知识总量,相当于一部大型电脑储存量的 120 万倍 ——大脑使你从出生开始每一秒钟可存储 1000 条信息,直到老死为止 ——全世界的电话线路的运作只相当于大约一粒绿豆体积的脑细胞 ——即使世界上记忆力最好的人,其大脑的使用也没有达到其功能的 1%

人类的知识与智慧,仍是“低度开发”!人的大脑是个无尽宝藏,可惜的是每个人终其一生,都忽略了如何有效地发挥它的“潜能”——潜意识中激发出来的能量。

大脑复杂性的无限性大脑复杂性的无限性

Page 6: 人工神经网络( ANN )方法简介

22 、 人工智能及其三个学派、 人工智能及其三个学派人类的梦想人类的梦想 重新构造人脑,并让其代替人类完成相应的工作。(无数科幻故事) 探索智能的奥秘智能(智能( intelligenceintelligence )) “观察、学习、理解和认识的能力” (牛津大辞典 )

“理解和各种适应性行为的能力” (韦氏大辞典 )

智能是个体有目的的行为、合理的思维、以及有效的适应环境的综合能力;也可以说是个体认识客观事物和运用知识解决问题的能力。

Page 7: 人工神经网络( ANN )方法简介

人类智能的具体含义人类智能的具体含义 感知感知与认识客观事物、客观世界和自我的能力; 通过学习学习获得经验、积累知识的能力; 理解知识、运用运用知识和经验分析、解决问题的能力; 联想、推理推理、判断、决策的能力; 运用语言语言进行抽象、概括的能力;

以上 5点是人类智能的基本能力。 发现、发明、创造、创新的能力; 实时、迅速、合理地应付复杂环境的能力; 预测、洞察事物发展、变化的能力。

以上 3点是前 5 种能力新的综合表现形式。

Page 8: 人工神经网络( ANN )方法简介

人工智能人工智能 “人工智能( Artificial Intelligence )”

1956年初次引入 人工智能研究怎样用计算机模仿人脑从事推理、设计、思考、学习等思维活动,以解决和处理较复杂的问题。 目的之一:增加人类探索世界、推动社会前进的能力 通过制造和使用工具来加强和延伸人类的生存、发展。 目的之二:进一步认识自己。 用物化的智能来考察和研究人脑智能的物质过程和规律。

Page 9: 人工神经网络( ANN )方法简介

人工智能的人工智能的 33 个主要流派个主要流派1991年,人工智能学家 D. Krish 在《 Int. J. Artificial Intelligence》上提出人工智能的 5 个基本问题:• 知识和概念化是否人工智能的核心?• 认知能力能否与载体分开来研究?• 认知的轨迹是否可以用类自然语言来描述?• 学习能力能否与认知分开来研究?• 所有的认识是否有一种统一的结构?对以上 5 个基本问题的不同回答已经形成 3 个主要的学术流派:符号主义( Symbolicisim )联结主义( connetionism )行为主义( actionism )

Page 10: 人工神经网络( ANN )方法简介

人工智能的符号主义流派人工智能的符号主义流派 即传统的人工智能,认为人工智能源于数理逻辑,主张以知识为基础,通过推理来进行问题求解,在研究方法上采用计算机模拟人类认知系统功能的功能模拟方法 Simon 、 Minsky 和 Newell等认为,人和计算机都是一个物理符号系统,因此可用计算机的符号演算来模拟人的认知过程;作为智能基础的知识是可用符号表示的一种信息形式,因此人工智能的核心问题是知识表示、知识推理和知识运用的信息处理过程。符号主义对符号系统的描述

Page 11: 人工神经网络( ANN )方法简介

人工智能的联结主义流派人工智能的联结主义流派 又称仿生学派,认为人工智能源于仿生学,人思维的基本单元是神经元,而非符号处理过程,主张用大脑工作模式取代符号操作的电脑工作模式; 智能的本质是联结机制。神经网络是一个由大量简单的处理单元组成的高度复杂的大规模非线性自适应系统; “结构-功能”的研究方法:认为功能、结构和智能行为是密切相关的;

1943年, McCulloch 和Pitts 从神经元入手研究神经网络模型—— MP模型。此为人工神经网络研究之始。

Page 12: 人工神经网络( ANN )方法简介

人工神经网络( Artificial Neural Network , ANN )从四个方面刻画人脑的基本特征:( 1 )、物理结构物理结构模仿生物神经元的功能,构造人工神经元的联结网络

Cell body Axon

Nucleus

Synapse突触

Dendrite树突

Page 13: 人工神经网络( ANN )方法简介

( 2 )、计算模拟计算模拟人脑神经元既有局部的计算和存储功能,又通过联结构成统一的系统,人脑的计算建立在该系统的大规模并行模拟处理基础之上。ANN 以具有局部计算能力的神经元为基础,同样实现信息的大规模并行处理。( 3 )、存储与操作存储与操作大脑对信息的记忆是通过改变突触的联结强度来实现并分布存储。ANN模拟信息的大规模分布存储。( 4 )、训练训练后天的训练使得人脑具有很强的自组织和自适应性。ANN根据人工神经元网络的结构特性,使用不同的训练过程,自动从“实践”(即训练样本)中获取相关知识,并存储在系统中。

Page 14: 人工神经网络( ANN )方法简介

人工智能的行为主义流派人工智能的行为主义流派 “进化主义学派”、“控制论学派”; 认为人工智能来源于控制论,智能取决于感知和行动。提出智能行为的“感知-动作”模式,采用行为模拟方法; 对符号主义、联结主义采取批判的态度;(智能不需要知识、表示和推理,只需要与环境交互作用) 80年代诞生智能控制和智能机器人系统学科( R. A. Brook

s ),为机器人研究开创了新的方法。

Page 15: 人工神经网络( ANN )方法简介

ANNANN 是基于联结主义流派的人工智能是基于联结主义流派的人工智能 联结主义学派与高速发展的计算机技术相结合,发展为计算智能学派计算智能学派,是人工智能在 1980年代后的深化和发展 计算智能:借助现代计算机技术模拟人的智能控制、生命演化过程和人的智能行为,从而进行信息获取、处理、应用的理论和方法 计算智能是以数学模型、计算模型为基础,以分布、并行、仿生计算为特征,包含数据、算法和实现的信息系统 计算智能强调模型的建立和构成,强调系统的自组织、自学习和自适应 计算智能的 3 个主要分支: 人工神经网络人工神经网络(模拟智能产生与作用赖以存在的结构) 遗传算法遗传算法(模拟生命生成过程与智能进化过程) 模糊逻辑模糊逻辑(模拟智能的表现行为)

Page 16: 人工神经网络( ANN )方法简介

33 、 人工神经网络概述、 人工神经网络概述生物神经元系统生物神经元系统

人工神经网络是受生物神经网络的启发构造而成。 James (《心理学》, 1890年) :大脑皮层每一点的活力产生于其它点势能释放的综合效能,即其它点的兴奋次数、强度和所接受的能量。大脑含~ 1011 个神经元,它们通过~ 1015 个联结构成一个网络。每个神经元具有独立的接受、处理和传递电化学信号的能力,这种传递由神经通道来完成。

Page 17: 人工神经网络( ANN )方法简介

神经元的结构神经元的结构树突从细胞体伸向其它神经元,神经元之间接受信号的联结点为突触。通过突触输入的信号起着兴奋 /抑制作用。当细胞体接受的累加兴奋作用超过某阈值时,细胞进入兴奋状态,产生冲动,并由轴突输出。

Cell body Axon

Nucleus

Synapse突触

Dendrite树突

Page 18: 人工神经网络( ANN )方法简介

神经元系统的基本特征神经元系统的基本特征 神经元及其联结 神经元之间的联结强度决定信号传递的强弱 神经元之间的联结强度可以随训练而改变 信号分为兴奋型和抑制型 一个神经元接受的信号的累计效果决定该神经元的状态 每个神经元有一个阈值

Page 19: 人工神经网络( ANN )方法简介

ANNANN 理论及其发展阶段理论及其发展阶段

w1

Z=wixiw2

wn

x1

x2

xn

y = f(wixi- )

轴突 突触树突 内核

轴突

第一阶段1943年,心理学家 McCulloch 和数学家 Pitts对神经元进行形式化研究,提出了神经元的数学模型—— MP模型。1944年, D. O. Hebb提出改变神经元联结强度的 Hebb 学习规则,至今仍然是人工神经网络学习算法的一个基本原则。1957年, Rosenblatt首次引进感知器 (Perceptron)概念来模拟生物的感知、学习能力。1962年, Widros提出用于自适应系统的连续取值的线性网络。

Page 20: 人工神经网络( ANN )方法简介

第二阶段1969年, M. L. Minsky 和 S. Papert 从理论上证明了当时单隐含层感知器网络模型无法解决的许多简单问题,包括最基本的“异或 (XOR)”问题。使ANN 理论的发展进入一个低谷;1974年, Webos提出 BP 学习理论;S. Grossberg提出自适应共振理论( ART )。第三阶段突破性进展: 1982年, CalTech 的物理学家 J. Hopfield提出 Hopfield 神经网络系统 (HNNS)模型,提出能量函数的概念,用非线性动力学方法来研究ANN ,开拓了 ANN 用于联想记忆和优化计算的新途径;1988年, McClelland 和 Rumelhart利用多层反馈学习算法解决了“异或( XOR )”问题。

Page 21: 人工神经网络( ANN )方法简介

人工神经网络的几种形式人工神经网络的几种形式无反馈前向网无反馈前向网

多输入、多输出的多层无环图,同一层间无联结。神经元分层排列,组成输入层、中间层(隐层)、输出层

Page 22: 人工神经网络( ANN )方法简介

有反馈前向网有反馈前向网从输出层到输入层存在反馈的前向网。

Page 23: 人工神经网络( ANN )方法简介

层内有联结的前向网层内有联结的前向网在无反馈前向网中同一层内存在神经元间的联结回路。

Page 24: 人工神经网络( ANN )方法简介

有向网有向网任意两个神经元间都可能存在有向联结。网络处在动态中,直至达到某一平衡态、周期态或者混沌状态。

Page 25: 人工神经网络( ANN )方法简介

§§6.26.2

感知器(感知器( PerceptronPerceptron ))———— 人工神经网络的基本构件人工神经网络的基本构件

Page 26: 人工神经网络( ANN )方法简介

感知器( Perceptron ):最早被设计并实现的人工神经网络。W. McCulloch 和 W. Pitts 总结生物神经元的基本生理特征,提出一种简单的数学模型与构造方法,建立了阈值加权和模型,简称M-P模型 (“A Logical Calculus Immanent in Nervous Activity”, Bulletin of Mathematical Biophysics, 1943(5): 115~133 )。人工神经元模型是 M-P模型的基础。

11 、 感知器的数学模型、 感知器的数学模型———— MPMP 模型模型

Warren McCulloch( 1898 - 1969 ) Walter Pitts

(1923 - 1969)

Page 27: 人工神经网络( ANN )方法简介

生物神经元的基本特征生物神经元的基本特征 神经元及其联结 神经元之间的联结强度决定信号传递的强弱 神经元之间的联结强度可以随训练而改变 信号分为兴奋型和抑制型 一个神经元接受的信号的累计效果决定该神经元的状态 每个神经元有一个阈值

突触

树突轴突轴突 突触树突 内核

轴突

Page 28: 人工神经网络( ANN )方法简介

模拟神经元的首要目标:输入信号的加权和 (生物神经元的一阶特征)人工神经元可以接受一组来自系统中其它神经元的输入信号,每个输入对应一个权重,所有输入的加权和决定该神经元的激活状态。每个权就相当于突触的联结强度。

w1

wi xiw2

wn

x1

x2

xn

XWxwXu ii )(

数学模型数学模型—— 多输入、单输出的加权和结构

Page 29: 人工神经网络( ANN )方法简介

设 X = (x1, x2, …, xn)表示 n 个输入, W = (w1, w2, …, wn)表示它们对应的联结权重。故神经元所获得的输入信号累计效果为:

1

,n

i ii

u X w x W X

称 u(X) 为整合函数。w1

wi xiw2

wn

x1

x2

xn

Page 30: 人工神经网络( ANN )方法简介

感知器的激活函数感知器的激活函数神经元获得网络输入信号后,信号累计效果整合函数 u(X) 大于某阈值 时,神经元处于激发状态;反之,神经元处于抑制状态。构造激活函数,用于表示这一转换过程。要求是 [-1, 1] 之间的单调递增函数。激活函数通常为 3 种类型,由此决定了神经元的输出特征。

Page 31: 人工神经网络( ANN )方法简介

激活函数为符号函数:

0,10,1

)sgn()(uu

uu

1

-1

u

Page 32: 人工神经网络( ANN )方法简介

激活函数为分段线性函数:

21,1

21

21,

21,1

)(

u

uu

u

u

1

-1

u

Page 33: 人工神经网络( ANN )方法简介

激活函数为 Sigmoid函数,其特点是单调递增、光滑且具有渐近值,具有解析上的优点和神经生理学特征。1

12)(

ue

u

u

u

eeu

11)(1

-1

u

Page 34: 人工神经网络( ANN )方法简介

M-PM-P 模型模型将人工神经元的基本模型与激活函数结合,即 McCulloch –Pitts模型。

w1

u=wixiw2

wn

x1

x2

xn

y= (u(X)- )

1

n

i ii

y u X w x

Page 35: 人工神经网络( ANN )方法简介

22 、 感知器的学习算法、 感知器的学习算法什么是“学习”?什么是“学习”?

“The conceptual scheme for ‘learning’ in this context is a machine with an input channel for figures, a pair of YES and NO output indicators, and a reinforcement or ‘reward’ button that the machine’s operator can use to indicate his approval or disapproval of the machine’s behavior.”

——M. L. Minsky and S. A. Papert, “Perceptron”(1988)

Page 36: 人工神经网络( ANN )方法简介

ANN 学习定理—— ANN 可以学会它表达的任何东西。( Rosenblatt , 1962年)ANN 的表达能力有限,其学习能力也受到限制。ANN 的学习过程就是训练过程,在将训练样本集输入到网络的过程中,按照一定的方式来调整神经元之间的联结权重值,使得网络能够将训练样本集的内涵以联结权重矩阵的方式存储起来,从而使得网络在接受输入时,能够给出适当的输出。有监督的学习( Supervised learning )无监督的学习( Unsupervised learning )

Page 37: 人工神经网络( ANN )方法简介

基本思想基本思想感知器的学习是有监督的学习。学习的问题归结为求权重系数W = (w1, w2, …, wn) 和阈值的问题。基本思想:逐步将训练集中的样本输入到网络中,根据当前输出结果和理想输出结果之间的差别来调整网络中的权重值。

w1

u=wixiw2

wn

x1

x2

xn

y= (u(X)- )

Page 38: 人工神经网络( ANN )方法简介

设 X = (x1, x2, …, xn)表示 n 个输入, W = (w1, w2, …, wn)表示它们对应的联结权重。假设取符号函数为激活函数,

此为经典的 M-P模型:

0,10,1

)sgn()(uu

uu

w1

u=wixiw2

wn

x1

x2

xn

+1 or -1

1, 0sgn( ( )) sgn(( , ))

1, 0u

y u X W Xu

Page 39: 人工神经网络( ANN )方法简介

训练集的样本(输入向量、输出值)为: txxxX ~,...,~,~~ 21

tyyyY ~,...,~,~~ 21

t 为样本数目。其中, tkxxxx k

nkkk ,...,2,1~,...,~,~~21

tky k ,...,2,11~

Page 40: 人工神经网络( ANN )方法简介

STEP 2STEP 2 重复下列过程,直至训练完成: STEP 2.1STEP 2.1 对训练集中的每一个样本 (xk, yk) ,重复如下过程: STEP 2.1.1STEP 2.1.1 输入 xk

STEP 2.1.2STEP 2.1.2 计算 STEP 2.1.3STEP 2.1.3 若输出不正确,则

STEP 1STEP 1 初始化权重向量 W = (w1, w2, …, wn) ,不妨取 w1= w2=…,= wn=1

~ ~

~

tkxwyn

i

kii ,...,2,1,~sgn

1

kiii

kiii

xwwyif

xwwyif~,1

~,1

Page 41: 人工神经网络( ANN )方法简介

33 、 关于感知器的基本理论问题、 关于感知器的基本理论问题““线性不可分”问题的困境及其解决线性不可分”问题的困境及其解决

Marvin MinskyMIT Media Lab and MIT AI LabToshiba Professor of Media Arts and SciencesProfessor of E.E. and C.S., [email protected]

1969年, Minsky 和 Papert在“ Perceptron” 一书中从理论上证明单层感知器无法解决许多简单的问题,包括“异或 (XOR)”问题。使得ANN 理论的发展在 1970 ~80年代处于低潮。导致政府和企业资助减少,研究人员撤退……

Page 42: 人工神经网络( ANN )方法简介

““异或异或 (Exclusive-OR)”(Exclusive-OR)” 运算运算

others

yxifyxf

,1,0

),(

f (x, y)y

0 1

x0 0 11 1 0

是一个双输入、单输出问题。对应的单层感知器为:x

y

a

bz

ax+by=

x

y

无论如何选择参数 a , b ,,都无法满足划分。这种由单层感知器不能表达的问题称为线性不可分问题。

Page 43: 人工神经网络( ANN )方法简介

考虑 n 个自变量的二值函数,当 n4时,线性不可分的函数个数远远超过线性可分函数的个数。自变量个数函数的个数线性可分函数的个数1 4 42 16 143 256 1044 65,536 1,8825 4.3109 94,5726 1.81019 5,028,134

( R. O. Windner, 1960 )表明单层感知器不能表达的问题的数量远远超过它可以表达的问题的数量。

Page 44: 人工神经网络( ANN )方法简介

解决途径解决途径————多层网络多层网络一个单层网络可以将空间划分成两部分,用多个单层网络组合在一起,并用其中的一个去综合其它单层网络的结果,构成一个二层网络,即可用来在空间划分出一个封闭或开放的凸域(子空间)。

x1

z0

xn

z1

zn

Page 45: 人工神经网络( ANN )方法简介

感知器学习算法的计算问题感知器学习算法的计算问题算法的收敛性算法的收敛性对于线性可分问题,感知器的学习算法是收敛的。算法的复杂度算法的复杂度(略)算法的容量算法的容量(略)

Page 46: 人工神经网络( ANN )方法简介

非线性感知器非线性感知器取权重函数为非线性函数的单级传感器系统。其学习过程涉及到求解非线性方程组的方法。

高阶感知器高阶感知器主要讨论可线性化的非线性传感器系统。

Page 47: 人工神经网络( ANN )方法简介

§§6.36.3

单层前向网、多层前向网单层前向网、多层前向网与与 BPBP 学习算法简介学习算法简介

Page 48: 人工神经网络( ANN )方法简介

11 、 单层前向网络、 单层前向网络单层前向网模型单层前向网模型

设有 c 1 个感知器,其中第 k 个感知器的输出为yk ;对于输入信号 x = (x1, x2, …, xn) ,每个感知器有 d 个输入uj(x) , j=1, 2, …, d 。

1

k

c

x1

xn

x2

u1(x)

u2(x)

ud(x)

x3

wk1

wk2

wk3

yk

输入层 输出层

Page 49: 人工神经网络( ANN )方法简介

一个单层前向网可表示为: ckxuwxuwxy kkk

d

jjkjk ,...,2,1)(,

1

:激活函数;wk=(wk1, wk2, …, wkd) :第 k 个感知器的权重系数;k:第 k 个感知器的阈值;u=(u1, u2, …, ud):基函数xRn , u(x)Rd

若记 wk0 = k , u0= - 1 ,则上式变换为: ckxuwxy

d

jjkjk ,...,2,1

0

Page 50: 人工神经网络( ANN )方法简介

记 yk(wk; x) 为第 k 个感知器当权重系数为 wkRd ,输入为 x Rn时的输出。 设训练集为 A = { (x, t ) |=1, 2, …, N } ,其中 表示训练集数据编号, xRn 为输入, tRc 为输出, tk

为第 k 个感知器的期望输出。 基于训练集 A 的误差函数定义为:

N c

kkkk txwywE

1 1

2;

21)(

单层前向网的学习目标函数单层前向网的学习目标函数

Page 51: 人工神经网络( ANN )方法简介

学习的目标就是求 wk , k=1,2,…,c ,使得误差函数E(w)取最小值:

)(min wEA

这就是目标函数目标函数。单层前向网的学习原理本质上仍是感知器的学习原理。

Page 52: 人工神经网络( ANN )方法简介

线性单层前向网的解线性单层前向网的解关于基函数 u(x) ,对学习集的每一个数据,记:

d

d

uuu

xuxuxuu

,...,,

)(),...,(),(

21

21

其中 =1, 2, …, N 。由此,定义学习集 A 的扩展集 B: NtuB ,...,2,1),(

Page 53: 人工神经网络( ANN )方法简介

不妨假设激活函数为恒等函数,此时网络为线性单层前向网。由此写出误差函数:

N c

kkk

d

jjkj

N c

kk

d

jjkj

tuw

tuwwE

1 1

2

1

1 1

2

0

21

21)(

优化的目标函数为:)(min wE

B

Page 54: 人工神经网络( ANN )方法简介

根据最小二乘法求解目标函数。由多元函数取极值的必要条件,有:

djckw

wE

kj

,...,1,0;,...,10)(

j

N d

ikiki

kj

utuww

wE

1 0

)(

01 0

j

N d

ikiki utuw

N

jk

d

i

N

jiki utuuw10 1

Page 55: 人工神经网络( ANN )方法简介

写成矩阵形式 UTUUW TT

cdcc

d

d

www

wwwwww

W

.........

...

10

22120

11110

Nd

NN

d

d

uuu

uuuuuu

U

.........

...

10

221

20

111

10

Nc

NN

c

c

ttt

tttttt

T

.........

...

21

222

21

112

11

WW: : cc((dd1)1)UU: : NN((dd1)1)T: T: NNcc

Page 56: 人工神经网络( ANN )方法简介

解的形式为: 1

UUUTW TT

解存在的条件?(略)

Page 57: 人工神经网络( ANN )方法简介

22 、 多层前向网络、、 多层前向网络、 BPBP 学习算法学习算法双层前向网双层前向网

多层前向网的结构特点:1 、允许网络具有数层相连的处理单元;2 、联结是从前一层的每一个节点到下一层所有节点,不存在其它联结;3 、同一层内的节点之间不存在联结;4 、不含任何反馈,故输出可以用输入和权重来表示。L层神经网络:具有 L层可调节权重参数

Page 58: 人工神经网络( ANN )方法简介

1

2

M

2

1x1

xN N

x2

y11

2

c

y2

ycW(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

双层前向网模型:具有两层可调节参数且同层无联结的不含反馈的人工神经网络。X 层——输入层Y 层——输出层Z 层——隐层两层可调节权重参数:W(1) 、 W(2)

Page 59: 人工神经网络( ANN )方法简介

设输入层的输入为 (x1, x2, …, xn)Rn 。首先考察隐层,设隐层神经元的激活函数为。第 j 个隐层神经元的整合函数为 aj 、输出值为 zj:

Mjaz

xwxwa

jj

N

iiji

N

ijijij

,...,2,10

)1(

1

)1()1(

)1(jiw 第 1层(隐层)权重矩阵中第 i个输入联结到第

j 个隐神经元的权重)1(

j 第 j 个隐神经元的阈值

1

2

M

2

1x1

xN N

x2

y11

2

c

y2

ycW(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

Page 60: 人工神经网络( ANN )方法简介

同样考察输出层,设输出层神经元的激活函数为。第 k 个输出神经元以 z=(z1, z2, …, zM)RM 为输入,其整合函数为bk 、输出值为 yk:

ckby

zwzwb

kk

M

jjkj

M

jkjkjk

,...,2,10

)2(

1

)2()2(

)2(kjw

第 2层(输出层)权重矩阵中第 j 个隐神经元联结到第 k个输出神经元的权重第 k 个输出神经元的阈值)2(

k

1

2

M

2

1x1

xN N

x2

y11

2

c

y2

ycW(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

Page 61: 人工神经网络( ANN )方法简介

联合得到双层前向网的输出表达式:

1

2

M

2

1x1

xN N

x2

y11

2

c

y2

ycW(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

ckxww

xwwy

M

j

N

iijikj

M

jk

N

ijijikjk

,...,2,1,0 0

)1()2(

1

)2(

1

)1()1()2(

记为: xWWTy ;,,, )2()1()2()1(

Page 62: 人工神经网络( ANN )方法简介

学习的目标函数学习的目标函数为简化计,考虑两类的分类问题。设 A 、 B 是分类空间 Rd中两个不相交的集合。考虑离散型双层前向网 T(W(1),W(2), (1), (2); x) ,取其激活函数 、为符号函数 sgn (u) 。

BxAx

xWWT,1,1

);,,,( )2()1()2()1(

该双层前向网的学习目标是,对 (A, B) 求 (W(1),W(2), (1), (2)) 使得:

求解上述方程。

Page 63: 人工神经网络( ANN )方法简介

误差的后向传播误差的后向传播多层前向网的学习原理:基于适当定义的误差函数,在网络中调整权重矩阵和阈值等参数,使得误差函数极小化。与单层前向网和感知器相比较,多层前向网由于隐层的存在,无法判别隐层神经元对输入误差的直接影响(无法知道隐层神经元的理想输出值)。因此,对参数权重矩阵和阈值的调整遇到困难。

1

2

M

2

1x1

N

y11

2

c

y2

yc

W(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

x2

xN

Page 64: 人工神经网络( ANN )方法简介

解决方案——计算两个传播方向:“前向传播 (Forward propagation)”:输入 {xi}进入网络,按照信息在网络中前进移动的方向,逐次计算 aj , zj 直至输出{yk} 的过程;(输入向输出方向的前向传播)“后向传播 (Back propagation)”:利用输出层的误差来估计输出层的直接前导层的误差,再依次估计更前一层的误差,获得所有各层的误差估计。(输出误差向输入方向的后向传播)( Rumelhart, Hinton & Williams, 1986 )

1

2

M

2

1x1

N

y11

2

c

y2

yc

W(1) W(2)

输入层(X)

隐层(Z)

输出层(Y)

x2

xN

Page 65: 人工神经网络( ANN )方法简介

设学习集有 T 个样本,记为 {x, t} , =1, 2, …, T ,其中: c

c

NN

Rtttt

Rxxxx

,...,,

,...,,

21

21 输入理想输出

cc Ryyyy ,...,, 21

计算实际输出,记为:实际输出

Page 66: 人工神经网络( ANN )方法简介

显然有:2,1

1)()(

lwE

wE T

lij

lij

因此只需讨论某一个样本点的误差传播,以下略去上标 。

故误差函数为:

T c

kkk

T

c

T

ty

yyyEEE

1 1

2

121

1

21

,...,,

Page 67: 人工神经网络( ANN )方法简介

Mjaz

xwxwa

jj

N

iiji

N

ijijij

,...,2,10

)1(

1

)1()1(

ckby

zwzwb

kk

M

jjkj

M

jkjkjk

,...,2,10

)2(

1

)2()2(

已知下列记号:

又定义第 k 个输出神经元和第 j 个隐层神经元的误差率误差率为:

MjaE

ckbE

jj

kk

,...,2,1,

,...,2,1,

)1(

)2(

输出层误差率隐层误差率

Page 68: 人工神经网络( ANN )方法简介

由微分链式法则,计算可得:

c

kkkjj

j

jc

k j

k

k

k

kjj

wa

az

zb

by

yE

aE

1

)2()2(

1

)1(

输出层误差率

隐层误差率

k

kk

k

kkk y

Ebby

yE

bE

)2(

Page 69: 人工神经网络( ANN )方法简介

因此,得到:

ijji

j

jji

jkkj

k

kkj

xwa

aE

wE

zwb

bE

wE

)1()1()1(

)2()2()2(

)2( k

)1( j

)1(

)2(

ji

kj

wE

wE

)2(

)1(

ij

ij

wE

wE

Page 70: 人工神经网络( ANN )方法简介

梯度法求解梯度法求解 wwijij((ll))

取步长因子为固定步长,得到学习规则:

T

ijji

T

jkkj

xw

zw

1

)1()1(

1

)2()2(

其中 k(2) 、 k

(1) 均与有关, k=1,2,…,c ; j=0, 1,…,M ; i=0, 1, …, N 。

Page 71: 人工神经网络( ANN )方法简介

补充:梯度法求解优化问题补充:梯度法求解优化问题已知 D Rn 是一个凸集。求解无约束优化问题

)(min xfDx

就是寻求 x* D 使得)()(min

xfxf

Dx

若 f (x) 为连续可微凸函数,问题归结为求解nRxf 00)(

可运用 Newton迭代法数值求解。(但 f (x) 的凸性难以保证,求解也非常困难……)

Page 72: 人工神经网络( ANN )方法简介

构造逐次使目标函数值下降的搜索算法: ,...1,01 kxfxx k

kkk

满足:0k kk xfxf 1

k>0:步长因子

Page 73: 人工神经网络( ANN )方法简介

BPBP 学习算法的实现学习算法的实现设学习集有 T 个样本,记为 {x, t} , =1, 2, …, T ,其中:

c

c

NN

Rtttt

Rxxxx

,...,,

,...,,

21

21 输入理想输出

又设 k=1,2,…,c ; j=0, 1,…,M ; i=0, 1, …, N 。对于给定的 =1, 2, …, T ,指标仍然不标出。

Page 74: 人工神经网络( ANN )方法简介

STEP 1STEP 1 初始化权重矩阵和阈值 wji(1)(0) 、 wkj

(2)(0) (已包含阈值),选择学习效率。

Page 75: 人工神经网络( ANN )方法简介

STEP 2STEP 2 设第 t次迭代值 wji(1)(t) 、 wkj

(2)(t)已知, ( 1 )前向过程:对 =1, 2, …, T ,依次计算:

( 2 )后向过程:利用公式

对 =1, 2, …, N ,依次计算

kkjj ybza ,,,

)1()2( , jk

k

kk yEb

)2(

c

kkkjjj wa

1

)2()2()1(

Page 76: 人工神经网络( ANN )方法简介

STEP 2STEP 2 设第 t次迭代值 wji(1)(t) 、 wkj

(2)(t)已知,...

( 3 )迭代过程:计算第 t +1次权重矩阵

T

jjjiji

T

jkkjkj

xttwtw

zttwtw

1

)1()1()1(

1

)2()2()2(

1

1

Page 77: 人工神经网络( ANN )方法简介

STEP 3STEP 3 由此得到序列

满足

直至满足停机准则(满足某种优化准则,或者迭代次数)

)(),(),(),( )2()1()2()1( twtwtt kjjikj

c

kkkjj

jj

kk

kk

waaE

yEb

bE

1

)2()2()1(

)2(

T

jjjiji

T

jkkjkj

xttwtw

zttwtw

1

)1()1()1(

1

)2()2()2(

1

1

Page 78: 人工神经网络( ANN )方法简介

BPBP 学习算法的例子学习算法的例子考虑某双层前向网,设激活函数为:

ueuu

1

1

误差函数为:

NT c

kkk EtyE

11 1

2

21

Page 79: 人工神经网络( ANN )方法简介

注意到: 2,1)(1)()( luuu

kk

kkkk

k

ty

tyyy

E

2)(

21

Page 80: 人工神经网络( ANN )方法简介

于是有

c

kkkjjjj

kkkkk

waa

tybb

1

)2()2()1(

)2(

)](1)[(

))]((1)[(

其中:

jj

N

iijij

az

xwa

0

)1(

kk

M

jjkjk

by

zwb

0

)2(

Page 81: 人工神经网络( ANN )方法简介

利用:

T

jjjiji

T

jkkjkj

xttwtw

zttwtw

1

)1()1()1(

1

)2()2()2(

1

1

得到迭代公式。

Page 82: 人工神经网络( ANN )方法简介

§§6.46.4

ANNANN 方法在计算生物学方法在计算生物学的应用的应用

Page 83: 人工神经网络( ANN )方法简介

在生物序列分析中的应用在生物序列分析中的应用生物调控信号的研究生物调控信号的研究(感知器算法具有优势)例子:原核基因 RBS (核糖体结合位点)—— E. coli翻译起始位点的序列特征的分析参考文献:G. D. Stormo, T. D. Schneider, L. M. Gold, and A. Ehrenfeucht. Use of the ‘perceptron’ algorithm to distinguish translational initiation sites in E. coli. Nucleic Acid Research. (1982) 10:2997-3011

G. D. Stormo, T. D. Schneider, and L. M. Gold. Characterization of translational initiation sites in E. coli. Nucleic Acid Research (1982) 10:2971-2996

Page 84: 人工神经网络( ANN )方法简介

在结构识别中的应用在结构识别中的应用蛋白质二级结构的预测蛋白质二级结构的预测( BP算法得到广泛的应用)参考文献:N. Qian and T. J. Sejnowski. Predicting the secondary structure of globular proteins using neural network models. Journal of Molecular Biology, (1988) 202: 865-884

H. Bohr, J. Bohr, S. Brunak et. al. Protein secondary structures and homology by neural networks: The -helices in rhodopsin. FEBS Letters, (1988) 241: 223-228

L. H. Holley and M. Karplus. Protein secondary structure prediction with a neural network. Proc. Nat. Acad. Sci. USA, (1989) 86: 152-156

Page 85: 人工神经网络( ANN )方法简介

基于氨基酸序列的蛋白质构象预测基于氨基酸序列的蛋白质构象预测DNADNA序列功能位点的预测序列功能位点的预测(基因翻译起始位点、转录因子结合位点、真核基因剪接位点等)……

详细内容请参考译本:《生物信息学——机器学习方法》张东晖等译,中信出版社, 2003年

Page 86: 人工神经网络( ANN )方法简介

参考文献参考文献S. R. Presenell and F. E. Cohen. Artificial neural networks for pattern recognition in biochemical sequences. Ann. Rev. Biophys. Biomol. Struct., (1993) 22: 283-298

S. A. Benner. Predicting the comformation of proteins from sequences. Progress and future progress. J. Mol. Recog., (1995) 8: 9-28

G. Bohm. New approaches in molecular structure prediction. Biophys. Chem., (1996) 59: 1-32

C. H. Wu. Artificial neural networks for molecular sequence analysis. Comp. Chem., (1997) 21: 237-256

C. H. Wu and J. W. McLarty. Neural Networks and Genome Informatics. (2000) Elsevier, Amsterdam

Page 87: 人工神经网络( ANN )方法简介

1 、 ANN 方法源于模拟大脑神经元的信息处理和学习过程,但今天作为一种算法, ANN 方法使用的神经元与真实的生物神经元已经有很大的区别。2 、复杂的人工神经网络是由随时间变化、交互联结的神经元组成的网络( 1 )、复杂联结 例如:同层节点的联结、节点自联结、反馈( 2 )、引进时间和其它参数(延迟、增益……) 非线性动力系统——吸引子、混沌、极限环……( 3 )、复杂的激活函数

关于关于 ANNANN 方法的讨论方法的讨论

Page 88: 人工神经网络( ANN )方法简介

3 、人工神经网络的规模通常以层数来衡量。要根据解决问题的需要来设计选择合适的节点类型、联结和激活函数。输入层、输出层的设计要根据研究对象而定:输入:序列数据的编码方式输出:代表结构与功能的特征4 、人工神经网络最重要的特征之一就是可以通过样本进行学习。有监督的学习思想:通过比较网络的实际输出与理想输出的差别,定义误差函数。然后采用梯度下降法,修正优化网络参数值,使得误差函数最小。

Page 89: 人工神经网络( ANN )方法简介

5 、其它种类的人工神经网络( 1 )、反馈神经网络反馈神经网络( Hopfield 网络):引进能量函数(即 Liyapnov函数)的概念,作为判别网络稳定性的依据( 2 )、模糊神经网络模糊神经网络:引进模糊逻辑(模糊量、模糊运算)( 3 )、自组织神经网络自组织神经网络:具有自学习的功能( 4 )、 BoltzmanBoltzman机模型机模型:引进概率分布、随机函数