功能:将矩阵的各行处理在[-1,1 ]区间。 处理需要正规化的m*n矩阵x,将正规化后的矩阵标记为y。
主要有五种调用形式
1.[Y,PS ]=最大最大值(x,YMIN,YMAX )。
这里,YMIN是归一化后矩阵y的各行的最小值,YMAX是归一化后的矩阵y的各行的最大值。
例1 )处理对象矩阵x=[ 456 ]5) 6; 7 )正规化后各行的最小值最好为0,最大值最好为1。 顺序如下
x=[4(5) 6; 79 ); 最大最小(x,0,1 )执行结果:
ans=
0 0.5000 1.0000
0 0.5000 1.0000
2.[Y,PS ]=最大最小(x,FP ) )。
FP是结构体的成员,主要相当于FP.YMAX (相当于ymax )、FP.YMAX (相当于ymax ) )。 1和2的处理效果相同,但参数的导入形式不同。
示例2 :
x=[4(5) 6; 79 ); FP.ymin=0; FP.ymax=1; mapminmax(x,FP )执行结果:
ans=
0 0.5000 1.0000
0 0.5000 1.0000
3.y=最大混合(应用)、x、PS () ) ) ) ) ) ) ) ) )。
PS是训练样本的映射,测试样本的预处理方式必须与训练样本相同。 只需将PS apply映射到测试样本。
例3 .训练样本取x,测试样本取m,归一化训练样本取y
x=[4(5) 6; 79 ); M=[2 3; 4 ); [Y,PS ]=最大最小(x,0,1 ); mapminmax(apply )、m、PS )执行结果:
ans=
-1.0000 -0.5000
-1.5000 -1.0000
4.x=mapminmax('reverse ',y,PS ) ) ) ) ) ) )。
归一化y在归一化前反转
例4 .将4.n(m的正规化)反转为m
x=[4(5) 6; 79 ); M=[2 3; 4 ); [Y,PS ]=最大最小(x,0,1 ); n=映射最小(应用)、m和PS; 映射混合(reverse )、n、PS )执行结果:
ans=
2 3
4 5
5.dx_dy=mapminmax(dx_dy )、x、y、PS ) )。
基于给定的矩阵x、归一化矩阵y和映射PS,获取逆导数。 如果给定的x和y是m行n列的矩阵,则结果dx_dy是1n结构阵列,其中每个元素也是mn的对角矩阵。 这个用法很少用,这里不举个例子。
mapminmax公式为y=(ymax-ymin ) *(x-xmin )/(xmax-xmin ) ymin。 如果某一行的数据全部相同,此时xmax=xmin,除数为0,则此时数据不变。
参考文献