mirror of
https://github.com/jlengrand/MachineLearningCoursera.git
synced 2026-03-10 08:31:20 +00:00
Finishes Week 9 assignment
This commit is contained in:
@@ -46,7 +46,7 @@ t3 = t2(R==1); % only when movie has been rated.
|
|||||||
temp = sum(t3(:));
|
temp = sum(t3(:));
|
||||||
J = (1/2) * (temp);
|
J = (1/2) * (temp);
|
||||||
|
|
||||||
% adding regularization
|
% adding regularization to cost
|
||||||
x_temp = X.^2;
|
x_temp = X.^2;
|
||||||
theta_temp = Theta.^2;
|
theta_temp = Theta.^2;
|
||||||
reg_x = (lambda / 2) * sum(x_temp(:));
|
reg_x = (lambda / 2) * sum(x_temp(:));
|
||||||
@@ -58,6 +58,12 @@ temp1 = ((Theta*X')' - Y);
|
|||||||
temp1(find(R==0)) = 0; % only when movie has been rated.
|
temp1(find(R==0)) = 0; % only when movie has been rated.
|
||||||
X_grad = temp1 * Theta;
|
X_grad = temp1 * Theta;
|
||||||
Theta_grad = temp1' * X;
|
Theta_grad = temp1' * X;
|
||||||
|
|
||||||
|
% adding regularization to gradients
|
||||||
|
X_temp2 = X.*lambda;
|
||||||
|
Theta_temp2 = Theta.*lambda;
|
||||||
|
X_grad = X_grad + X_temp2;
|
||||||
|
Theta_grad = Theta_grad + Theta_temp2;
|
||||||
% =============================================================
|
% =============================================================
|
||||||
|
|
||||||
grad = [X_grad(:); Theta_grad(:)];
|
grad = [X_grad(:); Theta_grad(:)];
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ ylabel('Movies');
|
|||||||
xlabel('Users');
|
xlabel('Users');
|
||||||
|
|
||||||
fprintf('\nProgram paused. Press enter to continue.\n');
|
fprintf('\nProgram paused. Press enter to continue.\n');
|
||||||
% pause;
|
pause;
|
||||||
|
|
||||||
%% ============ Part 2: Collaborative Filtering Cost Function ===========
|
%% ============ Part 2: Collaborative Filtering Cost Function ===========
|
||||||
% You will now implement the cost function for collaborative filtering.
|
% You will now implement the cost function for collaborative filtering.
|
||||||
@@ -66,7 +66,7 @@ fprintf(['Cost at loaded parameters: %f '...
|
|||||||
'\n(this value should be about 22.22)\n'], J);
|
'\n(this value should be about 22.22)\n'], J);
|
||||||
|
|
||||||
fprintf('\nProgram paused. Press enter to continue.\n');
|
fprintf('\nProgram paused. Press enter to continue.\n');
|
||||||
% pause;
|
pause;
|
||||||
|
|
||||||
|
|
||||||
%% ============== Part 3: Collaborative Filtering Gradient ==============
|
%% ============== Part 3: Collaborative Filtering Gradient ==============
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user