前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的神经网络特征重要性主题范文,仅供参考,欢迎阅读并收藏。
关键词:神经网络 入侵检测;自动变速率;随机优化算子
中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2014)03-0614-03
随着互联网应用的发展,更现显了网络安全的重要性。入侵检测技术在安全防护中是一种主动防护技术,能及时地检测各种恶意入侵,并在网络系统受到危害时进行响应,因此在为安全防御体系中入侵检测系统占有重要的地位。但是在现实的应用中,入侵检测系统没有充分发挥其作用。这是因为,不断变化的入侵方式要求入侵检测模型必须具有分析大量数据的能力。无论这些数据是不完全的,是非结构化的,或者是含有噪音的。而且,有些攻击是由处于不同网络位置上的多个攻击者协作进行的,这就要求入侵检测模型又必须具备处理来自非线性数据源的大量数据的能力。神经网络具有联想记忆能力、自学习能力和模糊运算的能力。因此将神经网络应用入侵检测中,它不仅可以识别出曾见过的入侵,还可以识别出未曾见过的入侵。该文首先介绍了一种改进的神经网络算法,然后分析了该算法在入侵检测中的应用,并给出试验仿真结果。
1 BP神经网络与入侵检测
1.1 BP神经网络的特点与不足
BP神经网络是神经网络模型中应用最广泛一种。它基于成熟的BP算法,主要有以下几个特点:1)它能够实现自组织、自学习,根据给定的输入输出样本自动调整它的网络参数来模拟输入输出之间的非线性关系。2)在存储上采用分布式存储,所有的信息分布存储在每一个神经元中。3)它还可以实现并行处理,下一层的每个神经元可以根据接收到的上一层信息同时独立地计算。这些特点使其很适合应用于入侵检测技术,满足入侵检测的适应性、可靠性、安全性和高效性的要求。
但是传统的BP算法也存在着以下几个方面的不足:1)局部极小;2)学习算法收敛速度慢;3)隐含层节点选取缺乏理论;4)加入新的样本会影响已经学完的样本;5)每次输入样本特征的数目必须确定且相同。
1.2 入侵检测技术
通过对系统数据的分析,当发现有非授权的网络访问和攻击行为时,采取报警、切断入侵线路等措施来维护网络安全,这被就是入侵检测技术。采用此技术设计的系统称为入侵检测系统。根据采用的技术来说入侵检测系统应具有以下几个特性:1)监视用户及系统活动;2) 分析用户及系统活动;3) 异常行为模式分析;4) 识别已知的进攻活动模式并反映报警;5) 系统构造和弱点的审计,操作系统的审计跟踪管理;6) 评估重要的系统和数据文件的完整性,并识别用户违反安全策略的行为。
目前最常用的攻击手段有:拒绝服务、探测、非授权访问和非授权获得超级用户权限攻击。而且这些攻击手段在实际中还有很大的变异,因此给入侵检测带来了一定的难度。BP神经网络的自组织自学习能力,使得经过训练后的BP神经网络对以前观察到的入侵检测行为模式进行归纳总结,除了可以识别出已经观察到的攻击,还可以识别出由已知攻击变异出的新的攻击,甚至是全新的攻击。
2.3 改进的神经网络算法
人工神经网络在模式识别、非线性处理、信号检测等领域应用非常多,这是由于人工神经网络具有的良好的自适应和自组织性,高度的非线性特性以及大规模并行处理和分布式信息存储能力的特性。BP神经网络算法实质上是非线性优化问题的梯度算法,该算法在收敛性问题上存在限制与不足。即该算法学习的结果不能保证一定收敛到均方误差的全局最小点,也有可能落入局部极小点,使算法不收敛,导致陷入错误的工作模式。因此本文选择了改进的神经网络,改进主要有以下几点:
2)自动变速率学习法
传统的BP算法是以梯度为基础,采用LMS学习问题的最陡下降法,学习步长是一个固定不变的较小值,不利于网络的收敛。因此,选择了基于梯度方向来自动调节学习速率的方法。利用梯度确定学习的方向,由速率决定在梯度方向上学习的步长。因此,如果相邻两次的梯度方向相同则说明在该方向是有利收敛的方向,如果相邻两次的梯度方向相反则说明此处存在不稳定。因此,可以利用两次相对梯度变化来确定学习步长,当两次梯度方向相同时则增大学习步长,加快在该方向上的学习速度;而如果两次梯度方向相反那么减小学习步长,加快整个网络的收敛速度。这种方法的自适应速率调节公式如下:
2)引入遗忘因子
本文所采用的自适应变速率学习法是依据相邻两次梯度变化来确定学习步长的算法,但单纯的学习速率的变化还不能即完全地既保证收敛速度,又不至于引起振荡。因此考虑变相的学习速率的学习。即在权值的调节量上再加一项正比于前几次加权的量。权值调节量为:
我们将[τ]称为遗忘因子。遗忘因子项的引入就是对学习过程中等效的对学习速率进行微调的效果。遗忘因子起到了缓冲平滑的作用,使得调节向着底部的平均方向变化。
3)随机优化算子
虽然采用自动变速率学习法,并引入遗忘因子的神经网络算法可以对学习速率进行微调,但是仍存在着BP神经网络的限制与不足因此引入随机优化算子。也就是当网络的权值误差迭代一定的次数后,仍没有明显的收敛,或者系统误差函数的梯度连续几次发生改变,这说明网络进入了一个比较疲乏的状态,需要借助外界的推动力来激活网络。当发现上述的两种情况时,就产生与权值维数相同的随机数,并将随机数与权值直接相加,然后判断系统误差的变化。如果误差没有降低,那么就再继续产生随机数来修改权值,直到误差减少,再从新的权值开始继续BP算法。随机优化算子可以令搜索方向随机变化,从而摆脱局部极小点。
4)改进算法与传统算法比较
以200个训练样本为例,分别采用改进的BP神经网络和经典BP神经网络的方法进行学习、训练。两种算法的误差收敛对比曲线如图1所示。
3 采用改进算法的入侵检测仿真实验
入侵检测系统进行测试和评估需要标准的、可重现的并包含入侵的大量数据。本仿真实验选取DARPA数据集网络连接数据集作为实验数据。然后,对这些数据选三组特征值进行实验,并给出实验结果。
3.1 数据源的选取
该实验的数据采用DARPA 1988入侵检测评估数据库的数据。该数据有大量的连接数据记录。每个一记录代表一次网络连接,且每个记录均有41个特征值,其中各个特征的含义不同,大致可分为三类:1)表示网络连接内容特征;2)表示网络连接基本特征;3)表示网络连接流量特征。
模拟的入侵主要有以下四种类型:DOS 、 R2L、U2R、Probing,考虑到设计的实用性分别对三类特征值用神经网络分别进行训练和识别。实验选取了13000组数据进行仿真实验,其中3000组用于训练神经网络,10000组用于系统测试。
3.2 仿真实验结果
对三类特征组的训练集数据应用改进神经网络分别训练出三个神经网络,表示网络连接内容特征的神经网络,表示网络连接基本特征的神经网络以及表示网络连接流量的特征的神经网络在训练成功时的迭代步数分别为7056,386,3030。然后再对测试集数据进行测试,结果如下:
1)表示网络连接内容特征组,利用改进神经网络进行检测识别,结果如表1所示。
2)表示网络连接基本特征组,利用改进神经网络进行检测识别,结果如表2所示。
3)网络连接流量特征组,利用改进神经网络进行检测识别,结果如表3所示:
从表中数据可以看出对常见的四种攻击,不同的特征分组在改进神经网络的作用下检测各有优势。
4 结论
论文采用自动变速率学习法,利用遗忘因子进行微调,同时引入随机优化算子对BP神经网络进行了改进。改进神经网络的收敛速度比经典BP神经网络更快,同时稳定性也较好。并将该算法应用于入侵检测实验,实验结果显示改进后的算法具有较好的识别攻击的能力。
参考文献:
[1] 肖道举,毛辉.BP神经网络在入侵检测中的应用[J].华中科技大学学报,2003(5).
[2] 汪洁.基于神经网路的入侵检测系统的设计与实现[J].计算机应用与软件,2013(5).
关键词 经济活动 预测模型 人工神经网络
经济活动诸如商品价格走势、生产活动的产量预测、加工的投入产出分析、工厂的成本控制等方面都是重要的技术经济层面。定量化的经济活动分析是经济学研究的必由之路,而建模是量化分析的基础,这是因为模型为科学分析和质量、成本等控制提供了理论依据。本文针对经济活动中大多数研究对象都具有的非线性特点,给出了用人工神经网络(Artificial Nerve Network)模型建立经济活动的预测模型的原理和方法,并描述了神经网络与各种先进的建模方法相结合的模型化方法,为经济活动的分析、预测与控制提供了理论基础。
1 神经网络模型方法
现实的经济系统是一个极其复杂的非线性系统,客观上要求建立非线性模型。传统上使用回归与自回归模型刻画的都是线性关系,难于精确反映因变量的变化规律,也终将影响模型的拟合及预报效果。为揭示隐含于历史记录中的复杂非线性关系必须借助更先进的方法———人工神经网络(ANN)方法。
人工神经网络具有并行处理、自适应、自组织、联想记忆及源于神经元激活函数的压扁特性的容错和鲁棒性等特点。数学上已经证明,神经网络可以逼近所有函数,这意味着神经网络能逼近那些刻画了样本数据规律的函数,且所考虑的系统表现的函数形式越复杂,神经网络这种特性的作用就越明显。
在各类神经网络模型中,BP(Back-Propagation误差后向传播)神经网络模型是最常用的也是最成熟的模型之一。本质上,BP模型是对样本集进行建模,即建立对应关系RmRn,xk∈Rm,ykRn。数学上,就是一个通过函数逼近拟合曲线/曲面的方法,并将之转化为一个非线性优化问题来求解。
对BP神经网络模型,一般选用三层非循环网络。假设每层有N个处理单元,通常选取连续可微的非线性作用函数如Sigmoid函数f(x)=1/(1+e-x),训练集包括M个样本模式{(xk,yk)}。对第P个训练样本(P=1,2,…,M),单元j的输入总和记为apj,输出记为Opj,则:
apj=WQ
Opj=f(apj)=1/(1+e-apj)
(1)
对每个输入模式P,网络输出与期望输出(dpj)间误差为:
E=Ep=((dpj-Opj)2)
(2)
取BP网络的权值修正式:
Wji(t+1)=Wji(t)+?浊?啄pj+?琢(Wji(t)-Wji(t-1))
(3)
其中,对应输出单元?啄pj=f’,(apj)(dpj-Opj);对应输入单元?啄pj=f’,(apj)?啄pkWkj;
?浊是为加快网络收敛速度而取值足够大又不致产生振荡的常数;?琢为一常数项,称为趋势因子,它决定上一次学习权值对本次权值的影响。
BP学习算法的步骤:初始化网络及学习参数;提供训练模式并训练网络直到满足学习要求;前向传播过程, 对给定训练模式输入,计算网络的输出模式,并与期望比较,如有误差,则执行下一步,否则返回第二步;后向传播过程,计算同一层单元的误差?啄pj, 按权值公式(3)修正权值; 返回权值计算公式(3)。BP网络的学习一般均需多周期迭代,直至网络输出与期望输出间总体的均方根误差ERMS达到一定要求方结束。
实践中,BP网络可能遇到如下问题:局部极小点问题;迭代收敛性及收敛速度引起低效率问题。此外还有,模型的逼近性质差;模型的学习误差大,记忆能力不强;与线性时序模型一样,模型网络结构及节点作用函数不易确定;难以解决应用问题的实例规模与网络规模之间的矛盾等。为克服这样的一些问题,同时为了更好地面向实际问题的特殊性,出现了各种基于神经网络模型或与之结合的模型创新方法。
2 灰色神经网络模型
灰色预测和神经网络一样是近年来用于非线性时间序列预测的引人注目的方法,两种方法在建模时都不需计算统计特征,且理论上可以适用于任何非线性时间序列的建模。灰色预测由于其模型特点,更合用于经济活动中具有指数增长趋势的问题,而对于其他变化趋势,则可能拟合灰度较大,导致精度难于提高。
对于既有随时间推移的增长趋势,又有同一季节的相似波动性趋势,且增长趋势和波动性趋势都呈现为一种复杂的非线性函数特性的一类现实问题,根据人工神经网络具有较好的描述复杂非线性函数能力特点,用其对季节性建模;最后根据最优组合预测理论,建立了兼有GM(1,1)和ANN优点的最优组合预测模型。该模型能够同时反映季节性时间序列的增长趋势性和同季波动性的双重特性,适用于一般具有季节性特点的经济预测。
首先,建立GM(1,1)模型,设时间序列x(0)=(x(0)(1),x(0)(2),?撰,x(0)(n)),作一阶累加生成:
x(1)=(x(1)(1),x(1)(2),?撰,x(1)(n)) (4)
其中x(1)(k)=(x(0)(i),k=1,2,?撰,n
构造一阶线性灰色微分方程并得到该方程的白化微分方程:
+ax=u
用最小二乘法求解参数a,u,得到x(1)的灰色预测模型:
(1)(k+1)=(X(0)(1)-u/a)e-ak+u/a,(k=0,1,2,?撰)
(5)
其次,根据上节方法建立BP人工神经网络模型。
第三,将两模型优化组合。设f1是灰色预测值,f2是神经网络预测值,fc是最优组合预测值,预测误差分别为:e1,e2,ec,取w1和w2是相应的权系数,且w1+w2=1,有fc=w1f1+w2f2,则误差及方差分别为ec=w1e1+w2e2,Var(ec)=w21Var(e1)+w22Var(e2)+2w1w2cov(e1,e2)
对方差公式求关于w1的极小值,并取cov(e1,e2)=0,即可得到组合预测权系数的值。
2 基于粗糙集理论的神经网络模型
粗糙集理论与模糊集理论一样是研究系统中知识不完全和不确定问题的方法。模糊集理论在利用隶属函数表达不确定性时,为定义一个合适的隶属函数,需要人工干预,因而有主观性。而粗糙集理论由粗糙度表示知识的不完全程度,是通过表达知识不精确性的概念计算得到的,是客观的,并不需要先验知识。粗糙集通过定义信息熵并进而规定重要性判据以判断某属性的必要性、重要性或冗余性。
一般来说,BP神经网络模型对模型输入变量的选择和网络结构确定等都基本凭经验或通过反复试验确定,这种方法的盲目性会导致模型质量变差。用粗糙集理论指导,先对各种影响预测的因素变量进行识别,以此确定预测模型的输入变量;再通过属性约简和属性值约简获得推理规则集;然后以这些推理规则构造神经网络预测模型,并采用加动量项的BP的学习算法对网络进行优化。有效改善了模型特性,提高了模型质量。其建模步骤为:由历史数据及其相关信息历史数据构造决策表; 初始化; 对决策表的决策属性变量按划分值域为n个区域的方式离散化;采用基于断点重要性的粗糙集离散化算法选择条件属性变量和断点(分点),同时计算决策表相容度,当决策表相容度为1或不再增加时,则选择条件属性变量和分点过程结束;由选择的条件属性变量及其样本离散化值构造新的决策表,并对其约简,得到推理规则集;由推理规则集建立神经网络模型; 对神经网络进行训练; 若神经网络拟合误差满足要求,则结束, 否则,增加n。必须指出,区间分划n太小,会使得拟合不够,n太大,即输出空间分得太细,会导致过多的区域对应,使网络结构过于复杂,影响泛化(预测)能力。
3 小波神经网络模型
人工神经网络模型存在的网络结构及节点函数不易确定问题,结合小波分析优良的数据拟合能力和神经网络的自学习、自适应特性建模,即用非线性小波基取代通常的非线性S型函数。
设非线性时间序列变化函数f(t)∈L2(R),定义其小波变换为:
Wf(a,b)==f(t)?渍()dt
(6)
式中,?渍ab(t)称为由母小波?渍t(定义为满足一定条件的平方可积函数?渍(t)∈L2(R)如Haar小波、Morlet小波、样条小波等)生成的依赖于参数a、b的连续小波,也称小波基。参数a的变化不仅改变小波基的频谱结构,还改变其窗口的大小和形状。对于函数f(t),其局部结构的分辩可以通过调节参数a、b,即调节小波基窗口的大小和位置来实现。
用小波级数的有限项来逼近时序函数,即:
(t)=wk?渍()
(7)
式中(t),为时间序列y(t)的预测值序列;wk,bk,ak分别为权重系数,小波基的平移因子和伸缩因子;L为小波基的个数。参数wk,bk,ak采用最小均方误差能量函数优化得到,L通过试算得到。
4 模糊神经网络模型
模糊集合和模糊逻辑以人脑处理不精确信息的方法为基础,而人工神经网络是以大量简单神经元的排列模拟人脑的生理结构。二者的融合既具有神经网络强大的计算能力、容错性和学习能力,又有对于不确定、不精确信息的处理能力,即同时具有底层的数据处理、学习能力和高层的推理、思考能力。
一种应用模糊理论的方法是把模糊聚类用来确定模糊系统的最优规则数,从而确定模糊神经网络的结构。这样确定的网络结构成为四层:第一层为直接输入层;第二层为模糊化层,对输入做模糊化处理;第三层为模糊推理层,对前层模糊结果做模糊推理;第四层为非模糊化层,可以采用重心非模糊化法,产生网络输出。该网络采用动态处理法,增强了其处理能力,且适用性强、精度高。
5 结语
除上述几种结合式神经网络方法之外,人工神经网络模型在算法设计方面一直在取得巨大的进步。神经网络模型方法是一种先进的具有智能的非线性建模方法,其在自然科学、经济现象、社会活动等方面的应用正在不断深化,把神经网络方法引入经济活动的分析和预测中,并紧密联系诸多先进的建模方法,是使工业经济、商业经济及其对经济本质规律的研究等各项工作推向前进的重要理论武器。
参考文献
关键词: 金融风险;预警;模糊聚类;神经网络
一、引言
2014年中央经济工作会议明确提出要“高度重视财政金融领域存在的风险隐患,坚决守住不发生系统性和区域性金融风险的底线”。2008年国际金融危机爆发以来,世界各国应对金融危机的经验表明,构建金融体系风险预警机制是必要且可行的。相对于整体金融风险而言,区域性金融风险具有更强的外部传导性和可控性,且一般早于整体金融风险爆发,在某种程度上可被视为整体金融风险的预警信号,因此,作为金融监管的有效补充,研究区域性金融风险早期预警体系并进行预警分析将对金融风险管控具有重要意义。
国外学者对于早期风险预警体系的研究较为系统和成熟,且已有一些金融监管部门建立了早期预警模型,如美联储的SEER评级模型、美国联邦存款保险公司的SCOR模型、法国银行业委员会的预期损失模型、国际货币基金组织的宏观审慎评估模型等。受国际金融危机的影响,近年来国内学者在早期金融风险预警和管理方面的研究也越来越多,但由于预警指标选择、风险状态划分及临界值选择等均不尽相同,因此建立的预警模型也有所差异。本文通过借鉴国内外对金融风险预警指标体系的既有研究成果,综合运用模糊聚类分析、BP神经网络建模等计量分析方法,构建区域金融风险预警体系,以期对区域性金融风险的评估和防范提供客观性依据。
二、总体分析框架及模型构建
本文构建的区域金融风险早期预警体系由三部分组成:首先结合安徽区域特点,构建包括经济因素、财政因素、金融因素、房地产发展、企业经营状况等的区域性金融风险指标体系;其次利用模糊聚类分析对研究样本进行分类,确定BP神经网络预警模型的分割点,为区域性金融风险水平的划分提供一种新思路;最后采用人工神经网络来预测未来金融危机发生的可能性。
(一)区域性金融风险指标体系
区域性金融风险指标选择既要考虑金融风险因素的普遍性,更要体现区域经济金融发展特点。指标选取原则:一是全面性,所选指标尽可能全面反映区域金融风险;二是可得性,所选数据要容易获得,且期间口径未作调整;三是匹配性,数据收集成本与模型预测的经济实用性相匹配。
(二)风险评估的模糊聚类分析
在分析一个时间序列的区域金融风险时,我们可以把指标相似程度高的样本聚集在一起,作为一个整体进行分析,以达到简化的效果。传统的聚类分析是一种“硬划分”,即把每个待识别的对象严格划分到某类中,具有“非此即彼”的性质,这种分类的类别界限也是分明的。然而,在大多数情况下,风险类别可能并没有严格的界定,其类属性方面存在中介性,适合进行“软划分”。模糊集理论为这种划分提供了强有力且有效的分析工具,采用相应的模糊聚类模型,可以取得较好的分类效果。“模糊聚类”概念最早由Ruspini提出,之后人们利用这一概念提出了多种模糊聚类算法。本文运用神经网络来进行模糊聚类,其优势在于神经网络的并行处理结构。
(三)基于人工神经网络的早期预警体系
人工神经网络ANN)是一种在生物神经网络启示下建立的数据处理模型,其具有强大的模式识别和数据拟合能力,最为可贵的是神经网络还有自学习和自适应性。自适应性是指一个系统能够改变自身的性能以适应环境变化的能力,当环境发生变化时,相当于给神经网络输入新的训练样本,网络能够自动调整结构参数,改变映射关系,从而对特定的输入产生相应的期望输出。人工神经网络包括很多种,不同类型的神经网络适用于解决不同的问题,其中最为常用的一种就是BP神经网络,它是一种多层前向神经网络,其权值调整采用反向传播学习算法。而自组织竞争神经网络则使用了与前向神经网络完全不同的思路,采取竞争学习的思想,网络的输出神经元之间相互竞争,同一时刻只有一个输出神经元获胜,因此自组织神经网络主要用于解决分类、聚类问题。鉴于此,本文在进行区域金融风险评估时,运用自组织竞争神经网络进行模糊聚类分析,得出各样本的风险类别;而在构建区域风险早期预警体系时,采用BP神经网络进行分析和预测。
三、区域性金融风险早期预警的实证分析
(一)区域性金融风险监测指标的选取与标准化
金融风险是一个综合性、系统性的概念,单纯选用个别指标不足以反映其真实水平。因此,根据客观性、完备性、科学性、实用性、重要性原则,同时借鉴国内外研究成果,本文选取了经济、财政、金融、房地产、企业经营等方面的17个金融风险评价指标,样本区间为2009年至2014年一季度的安徽省季度数据,并根据指标与金融风险的正负相关性对其进行标准化。
摘要:目前世界超过5亿人患有不同的肾脏疾病,但全社会对慢性肾脏病的知晓率尚不足10% ,肾病患者甚至一些非肾脏科的大夫对慢性肾脏病的危害缺乏足够的了解,由于慢性肾脏病早期多没有明显症状,很容易被忽略,很多患者直到肾功能完全恶化导致尿毒症时才去就医。同时,针对不同慢性肾病的等级又有对应的不同治疗方向。因此,对慢性肾病进行分级预警是一个影响非常深远的课题。在进行慢性肾病分级的过程中,肾小球滤过率对慢性肾病分级起着基础与指导的作用,因此我们必须着重解决一个重要的问题:肾小球滤过率的评估。
本文主要针对肾小球滤过率的预测进行设计。为了达到人工智能对慢性肾病进行分级的最终目的,本文将通过MATLAB软件平台对肾小球滤过率的评估进行仿真。接着对于在医院收集好的数据进行筛选,最终选出一组具有较高参考意义的数据,对其使用适当的处理方法,并运用了BP神经网络来构建合适的预测模型,对肾小球滤过率进行预测评估。在经过反复的网络学习,测试后,最终确定一个误差最少,精度最高,稳定性最好的BP神经网络评估模型。最后,根据训练好的神经网络对数据进行分级,从而最终构建出一个实用性良好的慢性肾病分级预警模型。
关键词:慢性肾病;肾小球滤过率;BP神经网络
一、前言
在众多的神经网络结构中,多层前馈神经网络是目前应用最广泛也是最成熟的一种网络结构。Rumelhart,McClelland和他们的同事洞察到神经网络信息处理的重要性,于1982年成立了一个PDP小组,在研究并行分布信息处理方法,探索人类认知的微结构的过程中,于1986年提出了BP网络(Back.PropagationNetwork,简称BP网络)模型,实现了Minsky的多层网络设想[1]。在多层前馈神经网络MFNN中,网络权值的调整是通过著名的误差反向传播学习算法——BP算法来进行的。BP网络具有非线性映射能力、泛化能力和容错能力,同时BP网络结构简单,是在自动控制中是最有用的学习算法之一,也是慢性疾病分析的首选神经网络[2-5]。因此,本文选取这种网络结构作为慢性肾病分级预测的基础,在后面将对它进行详细论述。
二、基于BP神经网络的慢性肾病分级预警模型设计框架
要设计出慢性肾病的分级预警模型,关键在于如何把慢性肾病进行分级[6-9]。我所采用的设计框架是基于MATLAB的BP神经网络,把从医院获得的临床数据进行筛选,并对网络进行初始化设置,运用BP神经网络对数据进行学习,根据不断的误差修正以及数据的测试,构建起肾小球滤过率的预测模型,根据肾小球滤过率的指标最终建立起符合实际的慢性肾病分级预警模型,如图1所示。
图1 慢性肾病预警模型设计框架
因此,本文的整个设计重点分为两部分:第一部分为建立肾小球滤过率的预测模型,第二部分为建立基于人工智能的慢性肾病分级预警模型。
(一)BP神经网络进行肾小球滤过率预测的原理
BP神经网络是通过对以往历史数据的学习,找出不同测量指标对肾小球滤过率的相应的非线性的变化关系,并将具体的资料存储于相应的权值与阈值之中,从而对肾小球滤过率进行预测。
(二)基于BP神经网络的肾小球滤过率预测模型
利用BP神经网络对肾小球滤过率进行预测时,网络的拓扑结构的设计、隐层节点个数的确定、样本数据的选取以及对原始数据、输出数据的预处理的确定等问题,都直接影响着我们所建立的肾小球滤过率预测模型的各项性能[10-12]。
1.网络拓扑结构的设计。
由于网络训练样本是有限的,因此把推广能力作为主要的要求来操作的话,则强调选择能达到要求的最小网络[13]。许多理论都表明,一个三层网络可以任意逼近一个非线性连续函数。由于这种三层网络简单、易于实现、计算量小、并行性强得众多特点,目前仍然是多层式网络训练的首选网络结构之一,并且已经被人们广泛应用于解决实际的问题。因此,鉴于上述提及的论点,本文采取三层网络建模进行对肾小球滤过率的预测。
相比起输入输出层节点的选择,隐层节点数目的选择可谓是一个较为复杂的问题,因为没有很好的表达式来表示。隐层节点的数目与我所需要的输入、输出节点数目密切相关。隐层节点数目太小,则会导致学习过程不能收敛,或者导致网络实用性不强,不能识别以前所没有遇到过的样本;但是如果隐层节点数目过多,虽然网络映射能力会增强,局部极小点会越少,且越容易收敛到全局最小点,但会使学习时间加长,同时使得网络训练过度,这时网络不但记住了训练样本的一般特征,而且记住了训练样本中的一些个别特征,包括随机噪声,这样将会导致网络的容错性降低[14]。
确定一个最佳的隐层节点数的一个常用方法称为试凑法,可先设置较少的隐层节点用以训练网络,随后逐渐增加隐层节点数,用同一样本进行训练,从中确定出网络误差最少的时候对应的隐层节点数[15]。在使用试凑法的时候,可以用一些确定隐层节点数的经验公式。这些公式计算出来的隐层节点数虽然只是一些粗略的估计值,但是可作为大致隐层节点数目的参考:
(3-1)
(3-2)
(3-3)
以上各式中m为隐层节点数,n为输入层节点数,l为输出层节点数,a为1-10之间的常数[16]。在本文中采取了式(3-1)来确定隐层节点数的大概范围,然后将根据实验结果反复修正具体的隐层结点个数。
对于BP网络来说,为了节约训练网络的时间,可以采用部分连接的方式,使得在合理的时间内获得比较好的精度。而本文将采用相邻两层节点全连接,而同一层的节点互不相连的连接方式构造BP神经网络。
(三)肾小球滤过率预测模型的MATLAB实现。
在建立了肾小球滤过率的预测模型之后,就要开始使用MATLAB仿真软件构件BP神经网络,同时通过对网络的不断训练,以求达到最好的肾小球滤过率的预测效果。
1.BP网络的MATLAB实现。
MATLAB是一套功能强大的工程计算及数学分析的可视化软件。1984年,Mathwork公司将MATLAB推向市场。90年代又逐步拓展起数值计算、符号解析运算、文字处理、图形显示等功能,至今,MATLAB已经成为线性代数、自动控制理论、概率论及数理统计、数字信号处理、时间序列分析、动态系统仿真等方面重要的数学计算工具[19]。它具有程序可读性强、程序简单等优点,尤其是在编写含矩阵运算的复杂程序时,能给用户提供极大方便。
现在,神经网络已经成为了解决一些问题的手段以及方法,但利用神经网络来解决问题的时候,必定会设计到大规模的运算量,其中包括了矩阵计算的问题等,考虑到MATLAB的神经网络工具箱的特殊功能,以及效率与准确性的问题,本文选择了专门用于了MATLAB软件进行仿真模拟。
(1)BP神经网络的生成及初始化。
在MATLAB软件中,我们采用newff函数来生成BP网络,而newff函数的调用格式为:
(3-4)
其中PR为 维的矩阵,表示R维输入矢量中每维输入的最小值和最大值之间的范围;因此,通常我们会设定 ,即设定PR为P的最小值和最大值之间的范围; 中n表示BP神经网络所具有的层数,而Sn则表示具体第几层具有多少个神经元; 中各元素表示各层神经元采用的传递函数;BTF则表示神经网络训练时所用的训练函数;net为生成的BP网络对象。对于newff生成的BP神经网络,网络本身对各层的权值和阈值会自动进行初始化,如果用户需要,则可以对各层网络的权值和阈值的初始化函数重新定义。
(2)BP神经网络的训练。
在BP神经网络生成及初始化后,就可以开始对网络进行训练了。BP神经网络的训练通常采用train函数来完成,在训练之前需要对网络的训练参数net.trainparam进行适当的设置。当设置完训练参数之后,就可以开始调用train函数对BP神经网络进行训练了。该函数采用自适应学习速率法,返回误差参数。其调用格式如下:
(3-5)
其中P是输入样本;T是对应的输出样本;等号的左右两侧的net分别用于表示训练得到的和训练之前的神经网络对象;tr存储了训练过程中的步数信息以及误差信息,并给出了网络误差的实时变化曲线。
(3)BP神经网络的仿真。
在MATLAB的应用中,我们选用sim函数对训练之后所得到的网络进行仿真,sim函数的调用格式如下:
(3-6)
其中,net为神经网络对象,P为输入样本,Pi为输入延迟的初始状态,Ai为层延迟的初始状态,T为输出样本,Y为网络的实际输出,Pf为训练终止时的输入延迟状态,Af为训练终止时的层延迟状态,E为输出样本和实际输出之间的误差,pref为网络性能值。
对于本文的sim函数调用,采取了如下调用格式进行简化:
(3-7)
(4)BP神经网络的保存。
在完成网络的训练后,必须要对训练后的网络进行保存,这样才能在下次进行预测的时候沿用训练过的网络,在MATLAB中,保存网络的调用格式如下:
(3-8)
以上即为肾小球滤过率预测模型的设计流程。
2.BP神经网络进行肾小球滤过率预测的实现。
(1)数据样本的选取。
为实现肾小球滤过率的预测模型,本文选取了广州珠江医院的327例慢性肾病病历作为研究对象。
初始权值采取的是随机数,输入层到单隐层采用的传递函数为tansig函数,单隐层到输出层采用的传递函数为logsig函数,训练函数采用trainlm函数。同时,设置300个训练网络的样本数据,误差精度设置为E
BP神经网络的训练是网络是否成功的一个非常重要的环节,网络训练的好坏直接影响到预测的准确性与稳定性。因此,对网络进行训练和测试的时候,必须要反复修改设置参数,方能达到最佳效果。
在神经网络训练完成之后,需要用另外的测试数据来对网络进行检验,而这些测试的数据应该要是独立的数据。因此,学习与测试过程需要独立开来,一旦BP网络学习完成了,就必须要将权值保存下来,以供下次预测使用。
(四)仿真实验及结果分析。
1.应用肾小球滤过率预测模型建立慢性肾病分级预警模型。
上述建立肾小球滤过率预测模型的目的,正是为了建立起慢性肾病的分级预警模型。在预测到肾小球滤过率的基础上,运用数据,建立起对应的慢性肾病的分级模型。在表1中,根据归纳方法,列出了以上20组预测数据的预测分级情况与这20组数据实际的分级情况的对比。
表1 20组数据的预测分级与实际分级情况对比
序号 1 2 3 4 5 6
预测分级 5 3 2 4 5 1
实际分级 5 4 1 5 5 1
序号 7 8 9 10 11 12
预测分级 4 1 3 5 5 3
实际分级 3 1 3 5 4 3
序号 13 14 15 16 17 18
预测分级 1 3 3 2 4 3
实际分级 1 3 4 1 5 2
序号 19 20
预测分级 4 2
实际分级 5 2
从上表1可以看出,基于MATLAB的神经网络对慢性肾病的分级有较好的准确性,能较好地对慢性肾病进行分级预警,因此,具有良好的推广性以及实用性。
三、结论
本文的工作只是一种基础性的、初步的工作,涉及到BP神经网络的一些重要应用显得还比较浅,因此,在今后的研究里面,还需要对其中的许多性能参数进行有效的修改,方能得到理想的结果。
在今后的研究中,对BP网络的算法修改是一个非常大的课题,为了能使网络的预测能力最大限度地根据实际情况达到目的,必须针对现有的数据资料,对使用的算法进行改良。同时,为了更有效,更准确地得到预测结果,需要对样本的数量继续加以增加,方能达到理想的目标。
因此,以BP神经网络对医学各个方向的预测是今后研究许多医学问题的主要趋势,是一个值得深入探讨的重要课题。
参考文献:
[1]程晓霞. 慢性肾病的幕后推手.疾病与营养。
[2]张春,邓安国. 慢性肾脏病心血管并发症的危险因素与防治.临床内科杂志,2008 25(7)。
[3]陆汉魁.中华检验医学杂志. 2007 3(11) P.1211-1212。
[4]叶解明.简化估算肾小球滤过率模型算法的参考限及临床特性.2010,25(4)。
[5]M.Kastra.Forecasting Combining with Neural Networks.Forecast,1996,15(1):49—61。
[6]韩力群.人工神经网络教程.北京:北京邮电大学出版社,2006。
[7]王万森.人工智能原理及其应用.北京:电子工业出版社,2006.27-51。
[8]T.Kohonen.The selforganizing map.Proc IEEE,1990,(78):1464~1480。
[9]D.E.Rumelhart,GE.Hinton,R.J.Williams.Learning Representations by Back.propagating Errors.Nature,1 986,323(9):533-536。
[10]钟义信.智能理论与技术——人工智能与神经网络.北京:人民邮电出版社.1992:45--46。
[11]吴凌云.BP神经网络学习算法的改进及其应用.信息技术,2003,27(7):42—44。
[12]吴耿锋等.股票短期预测的一种非线性方法.上海投资,1999:35、37。
[13]徐丽娜.神经网络控制.哈尔滨:哈尔滨哈尔滨工业大学出版社,2006:241~256。
[14]师智斌,陈立潮,靳雁霞.基于神经网络的股票交易数据的预测研究.华北工学院学报,2003,34(6):12~16。
[15]尹念东.BP神经网络的应用设计.信息技术,2003,27(6):18~20。
[16]韩力群.人工神经网络教程.北京:北京邮电大学出版社,2006:74~75。
[17]吴佑寿,赵明生.激活函数可调的神经元模型及其监督学习与应用.中国科学E辑,2001,3l(3):263。
【关键词】计算机科学与技术 经济管理 应用分析
1 计算机科学与技术在经济管理中所体现的作用
在进行经济管理工作的时候,需要对工作产生的巨大信息进行分析与处理,这些数据都是企业及事业单位的重要性资源,需要这些资源来做到对决策的分析。但是,对于经济管理人员来说,如何对这些信息进行处理,使得这些资源能够更好的对决策进行服务,是经济管理人员需要不断探讨的问题,并且很多的研究人员在研究过程中提出了很多的方法来对数据进行处理,但是得到真正的应用的并不是很多,人们对于决策还是凭着自己感觉来进行。但还因为计算机技术的发展,使得人们在对这些数据进行处理的过程时,有着极大的便利,因为计算机可以有效的对大量的数据进行处理、分析,因此,计算机科学与技术为经济管理人员在工作的过程中提供了很大的便利。
2 计算机科学与技术在经济管理过程中的应用形式
2.1 运用人工神经网络的形式来对信息进行分析
在动物界的神经传递过程中,两个神经元之间会有一个突触,来起到对信息之间的传递作用。在传递的过程中,会使用到一些神经递质来进行传播,这些神经递质具有不同的种类,在对这些神经元进行接收的时候,在轴突上,会存在着许多的分支。神经递质传递到受体细胞,然后再次的在神经元内对信息进行传递。这种信息的传递形式具有很多优点,科研人员在受到这些启示之后,就发明了具有自组织特征的映射算法来对信息做到有效的传递。
因为对于计算机技术的发展过程来说,其在对外界进行表达的时候,都是以数字向量的方式来进行的,而对于神经系统来说,其在信息的传播过程中也是将信号进行转变。所以使用计算机技术来对信息进行处理的时候,与神经信息传递之间有着很相似的地方。
2.2 这种人工神经网络的信息处理方式具备的功能
对于这种人工神经网络的信息处理方式,其是根据生物学中神经网络的形式来研究出来的,所在对于这种人工神经网络系统来说,其有很大一部分特点都是跟生物学的中神经系统是相似的,具备一些智能的功能。首先它所体现出来的一种特点是在记忆方面,因为它是根据生物神经模式来进行设计的,因此其在对信息进行储存及分析过程中,会第一这些信息进行保留,并且还具备联想记忆的功能。其次其具备的特点就是可以进行非线性映射。因为在很多的实现操作过程中,很多输出的信息与输入的信息之间并不能够建立起一种线性的关系,使得很多熟悉的模型不能够在其它信息处理系统中进行设计出来。但是使用人工神经网络的设计方式,就使得在信息处理的过程中能够做到满足非线性映射,并且还可以在设计的过程中建立起很大的非线性的数学模型,并且各个领域中都可以得到应用。另外,在这种人工神经网络的信息处理模式中,还可以对输入的信息进行识别,并做到有效的分类,这对原来在信息处理过程中存在的信息不易分离与辨别的问题做到了有效的解决。最后一项具备的功能就是它可以对输入与输出的信息及知识内容进行一个有效的处理,因为人工神经网络模式具备生物学中神经传递的特点,所以它可以在信息到达的时候,对其进行分析及处理,对于那些符合条件的信息加以利用,并进行储存。这就使得在信息的处理过程中,能够做到对数据根据其特征来进行分类与分析。
3 人工神经网络的信息处理技术在经济管理中的应用
计算机科学与技术发展过程中所带来的这种神经网络的信息处理模式,因为其具备的一些特征与功能,因此在众多的领域中得到了有效的利用,解决了传统信息处理过程中那些不能够进行解决的问题,并且都取得了很好的效果。所以,目前这种信息的处理方式不仅在经济管理过程中得以使用,还在医学、工程技术及其它经济领域中都得到广泛的应用。
3.1 在信贷分析过程中需要对这种信息处理技术加以利用
对于信贷分析工作来说,信用评估机构是具备自己特征的,因此在信息处理过程中,因为这些企业所带来的信息形式的不同,使得在对其信用度进行评判的过程中,带来很大的问题,也很难对其进行判断,使得很多时候都会带来很多的经济损失。但是对这种人工神经网络信息的处理技术的使用,就会对所出现的问题做到有效的解决了。在对这些贷款企业进行信用评价的时候,只需要将信息转化为编码来输入进去,就可以对数据进行分析,并且因为输入的信息量比较大,使得在评价的过程中更做到具有更大的准确性。对这种技术的使用,不仅可以做到准确性,还可以避免操作人员的主观思维形式。这是这些优势的存在,使得其在对企业风险进行分析的过程中得到很广泛的应用。
3.2 使用这种方法可以对市场做到更准确的预测
在经济管理过程中,需要对市场中出现的一些因素做到有效的分析,并做到对未来发展趋势进行相关的预测,使得在决策的过程中,能够起到参考的作用,使得风险得到降低。使用人工神经网络的信息处理技术来对市场进行预测,使得对市场中变动的价格与走势进行考量与分析,使得一个可靠的市场模型可以得到建立。例如在期货市场上运用这种技术,可以对其未来价格进行预测。并且这种技术在股票市场中也有所应用。
四、结束语
随着科学技术的发展以及电子计算机技术的日趋成熟,使得原本很复杂的工作在其处理之下都得到了很好的解决。在经济管理过程中,其产生的大量数据,使用传统的方式难以进行解决,但是使用计算机科学与技术,就可以模仿人对在神经传递中对信息的处理方式来进行处理,为其工作提供了很大的便利。
参考文献
[1]李苗苗.论我国企业的经济管理[J].现代经济信息,2009.
[2]张信宾.高校计算机基础教育的教学思路与方法研究[J].沿海企业与科技,2005.
关键词:结构损伤检测结构健康诊断/监测 神经网络 Bp网络 概率神经网络
中图分类号:TU318 文献标识码:A
0引言
随着土木工程事故的频繁发生,工程质量的好坏引起了人们的日益重视。工程结构中存在着表面的某种破损或缺陷,这些事肉眼可见的。但建筑材料由于荷载和环境的作用而使结构内部受到不同程度的损伤,这类损伤与缺陷是人们肉眼看不到的。结构的缺陷与损伤严重地降低了结构的安全性、适用性和耐久性,因此迫切需要对它们进行健康诊断进而更好地对它们进行维修、加固、管理和使用。
50年来,我国土木工程结构的健康监测经历了从无到有、从单项到全面、从局部构件到整体结构的发展过程,特别是最近20多年,结构损伤检测技术逐步形成了一门较为完整的新兴边缘综合工程学科,并得到快速的发展,其应用对象已从开始阶段的单层的破旧民居扩展到建设工程中的各类结构。结构健康诊断技术是保证结构安全的基本措施之一,它能对结构损伤的发展做出早期预报,对出现损伤的原因做出判断,提出对策建议,避免或减少事故的发生。如今,土木工程结构的健康诊断与防治在国民经济建设中所占的比重越来越高,相应的技术研究和应用开发也成为一个重要方向,各国土木工程领域的研究开发重点已逐步转向这一领域,我国的科技工作者与工程领域也开始广泛关注这方面的研究。结构健康监测的发展与应用对于提高建设工程的质量起到了积极的作用,在节省国家与企业的资金、保障企业生产安全和人民生命财产的安全方面也起到了一定的作用,因此对结构损伤检测方法的研究是有一定的现实意义的。
1.结构损伤检测[1]
土木工程结构的健康监测和损伤检测技术是一门新兴的科学技术,目前正处于蓬勃的发展之中。虽然这种技术已被广泛应用于航空、航天精密机械等领域之中,但是在土木工程领域的研究还处于起步阶段,绝大多数研究还仅仅局限于实验阶段。虽然国内外已有一些桥梁、建筑已经开始现场监测工作,但是整个研究工作和技术的成熟还有待时日。
对结构进行损伤(或故障)检测、诊断与评估师一个运用数学模型建立并描述物理系统的过程,对于遭受不同程度破坏的结构,其本身的某些特性往往发生变化。为了鉴定这些变化对结构的影响程度,常进行一系列的模拟实验,测定相关的荷载、位移、应变及加速度等,从材料性能如强度、刚度和动力特征(如振动频率和阻尼比)方面对结构做出评估。
理想的结构健康监测与损伤识别技术应能在结构损伤出现的较早时期发现损伤,在传感器精度允许的情况下确定损伤的位置,估计损伤的程度,并预测出结构的剩余有效寿命。理想的损伤识别方法应该具备的另一重要性能是,能够分区分结构建模误差引起的偏差与结构损伤引起的偏差间的区别。尽管近几年出现了一些运用较为成功的整体监测/检测技术,但对于如何从量测得到的信息来解释结构的安全状态及损伤情况,却远未建立起完善的科学理论,对复杂结构的整体检测仍然是土木工程领域面临的一大挑战。
结构健康监测系统应包括下列几部分:传感系统、数据采集和处理系统、通讯系统、监控中心和报警设备。
2. 结构损伤检测方法[2]-【4】
结构损伤检测的分类方法有许多,从结构承受的荷载来分,结构检测方法分为静力检测方法和动力检测方法;从损伤方法对结构是否产生损坏,结构检测方法可以分为有损检测和无损检测;从检测方法的智能化程度来分,分为传统损伤检测方法和基于计算智能损伤检测方法。
(1)动力损伤检测方法分类
由于动力损伤检测方法对结构物无损害,且检测经济、快速而得到了土木工程界的青睐和重视。一般来说,动力损伤检测方法按照识别区域可以分为时域法和频域法;从研究和应用的角度可以分为模型修正法和指纹分析法。
(2)其他无损检测方法
除动力损伤检测法之外,还有许多无损伤检测法,如目测法、光谱法(Optical Radiography)、超声波法、声发射法、雷达法、激光全息检测法、我留法(Eddy Current)、微波法、热力法等。
(3)智能检测方法
九十年代初,随着微型计算机的发展和广泛应用,计算智能(在20世纪90年代中期被提出)在损伤检测领域逐渐得到了广大研究人员的重视。计算智能在损伤检测领域的研究方向主要有专家系统、神经网络、模糊理论、遗传算法等。本文主要介绍神经网络及其在损伤检测中的应用。
3. 神经网络在损伤检测中的应用[3] [4]
神经网络应用于结构损伤检测中去是近些年来十分活跃的应用领域之一。由于神经网络资深所具有的功能和其信息处理的特点,在满足结构损伤识别算法所要求的实时性、及时性和稳健性等方面,比基于模型的各种方法、传统的模式识别方法和专家系统方法等传统方法悠着更明显的优势,而且,同其它方法相比,在先验信息需求方面更宽松,自适应和可学习能力更强。目前,神经网络损伤识别方法已在结构损伤检测方面的研究越来越深入。
人工神经网络(Artificial Neural Network简称ANN)是在现代神经生理学和心理学的研究基础上,模仿人的大脑神经元结构特性而建立的一种非线性动力学网络系统,它由大量的简单的非线性处理单元(类似的神经元)高度并联、互联而成,具有对人脑某些基本特性的简单的数学模仿能力。人工神经网络最大的特点是适应性,它通过自身的学习机制自动形成所要求的决策区域。
根据生物神经元的结果、作用机制,并作进一步的简化,构成了神经元模型,即人工神经元。神经元模型至今已发展有很多种,常见的模型有:
BP网络模型
反向传播网络(Back-Propagation Network,简称BP网络)是将W-H学习规则一般化,对非线性可微分函数进行权值训练的多层网络。在人工神经网络的实际应用中,80%~90%的人工神经网络模型是采用BP网络或它的变化形式,它也是前向网络的核心部分,体现了人工神经网络最精华的部分。
概率神经网络(PNN)
PNN就是将贝叶斯估计放置于一个前馈神经网络中,其实质就是一个分类器,它根据概率密度函数的无参估计来进行贝叶斯决策而得到分类结果。
模糊神经网络(FNN)
模糊逻辑与神经网络是当前备受关注的两项信息处理技术,都是属于不需要用公式数学模型的信息处理方法,都可以从数据中提炼系统的输入输出之间的规律。将神经网络与模糊逻辑技术有机地融合在一起来发挥互补优势,模糊神经网络随之产生。
以上是几种常见的网络模型,其中最为广泛应用的是BP网络,另外还回归BP网络、Boltzmann机网络等网络模型。
4. 结论与展望
结构健康诊断技术由于其广泛的应用潜力近年来引起了极大的关注,它不仅在所有的智能材料与结构的国际研讨会上提出,并且已经成为一个专门的研究课题。在国际上开展的各个关于结构健康监测的专题研讨会上集中讨论和总结了国际结构损伤检测领域的研究成果,提出了需要进一步研究和亟待解决的问题,极大地推动了结构健康监测技术的发展。
需要进一步研究的问题有:(1)新型传感器和激振器的发展;(2)损伤识别和整体特征描述与评价;(3)系统整体性的研究;(4)结构损伤检测技术在民用结构、桥梁、高速公路系统、大型高层建筑、电厂结构中的进一步应用。
李国强,李杰.工程结构动力检测理论与应用[M].北京:科学出版社,2002.
姜绍飞.基于神经网络的结构优化与损伤检测[M].北京:科学出版社,2002.
关键词:网络安全;评价方式;应用;探讨
中图分类号:TP393文献标识码:A文章编号:1007-9599 (2012) 03-0000-02
The Study of Comprehensive Evaluation of Network Security
Sui Zhenyou1,Tong Lu2
(1.Institute of Adult Education,Inner Mongolia University for Nationalities,Tongliao028043,China;2. Xingan Vocational and Technical College,Xinganmeng137400,China)
Abstract:Network security is a complex project,this is closely related to computer networks,information security issues more and more people's attention,therefore,to develop an effective and scientific network security policy is to ensure that the network information security protection,which requires network security risk assessment,development of a comprehensive evaluation of effective network security is also particularly important.Start of network security evaluation and comprehensive evaluation of the three types of network security are discussed from two aspects of the evaluation principles and evaluation model for comparison and reference.
Keywords:Network security;Evaluation methods;Application;Explore
一、引言
当今计算机网络技术迅猛发展,与此同时其网络安全问题也日益凸显,也成为计算机网络技术发展所需要解决的迫切问题[1]。因此需要对网络的安全状况进行合理和有效的评价,以帮助用户全面掌握网络安全状态,及时采取必要的防范措施,以确保网络的安全。目前在对网络安全的评价方法上,主要依靠查找系统的安全漏洞或者薄弱环节,进而对系统的安全性能进行测试评估。然而,计算机网络安全所涉及的领域太广,需要运用系统工程的思想方法才能对网络的安全状况做好有效的评估和得到准确的评价结果。我国在计算机网络安全的评价理论和方法研究上,虽有些学者对其进行了研究,但是研究成果还比较分散,仍未形成系统和科学的体系。对此,针对网络安全综合评价方式的研究现状,有必要对其进行梳理,为促进其深入研究提供参考。
二、三种网络安全综合评价方式探讨
网络安全综合评价具体包括了三个方面的内容,一是建立评价指标体系,二是需对评价指标实施标准化的处理,三是采用合适的评价方法。其中,评价指标选取的合适与否对综合评价有着基础性的影响,因此在对其的选取上务必要合理和科学。由于网络安全评价属于复杂工程,采用以往的定性或者定量方式都难以取得理想的评价效果,因此必须要寻找更为科学和有效的网络安全综合评价方式。
(一)基于层次分析法的网络安全综合评价方式
原理:层次分析法可以在对网络安全综合评价时把定性分析和定量分析结合起来,它的原理是:首先是对问题进行层次化分解,在该过程中对系统对象进行抽象化,转化为一个层次化、有序化的结构模型;其次是对同属层次中的评价指标进行互相比较,创建判断矩阵,产生评价指标相对权重;最后是计算每层指标的组合权重,获得各个指标相对于总指标的权重比较值,并进行排序,作为决策的依据。层次分析法可以把专家知识和人的主观判断结合起来,用数量形式进行表达和处理,将研究对象看作一个有机联系的整体,因而可以对系统进行有效的分析[2]。并且,采用层次分析法对网络安全进行评价,对影响网络安全的各种因素都可以充分考虑,有利于准确评价网络安全的风险状况。
模型:在用层次分析法构建网络安全综合评价模型前,很有必要了解与之相关的网络安全评价指标体系,以利于保障信息的完整性、可用性和保密性。目前在对网络安全进行安全评价的过程当中,还没有有效的指标体系建立方法,现在应用比较多的是德尔菲法,因其结合了不少专家经验和主观判断,可在概率上对很多不能进行定量分析的因素做出估算,并把评估报告报给评估专家,从而可利用信息控制及反馈来使评价意见收敛,最终得到一个协调的结果。采用层次分析法建立网络安全综合评价模型可以分为四个步骤,首先是要建立起网络安全的层次结构模型;其次是要建立起判断矩阵,再次是要计算指标权重,最后是要进行一次性检验。通常,可把网络安全的综合评价指标的层次结构模型分为三层,把网络安全定义为目标层,将管理安全、数据安全、环境安全及软硬件安全定义为规则层,把组织体系、制度管理、入侵检测、数据加密和数据备份等定义为措施层。判断矩阵是由专家知识对各层次的评价指标与上一层次的功能模型相对重要性进行互相比较,从而形成的一个数据矩阵。在对指标权重的确定上,需要按照一定的顺序进行,步骤如下:以专家经验为依据,对准则层相对于安全目标层的指标权重进行判断,确定其最大特征值和特征向量,再进行归一化处理,从而取得相应的权重系数;同理,可以计算确定措施层相对于准则层的每项指标权重系数;最后把上面两次计算出来的指标权重相乘,得到合成的权重,以表示措施层相对于安全目标层的合成权重。由于专家在各指标重要性的判断上存在差异,因此,还很有必要根据相应的判断矩阵一致性指标公式对判断矩阵实施一致性检验,以检验其一致性程度。
(二)基于模糊评价法的网络安全评价方式
原理:基于模糊评价法的网络安全评价方式是一种将定性分析和定量分析结合起来,综合化程度高的网络安全评价方式。所谓模糊综合评价法属于一种应用模糊数学的综合评价方法,其依据模糊数学中的隶属度理论将定性评价转变为定量评价,由模糊数学对受因素制约的对象作出总体评价,不但结果清晰和系统性强,而且可以有效解决一些模糊及难数量化的问题,因而在解决多种非确定性问题上具有很明显的优势[3]。
模型:建立网络安全的评价模型,需要做到以下几点:一是注意评估要素。网络安全的风险是由于各种外部的威胁因素通过其漏洞对资产价值造成破坏,其值是资产价值、网络脆弱等级和网络威胁评估等级的函数。二是资产评估。通过资产评估,可以提供重要资产价值评估和确定漏洞扫描器分布等。三是威胁评估,其主要包括评估各种类型资产薄弱环节、可能的威胁类型、各种攻击代价等。四是评估方法。评估方法是采用模糊数学的概念和方法,以便于得到简单易用的评估结果。采用模糊方法对网络安全进行安全评价时,首先要确定好隶属度函数,按照某一标准对包含所有评判因子在内的因素集合进行分组,一般把性质相近的因素放到一起。其次是建立好关系模糊矩阵,设置每个单项指标集合和风险级别集合,并对每个单项指标进行评价,由各自相关的隶属度函数来求出每个单项指标相对于风险级别的隶属度,从而得到关系模糊矩阵。同时,还需要根据相关条件来确定权重模糊矩阵。最后是根据权重模糊矩阵与关系模糊矩阵来确定模糊综合评价模型,通过把两个模糊矩阵相乘,所得的矩阵即是模糊综合评价模型。
(三)基于BP神经网络的网络安全评价方式
原理:BP神经网络是当前应用最为广泛的神经网络模型之一,最早由1986年的一个科学家小组提出,属于一种按误差逆传播算法训练而得的多层前馈网络。BP网络可以学习和贮存大量输入到输出模式的映射关系,不需先揭示描述该映射关系的数学方程。它通过使用最速下降法作为学习规则,由反向传播不断调整网络权值和阀值,从而可使网络的误差平方和取到最小。
模型:BP神经网络一般由输入层、隐含层及输出层构成。可以用BP神经网络来逼近在任意区间内的连续函数,实现相关的从输入到输出的映射关系。BP神经网络的模型在计算时采用梯度搜索技术,计算时,输入信号从输入层进入,再经隐含层单元的逐层处理,传到输出层,上层神经元仅影响下层神经元的状态。若输出层未能得到期望的输出,会转到反向传播,把输出信号误差按原连接通路返回,修改每层神经元的权重,使误差最小[4]。
基本评价步骤:首先是对网络初始状态进行初始化,主要是对相关的连接权值和阀值赋予-1到1之间的随机数;接着把第一个输入样本对输入;接着计算中间每层神经元的相应输入值和输出值;接着计算相关的连接到输出层单元和中间层单元的权限误差,接着对相关连接权值和阀值进行更新;再接着输入下一学习样本对,到全部模式对训练完毕,再开始新一轮的学习训练,直到满足相应的结束条件。
在网络安全评价中的应用。由于BP网络具有出色的非线性处理能力,可以有效解决在信息模糊、矛盾频杂等复杂环境下的判断和认知问题,在网络安全的评价当中也有广泛的应用。例如,有学者用BP网络对投资风险进行了评估研究,取得了良好的成果;有学者在电力系统中运用BP神经网络进行安全评估;也有学者将BP神经网络对地震灾害进行了评估。又如,有国外学者将BP神经网络应用于桥梁系统的性能评价当中,证明了其在方案评价中的潜力和效率;国内也有学者把BP神经网络应用于信息管理系统的综合评价和多目标综合评价当中,取得了不少研究成果。
三、结语
网络安全保障体系的建设将是一个长期和复杂的系统工程,不仅需要加强技术支撑和制度管理,还需要运用科学有效的网络安全综合评价方式对安全风险进行评估,根据安全评估报告采取相应的安全措施,从而使安全风险在可控的范围内。本文主要从原理和模型方面比较具体地探讨和梳理了层次分析法、模糊评价法和BP神经网络在网络安全综合评价中的应用情况,结果表明这三种方法在对网络安全综合评价中的应用可以使评价结果更加客观和准确。
参考文献:
[1]许福永,神剑,李剑英.网络安全综合评价方法的研究及应用[J].计算机工程与设计,2006,27(8):1398-1400
[2]李健宏,李广振.网络安全综合评价方法的应用研究[J].计算机仿真,2011,28(7):165-168
本 科 生 毕 业 论 文(设计)
本 科 生 毕 业 论 文(设计)
题目 阵列化的非晶体纳米硅神经突触器件制备与数值模拟
姓名与学号 郑浩 315104964
指导教师 皮孝东
合作导师
年级与专业 2015级 材料科学工程
所在学院 材料科学工程
提交日期
A Dissertation Submitted to Zhejiang University for
Bachelor Degree of Engineering
Preparation and Numerical Simulation of Arrayed Amorphous Nano Silicon Synaptic Devices
Submitted by
Hao Zheng
Supervised by
Prof. XiaoDong Pi
School of Materials Science and Engineering
Laboratory of Silicon Materials, Zhejiang University, Hangzhou
People’s Republic of China
May, 20th, 2019
浙江大学本科生毕业论文(设计)承诺书
1.本人郑重地承诺所呈交的毕业论文(设计),是在指导教师的指导下严格按照学校和学院有关规定完成的。
2.本人在毕业论文(设计)中除了文别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 浙江大学 或其他教育机构的学位或证书而使用过的材料。
3.与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。
4. 本人承诺在毕业论文(设计)选题和研究内容过程中没有伪造相关数据等行为。
5. 在毕业论文(设计)中对侵犯任何方面知识产权的行为,由本人承担相应的法律责任。
6.本人完全了解 浙江大学 有权保留并向有关部门或机构送交本论文(设计)的复印件和磁盘,允许本论文(设计)被查阅和借阅。本人授权 浙江大学 可以将本论文(设计)的全部或部分内容编入有关数据库进行检索和传播,可以采用影印、缩印或扫描等复制手段保存、汇编本论文(设计)。
作者签名: 导师签名:
签字日期: 年 月 日 签字日期: 年 月 日
致 谢
致谢内容。(仿宋字体或Times New Roman,小四号,两端对齐,首行缩进两个汉字符位,段前0磅,段后0磅,固定行距20磅。)
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
致谢内容。
摘 要
信息时代的来临,人类在处理大数据与多信息的任务面前面临着很大的挑战,传统的冯-诺依曼式计算机思想在处理这些问题时出现了本质上的不足,因此神经网络的应用于硬件化变得十分迫切。随着忆阻器的发现,类脑计算的实际应用变得可能。本文从硬件神经网络的兴起出发,阐述了硬件神经网络的研究现状与实现途径,之后引入了生物神经元的特征,阐述了以往关于人类神经元建立的数学模型。之后本文提出了一种阵列化硅纳米晶体神经突触器件的制备方法与过程,并且在基于这样的器件上,得到相应的LTP与STDP数据,将这些数据分别用于探究:神经元激活函数数值模拟,有监督脉冲神经网络之tempotron算法数值模拟与STDP无监督学习网络数值模拟,在得到结果的基础上,提出了硬件化神经网络所需要的器件的基本性质与要求。为未来的硬件化目标提出了可行性与基本方向。
关键词:硬件神经网络;神经元;神经突触器件;激活函数;Tempotron算法;STDP;无监督学习
Abstract
With the advent of the information age, human beings face great challenges in dealing with the task of big data and multiple information. The traditional von Neumann-style computer thought has its essential shortcomings in dealing with these problems, so the application of Hardware
neural networks have become very urgent. The discovery of memristors made it possible for the practical application of brain-like calculations. Starting from the rise of hardware neural networks, this thesis firstly expounds the research status and implementation of hardware neural networks, and then introduces the characteristics of biological neurons, and expounds the previous mathematical models of human neuron establishment. After that, an arrayed hybrid silicon nanocrystal based synaptic devices have been prepared. Nervous function behaviors, e.g. LTP and STDP, have been obtained based on this device. These data are then separately used to explore neuron activation function values Simulation, numerical simulation of tempotron algorithm with supervised pulse neural network and numerical simulation of STDP unsupervised learning network. Based on the results, the basic properties and requirements of the hardware required for hardware neural network are proposed. The feasibility and basic direction for future hardware goals are proposed.
Keywords: Hardware neuron network; neurons; Synaptic device; activation function; Tempotron algorithm; STDP; unsupervised learning;
目 次
第一部分 毕业论文(设计)
A DiSubmitted to Zhejiang University for
I
III
V
VII
IX
第一章 绪论
1.1.1 硬件神经网络的兴起
1.1.2 硬件神经网络的实现
1.3.1 生物神经元介绍
1.3.2 人工神经元介绍
1.3.3 人工神经网络介绍
1.3.4 脉冲神经网络介绍
3.1.1 神经网络结构
3.1.2 神经元硬件化结论
3.2.1 脉冲编码
3.2.2 权值更新
3.2.3 数值模拟结果
3.2.4 LTP权值改变法
3.2.5 STDP权值改变法
3.2.6 结论
3.3.1 理论背景与基础
3.3.2 网络设计
3.3.3 模拟结果
作者简历
攻读学位期间发表的学术论文与取得的其他研究成果
第一部分
毕业论文(设计)
第一章 绪论
11.1 硬件神经网络1.1.1 硬件神经网络的兴起
21世纪进入信息时代后,计算机的普及率大大上升,计算机本身也在计算力与逻辑处理上远远超过了人脑,然而不足的是,在数据的存取与记忆上,仍然是采用冯-洛伊曼式的串行方法,且功耗很大,而人类大脑拥有10^11 个神经元和10^15神经突触。这使得人类处理信息的方式是高效的并行方式,并且功耗很低。例如人类大脑看到一种东西,识别它的过程往往使视觉神经信号与记忆信号同时作用的结果,功耗在fj量级。在使得冯-洛伊曼式计算机处理复杂指令与控制上体现出了根本性的缺陷。基于这一点,神经网络的研究开始兴起,在1943年,McCulloch 和 Pitts 提出了神经元的形式化模型后, 有关于神经网络的讨论也逐渐火热起来,但其发展的中途受到很多科学家对其的质疑[19]。直到 1980年左右, Rumelhert 与他的研究伙伴[20]一起发表了著名的并行分布式处理( Parallel Distributed Processing)方法的工作 , 并且建立了 BP 算法和前向神经网络,从数学上的形式,证明了这种算法的可行性,BP神经网络是一种前馈式的误差逆向传播网络,通过训练集不断缩小输出值与目标值的差值从而达到非线性优化的目的。由此,神经网络的数学原理得到证明,其实在1970年神经网络存在一段低落期,也受到了很多怀疑。但是BP神经网络的兴起与提出,让科学们对于神经网络的态度再次火热起来。21世纪随着深度学习的提出,又掀起了一股关于人工智能的热潮,Deep learning 是在多层感知机的基础上,不断增加隐含层的层数,这上面又出现了一些数学上的问题比如激活函数的梯度弥散问题,但是由于Relu激活函数替代sigmod函数的提出,这些问题逐步得到了解决,深度学习向前发展了一大步。比如IBM的“深蓝”击败世界围棋选手李智石等,但是实际上,“深蓝”在击败李智石时消耗的电量等于一桶油的燃烧的焦耳值,但是李智石仅仅使用了两个馒头的热量战斗。也就是说,这场比赛其实并不公平。其实这反应的是人工智能的工作效率与真正人脑的学习效率仍然有很大的差距。神经网络本质是由多个简单的信号处理单元组成,这些简单的信号单元之间由一种方式连接形成网络,它意在模仿人类大脑处理信息的模式,从而实现图像识别,音像识别,特征提取和记忆等功能。现在计算机能够从软件上对神经网络进行实现,然而关于数据的存取方式仍然无法得到突破,数据的存取方式仍然是老式冯-诺依曼式的串行处理方式。但是人类识别图像,获得信息是并行的。因此硬件神经网络的开发是必要的,硬件神经网络能够使用集成电路实现并行处理信息,并且能耗低,效率高,能够更贴近人类大脑的工作方式。因此硬件神经网络的开发受到很多的关注与研究,未来人工智能和类脑计算的发展前景中,硬件神经网络的研究是必须的。
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T09:23:00'w
NOTE: '这部分放到前言部分比较好,或者干脆就不要了,放在这里是不合适的。']本文的第一章即绪论,主要是阐述当前关于硬件化神经网络的突破,现状与发展形势。
第二章主要从人类的神经元开始,讲述人类生物神经元的特点,讲述现在人工神经元的数学模型,以及硬件化神经元需要的要求与方式
第三章主要讲述制备实验器件的技术路线,与制备的过程和使用的材料
第四章从数值模拟的角度,探究神经元硬件化的条件是怎么样的,数值模拟选取MNIST数据集作为样本数据集,通过使用实验得到的激活函数替论激活函数,观察网络的准确率,得出相关结论,探究硬件需要满足的条件
第五章从数值模拟的角度,探究突触硬件需要满足的条件,突触与神经元不同,它是作为神经网络中存储权值,改变权值的存在,与神经元有本质上的区别,数值模拟采用26个英文字母的图片作为数据集,进行编码后发送脉冲,使用Tempotron 的有监督脉冲神经网络进行数值模拟,通过实验硬件得到的LTP与LTD图像进行权值更新。得到预测率的图像,证明了LTP的电或者光电器件能够作为脉冲神经网络硬件化的一个器件,为未来做出相关硬件网络道出了一种可行性。
第六章主要是针对STDP的学习机制扩大网络规模,将数据集扩展到MNIST手写数据集,使用STDP无监督学习网络[16]对数据进行训练,之后再对训练好的神经元进行分类。得到我们想要的结果。
第七章主要是总结本文的工作得到的结论,以及对于未来硬件神经网络的发展的一些展望与看法
1.1.2 硬件神经网络的实现
一般硬件神经网络的实现方式有三种,即采用电子学方法——依靠微电子技术实现人工神经网络, 采用光电方法——依靠半导体光电集成技术实现人工神经网络, 采用光学方法实现人工神经网络[18]。微电子技术应该是通过各种电路设计,例如放大电路,差分电路等集成电路,实现神经网络的reference部分。依靠光电实现的硬件神经网络是本文的重点,利用电学元器件,忆阻器器件,或者是光电器件,模拟生物神经元的膜电位变化曲线,与人类大脑的权重学习规则,从而实现神经网络的硬件化。采用光学的方法实现网络计算的方法十分有趣,UCLA大学的研究小组发明了一种全光的深层神经网络,通过光的反射与折射传递信号,利用光入射的相位差记录权值变化,实现了全光的神经网络,而且由于光的传播速度是光速,在整个网络的效率与速度上都十分惊人,能耗也十分低[21]。神经网络的电子学硬件实现方法主要有四种,其中分别是数字实现、模拟实现、混合数/模实现和脉冲技术实现等[18]。通过数字实现的神经网络一般精度很高[1,2],权值易存储也容易改变,并且能够通过电路实现并行处理,克服传统计算机串行处理数据的弊病,但是缺点是电路难以集成,体积很大,很难适用于计算机新型芯片这种地方。通过模拟实现的神经网络能够很好克服上面的缺点[3,4,5],但是由于突触和神经元器件对参数敏感,准确度下降,更关键是对于权值的存储存在困难。1987年是一个转机,即脉冲技术第一次用于了神经网络,使用VLSI技术作为实现,从这以后,神经网络的脉冲技术受到了很多关注[9,12]。
脉冲技术,简单来说就是将神经元的兴奋或者抑制状态通过一定的编码方式转化到脉冲的波形上,编码的方法一般有高斯编码,或者可以自定义的编码方式。由于脉冲化的信号是离散的,因此一定程度上可以简化运算电路:例如突触电路。神经元与一般的电路元件不同,它本身的密度很高,正如人类神经元的密度很高一样。这种紧密的排列方式使得脉冲信号把芯片和外围设备的接口变得更容易连接。本文正是利用从脉冲神经网络出发,制备出硬件化的元件,通过数值模拟硬件的实际可行性,并且对于未来硬件化神经网络的方向提出一些看法
21.2 硬件神经网络研究进展当前的人工神经网络存在三种模式,第一种是非学习型神经网络,即网络的前馈过程与权值计算过程全部由软件进行实现,权值是固定不变的,只用神经网络的电路结构完成之后,再与实际电路结构匹配即可。另外一种是on-chip的模式,即前馈过程通过微电子电路进行实现,权值的更新与计算通过计算机实现。还有一种off-chip模式,即是一种全自动的自主性芯片,从神经网络的前馈环节到神经网络的BP算法实现都一并完成。目前的研究状况,我们已经能够熟练通过电路的设计实现非学习神经网络。在on-chip式的人工神经网络上,我们也能通过一定的模拟方式得到实现。现在的当务之急是开发off-chip式的神经网络,使用硬件对权值的存储与改进是必要的。自从20世纪60年代后期引入忆阻器概念以来,由于其简单性和功能相似性,它们被认为是模拟突触装置的最有希望的候选者。2008年,惠普公司公布了基于TiO2的RRAM器件[6],开拓了RRAM和忆阻器之间联系,做出了一定的应用之后以非易失性存储器件和神经突触晶体管为代表开始成为神经突触器件的基础。但将这些器件用于第二代神经网络(也就是多层感知机)上,取得了一定的成就,现在关于这方法的也在如火如荼的进行着,但是由于第二代神经网络的基础仍然是基于计算机的算力达到的深度,也就是说,加深隐含层的数目提高准确度,知识因为有着强大的计算芯片作为支持。我们需要考虑一种完全类似于人脑思考问题的神经网络与算法,于是脉冲神经网络开始兴起,并且被誉为第三代神经网络,这是一种完全基于人脑计算模式的神经网络,从长程记忆可塑性LTP,时间可塑依赖性STDP等研究的深入,这一网络的硬件化也成为了可能
31.3 从生物神经元到人工神经网络1.3.1 生物神经元介绍
人的大脑中有超过 1011个神经元,这些神经元之间的连接的突触又大约有10^15个,这些突触使得神经元互相连接,从而构成了复杂多变而又有条不紊的神经网络[7]。这些神经元的单独处理信息的速度并不算很快,但是人类的大脑能够很有效的利用这些神经元并行处理。即大量神经元一起处理一个任务,这有些类似于计算机里的多线程并行操作算法。人类大脑的神经元数目虽然庞大,但是它的能耗低却是特点,我们每日摄入的热量与一些机器的能源是不能够比拟的,然而我们的大脑就能够实现很多计算功能,有数据显示,脑神经系统一个动作每秒消耗的能量比最优秀的处理器能耗小1010个数量级。
人的生物神经元有两个部分,分别是细胞体和突起。具有处理并且整合输入的神经信号,然后传出这些信息的作用。突起有树突和轴突两种。树突相对较短但分枝很多,其作用是接受其他神经元轴突传来的冲动并传给细胞体。轴突长而分枝少,常常出现在轴丘,一般为粗细均匀的细长突起,其作用是接受外来刺激,再由细胞体传出。神经元与神经元之间的连接被称为神经突触,两个神经元之间连接强度或者关联程度体现在突触的连接强度。一般而言神经元有以下的特点[8]:
1):可塑性:即神经元之间的突触可以连接,也可以取消,连接可以变强,也可以慢慢变弱,方便与人类去适应不同的环境。
2):兴奋与抑制:神经元受到外界刺激之后,会产生膜内外渗透压的差别从而导致Na+或者Ca2+的流入或者流出,这些离子的迁移会产生动作电位,导致膜电位的上升或者下降,也就对应了人类神经元的兴奋和抑制过程。
3):学习与遗忘:由于可塑性的存在,当人类在长时间受到同一种刺激的时候,会产生我们的所说的学习功能,而这种功能其实是神经元之间的连接得到了加强,同理,如果我们慢慢遗忘了一些东西,是因为长期不去使用从而神经元之间的连接衰弱了。对应的有LTP,LTD图像来进行表征。
4):突触的延时和不应期。神经冲动的传递在突触中是需要时间的,一般这个时间是1-150ms。另外,神经元也不会在短时间内接受两次冲动,一般需要间隔一定的时间,这个被称为不应期。
从上面可以看到,想要用神经元器件模拟人类的生物的神经元,一定要从生物本质和特征去进行模拟。本文后面的数值模拟会再把这些特征一一强调一次,从而达到一种仿真的目的。
1.3.2 人工神经元介绍
早在1943 年 McCulloch 和 Pitts 提出了神经元的形式化模型, 神经元可用简单的zha值函数表示,并完成逻辑函数功能[19]。20世纪初期,美国心理学家Willian Jame 提出,一个神经元应该是同时接受来自不同神经元的信号后,由于不同神经元之间的突触连接强度不同,神经元相当于是一个加权和,并且由于兴奋存在一个阈值电压,需要一定的电压值才会fire,因此神经元可以用一个数学模型来勾画,即著名的MP模型。
y=f(∑i=1nwixi+b)
(2-1)
其中,表征每个神经元的输入值,表征神经元之间的连接强度,b代表阈值电压。外界的f函数则是一种神经元的处理函数。
图1-1 MP 神经元模型
Fig.1.1 Neurons model
可以看到,对于神经元的硬件实现实际上是一个乘法器的实现以及加权和非线性处理,这个可以通过放大电路等进行实现。后续本文也将探究一下神经元应该具备怎样的条件,或者怎么样的器件适合作为神经元器件。
1.3.3 人工神经网络介绍20世界80年代,J.Hopfield 提出了 Hopfiel 神经网络, 引起了神经网络理论在优化学术界的轰动。然而热潮还远远没有结束。1986年,Rumelhart和McCelland提出了BP神经网络,这种神经网络是现在很多网络算法的基础,它是一种依靠逆向传播输出值与实际值误差修正网络权值的网络,利用梯度下降算法或者随机梯度下降法降低目标值与实际值的误差,随机梯度下降算法时为了加速算法收敛速度提出的更好的方式,现在很多网络也应用这种方法
图 1-2 经典的神经BP神经网络模型
从图中我们可以看到的是,网络一般由输入层,隐含层和输出层三个部分构成,其中输入层可以是图像的像素值,音频信号等等,因此神经网络现在广泛用于人脸识别,图像识别,声音识别等等领域。隐含层的多少是决定一个网络是否是深层网络的基本要素,隐含层如果越多,那么挖掘的信息,提取的特征就越难以用表面语言描述,训练的精度也会逐步的提升。输出层是网络的输出,网络的输出后往往会选择一个损失函数,这个损失函数是用于衡量目标值与实际值的差值从而进行误差反向传播计算。常见的损失函数有MSE函数,Cross-Entorpy函数等等。
图1-3 硬件神经网络的一种实现[15]
基于经典的BP神经网络MLP的硬件实现如上图所示,使用电路模拟整个网络的结构,在电路横向与纵向的cross_bar 的地方放置突触装置,利用电流与电压的比值进行权值的存储与更新。这样的网络往往需要得到的I-V曲线是对称的,就是说,权值的变化需要是随着强度的增加而增加,减少而减少,呈现一种线性的变化,从而保证在进行BP算法时,误差能够不断减小。
1.3.4 脉冲神经网络介绍随着在21世纪早期计算能力的显现,DNN(多层感知器,深层信念网络,传统神经网络等等)迅速发展,DNN的基本特征是有很多隐含层,这些神经网络能够实现监督与非监督学习,并且能够优秀的完成有大量数据的任务。然而实际上,现在的DNN的优秀来源于GPU的并行加速机制,是在计算机多核算力上的体现,在其本身的算法上,其效率远远不如人脑高。SNN(脉冲神经网络)最近引起了很多关注,因为它们与生物系统非常相似,在SNN中,输入信号是尖峰,而不是传统神经元中的恒定馈送。 人们普遍认为能够处理尖峰是大脑在序列识别和记忆方面如此壮观的主要原因之一[9]。序列识别是计算中更重要的主题之一,因为它直接影响系统处理强烈时序依赖的刺激的能力,例如语音识别和图像检测[10]
图1-4 STDP图像
对应STDP的最简单理解是,如果前突触神经元的信号在后突触神经元的信号之前达到,有理由认为前突触的信号导致后突触神经元的信号产生,那么这两者之间的突触连接强度应该增加,反之就该减少。但如何保证这种训练模式一定是有效的呢?Bengio 和 Fischer 两人在2015发表的文章[11]指出具有对称反馈权重的网络将具有以下特性:“输出单元”的小扰动将向更好的预测传播到内部层,使得隐藏单元移动到大致遵循预测误差J相对于隐藏单元的梯度。而STDP规则大致对应于预测误差的梯度下降,即STDP的规则其实和SGD算法有着异曲同工之妙。Scellier和Bengio(2016)报告的实验已经真实地表明这些近似值可以工作并且能够训练有监督的多层神经网络[12]。
脉冲神经网络被称为新一代神经网络,与经典的神经网络不同在于它的输入实际上不是一个连续值而是一系列脉冲,更为重要的是他的神经元膜电位,一旦达到了膜电位的峰值,那么这个神经元就被激活,后面的脉冲会进入一段不应期。关于神经元的模型,已经提出了HH模型,Izhikevich模型与LIF模型,其中以LIF模型为例,其微分方程的表示如下:
τdVdt=−(V−Vr)+RI
(2-2)
τ
是膜的时间常数,R为膜电阻,V是膜电位,Vr是复位电位,I是注入电流,当膜电压超过一个阈值时,神经元会发送一个脉冲。如果后面没有连续的刺激,这个产生的脉冲信号会不断衰退,膜电位也会恢复到复位电位后稳定。之后再接受电流再刺激。
针对脉冲神经网络的学习过程,也分为有监督学习和无监督学习,无监督学习主要以STDP为主[13,14],有监督学习包括Tempotron算法,ReSuMe算法和SpikeProp算法等等。本文主要采用Tempotron算法,下面做个详细的介绍:
在Tempotron算法中,考虑在阈值下,突触前神经元产生的脉冲信号,对突触后膜电位(PSPs)的贡献是来自所有脉冲输入的加权和:
V(t)=∑iωi∑tiK(t−ti)+Vrest
(2-3)
ti
表示第i个神经元的脉冲发送时间,
K(t−ti)
表示第i个脉冲对于膜电位的贡献,即突触前神经元发出的脉冲对于突触后神经元膜电位的影响。其标准形式如下:
K(t−ti)=V0(exp[−(t−ti)/τ]−exp[−(t−ti)/τs])
(2-4)
τ,τs
是时间常数,为了保证K(t)在(0,1)之内变动,我们需要用V_0进行归一化处理,K(t)图像绘制如下图:
图1-5 K(t)随时间变化图
由监督学习的重点是要将权重更新向着误差减少的方向进行,获得期望的输出脉冲,更新规则如下:
Δωi=λ∑ti−tmaxK(tmax−ti)
(2-5)
即以二分类为例,ti
为突触前神经元峰值的产生时间,这里的
tmax
设定为我们设置的时间序列的终点,默认为突触后神经元的峰值的产生时间,但这和一般的STDP不一样,因为STDP的神经网络训练规则实际是不需要有监督的,而这里有一个参数
λ
,用于控制输出值与期望值的误差方向,如果突触前神经元产生峰值超过阈值电压的神经脉冲,并且突触后神经元指向分类标准与前神经元指向的分类相同,则不需要修改权值(说明这个连接正确),如果突触前神经元峰值未超过阈值电压,那么需要根据上式指定
λ
>0,并且计算需要增加的权值。反之当
λ
<0时,需要进行减小权值。总体看来,这是在借助有监督学习的条件下,在明白误差修正方向下利用STDP中的LTP与LTD曲线获得修正的幅度(可以认为是学习的速率),从而使我们获得期望的输出。注意上面提出一种概念:即在有监督学习的条件下,后突出神经元的峰值由标签值决定,并且根据误差值指明误差修正放向(体现为
λ
的正负性),然后依靠STDP决定修正幅度。这也是一种将STDP曲线用于有监督学习的可行性展示。
第二章 实验部分12.1 阵列化基于硅纳米晶体杂化结构的神经突触器件制备2.1.1 制备技术路线在本论文里面,采用了冷等离子方法制备了掺B的Si量子点,相比于其他的掺杂方法,冷等离子法是借助了动力学的原理,从而实现了对硅纳米晶体的高效掺杂,一定程度上避免了利用热力学原理来掺杂的过程中出现的“自洁净”现象。相比之下能够实现比较高浓度的掺杂。
图2.1 使用冷等离子法制备掺杂硅纳米晶体示意图
使用冷等离子体法制备掺杂硅纳米晶体的装置设计示意如图2.1所示。先准备每分钟流量值12标准公升的硅烷氩气混合气(20% SiH4)、157 sccm的硼烷氩气混合气(其中含有0.5% B2H6)和105 sccm的高纯氬气通入到石英管中混合,调节系统尾部的真空泵,使腔体内的气压稳定在6 mbar。石英管中间部位套有两个铜环,分别接匹配箱和射频发生器的正负两级。在射频发生器(功率约为150 w)的激发下,铜环之间的石英管内将产生等离子体,混合气体在通过等离子体区域时将会发生分解反应,这个反应的产生是因为气体受到了高能粒子和电子的轰击产生的,具体化学反应式如下:
SiH4⃗Si+H2B2H6⃗2B+3H2
在器件制备方面,本文利用硅纳米颗粒的光电性能与以及表面缺陷对载流子具有俘获的性质,首先与钙钛矿进行杂化形成混合容易。通过旋涂工艺制备成了太阳能电池结构的神经器件,器件的结构是:Ito/pcbm/钙钛矿与硅量子点杂化层/spiro/Au。在该结构里面,ITO是通过光学刻蚀得到。PCBM, 钙钛矿与硅量子点杂化层, Spiro是通过旋涂方法得到。其中钙钛矿CH3PbI3与硅量子在DMF溶液(461mg PbI2, 159mg MAI, 71uL DMSO, 630 ul DMF.。Si量子点在溶液里面的浓度为10mg/ml.杂化旋涂后就制备出了膜。)里面。硅量子点掺杂B,掺杂B的硅纳米晶体尺寸是6nm, 钙钛矿膜厚大概在300nm左右,晶粒尺寸大概在200nm。Au电极采用热蒸发工艺得到,厚度大约为100nm。
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T10:15:00'w
NOTE: '这一段是不是应该要删掉?']2.1.1 器件制备路线
在器件制备方面,本文准备利用硅纳米颗粒的光电性能与decay长的性质,与钙钛矿进行杂化形成自驱动电池,在制备电池的工艺上,选择旋涂工艺做成太阳能电池的结构,器件结构分别是:Ito/pcbm/钙钛矿与硅量子点杂化层/spiro/Au,之后使用热蒸发工艺将电极Au安装上,设置厚度大约为100nm。钙钛矿CH3PbI3与硅量子在DMF溶液(461mg PbI2, 159mg MAI, 71uL DMSO, 630 ul DMF. Si以DMF为溶剂,浓度为10mg/ml. 杂化旋涂后就制备出了膜。)里面。硅量子点掺杂B,掺杂B的硅纳米晶体尺寸是6nm, 钙钛矿膜厚大概在300nm左右,晶粒尺寸大概在200多纳米。段落内容。
第三章 数值模拟13.1 神经元硬件化数值模拟3.1.1 神经网络结构对于神经元的模拟,和突触的模拟不同,神经元的功能由上文中的MP模型已经表述很清楚,他承担一个乘法器和加权和、还有实现一个神经元函数的功能,这个功能也是我们下面模拟要探索的。
图3-1 MINST数据集对于的神经网络结构
采用常用的MNIST手写识别数据集作为整个网络的输入,先将图像的RGB值转换成一个单位的灰度值,设计输入层应该有784个节点,隐含层300个节点,输出层设置10个节点,分别对应0-9个数字的pattern。在实际模拟时,采用两种方式处理,第一种是利用STDP非线性函数直接对输入的图像像素值进行处理,意在将灰度值转换为强度值。再用网络进行训练。第二张利用STDP非线性函数作为神经网络中的激活函数,意在探究神经元的基本性质。
训练模式采用SGD算法,样本集总共55000个图片,每张图片28×28有784个输入值,epoch设置扫描样本集10次以上,损失函数使用交叉熵函数,激活函数选择softmax函数进行激活分类,因为这个函数比较适合于多分类问题,在优化上也得到了理论的证明。首先我们先将实验中得到的STDP数据拟合结果如下:
图3-2 STDP Positive 拟合图像
这里故意选择了一个与常规激活函数相关性为负的激活函数,一般的激活函数比如sigmod,relu激活函数,其强度其实和输入值是呈
[ANNOTATION:
BY 'wenhuang'
ON '2019-05-23T10:23:00'w
NOTE: '什么意思']现正相关的,这里选取的作为负相关的原因是想探究是否能够作为激活函数使用。其结果如下:
图 3-3 拟合的Loss与Accuracy随训练次数的变化图
可以看到上述的结果是可观的,也就是说,激活函数的选取,与是否与输入值正相关没有关系。另外我比较了理论激活函数,实验激活函数,与对输入直接非线性处理得到结果的异同性:
图3-4 三种不同方法得到Loss函数变化情况
图3-5 三种方法得到的Accuracy变化情况
可以看到,理论激活函数(红色)在准确率上仍然时最高的,最后的样本内准确率有98.42%,但在loss的下降速度上,实验激活函数体现的更好,但实验的激活函数最后准确率只有96.69%。
3.1.2 神经元硬件化结论根据上面的模拟结果我们可以得到结论,对于神经元的硬件模拟,作为激活函数,只需完成非线性这个条件即可,但是在实现乘法器的过程中,需要电路由很好的线性度。这个线性度的要求实际是从BP算法的推导中获得的,这里简单的推导一下:
Δw=∂Loss∂w=∂Loss∂y∗∂y∂output∗∂output∂w
(3-1)
上式想说明的是,我们需要调节权值w使得我们计算出的loss函数达到最小值,因此我们需要求其导数从而获得调整的方向,可以看到等式右边第一项实际是损失函数对于输入值的导数,第二项时激活函数对于输入值的导数,这两项在有输入值的条件下是可以求出的。而根据神经网络的矩阵运算:
output=w⋅x+b
(3-2)
可以看到,output值与输入的值时存在线性关系的,那么也就是说,我们权值变化量Δw
与输入的x需要满足线性关系。因此神经元硬件化需要实现的线性度不仅仅影响了加权的效果,还影响到权值更新的效率性。很多关于神经网络硬件化的论文一定会提到这个线性度,因为这个线性度时实现神经网络算法达到收敛的基本保障。
图3-6.a SET与RESET模式下的I-V曲线;b SET模式下的权值变化随刺激次数的变化;c RESET模式下的权值变化随刺激次数的变化[15]
如上图清华大学完成的忆阻器神经突触器件,选取电导作为权值时,需要I-V曲线在第一二想象有近似的对称值,其导数值(即权值)随着固定电压的刺激次数线性增加或者减小。一般而言,在硬件神经网络进行权值跟新的时候,会选择一个固定更新电压,在这个指定的电压下,我们需要保证权值的正向更新与负向更新有近似的值,这个在图像上体现为图像的对称。之前也有文章在图像的对称性上做了相关的材料探究。证明这样的对称性是必要的
23.2 有监督脉冲神经网络数值模拟3.2.1 脉冲编码脉冲神经网络与第二代神经网络最为不同的一点在于,它的输入并不是一系列连续的值,不是像图像像素一样一个个数据连续计入,也没有二值化的操作。而是离散的脉冲值,就图像识别而言,简单的多层感知器输入是输入图像的RGB值或者是图像的灰度值,将这些值进行标准化后作为网络的输入。而脉冲神经网络需要对于输入进行一定的脉冲编码处理,这个处理可以自己选择,但转化的思想很重要。即将图像的灰度值信息编程处理成一系列脉冲,并且将脉冲发出的时间作为网络的输入。下面介绍本文中tempotron算法的编码方式。
选取26个英文字母A-Z作为需要识别的样本集。每一个字母由一张16×16像素的图像组成,且该图像只有0和1两种灰度,即非黑即白。因此我们输入一张图片后,它会编程一个16×16的二值矩阵,我们将这一的二维矩阵一维化,使其变成1×256的一维数组,然后我们对其进行编码,每次随机从256个数中随机去8个数且不放回,组成一个32×8的新矩阵,对于每一行数,得到的是一个8位的二进制数,因此我们将其转化成十进制数,得到一个0-255范围的数,将原来的矩阵转化成了32×1的矩阵。且每一行代表一个脉冲的发送时间,即将一张16×16的图像矩阵转化成了在不同时间一共发送32次脉冲的输入值。
3.2.2 权值更新按照tempotron算法的权值更新规则:
Δωi=λ∑ti−tmaxK(tmax−ti)
(3-3)
我们需要设置一个时间轴,并且对于这个时间轴上进行时间窗口的划分,等于说我们需要将这个时间轴切割成一份份来进行一个个的循环。由于之前在输入编码的时候,我们将16×16像素的黑白图像转换成了发送32次脉冲的输入,这些输入的脉冲的时间是0-255,也就是说,我们建立一个长度为256ms的时间轴,并且以1ms为一个时间窗口,每次检查在当前时间窗口前是否有脉冲输入,并且每次都选取在当前时间之前能够发送脉冲的数据,认为他们发送一次脉冲,将这个脉冲与核函数相乘,作为我们膜电压,如果膜电压超过了我们设置的threshold电压值,我们则认为该神经元处于fire状态,并且会进入一段不应期,即shut down后面在256ms内的所有脉冲输入。我们输入是5个神经元,这是因为我们需要对26个英文字母分类,即用5个二进制数最大可以表示到0-31的每个数,于是我们用5个二进制数表示我们分类的pattern,例如字母A我们使用00001表示,字母B用00010表示。以此类推。当神经处于fire状态时,它会表现出1的状态,反之如果它没有能够达到阈值电压,它会处于0的状态,我们将网络的输入与我们准备好的标签值进行对比,如果说产生了不同,即分类产生了误差,我们就需要对其进行权值更新,从而在慢慢的训练过程中,获得我们期望得到的脉冲值。
即如果网络发出了脉冲,但是实际没有发送脉冲,我们降低该脉冲产生的权值,从而让其在后面慢慢变得不发出脉冲。
如果网络没有发出脉冲,但是实际输入应该发出脉冲,我们应该强化该脉冲的产生,即增大其权值。
图3.7 训练前脉冲与训练后脉冲对比图
我们设置1.0 v为阈值电压,可以看到,随着训练次数的增大,一开始正的脉冲倾向于在后面发出超过阈值电压的脉冲。但是一开始负的脉冲,虽然一开始超过了阈值电压,但是由于随着训练次数的增大,变得不断被抑制,不再发出脉冲。我们的网络就是基于这样一种思路去训练与优化。
3.2.3 数值模拟结果数值模拟上,本文选取了两组实验数据进行了权值更新法则函数的模拟,即使用实验得到的LTP与STDP数据进行了数值模拟,并且对比了两者在应用于tempotron算法的差异,提出一定看法。
3.2.4 LTP权值改变法数值LTP曲线是模拟人类大脑学习时候的长程可塑性,在图像上体现为,施加一段固定脉冲间距和脉冲峰值的脉冲,使突触器件的模拟膜电压升高,经过一段时间再进行了衰减。表现的图像如下:
图3.8 LTP拟合图像
线是得到实验的LTP数据后,使用神经网络算法进行拟合,得到完美拟合的曲线,这样保证了能够使用完全的实验数据。另外由于实验的数据仅仅有LTP数据,然而对于我们的模拟也需要LTD数据,基于我们对于这两个图像的了解,他们在一定程度上是中心对称的。我们通过对于LTP数据的神经网络拟合,外推LTD的数据,将LTD的数据应用于模型的抑制环节,保证权值的增加与减少对称。
将LTP的数据带入,进行训练,设置最大epoch数为100次,设置阈值电压为1 v。训练结果如下:
图 3.9 准确率随训练次数的变化图像(LTP)
可以看到,在100 epoch下,准确率在随训练次数的增加而增加,最终稳定在89%左右。
3.2.5 STDP权值改变法人脑的学习模式是STDP已经被大部分论文和实验所证实,因此也许基于STDP的权值改变方法能够更加促进学习的效率。STDP的本质定义是说:如果突出前神经元的峰值脉冲到达时间小于突触后的神经元峰值脉冲,那么认为突触前神经元脉冲的产生可能是有利于突触后神经元的产生,即这两者之间是存在一定的联动关系的。于是加强这两个神经元的连接。反之则减弱它们之间的连接。
利用实验得到对的STDP Positive数据,波张选取375nm的光做刺激。得到光驱动下的STDP。但实验与理论存在偏差的一点,是光刺激下的STDP图像实际上是存在于一、二象限的,这样意味着,无论是突出前神经元的脉冲先到达还是后到达,产生的权值更新过程,都是加强该两个神经元之间的连接。在保证权值更新双向对称性的情况下,这样的情况显然是不允许。于是在三象限部分,本文选取了其他数据作为替代,这个数据是从电突触元器件得到的。这里也可以得出一个设想,是否可以有光与电合并的突触器件,使用光完成第一象限的STDP工作,由电器件完成第三象限STDP工作。为何要选择光器件是因为,光学突触器件的耗能相比于电学突触器件要节省很多。如果能够使用光电混合信号实现光电STDP,也不失为一种选择。
拟合后正向STDP函数表达式如下:
y=−0.346ln(x)+2.708
负向STDP函数表达式如下:
y=0.302ln(−x)−2.546
根据上面的STDP函数更新法则,带入我们的temportron算法进行求解。得到准确率变化情况如下,设置参数与LTP更新规则相同。
图3.10 准确率随训练次数变化情况(STDP)
可以看到,经由STDP训练的网络,在epoch=60左右的时候,已经达到了准确率100%,在训练的准确度与效率上,高于使用LTP训练的结果。这也可能是为什么当前很多的研究都着眼于STDP权重更新机制。这可能也和STDP实际上与人类大脑的学习机制十分相似,本次模拟也证明了大脑学习模式在权值调整上的优越性,基于LTP的调制模式,更多是对于算法当中核函数K(t)的模拟,而并非是对于本质上人类大脑学习模式的仿真。
3.2.6 结论无论选取LTP,STDP作为权值更新的方式,神经网络的权值更新一定要是对称,这样在梯度下降算法过程中,才能够有正和负梯度,使得最后的结果收敛于局部最小点。另外,在学习机制上,STDP是存在一定优越性的。后面本文将针对SDTP学习机制,将网络扩展到更大的规模,展现STDP学习机制的强大之处。
33.3 无监督脉冲神经网络数值模拟3.3.1 理论背景与基础这SNN的发展之所以广受著名,是因为它网络的元器件要求是有一定硬件基础的,不论是在神经元的设计上,如LIF模型,HH模型,还是电导突触,指数型的衰减机制,阈值电压。都可以通过我们设计的电学或者光学器件进行实现。
本文基于2015年Peter发表的关于STDP无监督学习网络的代码基础上,加上实验得到的数据,进行数值模拟。模拟之前,先了解一下网络的具体结构与基本理论。
对于神经元的设置,应用integrated -and-fire model模型:
τdVdt=(Erest−V)+ginh(Einh−V)+gexc(Eexc−V)
(3-6)
这里V是膜电压,Erest
是神经元在没有外界刺激下的一种静息电压。
τ
是抑制或者兴奋神经元的时间时间常数,这个常数时间上就是用于控制各种不同的STDP图像。
galignlink
和
gexc
是抑制性神经元和兴奋性神经元的电导值,这个值在神经网络中表现为权重,也是我们需要训练的东西。训练模式与tempotron算法类似,当膜电压到达阈值电压的时候,就会发送尖峰脉冲信号,然后膜电位复位到静息电压。如果有神经元的尖峰信号达到突触,那么突触就会提升权值,即电导,如果没有,那么权值就会指数型的衰减。权值更新的模式仍然是取决于突触前神经元与突触后神经元的尖峰达到时间差。如图3.11所示,由于前后神经元的脉冲尖峰抵达时间差不一样,产生了兴奋和抑制两种模式
图 3.11 STDP权值更新模式图[17]
我们需要定义兴奋性神经元与抑制性神经元的权值改变方式。对于兴奋性神经元的电导更新模式如下:
τgedgedt=−ge
(3-7)
抑制性电导的更新模式其实只需要更换常数:
τgidgidt=−gi
(3-8)
时间常数得控制会影响STDP得学习曲线,人脑或者生物的时间常数一般是10 ms-20 ms量级。我们由实验得到得时间常数数值也靠近这个值
然后是基于STDP的权值更新法则:
Δw=η(xpre−xtar)(wmax−w)u
(3-9)
实际上,STDP的更新规则很多,还有指数型的,这里选取一种更新规则,他们大多大同小异。这里的η
是学习的速率,
Xpre
是该脉冲产生时的上一次脉冲值,每当有一次脉冲到达突触时,
Xpre
会增加1,如果没有,它会按照指数型进行衰减。
Xtar
是前一次的突触前神经元产生的脉冲,其反应在突触后神经元的目标值。这其实也是在将突触前神经元和后神经元产生的时间在进行比较,从而正确的更新权值。
3.3.2 网络设计脉冲神经网络的设计与普通的经典神经网络有所不同,由图5.2看到,Input输入层图像的像素编码脉冲数据,脉冲的频率由图像像素点的灰度值,即成正比关系,28×28的像素值会变成一个784×1的一维序列,每一个值代表一定频率的脉冲信号。
图3.12 SNN神经网络结构[16]
之后进入激活层,激活层放置激活神经元,然后再进入抑制层,放置抑制层神经元。这里可以看到,非监督学习网络的结构是不存在标签值的。更新完全依靠激活层与抑制层之间的关系。从图3.12可以看到,输入层与激活层实际上时全连接模式,即每一个像素点产生的脉冲序列都会再激活层有一个对应权重。激活层与抑制层之间时一一对应连接,但抑制层与激活层的连接却是全连接模式,除了激活层已经与抑制层产生连接的神经元。这样的网络设计模式实际上是由理由的。这应用的winter take all法则,即当某个激活层的神经元产生兴奋后,该兴奋传递到抑制层后,抑制层会抑制其他所有神经元产生脉冲。也就是说,不断的训练后,能够产生脉冲的神经元会趋向于越来越容易产生脉冲,而其他神经元会越来越无法产生脉冲。从而达到训练的目的。这和传统的K-means算法也有异曲同工之妙,但不同的是STDP 非监督学习存在抑制层,从而避免了某几个神经元一直占据某个pattern。
3.3.3 模拟结果数值模拟将MNIST 六万个训练数据编码后作为脉冲输入,整个训练集进行了6次迭代,一共是36万张图片,训练结束后学习虑被置为零,动态阈值被锁定。之后输入每一类的数字图片,记录每个神经元对应该类图片的激活次数,并且选取其中激活次数最多的为该神经元的标签。之后使用测试集的一万张图片作为脉冲输入,观察每当一张图片输入时,哪个神经元的激活频率最高,如果该神经元的标签与输入图片属于同一pattern,那么认为分类正确。统计10000万张图片的平均准确率,得到网络的训练的评价值即Accuracy。
图3.13 神经网络权值矩阵图
这里训练后激活层的权值矩阵。之前提到了,当网络训练完成后,我们会输入每一个图片的pattern,以激活次数最高的神经元作为该pattern的标签,在这样经过改进后,图5.3是激活层神经元重组后的权值分布,可以看到,不同神经元对于不同pattern的适应程度不同,体现在颜色的深浅上。
图3.14 输入层到激活层权值矩阵可视化图
图3.15 激活层到抑制层权值矩阵可视化图
从图3.14我们可以看到,只有很少部分的权值很高,即呈现黄色小点模式,体现即只有少数pattern才能够产生脉冲,其他的脉冲都被抑制,这个图像很好体现了我们在学习过程中的winer-take-all的模式。图3.15体现的更加明显的是,因为网络的设计是激活层与抑制层一对一连接,抑制层与激活层反向全连接,但除去了从激活层连接过来的神经元,因此在权值的对角线上都是winer,而其他的神经元都被抑制,从而达到了我们从众多神经元中选取出适合当前输入的正确pattern。
之后我们输入10000个MNIST的test集图片进行外推,结果是:Sum response - accuracy: 91.43 number incorrect: 857。即我们在验证集上达到了91.43%的准确度。总的来说还是比较可观的。
结 论本文用了三个数值模拟的方法,分别对于神经元硬件化条件,神经突触硬件化条件,神经元学习规则优越性做了探究。在神经元硬件化上,通过使用不同的非线性函数进行数值模拟,得到了其实在当选取激活函数时,函数与输入值的正相关性并不是必要的,非线性才是最为重要的基准。并且作者使用简单的链式求导法则,证明了神经元的硬件化需要有加权乘法器的功能,并且强调了乘法器的线性程度。也就推出了权值更新时,权值该变量与输入值的正相关性的重要性,也可以说是正负变化的对称性是对随机梯度下降法达到收敛的充分条件。在SNN数值模拟上,本文先尝试了tempotron有监督SNN算法,并且对其权值改变的方程做出了LTP与STDP法则的两种试探,发现STDP的效果更好,也不愧是贴近人类大脑的学习模式。这里也需要指出tempotron算法的缺点在于该算法只能针对单神经元,即脉冲只能判断单个神经元能不能发出脉冲,泛用性不是特别强,但是将输入改成离散的脉冲输入,在神经网络的结构和理念上是一个很大的突破。接着文章以STDP学习机制更为优秀的基础上,在基于2015年Peter教授的无监督STDP学习网络[16]这篇论文的基础上,使用实验相关的数据进行了数值模拟,指出了该网络的结构,采用winter-take-all模式与IF神经元结构,实现了在没有任何标签和领域知识的无监督学习网络的模拟,并且在MNIST的test数据集上达到了91.43%的正确率。从实验上证实了STDP学习机制可以用于无监督学习,指出了其在未来发展的巨大潜力。
最后本文提出一些对于当前硬件神经网络研究的看法,目前实现硬件神经网络的方法在绪论也有提出,主要有微电子方法、半导体突触和光学实现。作者认为想要实现真正的类脑计算。我们就需要研究更与人类达到贴切的器件。尽管在微电子方面,目前的技术可以实现精度很高的数字模拟电路。但是实际上那也只是靠我们强大的算力与耗费了很多资源达到的结果。再说全光学的神经网络,这样的设想只能够用天才来形容,这样的网络耗能少,效率高,速度快。但这并不能够算是类脑计算,只是从物理的角度对于神经网络进行了实现。真正的类脑计算我相信应该是基于STDP,LTP, LTD这些与人脑大脑对于信号实际反映做出的模型之上的。近年来已经发展了很多基于STDP或者类脑计算的算法,并且在数值模拟上都证实了其实现的可能性。目前的当务之急应该是制备出与这些理论符合的突触器件或者神经元元件,然后进行集成,实现一个结合微电子设计电路与编码处理,从而实现一个从输入,到reference,再到自动Back Propagation修改误差的自主型芯片,真正达到off-chip模式的神经网络计算与硬件化。
参考文献[1]Takao Watanabe, Katdutaka Kimura, Masakazu Aoki, et al. A Sinngle 1.5-V Digital Chip for a 106 Synapse Neural Network. IEEE Transactions on Neural Networks. May 1993,4(3): 387-39
[2]Matthew S Melttn, Tan Phan, Douglas S Reeves, et al. The TInMANN VLSI Chip. 1993, 4(3): 394 -340
[3]Hendrik C A M, Withagen. Neural Networks: Analog VLSI Implementation and Learning Algorithms. Ph.D thesis, Eindhoven,1997
[4]高丽娜 邱关源. 一种连续可调权值 CMOS 神经网络. 电子学报, 1998, 26(2): 120-122
[5]Bernabé Linares-Barranco et al. A Modular T-Mode Design Approach for Analog Neural Network Hardware Implementations. IEEE Journal of Solid-State Circuits,1992, 27(5): 701-712
[6]Strukov, Dmitri B, Snider, Gregory S, Stewart, Duncan R and Williams, Stanley R. The missing memristor found. Nature. 2008, 453: 80–83. doi:10.1038/nature06932.
[7]贺静, 基于CMOS 模拟技术的多种前馈人工神经网络硬件的研究与实现 [D]. 湘潭大学, 2014
[8]侯媛彬,杜京义,汪梅. 神经网络 [M]. 西安:西安电子科技大学出版社, 2007: 16-19.
[9]Q. Yu, S. Member, R. Yan, H. Tang, K. C. Tan, H. Li, IEEE Trans. Neural Networks Learn. Syst. 2016, 27, 621.
[10]M. Giulioni, X. Lagorce, F. Galluppi, R. B. Benosman, Front. Neurosci. 2016, 10, 1
[11]Bengio, Y. and Fischer, A. (2015). Early inference in energy-based models approximates back-propagation. Technical Report arXiv:1510.02777, Universite de Montreal.
[12]Scellier. B. and Bengio, Y. (2016).Towards a biologically plausible backprop. arXiv:1602.05179 .
[13]Markram H, Lübke J, Frotscher M, et al. Regulation of synaptic efficacy by coincidence of postsynaptic APs and EPSPs[J]. Science, 1997, 275(5297): 213-215.
[14]Bi G, Poo M. Synaptic modifications in cultured hippocampal neurons: dependence on spike timing, synaptic strength, and postsynaptic cell type[J]. Journal of neuroscience, 1998, 18(24): 10464-10472.
[15]Peng Yao, Xueyao Huang, Wenqiang Zhang,Qingtian Zhang.Face classification using electronic synapses.2017.5.12.DOI: 10.1038
[16]Peter U. Diehl, Matthew Cook.Unsupervised learning of digit recognition using spike-timing-dependent plasticity.Front. Comput. Neurosci., 03 August 2015 | DOI:10.3389
[17]Qingzhou Wan, Mohammad T. Sharbati, John R. Erickson, Yanhao Du, and Feng Xiong.Emerging Artificial Synaptic Devices for Neuromorphic Computing
[18]陈琼. 郑启伦.人工神经网络系统硬件实现的研究进展.[J].电路与系统学报.2000 年 3 月
[19]Cowan J D . Discussion:McCulloch-Pitts and related neural nets from 1943 to 1989[J]. Bulletin of Mathematical Biology, 1990, 52(1-2):73-97.
[20]Mcclelland J . Reflections on Cognition and Parallel Distributed Processing[J]. 1986.
[21]Xing Lin, Yair Rivenson, Nezih T. Yardimci, Muhammed Veli, Yi Luo, Mona Jarrahi and Aydogan Ozcan.All-optical machine learning using diffractive deep neural networks[J].Science.DOI:10.1126.July 26.2018
附 录代码具体说明请参考github.com/zhenghaobaby/graduated_design
作者简历姓名:郑浩 性别:男 民族:汉族 出生年月:1997-04-11 籍贯:四川成都
教育背景:
2012.09-2015.07 成都七中
2015.09-2019.07 浙江大学攻读材料科学工程学士学位
攻读学位期间发表的学术论文与取得的其他研究成果已:
[1]XXXXXXX
[2]XXXX
待:
[1]XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[2]XXXX
已授权专利:
[1]XXXXXX
关键词: 特征选择;入侵检测;粗糙集;信息熵
中图分类号:TN 915.08
文献标志码:A文章编号:1672-8513(2011)04-0292-04
Study of Intrusion Detection Feature Selection Based on Rough Set and Information Entropy
WU Ping, JIANG Yiting
( School of Information, Yunnan Normal University, Kunming 650092, China )
Abstract: Feature selection is the removing process for the smallest feature subset satisfying the needs from the collection and application of selected characteristics related with great importance. It is important in the intrusion detection. For solving the problem of the existing intrusion detection system with less prior knowledge, the paper describes the intrusion detection feature set with the rough set knowledge representation system and determines the relative importance of each feature by calculating its information entropy. Finally, it gets a streamlined feature set. As a result, it simplifies the intrusion detection training set, reduces the detection time and effectively improves the classification accuracy of the invasion.
Key words: feature selection; intrusion detection; rough set; information entropy
入侵检测需要对大规模的网络数据流或主机审计信息进行数据分析,判定攻击类型,而网络中的行为一般都可以用一些特征来描述,如:源地址、目的地址、协议类型、服务类型、端口号及连接时长等,一条网络记录是正常行为还是攻击行为通常是由许多特征组合取不同值来表征的,但是存在着一些特征对于最后的判定起的作用很小,即这些特征的变化与否与判定结果基本无关,可以约简.过多的特征会给计算带来困难,占用大量的存储空间,会降低整个网络系统的吞吐效率,耗费大量的时间,检测的精准率也会降低,所以在进行数据处理之前需要进行特征选择.
特征选择技术[1]正是从原有的庞大的数据集中选择出满足需要的、重要性较高的一个精简数据集合的过程,并且该精简数据集可以保持原有数据集的完整性,且不会影响最后判定结果的准确性.文献[2]中采用的特征选择方法,是对单个特征进行评价,以对评估数据检测的正确率和时间作为度量准则,这种选择方法可以挑出前N个最有效的单个特征,但是这N个特征放在一起却不一定是最佳的组合,所以对于约简后的特征属性集合的信息完整性缺乏可靠验证[3].
为了解决上述问题,本文基于粗糙集的知识约简理论,采用计算信息熵的方法来选择重要特征,在保持知识库的分类或决策能力不变的条件下,删除不相关或不重要知识,得到保持分类正确的最小特征子集.
1 粗糙集中的知识表达系统在入侵检测特征中的描述
粗糙集(Rough Set)理论是由波兰学者Pawlak于1982年提出的[4],它是一种刻画具有不完整性和不确定性信息的数学工具,其基本思想是:在保持知识库的分类能力不变的前提下,通过知识(属性)约简得出问题的决策或分类规则.粗糙集的优点是[5]:在处理问题时不需要其他先验知识,利用定义在数据集合U上的等价关系R对U的划分作为知识.在不丢失信息的前提下,根据知识系统的条件属性与决策属性的依赖和关联度,通过知识约简算法得到具有最小决策规则的分类模型.
11 网络攻击特征数据的粗糙集知识表达
粗糙集中对知识进行表达和处理的基本工具是信息表知识表达系统[6],下面就本文中的研究对象网络攻击特征数据集进行粗糙集的知识表达.
攻击特征数据的知识表达:
设五元组T=<U,C,D,V,f>是一个网络攻击特征数据决策表知识表达系统,其中U是攻击样本的集合,C为攻击特征(条件属性)集合,D为攻击类型(决策属性)集合且D≠,V是属性值的集合,Vr表示属性r∈C∪D的属性值范围,即属性r的值域, f:U×(C∪U)是一个信息函数,它指定U中每一个对象x的属性值.
12 网络攻击特征的选择
首先选定一个特征子集A,然后将其他特征属性加入该特征子集中,如果加入的特征属性并没有使原有的特征的信息熵发生变化,则该属性就是非必要特征属性,可以对其进行约简.可进行如下描述:
在网络攻击特征数据决策表系统T=<U,C,D,V,f>中,选定特征子集{A|AC},将特征r∈C加入到特征子集A中,形成A′并计算A′的信息熵,如果A′的信息熵不发生变化,则说明r不能为特征子集A的分类增加信息,则A为相对于D的特征选择.即:
H(A|C)=H(A′|C\{r})
特征选择的终止条件是在T中,有H({d}|A∪{r})=H({d}|A),则A为C的相对于{d}的特征选择.
13 网络攻击特征数据决策表的核
对于一个网络攻击特征数据决策表系统T=<U,C,D,V,f>,C中所有对{d}是必要的特征组成的集合称为特征集合C相对于{d}的核,记作CORE{d}(C).
2 信息熵的相关定义和计算模型
信息熵[7]是测量不确定性的一种度量方法,任何一个随机变量的不确定性可以通过它的信息熵来表示.
信息熵的定义为:A为U上的一个条件属性子集合,U/IND(A)={x1,x2,…,xn},d为u上一个决策属性子集合,U/IND{d}={y1,y2,…,yn},则决策属性{d}相对于条件属性子集合的信息熵为:
Entropy(DA)=-p+lb p+-p-lb p-
如果将属性集分类进行合并[8],在合并过程中,当一个分类对于另一个分类的概率相等的情况下,不会导致信息熵发生变化,就出现了上面介绍过的增加一个属性并不能为原有的属性子集分类增加任何信息,此时就可以将之约简.
根据以上结论可以得出,可以将核作为计算信息熵的起点,则在特征选择的过程中,不断地向特征子集C′中增加属性r∈C,然后判断信息熵H(D|C′{r})是否发生变化.如果该信息熵值是递减的,则特征属性r为不可约简的特征属性.
即对于一个网络攻击特征数据决策表系统T=<U,C,D,V,f>,A为C经过攻击特征选择后得到的特征集合,C0是核.如果ri∈A\\C0是任意一个不能被约简的特征属性,有:
H({d}|C0)>H(D|C0∪{ri})>…>H(D|C0∪{r1}∪{r2}∪…∪{ri}∪…)>…>H(D|A)
因为核肯定是在特征选择的结果中,所以本文算法以核为起点,逐步向核的集合中增加特征,直到得到最后的特征选择结果为止.
3 计算信息熵进行特征选择的算法
攻击特征的相对重要性[9]定义为:对于一个网络攻击特征数据决策表系统T=<U,C,D,V,f>,特征r∈C在C中对{d}的重要性定义为:
SGE(r,C,D)=H(D|C\\{r})-H(D|C)
所以可以看出,在C确定的情况下,SGE(r,C,{d})越大,对于决策{d}就越重要.当且仅当SGE(r,C,{d})>0时,攻击特征r是必要的.
网络攻击特征数据选择的具体步骤如下:
1)计算攻击数据决策表系统中的信息熵H({d}|C):
H({d}|C)=-∑ni=1p(xi)∑mj=1p(yj|xi)log(p(yj|xi)).
2)求特征集合的核:
CORE{d}(C)={c∈C|SGF(c,C,{d})>0};
SGF(c,C,{d})=H({d}|C\{c})-H({d}|c).
则可以求出条件属性特征集的核C0.
3)计算核的信息熵:H({d}|CORE{d}(C0)).
4)以核为起点,选择使信息熵最小的特征加入特征选择子集中.
令C0为核,A={C-C0},设ri∈A,则依次计算信息熵H({d}|C0∪{ri}),使H({d}|C0∪{ri})最小的ri加入C0中,C0′={C0+ri},若H({d}|C0′)=H({d}|C),则算法终止,得到了特征选择的结果.
4 特征选择结果分析
41 实验数据的选取
本文选用的数据集KDDCup99[10]是一个网络连接记录集,其中包含了大量的有代表性的正常网络流量和各种攻击类型,具有很强的代表性.KDDCup99数据集中的每条数据有41维属性特征和一个为标记正常与非正常的特征(即决策属性).前41维属性特征被划分为4个特征子集:基于TCP连接的特征属性、基于内容的特征属性、基于2s时间窗的流量特征属性、基于主机的流量特征属性.决策属性分为5类,即正常、DOS攻击、Probing攻击、U2R攻击和R2L攻击.
本文选取KDDCup99离线测试数据的10%子集作为实验基本数据,其各种攻击类型所占比例为Normal(19.68%)、DOS(62.54%)、U2R(3.43%)、Probing(6.58%)、R2L(6.92%).
42 实验结果分析
经过本文的算法对数据进行处理后,共约简出21个攻击特征,如表1~4所示.
经过粗糙集特征选择后,各候选特征子集所包含的特征数相比全部41个特征而言大为减少,这对于神经网络的学习训练和入侵检测系统的实时检测而言,会有较好的性能提升.
根据特征属性约简的结果,对于样本数据重新整合形成神经网络的输入向量,约简后的特征属性不会影响数据连接之间的内在联系,且可以减少存储空间和降低算法复杂性.在后面通过小波神经网络进行入侵分类的时候,根据选择出的特征属性,对样本数据集进行输入向量的构建,并在训练之前须对数据进行数值化和归一化处理,使它们可以适合于小波神经网络的处理,使用约简前后的数据集对基于小波神经网络的入侵检测系统进行检测,检测率分别为88.1%和90.4%,说明特征属性约简并不会影响网络的分类性能,而且可以缩短网络的训练时间.
5 结语
大量冗余特征的存在会加重入侵检测系统的存储负担并降低网络入侵检测分类器的性能.为此本文提出了基于粗糙集和信息熵的入侵检测特征选择处理方法,针对于KDDCup99标准数据集,使用该算法对网络入侵数据特征进行信息熵的计算、重要性的度量,完成了特征的选择.结果表明去除冗余特征后,入侵检测系统的检测率与使用全部特征时是基本不变的,但是训练和测试时间却降低了,达到了预想的效果.
参考文献:
[1]王元龙. 模式识别在发动机故障诊断中的应用[J]. 科技信息,2011,28(1):32-35.
[2]SUNG A H, MUKKAMALA S. Identifying important features for intrusion detection using support vector machines and neural networks [C] //Proceedings of the 2003 International Symposium on Applications and the Internet Technology.IEEE Computer Society Press,2003, 209-216.
[3]PAWLAK Z. Rough set theory and its applications to data analysis [J]. Cybernetics and Systems 1998, 29(7):661-688.
[4]付磊,王金亮. 基于粗糙集理论的RBF神经网络在LUCC分类浅析[J]. 云南师范大学学报:自然科学版,2010,30(3): 28-31.
[5]耿德志.基于粗糙集和模糊聚类方法的属性约简算法[J]. 软件导刊,2010,9(12):81-83.
[6]蒋桂莲,徐蔚鸿.改进粗糙集属性约简算法和支撑向量机的特征选择算法[J].微计算机信息,2010,32 (27): 235-241.
[7]孟洋,赵方.基于信息熵理论的动态规划特征选取算法[J]. 计算机工程与设计,2010,39(17): 1542-1548.
[8]邓林峰,赵荣珍.基于特征选择和变精度粗集的属性约简算法及其应用[J]. 机械科学与技术,2010,32(10): 384-389.