张培培高仕军李 东
BP神经网络在骨髓细胞分类中的应用
张培培①*高仕军①李 东①
人工神经网络是人工智能的重要分支,模式分类是其主要应用之一。设计一个三层BP神经网络,利用从骨髓细胞图像提取出来的训练样本集,对其进行训练,而后进行骨髓细胞的分类,实验证明,该分类器对红系细胞和粒系细胞具有很好的分类效果。
人工智能;骨髓细胞图像;模式分类;BP神经网络
[First-author's address]North China Coal Medical University, Tangshan 063000, China.
早在上世纪50年代,人工智能[1](Artificial Intelligence, 简记为AI)的概念就被引入,它研究怎样让计算机模仿人脑从事推理、设计、思考、学习等四位活动,以解决和处理较复杂的问题。作为人工智能的重要技术之一,人工神经网络(Artificial Neural Networks, 简记为ANN)[2],是对人脑或自然神经网络若干基本特性的抽象和模拟,是一种给予连接学说构造的智能仿生模型,是由大量神经元组成的非线性动力系统。人工神经网络具有出色的学习能力,模式分类[3]是其重要应用之一。针对彩色骨髓细胞图像,设计了基于BP神经网络分类器。实验证明,该分类器具有很好的分类效果。
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一[4]。BP网络的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer),如图1所示。
图1 BP神经网络拓扑结构
1.1 人工神经元
人工神经元模型是生物神经元的模拟与抽象,其结构如图2所示,
图2 人工神经元模型
人工神经元相当于一个多输入单输出的非线性阈值器件,这里X1,X2...,Xn表示它的n个输入;W1,W2...,Wn表述与它相连的n个突出的链接强度,其值成为权值;
成为激活值,表示这个人工神经元的输入总和,对应于生物神经细胞的膜电位;O表示这个人工神经元的输出;θ表示这个人工神经元的阈值。如果输入信号的加权和超过θ,则人工神经元被激活。这样,人工神经元的输出可描述为:
式中,f(*)是表示神经元输入-输出关系的函数,成为激活函数。激活函数有许多类型,其中比较常用激活函数可归结为三种形式:
(1) 阈值函数
BP中的神经元均采用Sigmoid型传递函数。
1.2 BP学习过程
BP网的学习过程主要由如下四部分组成,分别是输入模式顺传播、输出误差逆传播、循环记忆训练和学习结果判别。
1.2.1 输入模式顺传播
这一过程主要是利用输入模式求出它所对应的实际输出。
(1) 确定输入向量Xk
(k=1,2,…,m; m是学习模式对数;n是输入层单元个数)
(2) 确定期望输出向量Yk
(q是输出层单元数)
(3) 计算中间层各神经元的激活值Sj
其中Wij是输入层至中间层的连接权; θj是中间层单元的阈值;p是中间层单元数。激活函数采用s型函数,即
这里之所以选s型函数为BP网神经元的激活函数,是因为它是连续可微分的,而且更接近于生物神经元的信号输出形式。
(4) 计算中间层 j 单元的输出值
将上面的激活值带入激活函数中可得到中间层j单元的输出为
阈值θj在学习过程中与权值一样也不断地被修正。同理,可求得输出端的激活值和输出值。
(5)计算输出层第 t 个单元的激活值Ot
式中,Wjt是中间层至输出层的权值;θt是输出层单元阈值;f是s型激活函数。
1.2.2 输出误差逆传播
在第一步的模式顺传播计算中得到了网络的实际输出值,当这些实际的输出值与希望的输出值不一样或者误差大于所限定的数值时,就要对网络进行校正。这里的校正时从后向前进行的,所以叫做误差逆传播,计算时是从输出层到中间层,再从中间层到输入层。
(1) 输出层的校正误差为
其中,j=1,2,…,p (p是中间层单元数);k=1,2,…,m。
(3) 对于输出层至中间层连接权和输出层阈值的校正量为
1.2.3 循环记忆训练
为使网络的输出误差趋向于极小值,对BP网络输入的每一组训练模式,一般要经过数百次甚至上万次的循环记忆训练,才能使网络记住这一模式。这种循环记忆训练实际上是反复重复上面介绍的输入模式。1.2.4 学习结果的判别
当每次循环记忆训练结束后,都要进行学习结构的判别。判别的目的主要是检查输出误差是否已经道道可以允许的程度。如果此熬到允许的程度,就可以结束整个学习过程,否则还要进行循环训练。
2.1 网络结构
本系统采用三层BP神经网络的结构,对骨髓细胞提取了23个特征,对每一特征量经过归一化后,作为神经网络的输入,根据隐含层节点数大约是输入节点数的两倍关系,确定隐含层取46个节点,因为输出种类有13个,输出为二进制数,所以输出层取4个节点,其结构如图3所示:
图3 实验中使用的BP神经网络的拓扑结构
2.2 初始化
为了使初始权值对学习速度影响最小,采用均匀分布的小数经验值,本实验为(-1, 1)之间的随机数。
学习速率决定每一次循环训练中所产生权值变化量。快的学习速率可能导致系统的不稳定,为了保证分类器的稳定性,选取较慢的学习速率,取rate_w1=0.1, rate_w=0.1, rate_b1=0.01, rate_ b2=0.01。
2.3 输入数据
本系统针对骨髓细胞的特征提取了23个特征量,大的方向主要是三个方面:形状、颜色和纹理。其中形状共提取了12个特征量,如表1所示:
表1 选取骨髓细胞特征量
2.4 输出数据
输出数据是四位二进制数,表示13类细胞,如表2所示:
表2 细胞类别对应的二进制输出值
用训练样本训练神经网络,待网络稳定后便可进行分类识别。读入彩色细胞图像后,经过特征计算,对图像上的细胞类型进行分类,程序运行结果如图4所示。
图4 系统分类结果
实验中,随机抽取出700幅骨髓图像,共识别出2986个骨髓细胞,正确识别了2787个,误识别了199个,其各类识别结果如表3所示:
表3 系统分类结果
本文将BP神经网络应用到骨髓细胞分类过程中,借助于人工神经网络强大的学习能力,实现了骨髓细胞的分类器,经试验证明,该分类器可以很好地对红系细胞和粒系细胞进行分类,但是对于淋巴细胞、单核细胞,其分类效果有待提高,这可能与淋巴细胞和单核细胞训练样本不够多和不够典型有关,接下来的工作是要继续寻找好的训练样本,并研究有分类价值的特征量,继续训练该分类器,使其能够很好的对各系细胞进行分类。
[1]唐勇敏,郑军婷,于雪梅等. 基于人工智能的HICAI[J].电脑知识与技术.2006,10(29):140-141.
[2]陆伟华.人工神经网络BP算法在评价网站中的应用[J].科技情报开发与经济. 2007,6(6):176-178.
[3]潘雷,邓世建,刘荣华. 基于模式分类的大蒜瓣尖分类研究[J]. 农机化研究.2010(5):57-60.
[4]秦威,秦书玉.基于BP神经网络的工程图形数据远程安全快速传输法[J].中国工程科学.2007,9(1):53-56.
Classification of bone marrow cell nuclei with BP neural networks
ZHANG Pei-pei,GAO Shi-jun,LI Dong
Artificial neural network is an important branch of artificial intelligence. Pattern classification is one of its main applications. This paper designed a threelayer BP neural network using the training samples set extracted from the bone marrow cells images. After training, the bone marrow cells were classified. Experimental results show that the classifier is suitable for classification of red blood cell series and granulocytic series.
Artificial neural network; Bone marrow cell image; Pattern classification; BP neural network
1672-8270(2010)07-0062-05
TP 183
B
张培培,女,(1981- ),硕士。现就职于华北煤炭医学院卫生事业管理系,信息管理与信息系统学科教研组,助教。研究方向:医学信息处理。
2010-03-14
①华北煤炭医学院卫生事业管理系 河北 唐山 063000
*通讯作者:E-mail: zzpppp112233@126.com
China Medical Equipment,2010,7(7):62-66.