上一篇文章介绍了神经网络模型的建立和预测结果的输出及误差统计。这一篇文章将主要讲述对实际的预测结果的修正和优化。
在神经网络的初始化过程中,所有的权值矩阵与阈值矩阵都是随机初始化的,这样就会导致神经网络非常不稳定,对于同样的训练数据来说,每次训练得到的结果往往差别很大。甚至有的会出现一些比较极端的值。当然,这也与BP网络算法的特性有关,即易收敛在局部极值区域。尤其是在训练数据的质量不够好的时候,往往会出现较大的偏差。对于BP网络来说,所训练的每一个值都会影响整个网络的权值和阈值矩阵,导致若干坏值对网络整体性能的影响非常大。在这些消极因素的影响下,预测的精度就是一个很大的问题。
当出现了这些因素的时候,我有两种解决办法。一,改善网络的学习算法,使得其避免BP算法本身的缺陷。二,对预测结果进行适当的修正,补偿产生的较大误差。当然,也可以进一步的改进网络的连接结构,但由于笔者本身的知识水平有限,不在这里进行研究。本篇文章主要讲述对预测结果的修正算法。