APP下载

PCA-PSOBP在边坡稳定性评价中的应用*

2013-05-05胡泽涛高文华姜晓日

采矿技术 2013年2期
关键词:阀值权值全局

胡泽涛,高文华,姜晓日

(湖南科技大学 土木工程学院, 湖南 湘潭市 411201)

0 引 言

边坡的稳定性分析是一项复杂的工作。边坡岩土体在各种因素长期作用下,物理性质、地质条件等方面变得非常复杂,各影响因素与边坡稳定性之间存在非线性关系,针对这种情况出现很多智能评价方法。但是这些智能评价方法都或多或少存在神经网络收敛、过拟合以及泛化方面的问题。引入主成分分析(PCA)处理样本数据和PSO优化BP网络的初始权值可以较好地改善这些问题。

1 PCA-PSOBP岩质边坡评价模型

1.1 BP网络的局部极小及其泛化能力

BP网络产生局部极小的根本原因在于其误差函数,在其训练过程中是根据误差函数不断整体性地调整权值和阀值。但是误差函数的超平面具有很多的局部极小点,从而使网络训练容易陷入局部极小。网络的泛化能力是网络对未曾出现在训练样本中的模式的识别的能力。对样本空间,初始权值以及网络结构的改进可使局部极小和泛化问题得到改善。

1.2 PCA分析原理

在研究实际问题时,常会涉及到多个变量。如果变量太多就会增加计算的复杂性,同时也给合理地解决问题带来困难。而应用主成分分析(PCA)方法就可以对这些变量进行改造,用数量极少的独立变量来反映原始变量提供的绝大部分信息。

首先假设有经过标准化以后的k个变量的N个样本集,则有:

协方差(cov)矩阵就是一个k×k的矩阵,采用PCA就可以将cov矩阵变换成一个具有单一方差和相互独立的变尺度后的新的变量相对应。PCA可以表示为:

式中,λj是第j个变尺度变量变量的方差(即特征值),uj是第j个变尺度变量(即主成分)。每一个主成分定义了一个新的坐标轴方向,从而使坐标轴都相互正交。这样,从本质上讲原始输入变量进行去相关化,使之成为相互独立的新变量。

1.3 粒子群优化算法的改进

粒子群算法具有较好的全局寻优能力,可以用它大概找出初始权值和阀值的全局最优位置所在,为后面的BP计算提供初始权值和阀值。假设有m个粒子,每个粒子为n维,则组成的种群为x=(x1,...,xm)T,其 中,第i 个 粒 子 的 位 置 为xi=(xi,1,...,xi,n)T,速 度 为 vi= (vi,1,...,vi,n)Tpg=(pg,1,...,pg,n)T。 它 的 个 体 极 值 为 pi=(pi,1,...,pi,n)T, 种 群 全 局 极 值 为 pg=(pg,1,...,pg,n)T。粒子找到上面两个极值后按下面两个公式进行自己的位置和速度更新:

式中,c1,c2是学习因子是第k 次迭代中第i个粒子的飞行速度的第d维分量是第k次迭代中第i个粒子的飞行位置的第d维分量;w是权重;是粒子i在第d 维的个体极值位置;是群体在第d维的全局极值位置。

为提高算法性能,对PSO算法中的rand()函数进行改进,引入sobol序列产生随机数。它是由一种叫做“模二本原多项式”的数学理论产生的。其基本原理如下,假设存在一个q次的多项式P:

用q项递推关系定义一个整数序列Mi:

其中,8表示逐位异或运算。

由Mi可以得到方向数Vi:

得到方向数后就可以计算得到随机数,具体过程可以参考Numerical Recipes in C。它具有比rand()函数更好的均匀性,从图1、图2中可以更直观的看出(二维情况下)。用改进的PSO算法对BP误差函数寻优,就可以以更大的概率找到误差函数的全局最优点附近。

图1 rand函数生成的点

1.4 评价模型的建立

为了评价边坡的稳定性,建立了PCA-PSOBP模型。边坡样本选取了容重、黏聚力、内摩擦角、坡角、坡高、孔隙水压比这6个影响因素进行分析。样本数据经过PCA分析处理生成新的数据,最终确定BP网络的输入节点数和样本数据。根据BP网络输入输出节点确定隐含层节点数。最后根据BP网络的连接权值和阀值确定PSO优化算法的维数。确定PSO算法的适应度函数(将BP网络的误差函数作为其适应度函数),把经过优化的权值和阀值提供给BP网络作为初始权值和阀值。它的本质是前面的PCA提供数据的处理分析,选择合理的输入节点数,尽量提高网络的泛化能力和消除过拟合现象;后面采用PSO优化算法先对网络训练进行全局寻优,找到全局最优大概的区域后,BP算法接力训练寻优,从而快速收敛到全局最优。具体过程见图3。

图2 sobol序列生成的点

