MATLAB逻辑回归实例及代码

MATLAB逻辑回归实例及代码

逻辑回归基本流程:



注:回归系数W更新公式写错了,应该是减号,错写成加号了。
训练数据(包含训练样本及对应的标签)百度云链接:https://pan.baidu.com/s/1kgt2r8Ghz7q0oX-C2-_nYw
提取码:cgxr
散点图如下:

MATLAB代码:
XX=xlsread(‘训练数据.xls’);%读取训练数据(包含训练样本XX及对应的标签y)
X=XX(:,1:2); %从训练数据中找出训练样本X
X=[X ones(10,1)]; %生成符合逻辑回归模型的X(加上逻辑回归模型中的常数项)
y=XX(:,3); %从训练数据中找出训练样本X对应的标签y
W=rand(3,1); %初始化逻辑回归系数W
T=0;%循环次数
sign=1;%循环进行标志
lr=0.1;%设定梯度下降学习速率(采用固定学习速率的梯度下降法)
%循环
while (sign==1)
P=sigmf(XW,[1 0]); %求逻辑回归模型输出值P
LW=X’
(P-y); %求梯度LW
if (norm(LW)<=0.001)|(T >= 150000) %循环结束条件
sign=0;
else
sign=1;
T=T+1;
W=W-(0.1)*(LW); %梯度更新
end
end
%最终求得得逻辑回归系数
W =
0.7938
-2.2932
12.1551
%绘制逻辑回归分类界线
x1=-2.5:0.1:2;
x2=((-W1/W2)*x1)-(W0/W2);
plot(x1,x2,‘r’);
%在此逻辑回归系数下,训练样本X在此逻辑回归模型中的输出为:

绘制逻辑回归分类界线与散点图如下:

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年8月23日
下一篇 2023年8月23日

相关推荐