matlab premnmx归一化函数的使用

来源:互联网 发布:体育专业表格数据分析 编辑:程序博客网 时间:2024/06/05 00:15

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;实现测试数据的归一化处理