资源简介

machine learning ex4

资源截图

代码片段和文件信息

function checkNNGradients(lambda)
%CHECKNNGRADIENTS Creates a small neural network to check the
%backpropagation gradients
%   CHECKNNGRADIENTS(lambda) Creates a small neural network to check the
%   backpropagation gradients it will output the analytical gradients
%   produced by your backprop code and the numerical gradients (computed
%   using computeNumericalGradient). These two gradient computations should
%   result in very similar values.
%

if ~exist(‘lambda‘ ‘var‘) || isempty(lambda)
    lambda = 0;
end

input_layer_size = 3;
hidden_layer_size = 5;
num_labels = 3;
m = 5;

% We generate some ‘random‘ test data
Theta1 = debugInitializeWeights(hidden_layer_size input_layer_size);
Theta2 = debugInitializeWeights(num_labels hidden_layer_size);
% Reusing debugInitializeWeights to generate X
X  = debugInitializeWeights(m input_layer_size - 1);
y  = 1 + mod(1:m num_labels)‘;

% Unroll parameters
nn_params = [Theta1(:) ; Theta2(:)];

% Short hand for cost function
costFunc = @(p) nnCostFunction(p input_layer_size hidden_layer_size ...
                               num_labels X y lambda);

[cost grad] = costFunc(nn_params);
numgrad = computeNumericalGradient(costFunc nn_params);

% Visually examine the two gradient computations.  The two columns
% you get should be very similar. 
disp([numgrad grad]);
fprintf([‘The above two columns you get should be very similar.\n‘ ...
         ‘(Left-Your Numerical Gradient Right-Analytical Gradient)\n\n‘]);

% Evaluate the norm of the difference between two solutions.  
% If you have a correct implementation and assuming you used EPSILON = 0.0001 
% in computeNumericalGradient.m then diff below should be less than 1e-9
diff = norm(numgrad-grad)/norm(numgrad+grad);

fprintf([‘If your backpropagation implementation is correct then \n‘ ...
         ‘the relative difference will be small (less than 1e-9). \n‘ ...
         ‘\nRelative Difference: %g\n‘] diff);

end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-03-14 09:40  jiqixuexi-ex4\
     目录           0  2017-03-14 09:40  jiqixuexi-ex4\练习4\
     文件        1950  2017-03-14 09:40  jiqixuexi-ex4\练习4\checkNNGradients.m
     文件        1095  2017-03-14 09:40  jiqixuexi-ex4\练习4\computeNumericalGradient.m
     文件         841  2017-03-14 09:40  jiqixuexi-ex4\练习4\debugInitializeWeights.m
     文件        1502  2017-03-14 09:40  jiqixuexi-ex4\练习4\displayData.m
     文件        8099  2017-03-14 09:40  jiqixuexi-ex4\练习4\ex4.m
     文件     7511764  2017-03-14 09:40  jiqixuexi-ex4\练习4\ex4data1.mat
     文件       79592  2017-03-14 09:40  jiqixuexi-ex4\练习4\ex4weights.mat
     文件        8749  2017-03-14 09:40  jiqixuexi-ex4\练习4\fmincg.m
     目录           0  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\
     目录           0  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\
     文件        1624  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\AUTHORS.txt
     文件        3862  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\ChangeLog.txt
     文件         881  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\jsonopt.m
     文件        1551  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\LICENSE_BSD.txt
     文件       18732  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\loadjson.m
     文件       15574  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\loadubjson.m
     文件         771  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\mergestruct.m
     文件       19369  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\README.txt
     文件       17462  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\savejson.m
     文件       16123  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\saveubjson.m
     文件        1094  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\jsonlab\varargin2struct.m
     文件        1195  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\makeValidFieldName.m
     文件        5562  2017-03-14 09:40  jiqixuexi-ex4\练习4\lib\submitWithConfiguration.m
     文件        3210  2017-03-14 09:40  jiqixuexi-ex4\练习4\nnCostFunction.m
     文件         585  2017-03-14 09:40  jiqixuexi-ex4\练习4\predict.m
     文件         903  2017-03-14 09:40  jiqixuexi-ex4\练习4\randInitializeWeights.m
     文件         137  2017-03-14 09:40  jiqixuexi-ex4\练习4\sigmoid.m
     文件         677  2017-03-14 09:40  jiqixuexi-ex4\练习4\sigmoidGradient.m
     文件        1635  2017-03-14 09:40  jiqixuexi-ex4\练习4\submit.m
............此处省略1个文件信息

评论

共有 条评论