吴恩达机器学习正则化Logistic回归算法的MATLAB实现

本文详细介绍了如何在MATLAB中实现吴恩达机器学习课程中的正则化Logistic回归算法。通过对比未正则化和正则化的logistic算法,展示了梯度下降法在计算代价函数和梯度中的应用,并提供了关键代码段。文章还探讨了正则化在代价函数和梯度计算中的不同之处,并附带了准确率验证及迭代次数与代价函数关系的分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:最近二刷了吴恩达的机器学习视频,通过对视频中logistic算法知识点的整理,对该算法的应用有了更深的认识。同时发现logistic算法的应用和线性回归有几分相似,因此重新做了下练习加深自己的理解。在文章最后,附上自己用梯度下降算法实现的logistic算法。

这里列出线性回归和logistic回归算法的重要公式,更直观的认识到二者之间的异同。

未正则化的 logistic算法 

plotData.m

这个函数的作用是将所有样本中结果为0和1的样本区分出来。I = find(X)函数会返回X中结果为真的索引号。

function plotData(X, y)
%PLOTDATA Plots the data points X and y into a new figure 
%   PLOTDATA(x,y) plots the data points with + for the positive examples
%   and o for the negative examples. X is assumed to be a Mx2 matrix.

% Create New Figure
figure; hold on;

% ====================== YOUR CODE HERE ======================
% Instructions: Plot the positive and negative examples on a
%               2D plot, using the option 'k+' for the positive
%               examples and 'ko' for the negative examples.
%
positive = find(y == 1);
negative = find(y == 0);
plot(X(positive,1),X(positive,2),'k+','MarkerSize',7,'LineWidth',2);
hold on;
plot(X(negative,1),X(negative,2),'ko','MarkerSize',7,'MarkerFaceColor','y');
legend();
% =========================================================================
hold off;

end

sigmoid.m

这个函数实现的就是sigmoid函数,该函数的原型如下所示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值