Using meand stddev
function [featureIn,meanFeatIn, stdDevFeatIn] = mynorm_train(featureIn)
meanFeatIn = mean(featureIn,1);
stdDevFeatIn = std(featureIn,1,1);
noSample = size(featureIn,1);
for i=1:noSample
featureIn(i,:) = (featureIn(i,:) - meanFeatIn) ./ stdDevFeatIn ;
end
end
function [testFeatureIn] = mynorm_test(testFeatureIn,meanFeatIn,stdDevFeatIn)
noSample = size(testFeatureIn,1);
noInputFeat = size(testFeatureIn,2);
for i=1:noSample
testFeatureIn(i,1:noInputFeat) = (testFeatureIn(i,1:noInputFeat) - meanFeatIn ) ./ stdDevFeatIn;
end
end
Using range
function [ N_feature,feature_range,feature_bases ] = normalize( features )
%NORMALIZE Summary of this function goes here
% Detailed explanation goes here
% samples are in rows
for NoF = 1:size(features,2)
F_min(NoF) = min(features(:,NoF));
F_max(NoF) = max(features(:,NoF));
feature_range(NoF) = (F_max(NoF)-F_min(NoF))/2;
feature_bases(NoF) = (F_max(NoF)+F_min(NoF))/2;
for NoS = 1:size(features,1)
if (feature_range(NoF) ~=0)
N_feature(NoS,NoF) = (features(NoS,NoF)-feature_bases(NoF))/feature_range(NoF);
else
N_feature(NoS,NoF)=features(NoS,NoF)-feature_bases(NoF);
end
end
end
end
function [ feature ] = normalize_t( t_features,range,bases )
%NORMALIZE_T Summary of this function goes here
% Detailed explanation goes here
range = repmat(range,size(t_features,1),1);
bases = repmat(bases,size(t_features,1),1);
feature = (t_features - bases)./range;
end
Comments
Post a Comment