64 lines
1.6 KiB
Matlab
64 lines
1.6 KiB
Matlab
function submit()
|
|
addpath('./lib');
|
|
|
|
conf.assignmentSlug = 'neural-network-learning';
|
|
conf.itemName = 'Neural Networks Learning';
|
|
conf.partArrays = { ...
|
|
{ ...
|
|
'1', ...
|
|
{ 'nnCostFunction.m' }, ...
|
|
'Feedforward and Cost Function', ...
|
|
}, ...
|
|
{ ...
|
|
'2', ...
|
|
{ 'nnCostFunction.m' }, ...
|
|
'Regularized Cost Function', ...
|
|
}, ...
|
|
{ ...
|
|
'3', ...
|
|
{ 'sigmoidGradient.m' }, ...
|
|
'Sigmoid Gradient', ...
|
|
}, ...
|
|
{ ...
|
|
'4', ...
|
|
{ 'nnCostFunction.m' }, ...
|
|
'Neural Network Gradient (Backpropagation)', ...
|
|
}, ...
|
|
{ ...
|
|
'5', ...
|
|
{ 'nnCostFunction.m' }, ...
|
|
'Regularized Gradient', ...
|
|
}, ...
|
|
};
|
|
conf.output = @output;
|
|
|
|
submitWithConfiguration(conf);
|
|
end
|
|
|
|
function out = output(partId, auxstring)
|
|
% Random Test Cases
|
|
X = reshape(3 * sin(1:1:30), 3, 10);
|
|
Xm = reshape(sin(1:32), 16, 2) / 5;
|
|
ym = 1 + mod(1:16,4)';
|
|
t1 = sin(reshape(1:2:24, 4, 3));
|
|
t2 = cos(reshape(1:2:40, 4, 5));
|
|
t = [t1(:) ; t2(:)];
|
|
if partId == '1'
|
|
[J] = nnCostFunction(t, 2, 4, 4, Xm, ym, 0);
|
|
out = sprintf('%0.5f ', J);
|
|
elseif partId == '2'
|
|
[J] = nnCostFunction(t, 2, 4, 4, Xm, ym, 1.5);
|
|
out = sprintf('%0.5f ', J);
|
|
elseif partId == '3'
|
|
out = sprintf('%0.5f ', sigmoidGradient(X));
|
|
elseif partId == '4'
|
|
[J, grad] = nnCostFunction(t, 2, 4, 4, Xm, ym, 0);
|
|
out = sprintf('%0.5f ', J);
|
|
out = [out sprintf('%0.5f ', grad)];
|
|
elseif partId == '5'
|
|
[J, grad] = nnCostFunction(t, 2, 4, 4, Xm, ym, 1.5);
|
|
out = sprintf('%0.5f ', J);
|
|
out = [out sprintf('%0.5f ', grad)];
|
|
end
|
|
end
|