Asked by subha
on 23 Nov 2013

First i would like to know how to make visible layer to zero mean and unit variance.I have seen in few example they followed below way.but i couldnot understand

subtracting the corresponding data with its mean and divide it by standard division, my data becomes NaN.

I am new to matlab and Neural networks.

data= batchdata(:,:,batch); mean_data=mean(data,1),data=bsxfun(data,mean_data); std_data=std(data,[],1); data=bsxfun(@rdivide,data,std_data);

i am not able to find the reason

can anybody help to clear this

Answer by Greg Heath
on 23 Nov 2013

Accepted answer

doc zscore help zscore

doc mapstd help mapstd

Hope this helps.

- Thank you for formally accepting my answer*

Greg

Greg Heath
on 25 Nov 2013

[x, t ] = engine_dataset; [ I N ] = size(x) % 2 1199 [ O N ] = size(t) % 2 1199

z = [ x; t]; muz = mean(z')'; stdz = std(z')'; % [ muz stdz ] = [ 141.2 090.7 % 1259.5 354.8 % 754.2 548.7 % 961.7 466.1 ]

zn = ( z - repmat(muz,1,N))./repmat(stdz,1,N); muzn = mean(zn')'; stdzn = std(zn')'; % [ muzn stdzn ] = [ -0.0000 1.0000 % 0.0000 1.0000 % -0.0000 1.0000 % -0.0000 1.0000 ]

Opportunities for recent engineering grads.

## 1 Comment

## Greg Heath (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/107254#comment_181595

"subtracting the corresponding data with its mean and divide it by standard division, my data becomes NaN."

Did it ever occur to you to post that code?