神经网络归一化问题

我是一个神经网络初学者,该网络有12个输入,3个输出。起初训练2000个值,需要对这些值进行归一化,[pn,minp,maxp,tn,mint,maxt]=premnmx(Ttrain,tttrain);当训练完成后 我想要验证100个新的值,这里在验证之前也需要归一化,那么,这个归一化还是用最初训练值的最大最小归一化呢 还是用现在新的值的最大最小做归一化呢?

应该用之前训练样本的最大值和最小值,这样才能保证前后一致,语句为
[Ptestn]=tramnmx(Ptest,minp,maxp);

在最新版的matlab里面的归一化函数:mapminmax(),可以归一化到[-1,1]范围。mapstd函数是按统计规律进行归一化的,不太常用。
各自的归一化格式如下:
[pn,ps]=mapminmax(P)或=mapstd(P) %P是输入向量
[tn, ts]=mapminmax(t)或=mapstd(t) %t 是目标向量
在训练完后,对测试样本归一化格式为:
pnt=mapminmax('apply',pt,ps)或=mapstd('apply',pt,ps)
仿真后反归一化格式则为:
out=mapminmax('reverse',An,ts)或=mapstd('reverse',An,ts);其中An为sim函数的输出
温馨提示:答案为网友推荐,仅供参考