近来,在网上搜了很多关于数据归一化的帖子,看了太多,很杂,这里整理总结一下
归一化是一种数据预处理方法,就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内,为了后面数据处理的方便,其次是保正程序运行时收敛加快。
比如说,对于奇异样本数据(所谓奇异样本数据数据指的是相对于其他输入样本特别大或特别小的样本矢量),奇异样本数据存在所引起的网络训练时间增加,并可能引起网络无法收敛,所以对于训练样本存在奇异样本数据的数据集在训练之前,最好先进形归一化,若不存在奇异样本数据,则不需要事先归一化。
在matlab里面,用于归一化的方法共有三种:
(1)premnmx、postmnmx、tramnmx(2)prestd、poststd、trastd
(3)是用matlab语言自己编程。
premnmx一般在低版本的matlab中不能使用,可能会直接转向MAPMINMAX函数
对于mapminmax函数的一般接口:
>>[Y,PS] = mapminmax(X)
>>[Y,PS] = mapminmax(X,FP)
>>Y = mapminmax('apply',X,P