基于BP算法的前馈神经网络超声诊断方法的研究
2020-06-08冷晓妍李丹丹董来君
毛 杰 冷晓妍* 李丹丹 李 琳 董来君
目前,超声诊断工作主要是应用多普勒超声成像技术,将患者就诊部位以图像形式反馈给诊断医生,医生根据图像黑白对比度识别出病理状态。而图像处理技术可以应用人工智能算法,将图像特征提取出来,通过与专家库内的专家知识对比可以完成一次诊断。神经网络是人工智能的一种算法,可以应用在不同行业。在此是借用神经网络理论,拓展应用到超时诊断工作,不仅可以降低医生的劳动强度,提高诊断效率,还可以将诊断经验保存在数据库内,实现专家知识的共享。本研究旨在研制提升超声诊断水平的神经网络超声诊断软件系统,以提高超声诊断效率,降低诊断误判率。
1 反向传播前馈神经网络
1.1 人工神经网络结构
反向传播(back propagation,BP)前馈神经网络是近年来应用较广的一种人工智能学习算法,在图像处理及预报预测领域均有良好的应用。一般神经网络由输入层、隐含层及输出层[1-2]3层结构组成,各层之间通过神经突出(节点)进行连接,同一层节点间不做连接,不同层节点间通过单向连接线进行连接。人工神经网络结构见图1。
图1 人工神经网络结构
1.2 工作机制
BP神经网络是由给定的样本训练得到相应的网络连接权重,再将目标样本输入得到相应输出的一个过程,其中训练完成的网络权重不再变化。神经网络训练过程即获取权重过程,一般采用误差反向传播和最速梯度法获取[3]。
1.2.1 信号前向传播过程
样本数据首先由输入层输入神经网络,由权重矩阵进行修正后,再经激励函数变换后输出至隐含层,隐含层经过同样变换过程将结果输出至输出层[4-5]。
1.2.2 误差反向传播过程
输出层数据与目标值进行比较,若误差不满足设计需求,则经相应权重修正后反向传播至输入层,依次修正输入层、隐含层及输出层的网络权重。反复计算误差,直至误差满足设计需求。
1.3 网络设计
输入层节点数一般由问题指标个数确定,隐含层个数一般根据经验确定,输出层节点个数由所需分类数量确定,其中隐含层节点个数经验[6]计算为公式1和公式2:
2 应用层设计
本研究所述诊断方法是对超声采集的图像进行特征提取后,由训练完成的神经网络进行诊断的一个过程[7-8]。应用层设计主要完成特征图像保存(数据库设计)、神经网络集成和Web服务器设计3部分。
2.1 数据库设计
数据库主要用于保存专家提供的图像数据、分析结果及用户信息等内容。数据库通常包括层次式数据库、网络式数据库和关系式数据库(MySQL)3种,最常用的数据库模型有关系型数据库和非关系型数据库两种。
MySQL作为一种常用的关系型数据库,具有数据分类性强、合并简单等优点,因此本研究采用MySql 2008进行数据存储。通过设计相应的存储过程,实现对数据库的操作。数据库结构设计中的彩超辅助诊断系统,主要用于协助医师进行病理诊断,因此需设计病理分类表、特征图像存储表、权重参数存储表和用户信息表,各表格内容包括:①病理分类表,内容为ID、病理分类、专家姓名和日期;②特征图像存储表,内容为ID、图像、病理分类ID、专家姓名和日期;③权重参数存储表,内容为ID、权重、病理分类、训练专家和日期;④用户信息表,内容为ID、用户姓名、用户密码、等级和日期。
2.2 存储过程设计
对数据库的操作可通过结构化查询语言(SQL)进行操作,但是通过直接嵌入Web页面的方式进行访问,存在一定的安全风险,服务器容易遭受注入型攻击。为提高网络安全性,本研究的诊断系统通过在数据库服务器设计存储过程,实现访问效率及访问安全的提高。特征图像保存存储程序设计如下。
专家图像保存程序:SubmitExpertImage
同时还设计神经网络权值读取存储过程、专家图像信息读取存储过程以及分析结果保存存储过程。
2.3 网络服务器设计
网络服务器(web server,W/S)Web端软件主要用于实现诊断图像的神经网络识别及图像处理结果的显示和保存功能。因采用C#设计页面具有UI与后台逻辑分离的优势,本系统采用的Web设计语言包括Asp.net、Css及JavaScript。
2.3.1 Web前台设计
Web前台主要用于采集诊断图像、提交特征图像及诊断结果显示等功能。
(1)采集诊断图像:主要读取彩超诊断截取的图像,并将图像以二进制流的形式保存在数据库服务器内。
(2)提交特征图像:是指高级别医师通过人工诊断确诊的图像,该类图像主要用于训练神经网络获取网络权重。
(3)诊断结果显示:特征图像的提交直接影响人工智能诊断的结果,同时,特征图像越多,特征越明显,将越有利于减小诊断误差。
2.3.2 Web后台设计
Web后台主要完成BP神经网络训练、图像分类及诊断识别功能。
(1)神经网络训练功能:神经网络训练主要用于实现通过对样本集的处理、获取网络特征参数的过程。其中涉及样本预处理,目的是将特征图像按照病理分类[9]后,进行特征提取,提取结果直接用于神经网络训练。BP神经网络训练流程见图2。
图2 BP神经网络训练流程图
(2)智能识别功能:智能识别过程是指经验相对较少医师将采集的超声图像导入神经网络输入端,经训练完成的网络处理后得到病理分类结果的过程。超声辅助诊断系统诊断流程见图3。
图3 超声辅助诊断系统诊断流程图
3 超声辅助诊断验证
通过鉴定授权确定的专家可在专家知识库内添加影像数据与病理分类,样本数据达到规定数量后可进行神经网络的训练工作。训练完成后,通过提取目标图像特征信息输入神经网络,完成分类功能。通过导入某例患者腹部彩超影像,系统自动识别特征值并给出置信区间。由置信区间可见,该系统的诊断与人工诊断意见相符,并达到预期设计目标[10-11]。超声辅助诊断系统应用界面见图4。
4 结论
图4 超声辅助诊断系统应用界面
人工智能应用于医疗超声诊断可明显提高诊断准确率、降低误诊率,同时可将专家知识进行共享,便于经验的传播[12]。本研究系统日后仍需在图像去噪和图像特征提取方面进行改进,减少对特征样本的依赖。
随着人们对自身健康状况的关注,超声诊断工作日趋加重。应用计算机技术、人工智能技术的BP神经网络超声辅助诊断系统不仅可以将超声诊断经验广泛积累,而且可提高医务工作者的诊断效率,降低医务工作者的劳动强度。