关于神经网络的一个新的参数选择方法【摘要】经过深入的研究神经网络的参数选择方法,现提出一个新的关于神经网络的参数选择方法,并应用于冷轧带钢表面缺陷在线检测系统中。这个方法充分发挥了小样本集的优点,小样本集是用每一个可能的参数组合来训练和检测神经网络,通过不同参数组合的识别比例柱状图得到一组神经网络的参数,这样得到的参数被视为优选参数。实验表明通过新参数选择方法选择参数的神经网络在冷轧带钢表面缺陷检测系统中可以达到在所有的参数为随机选取时最好的识别效果。【1.Introduction】神经网络参数的选择对于研究人员来说始终是一个严肃的问题,因为对于神经网络,没有选择优选参数的固定标准,但与此同时,参数选择的精确与否对于神经网络的精确度有很大的影响。在使用神经网络的时候,很多专家通过经验或者是在某个参数集合中选择一组较好的参数为其神经网的参数。如果完全根据经验来选择参数,那么问题独有的特性就无法涵盖在其中,如果这个独有性很突出,那么神经网络的理论结果和实际结果就会有很大的偏差。如果通过一组一组实验某些预定参数比较其结果来选择参数,其过程是非常繁杂冗长的,基本是不可能的。与此同时,训练一个神经网络通常是非常复杂的,手工的去遍历每一种可能的参数组合将要耗费大量的时间,效率的低下使这种方法几乎不可能实现。在表面检测领域,对于不同的对象有不同的自动检测系统。冷轧带钢表面缺陷在线检测系统是结合图像处理过程、模式识别、自动控制的实时检测系统,它可以在恶劣的环境下对冷轧带钢进行全天的持续实时检测。识别冷轧带钢的表面缺陷是这个系统的主要和重要的部分,这个识别技术在一些程度上影响这个系统的性能。系统是否可以识别出其检测到的缺陷类型与其智能型和实用性直接相关。【2.Parameterselectionmethord】新的参数选择方法是基于小样本用以解决寻找内部参数来描述实际问题,所以参数可以与要解决的问题相匹配,也可以避免盲目的寻找可能的神经网络参数。图1展示了基于小样本新的参数选择方法的流程图:小样本抽取参数分割统一编码循环自动训练和检测神经网络描绘柱状图寻找峰值点找到参数图1算法的流程图【2.1Extractionofsmall-samples】为了使参数反应实际问题的本质,要从全部样本中提取出一定比例的样本来构成一个新的样本集,称作小样本,我们把提取的比例记作η。我们假定最开始的样本集是P0。P0={X1,X2,……,Xn}原始样本集中的每个元素的数量分别表示为P01,P02,……,P0n同时,我们将新的样本集记作PSPS={X1’,X2’,……,Xn’}这个样本的大小为N,提取规则如下定义:按照比例从样例库中提取不同种类的样本,将每类不同的样本个数定义为Pis,Pis可以用如下的等式来描述:001iisnjjPPNP因此,新的小样本的PS的提取建立规则可以表现出原样本P0的相同特征,也就是说,新提取出来的小样本在一定程度上可以代表原来的样本,神经网络的小样本参数可以映射出整个参数集下神经网络的情况。通过这种方法选择的样本被称为比例样本。在实际应用中,我们提取一组训练小样本集PS1和一系列测试样本PS2【2.2Parametersegmentationanduniformencoding】当应用到实际项目当中时,首先必须要知道神经网络的全部参数,而且要从全部参数中选择与问题本质有关的参数。现在假设被选中的参数个数为p,并且所有这些参数之间相互独立且与样本无关,也就是说,选择的样本参数变量可以反映实际问题的本质特征。经过参数的优选之后,就要将全部参数根据一定范围的经验值和理论值进行分割。假定这p个参数被分别分为C1,C2,……,Cp,(将这些参数分别分为这么多个段)这些参数采用不重复规则组合在一起,假设有M种组合,M可以用下面的等式来表示:11iPCiMC接下来要做什么?我们将为每一种组合编号,将其标记为:1,2,……,M。在这个阶段我们将分为两个主要步骤:首先,从前往后确定每个参数的位置和顺序,图2展示的一组参数内部确切的顺序:P1P2……PM图2确定参数顺序的参数组其次,为每一种可能的组合编上统一的序列号,当为第一个参数编好号以后,后面的将遍历所有可能的值,编号将逐步加一,知道M种可能都编上号,那么编码结束。【2.3Automatictrainingcircularlyandplottingpolylinefigure】在给所有参数编码过之后,我们将开发一个自动的程序,每一组参数将被当做神经网络的参数分别进行训练和测试。这个过程可以分为如下的步骤:1、选取一组明确的参数作为神经网络的参数;2、用训练小样本PS1来训练神经网络;3、当训练结束时,保存训练过的神经网络,以备测试;4、再用测试小样本集PS2来测试神经网络;5、对各个样本的识别率进行统计;6、重复步骤1到5,直到所有的M组数据都被遍历过一次;7、在坐标系上根据这M组参数的神经网络得到的M个识别率的值,绘制一个柱状图;8、找到这个图的峰值,记下这个峰值对应的参数,这个参数就被选作为起始样本中作为这个神经网络的参数。【3.Processofcalculatingoptimizedparametersofneuralnetwork】表格1是从某个中国生产线上的冷轧带钢表面缺陷在线监测系统得到的样本分布。从表中我们可以看到,一共有12中不同的冷轧带钢缺陷,有6360个原始训练样本和3180个原始测试样本。根据之前提到的小样本参数选择方法的样本提取规则,我们从起始的训练样本和测试样本分别按照8%和4%的比例提取出训练小样本PS1和测试小样本PS2。表格2显示了从中提取出的小样本的分布。表1系统的样本分布图项目擦痕卷裂指点杆风羽白点辊印折边生锈乳化橘釉裂边其他总计训练样本数1223139812031153463295193121898070716360测试样本数6126996025772321479661454035353180表2抽取出小样本的分布图项目擦痕卷裂指点杆风羽白点辊印折边生锈乳化橘釉裂边其他总计训练样本数981129692372415107666509测试样本数495648461912854333254在LVQ3神经网络中,竞争层的神经元个数首先要确定下来,根据项目,我们将其分配为106个。(LVQ3?????)其次,确保有三组参数与描述的系统的本质有关,将它们起始的学习率记作η(0),相对学习速率ξ,窗口宽度为m。根据对于LVQ3神经网络的经验,以上三个参数的范围可以由如下的表达式描述:0.01≤η(0)≤0.10.05≤ξ≤0.30.1≤m≤0.5因此,这三个参数可以分别根据自身的经验值分段。η(0)被分为0.01,0.03,0.05,0.08和0.1五段,ξ被分为0.05,0.1,0.2,0.3四段,m被分为0.1,0.2,0.3,0.4,0.5五段。所以如下等式计算出一共有M=100种组合:111545100MCCC分割完毕以后,我们将给每一组可能的结合编号,例如:1,2,……,100,而且每一个编号代表一个特定的参数组,这里就是给每一组不同的η(0)、ξ、m组合以明确的数值来编号,我们从后往前遍历参数组里的参数,如果遇到参数不同的,就将编号加一。例如,编号为No.5th参数组就是(0.01,0.05,0.5),这个就表明η(0)=0.01,ξ=0.05,m=0.5,再比如No.16th的参数组为(0.01,0.3,0.1),也可以对照上面得到每一个参数所对应的值。对于BP神经网络,有两个主要参数必须被确定,即初始学习速率η(0)和惯性项系数α。根据经验,参数η(0)总是在0.9和1.0之间,而参数α在0.7和0.9之间。因此,η(0)可以被分成10项,即0.9,0.91,0.92,…,0.99,α可以被分成11项,即0.7,0.72,0.74,…,0.99。所以这两个参数总共有110种组合,给这110种组合按次序标号,它的编码方式和LVQ3一样。例如,参数的第五个组合是(0.9,0.78),第16个参数组合是(0.91,0.78)。其他的参数组合也同样能得出。接下来就要使用训练小样本Ps1来训练具有不同参数组合的LVQ3和BP神经网络,然后使用测试小样本Ps2来得出(算出)它的识别率,接着就能绘制出识别率相对于参数组合编号的折线图,如图3和图4。图3.LVQ3神经网络参数优化选择的曲线图4.BP神经网络参数优化选择的曲线图3中(48,96.2%)是峰值点,它意味着第48号参数组合能够更好地描述LVQ3神经网络的实际问题,测试结果能够达到96.2%这个最高识别率。通过解码参数组合,每个参数值可由式7表达。同样的道理,BP神经的工作可以得到图5,(2,92.32%)这一点显示了识别率的峰值,它意味着第二号参数组合能够获得多有参数组合中的最大识别率92.3%,通过解码,能够得出式8所示的参数值。图5.不同神经网络参数条件下的识别率直方图因此,当应用到冷轧带钢表面缺陷是别种时,式7是LVQ3神经网络的优化参数,式8是BP神经网络的优化参数。4.实验结果根据上述方法选出的参数可知,LVQ3神经网络的所有参数都能像表3一样得出,表3中LVQ3神经网络的所有参数都将被用到冷轧带钢表面缺陷识别的实验中。同时,为了验证在优化参数下的识别效果,必须用不同的η(0),ε和m的值来构建几个对比相似系统。然后将表1中的所有的训练和测试样本输入到所有具有3个参数的识别系统中,并且计算出它们的识别结果,如:正确识别的数目、识别率等。有此在不同的神经网络参数下,一个训练结果表如表4所示,测试结果表是表5。在表4、表5中,LVQ3神经网络的第一组参数是通过新的参数选择方法获得的,第2到第8组参数是随机组合选取的。为了直观的显示结果,不同神经网络参数下的识别率的直方图如图5所示。从表4和表5,我们可以看出,在第一组参数条件下识别率分别达到了94.28%和89.69%,这两个值都是两个表的最大值,但是在其他7组参数条件下,LVQ3神经网络的识别率:最大的训练识别率是第6组参数条件下的90.19%;最大的测试识别率同样是在第6组参数条件下的87.77%。与此同时,最低的训练识别率和测试识别率都在第2组参数条件下产生,分别是81.64%和78.40%,分别比第一组低12.64%和11.29%。其他7组的平均训练识别率和测试识别率分别是86.16%和82.75%,分别比第1组低8.12%和6.94%。因此,实验完全证明,将(使用先参数选择方法得到的神经网络的优化参数)作为神经网络的参数,可以更准确地表达分类信息,当应用到冷轧带钢表面缺陷识别中时能得到一个更高的识别率。5.总结当将神经网络应用到实际项目中时,因为神经网络的参数对识别效率影响很大,本文慎入研究了参数选择问题。因为神经网络包含对多样本的训练和测试,仅靠经验很难选出优化参数,到底参数经验值能不能反映实际问题的本质还不知道。在研究样本的选择方法和需要解决问题的本质之后,神经网络的新的参数选择方法能够在考虑到神经网络每个参数经验范围的基础上给出优化参数。实验表明,若使用新方法选出的参数作为神经网络的参数,就能获得优化的识别效果,与此同时能够提高样本的识别率。