BP神经网络预测,预测结果与样本数据的理解。

朋友让看一个BP神经网络的程序。由样本数据(如图1),数与数之间有空格隔开,共8个样本数据。导入程序进行预测,其中有关BP神经网络的参数设置为(如图2),经过训练后,预测出一个结果数据文件(如图3)。
由于对BP神经网络不是特别熟悉,所以求大神解答一下,这样的预测结果和样本是怎样的对应关系?这样的预测结果代表着什么?
若能解答,万分感谢。
图1
图2
图3

输入节点数是3,说明输入向量的行数m=3,你给的样本只有1行,是不是不全?输出节点只有一个,说明每3个输入数据对应一个预测的输出数据。
其实样本数量很少,就不需要训练那么多次了,训练了也白训练。你问“这样的预测结果代表着什么?”,你也没说这些数据在现实中是什么,怎么会知道呢。追问

其实这只是一个测试程序。
我要做的其实是关于图像演变的预测,要结合元胞自动机模型来做。所以想在BP神经网络中输入8个值,然后预测出1个值。但是看来很久的神经网络都不是特别明白其中所说的“样本训练“和”各层权值矩阵的生成与调节”这两个环节,总是想的不那么明白。
您能不能简单直白的给我介绍一下BP神经网络算法的实现方法和运行机制?最好是能有关我要做的8个输入、预测1个输出这一问题。万分感谢。

追答

1)正向传播:输入样本->输入层->各隐层(处理)->输出层
注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程)
2)误差反向传播:输出误差(某种形式)->隐层(逐层)->输入层
其主要目的是通过将输出误差反传,将误差分摊给各层所有单元,从而获得各层单元的误差信号,进而修正各单元的权值(其过程,是一个权值调整的过程)。
注2:权值调整的过程,也就是网络的学习训练过程(学习也就是这么的由来,权值调整)。

其实,BP算法就是四个公式,编程的时候套公式就可以,具体的推导过程可以不懂。
输入神经元、输出神经元个数都是可以随意设定的,在编程里也就是数组维数不同而已。

追问

谢谢指导。您说的这些我都知道,也看过很多遍,可就是不能准确的应用在编程和处理实际问题上。您有没有那种具体的小例子,给我参考参考?
还有,您说BP算法就是四个公式?是指其中的激活函数那部分吗?

追答

我说的公式是指权值和阈值的修正公式。不知道你用哪种语言编程,我上传一个C++的例子。

最好找本讲神经网络的教材,BP算法肯定有具体公式推导的。

追问

哦。明白了。我用的是C#。谢谢您的例子,我会好好看看例子。
十分感谢,以后有什么问题,再继续向您请教,还望您能指点一二。

温馨提示:答案为网友推荐,仅供参考
相似回答