|
|
|
@ -40,7 +40,9 @@ Theta_grad = zeros(size(Theta));
|
|
|
|
|
% partial derivatives w.r.t. to each element of Theta
|
|
|
|
|
%
|
|
|
|
|
|
|
|
|
|
J = 0.5 * sum(sum(R.*(X*Theta'-Y).^2));
|
|
|
|
|
J = 0.5 * sum(sum(R.*(X*Theta'-Y).^2)) ...
|
|
|
|
|
+ 0.5 * lambda * sum(sum(Theta.^2)) ...
|
|
|
|
|
+ 0.5 * lambda * sum(sum(X.^2));
|
|
|
|
|
|
|
|
|
|
X_grad = (R.*(X*Theta'-Y))*Theta; % mov X user * uxer X feat = mov X feat
|
|
|
|
|
Theta_grad = (R.*(X*Theta'-Y))'*X; % user X mov * mov X feat = user X feat
|
|
|
|
|