2.看一下MATLAB里的premnmx函数和postmnmx函数.它们一个是归一一个是反归一
3.并不是归一化的数据训练效果就好
神经网络训练的时候,应该考虑极值情况,即归一化的时候要考虑你所需要识别参数的极值,以极值作分母,这样可能效果更好一点。
9.我想问大家一下:在神经网络中,只有一个函数即:purelin这个函数对训练的输出数据不用归一化,而象logsig
和tansig函数都要归一化(如果数据范围不在[-1,1]或[0,1]之间).那既然用purelin函数可以不用归一化,为何又是还用归一化呢?
用神经网络里的PRESTD, PREPCA, POSTMNMX,
TRAMNMX等函数归一化和直接用purelin这个函数有什么区别啊? 我作负荷预测时,象不用归一化的效果很好呀!
归一化化定义:我是这样认为的,归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保正程序运行时收敛加快。
在matlab里面,用于归一化的方法共有三中,(1)premnmx、postmnmx、tramnmx(2)prestd、poststd、trastd(3)是用matlab语言自己编程。premnmx指的是归一到[-1
1],prestd归一到单位方差和零均值。(3)关于自己编程一般是归一到[0.1 0.9] 。具体用法见下面实例。
为什么要用归一化呢?首先先说一个概念,叫做奇异样本数据,所谓奇异样本数据数据指的是相对于其他输入样本特别大或特别小的样本矢量。
下面举例:
m=[0.11 0.15 0.32 0.45 30;
0.13 0.24 0.27 0.25 45];
其中的第五列数据相对于其他4列数据就可以成为奇异样本数据(下面所说的网络均值bp)。奇异样本数据存在所引起的网络训练时间增加,并可能引起网络无法收敛,所以对于训练样本存在奇异样本数据的数据集在训练之前,最好先进形归一化,若不存在奇异样本数据,则不需要事

本文介绍了MATLAB中数据归一化的几种方法,如premnmx、prestd等,强调了归一化在神经网络训练中的作用,特别是在处理奇异样本数据时能加速网络收敛。此外,讨论了归一化对不同激活函数的影响,例如logsig和tansig需要归一化,而purelin则不一定。文章通过示例展示了如何使用MATLAB进行数据归一化和反归一化,同时指出归一化不是必须的,效果取决于具体数据集。最后,探讨了不同类型数据组合归一化的可行性,并建议根据实际问题来确定数据组织方式。
最低0.47元/天 解锁文章
4万+

被折叠的 条评论
为什么被折叠?



