Not showing output in command window of 'testing' script.
Show older comments
SIGMOID FUNCTION
function y = Sigmoid(x)
y = 1/(1 + exp(-x));
end
SGD Method function
function Weight = SGD_method(Weight, input, correct_Output)
alpha = 0.9;
N = 4;
for k = 1:N
transposed_Input = input(k, :)';
d = correct_Output(k);
weighted_Sum = Weight*transposed_Input;
output = Sigmoid(weighted_Sum);
error = d - output;
delta = output*(1-output)*error;
dWeight = alpha*delta*transposed_Input;
Weight(1) = Weight(1) + dWeight(1);
Weight(2) = Weight(2) + dWeight(2);
Weight(3) = Weight(3) + dWeight(3);
end
end
Training script
input = [ 0 0 1;
0 1 1;
1 0 1;
1 1 1;
];
correct_Output = [0
0
1
1
];
Weight = 2*rand(1 , 3) - 1;
for epoch = 1:10000
Weight = SGD_method(Weight, input, correct_Output);
end
save('Trained_Network.mat')
Testing script
load('Trained_Network.mat');
input = [ 0 0 1;
0 1 1;
1 0 1;
1 1 1;
];
N = 4;
for k = 1:N
transposed_Input = input(k, :)';
weighted_Sum = Weight*transposed_Input;
output = Sigmoid(weighted_Sum);
end
Accepted Answer
More Answers (0)
Categories
Find more on Pattern Recognition in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!