归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保证程序运行时收敛加快。
mapminmax函数
这个函数可以把矩阵的每一行归一到[-1 1]. [y1,PS] = mapminmax(x1). 其中x1 是需要归一的矩阵 y1是结果。
函数接口:
[Y,PS] = mapminmax(X)
[Y,PS] = mapminmax(X,FP)
Y = mapminmax(‘apply’,X,PS)
X = mapminmax(‘reverse’,Y,PS)
算法原理:
假设X仅具有有限的实数值,并且每行的元素并非全部相等。如果有一行的元素都相同比如xt = [1 1 1],此时xmax = xmin = 1,把此时的变换变为y = ymin
,matlab内部就是这么解决的.否则该除以0了,没有意义!
- y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin;
- 特殊情况下:y=ymin;
案例1:特殊情况
案例2:验证映射
x1=[1,2,3]&