图3 PCA-PSOBP模型示意

2 工程实例仿真

2.1 PCA分析

共收集到岩质边坡样本83个,限于篇幅,只列出部分样本数据,见表1。

原始样本经过PCA分析处理后得到pc(主成分)和gx(主成分的贡献率):

表1 样本数据

从gx数据可以看出,只要取前4个主成分就可以反映整个样本数据99.9997%的信息。

2.2 边坡稳定性分析

从上面分析可以确定BP网络的输入节点数为4。因为BP网络的激活函数选用的是logsig函数,为防止logsig出现饱和,需要对经过PCA分析后的新样本数据进行简单的值域调整,将它们调整到0.1~0.9之间,选取前78个样本作为训练用,后5个样本作为预测用。再由输出节点数为1,经过多次试算确定隐层节点数为6。由此可以计算出PSO优化算法中速度和位置的维数是37。采用BP网络的均方误差函数作为PSO的适应度函数,确定好BP网络的权值和阀值与PSO解空间的对应关系。经过PSO寻优后的全局最优粒子,把其值传递给BP网络作为下一步开始训练的初始权值和阀值。具体操作如下:

把PSO全局最优粒子对应的值通过net.iw{1,1}传递给隐含层作为初始权值,同理,通过net.lw{2,1}可以传递给输出层,通过net.b{1}可传递隐含层阀值,通过net.b{2}可以传递输出层阀值;接下来由BP算法继续训练,训练函数采用trainlm函数。

为保证计算后数据的统一性,只给出原始样本中的5个样本数据,见表2。

表2 5个预测样本数据

BP网络用6-8-1的网络结构,PCAPSOBP采用4-6-1的网络结构,经过20计算分别得出最佳的计算结果。它们的误差函数如图4和图5所示,图5中的实际迭代次数是436,PSO迭代次数是400。

图4 BP网络训练误差函数

图5 PCA-PSOBP网络训练误差函数

表3 两种网络的计算值与原始值

从图4、图5以及表3可以看出,BP网络的训练误差精度比PCA-PSOBP网络的要高,但泛化能力却不如后者好,这就是BP网络的过拟合问题。尽管PCA-PSOBP迭代次数比BP的迭代次数多198次,但是其实际运行耗时比BP的耗时仅多3~4s,不会对实际应用造成大的影响。运行速度问题可以通过其他技术手段解决。

3 结 论

(1)使用PCA对数据进行处理,可以解决各影响因素之间的多重线性关系,改善过拟合现象。

(2)PSO优化初始群权值和治阀值能够使网络以更大的概率收敛到全局最优。

(3)PCA-PSOBP混合神经网络有较好的泛化能力,用它计算得到的边坡稳定性数值具有一定的参考价值。

(4)运算速度的问题可以通过使用其他计算机语言和其他代码格式以及程序的进一步优化得到较好的解决。

[1] 黄 勤,刘衍鹏,刘益良,等.基于PCA的GABP神经网络入侵检测方法[J].计算机应用研究,2009,26(12):4754-4757.

[2] Sandhya Samarasinghe,史晓霞.神经网络在应用科学和工程中的应用—从基本原理到复杂的模式识别[M].北京:机械工业出版社,2010:187-215.

[3] 包研科.数据分析教程[M].北京:清华大学出版社,2011:63-76.

[4] 丁宏飞,朱 炯,罗书学.基于PCA-SVM的边坡稳定性预测模型研究[J].路基工程,2011(2):5-7.

[5] 龚 纯,王正林.精通 MATLAB最优化计算[M].北京:电子工业出版社,2009:270-310.

[6] Willia m H.P ress,Saul A.Teukolsky.Numerical Recipes in C[M].New York:CAMBRIDGE UNIVERSITY PRESS,1992:309-313.

[7] 冯夏庭.智能岩石力学导论[M].北京:科学出版社,2000.

[8] 马洪生.神经网络在边坡稳定性分析中的应用[J].中国地质灾害与防治学报,1999,10(1):49-53.

[9] 夏元友,熊海丰.边坡稳定性影响因素敏感性人工神经网络分析[J].岩土力学与工程学报,2004,23(16):2703-2707.

[10]马洪生.边坡稳定性影响因素定量分析神经网络法[J].路基工程,2005(5):42-44.

[11]邹 平,李爱兵.屋场坪锡矿东部边坡的可靠性与神经网络分析[J].采矿技术,2011,11(6):51-53.

猜你喜欢

阀值权值全局
Cahn-Hilliard-Brinkman系统的全局吸引子
一种融合时间权值和用户行为序列的电影推荐模型
量子Navier-Stokes方程弱解的全局存在性
CONTENTS
光敏传感器控制方法及使用其的灭蚊器
落子山东,意在全局
基于小波分析理论的桥梁监测信号去噪研究
激光多普勒测速系统自适应阀值检测算法
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究