MatLab归一化说明

来源:互联网 发布:怎么制作淘宝店铺模板 编辑:程序博客网 时间:2024/06/05 21:55

MatLab归一化说明

matlab premnmx归一化函数的使用

1、premnmx
预处理数据使数据的最小值和最大值分别为-1和1.
[PN,minp,maxp,TN,mint,maxt] = premnmx(P,T)

premnmx(P,T)
输入
P - R x Q 矩阵(输入向量,其中一列表示输入变量).
T - S x Q 矩阵(目标/输出 向量).

输出
PN - R x Q 矩阵 (归一化的输入向量).
minp- R x 1 向量,包含对于P的最小值.
maxp- R x 1 向量,包含P的最大值.
TN - S x Q 矩阵,归一化的目标向量.
mint- S x 1 向量,包含每个目标值T的最小值。
maxt- S x 1 向量,包含每个目标值T的最大值。

[PN,minp,maxp] = premnmx(P)

实例:
P = [
1 2 3
4 5 6
7 8 9
]
T = [10 11 12]
[PN,minp,maxp,TN,mint,maxt] = premnmx(P,T)

P =

 1     2     3 4     5     6 7     8     9

T =

10    11    12

PN =

-1     0     1-1     0     1-1     0     1

minp =

 1 4 7

maxp =

 3 6 9

TN =

-1     0     1

mint =

10

maxt =

12

由上面可知,premnmx是将一列作为一个样本输入来处理的。

2、postmnmx
对那些归一化后的数据进行后处理
[P,T] = postmnmx(PN,minp,maxp,TN,mint,maxt)
[p] = postmnmx(PN,minp,maxp)

输入

PN - R x Q 矩阵 (归一化的输入向量).
minp- R x 1 向量,包含对于P的最小值.
maxp- R x 1 向量,包含P的最大值.
TN - S x Q 矩阵,归一化的目标向量.
mint- S x 1 向量,包含每个目标值T的最小值。
maxt- S x 1 向量,包含每个目标值T的最大值
输出
P - R x Q 矩阵(输入向量,其中一列表示输入变量).
T - S x Q 矩阵(目标/输出 向量).
postmnmx与premnmx成对使用,premnmx的输出作为postmnmx的输入

运用时,首先通过premnmx对训练数据进行归一化,但对测试数据归一化是需用到另外一个函数tramnmx;实现测试数据的归一化处理

premnmx与tramnmx的区别

premnmx是训练数据归一化,此时不知道输入数据范围

tramnmx是对预测数据归一化,此时用的最大最小是训练数据的最大最小。要先用了premnmx后才可以用,主要是用于归一化神经网络的输入,其中要用到premnmx的输出minp,maxp.

0 0
原创粉丝点击