This repository has been archived on 2021-05-17. You can view files and clone it, but cannot push or open issues or pull requests.
scientificComputing/regression/code/errorGradient.m

26 lines
817 B
Matlab

% x, y, slopes, intercepts, ii, ss, and error_surface from exercise 8.3
qslopes = 1.0:0.5:4.0;
qintercepts = -150:50:150;
gradient_m = zeros(length(qintercepts), length(qslopes));
gradient_b = zeros(length(qintercepts), length(qslopes));
for i = 1:length(qintercepts)
for j = 1:length(qslopes)
grad = meanSquaredGradient(x, y, [qslopes(j), qintercepts(i)]);
gradient_m(i,j) = grad(1);
gradient_b(i,j) = grad(2);
end
end
figure()
hold on
contour(ss, ii, error_surface, 70);
[qss, qii] = meshgrid(qslopes, qintercepts);
quiver(qss, qii, gradient_m, gradient_b, 0.01)
xlabel('Slope m')
ylabel('Intercept b')
zlabel('Mean squared error')
%set(gcf, 'paperunits', 'centimeters', 'papersize', [15, 10.5], ...
% 'paperposition', [0., 0., 15, 10.5])
%saveas(gcf, 'error_gradient', 'pdf')