26 lines
817 B
Matlab
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')
|