基于MATLAB的BP神经网络设计预测滑坡灾害问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于MATLAB的BP神经网络设计预测滑坡灾害问题相关的知识,希望对你有一定的参考价值。

本人准备使用BP神经网络做地质灾害滑坡预测,现在收集到了100组滑坡数据(坡体都是已经产生滑动了),要预测40组坡体是否会滑坡。
我现在设计个BP预测的网络,但是我发现,我野外收集100组数据都是已经滑坡,去预测40组还未滑坡数据,这样的预测是不是不科学?是否应该在网络训练时添加稳定坡体、欠稳定坡体两种数据给网络训练,如果是要添加,得添加多少组数据才科学。
本人刚使用BP,很多不明白之处,所以求大师帮助。求大师,请不要打酱油忽悠,感谢。

解决好如下几个问题:

①输入层:输入特征量个数,特征量。比如输入层为[x1 x2 x3]T。应有到山体滑坡就是刻画表征山体滑坡的特征量,这些量要归一化处理。
②隐含层:设置多少层隐含层,百度下有相关计算公式来确定。
③权值修正迭代算法,选择什么样的算法是输入尽快逼近输出,且误差最小
④输出层:输出的情况有多少种,该实体对象的状态。比如滑坡,未滑坡。
⑤样本的选取:样本要涵盖所有的输出,样本数量理论上越多越好。也可根据情况选择,尽量是输出情况对应的输入样本比例接近。
举个实例:
比如车型划分,主要划分为大车、小车两类。
输入层就是车型划分的特征量:比如选车长、轴数、车高三个特征量,那么输入层为3,[车长 轴数 车高]T
隐含层:设置可以设为5.设置太少不好。具体参照公式
迭代算法:可选择梯度下降法
输出层:也就是我们实体的状况:2中车型,大车 小车。可以定为[1 0]T
[0 1]T
样本大小车[车长 轴数 车高]形成的特征输入,控制大小车样本接近1:1.
如上确定好了后,形成了3*5*2的bp网络。训练即可。
参考如下实例:地震bp预测
http://wenku.baidu.com/view/856fa45f3b3567ec102d8a2d.html追问

谢谢你的回答,这几天有事去了,没来得急看您的回答。我还向您提下问题可以不?我会增加30个赏金。
一、我看BP做预测,MATLAB7.1工具箱里面有BP网络的模型,但是我发现很多文章都是写的程序,为什么都去写程序?何不直接用MATLAB工具箱?
二、样本的选取是不是有什么规定?比如100个样本,有95个是滑坡、5个不是滑坡,这样的样本能做科学预测吗?

追答

一、matlab nntool工具箱是可以实现各种神经网络的训练预测的。但你要用的好,知道各个参数的选取和选取后的效果。自己编写,可控性高点,自己明白整个过程。用工具箱操作起来不太灵活,在程序移植用于预测模拟的时候不太方便。此外,工具箱中有些莫名其妙的错误,给好了输出,设好了参数就是报错。
二、选取样本应考虑以下五点:
(1)遍历性,即选取出来的样本要有代表性,能覆盖全体样本空间; 注意要全体样本空间。
(2)相容性,即选取出来的样本不能自相矛盾,在建立输入、输出学习样 本时,分级宜散但不宜过细,以防止样本间出现矛盾现象;
(3)致密性,选取出来的样本要有一定的数量,以保证训练的效果;一般建议样本的选取数量均匀随机。训练过程中打乱样本的
(4)相关性,即训练样本中各输入值与目标值要有一定的相关性,训练样 本集合中输入参数之间最好线性无关。

参考技术A 您好 我目前也在进行基于MATLAB的BP神经网络设计预测滑坡灾害方面的学习,有一些问题,请问方便加您的QQ请教下吗?谢谢

优化预测基于matlab蝙蝠算法优化BP神经网络预测含Matlab源码 1379期

一、BP神经网络简介

1 BP神经网络概述
BP(Back Propagation)神经网络是1986年由Rumelhart和McCelland为首的科研小组提出,参见他们发表在Nature上的论文 Learning representations by back-propagating errors 。
BP神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的 输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断 调整网络的权值和阈值,使网络的误差平方和最小。

2 BP算法的基本思想
上一次我们说到,多层感知器在如何获取隐层的权值的问题上遇到了瓶颈。既然我们无法直接得到隐层的权值,能否先通过输出层得到输出结果和期望输出的误差来间接调整隐层的权值呢?BP算法就是采用这样的思想设计出来的算法,它的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。
正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。
反向传播时,将输出以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这两个过程的具体流程会在后文介绍。

BP算法的信号流向图如下图所示

以上是关于基于MATLAB的BP神经网络设计预测滑坡灾害问题的主要内容,如果未能解决你的问题,请参考以下文章

BP回归预测基于matlab思维进化算法优化BP神经网络回归预测含Matlab源码 2031期

BP回归预测基于matlab思维进化算法优化BP神经网络回归预测含Matlab源码 2031期

BP回归预测基于matlab文化算法优化BP神经网络数据回归预测含Matlab源码 2124期

BP回归预测基于matlab文化算法优化BP神经网络数据回归预测含Matlab源码 2124期

优化预测基于matlab蝙蝠算法优化BP神经网络预测含Matlab源码 1379期

优化预测基于matlab蝙蝠算法优化BP神经网络预测含Matlab源码 1379期