diff --git a/ex2/costFunctionReg.m b/ex2/costFunctionReg.m index 87b7e8e..deaae32 100644 --- a/ex2/costFunctionReg.m +++ b/ex2/costFunctionReg.m @@ -2,12 +2,12 @@ function [J, grad] = costFunctionReg(theta, X, y, lambda) %COSTFUNCTIONREG Compute cost and gradient for logistic regression with regularization % J = COSTFUNCTIONREG(theta, X, y, lambda) computes the cost of using % theta as the parameter for regularized logistic regression and the -% gradient of the cost w.r.t. to the parameters. +% gradient of the cost w.r.t. to the parameters. % Initialize some useful values m = length(y); % number of training examples -% You need to return the following variables correctly +% You need to return the following variables correctly J = 0; grad = zeros(size(theta)); @@ -17,10 +17,8 @@ grad = zeros(size(theta)); % Compute the partial derivatives and set grad to the partial % derivatives of the cost w.r.t. each parameter in theta - - - - +J = 1/m * (-y'*log(sigmoid(X*theta)) - (1-y)'*log(1-sigmoid(X*theta))) ... + + lambda/(2*m) * theta(2:end)' * theta(2:end); % =============================================================