重庆大学模式识别课程报告-帕金森病

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

研究生课程考核试卷

科目:模式识别教师:

姓名:学号:

专业:类别:

上课时间:

考生成绩:

卷面成绩平时成绩课程综合成绩阅卷评语:

阅卷教师(签名)

重庆大学研究生院制

引言

帕金森病(PD)是一种常见的神经功能性疾病,大多在50岁以后发病,但是随着社会老龄化的加剧,该病的发病率、患病率及致残率均呈现出增高的趋势。现阶段帕金森病的发病机理仍不是很清楚,对于该病的诊断较多地依赖于临床经验,这种诊断方法存在一定的误诊率。随着现今计算机技术以及人工智能技术的高速发展,人工神经网络这样一个分支逐渐出现在公众的视野当中,并且在许多方面如模式识别和智能信息处理方面取得了较好地效果,所以本实验将其应用至帕金森病的智能诊断方面。

本实验的目的就是寻找一种智能、客观、准确地诊断帕金森病的方法,探究人工神经网络模拟医学专家诊断帕金森病的可行性。这里选用应用较为广泛的BP 神经网络作为病理诊断器,以32个人的各项指标数据为little数据集,其中帕金森患者24人,正常人8个,每个人采集6到7组数据,数据样本数共195组。每次训练时以31个人的所有数据样本为训练集对BP神经网络进行训练,提取特征参数,然后以另一人为测试集,如此重复32次,确保每个人都进行一次测试,最后得出基于32个人的诊断准确率和基于195个样本的准确率。另外再以40个人的各项指标数据为sakar数据集,正常与患病人数各占一半,每人采集26组数据,同样采用留一法训练测试BP神经网络。结果显示,在误差可接受的范围内,设计达到了初步的要求,说明将人工神经网络应用于帕金森病的诊断具备可行性,但是由于BP网络存在一些缺点,再加上数据集中无病样本较少,未对复杂的病例做更加深入的研究,尚且不能严格满足临床诊断要求,所以在之后的研究中还需要进一步改进。

关键字:帕金森病,人工神经网络,BP网络

1 实验原理

在图1.1中,神经元接收n 个输入信号a 1,a 2,…a n ,经过线性运算输出为t ,如公式(1.1)所示。

)()(1

T

∑=+=+=n

i i i b a w f b a w f t

(1.1)

tanh 函数是sigmoid 函数的一种变体形式,输出范围是[-1,1],效果比sigmoid 函数更好。

1.2 人工神经网络

人工神经网络是一种由大量神经元连接而形成的拓扑结构,依靠这些神经元以及它们之间的相互联系,神经网络可以将接收到信号进行非线性处理,以此实现对复杂信息的进一步处理。如图1.4所示为一个简单人工神经网络。

图1.4 人工神经网络结构图

如图1.4所示,该神经网络由三层组成,L 1为输入层,包含三个输入信号和一个偏置项,L 2为隐含层,L 3为输出层,对网络计算的最后结果进行输出。

图中神经网络的参数表示为(b w ,)=()2()2()1()1(,,,b w b w ),其中)1(w 表示输入

层和隐藏层神经元之间的连接权重],,[)

1(33)1(32)1(31)1(21)1(13)1(12)1(11

)1(w w w w w w w w ,,;⋯=,)2(w 表示的是隐藏层和输出层神经元之间的权重,],,[)

2(13)2(12)2(11)2(w w w w =,其中)(l ij w 表示

第l 层的第j 单元与第l+1层第i 单元的连接权重。

对于偏置参数],,[)

1(3)1(2

)1(1)1(b b b b =,][)2(1)2(b b =,其中)(l i b 表示第l +1层第i 单元的偏置项,第l 层第i 单元的输出值我们用)(l i a 表示。对于本图中的人工神经网络,计算公式如下: )()1(13)

1(132)1(121)1(11)2(1b x w x w x w f a +++= (1.4) )()1(23)1(232)1(221)1(21)2(2b x w x w x w f a +++= (1.5) )()1(33)1(332)1(321)1(31)2(3b x w x w x w f a +++= (1.6)

)()()2(1)

2(3)2(13)2(2)2(12)2(1)2(11,b a w a w a w f x h b w +++=

(1.7)

上面的计算步骤实质是信号在神经网络中的前向传播过程,不存在闭环和回路计算,因此也称之为前馈神经网络。本图中的神经网络模型只含有一个隐含层和一个输出单元,对于含有多隐层和多输出单元的复杂神经网络,计算步骤与此类似,但是与较为简单的单隐层神经网络相比,能够解决复杂度更高的问题。

1.3 梯度下降和反向传播BP 算法

在设置好网络的连接方式、网络层数和每层神经元的节点数之后,就需要对网络进行训练,不断进行迭代训练的目的就是使网络的权值和偏置都获得一个较好的值,让我们由输入可以得到理想或者接近理想值的输出。那么主要的问题就是如何更新网络中的权值和偏置,使网络达到最优状态,为此引入了梯度下降法。在梯度下降法中,需要使用误差函数,其定义为神经网络的预期输出与实际输出间的均方误差,训练的目的就是使得该误差最小化,对于一个拥有n 个训练样本的问题而言,误差函数公式如下:

其中)(l i z 和)(l i a 分别表示第l 层第i 个节点的输入和以及激活值。 3)对于除输出层以外的其它层,第l 层第i 个节点的残差计算如下:

)(')()()1(11

)()(l i l j s j l ji l i

z f w l ++=∑=δδ

(1.12)

开始

初始化网络参数

给定输入和理想输出

计算隐含层和输出层输出

计算输出单元与理想输出的误差E

误差E 是否满足要求?

计算误差对权值和偏置的梯度

更新参数

结束

BP 算法伪代码:

1.对于所有层l ,令∆w (l ) := 0,∆b (l ) := 0,设置为全零矩阵或全零向量;

2.从第一个训练样本一直到第m 个,对于i =1:m:

a:用反向传播计算∇ w (l ) E(w,b;x,y )和∇ b (l ) E(w,b;x,y ); b:计算∆w (l ) :=∆w (l ) + ∇ w (l ) E(w,b;x,y ); c:计算∆b (l ) := ∆b (l ) + ∇ b (l

) E(w,b;x,y );

相关文档
最新文档