sigmoid.m
g = 1 ./ (exp(-z) .+ 1);
costFunction.m
h = sigmoid(X * theta);
grad = X' * (h - y) / m;
J = (y' * log(h) + (1 .- y') * log(1 .- h)) / m;
J = 0 - J;
predict.m
p = sigmoid(X * theta) > 0.5;
costFunctionReg.m
h = sigmoid(X * theta);
theta(1) = 0;
grad = (X' * (h - y) + lambda * theta) / m;
J = (y' * log(h) + (1 .- y') * log(1 .- h) - lambda / 2 * sum(theta .^ 2)) / m;
J = 0 - J;
这是笔者自己想到一些对吴恩达机器学习课程的编程作业的实现方式,如果你有更好的实现方式,欢迎在评论区讨论。
这里只是部分代码,全部代码在
https://download.csdn.net/download/ti_an_di/10590380