logistic regression二元分类(小鸡版)

本文介绍了如何使用Matlab实现Logistic Regression进行二分类任务,包括数据准备、初始化参数、梯度下降法更新参数等步骤,并展示了不同数据分布下的分类效果。

1.logistic regression回归解决二分类

matlab 代码

% logistic regression 二元分类,使用 batch descent regression算法

%数据
x = linspace(1,20,20)
y = fliplr([0 0 1 0 0 0 1 0 1 1 1 1 1 1  1 1 1 1 1 1]); 

%初始值
theta0 = 0.1;
theta1 = 0.1;

step = 0.001; %步长
count = 1

while 1
   %(derative_theta0 ,derative_theta1)是梯度 
   derative_theta0 = 0;
   derative_theta1 = 0;
   
   m = length(x);
   for i=1 : length(x)
       derative_theta0 = derative_theta0 + (y(i) - 1 ./ (1 + exp( - (theta0+theta1*x(i))  ) )) *1
       derative_theta1 = derative_theta1 + (y(i) - 1 ./ (1 + exp( - (theta0+theta1*x(i))  ) )) * x(i)
   end 

   %梯度下降或去新的 theta0和theta1
   theta0 = theta0 + step*derative_theta0;
   theta1 = theta1 + step*derative_theta1;
   
   error = (step*derative_theta0)^2 + (step*derative_theta1)^2;
   
   %退出条件
   if   error < 0.00000003
        f = 1./( 1+ exp(-(theta0 + theta1*x)))
        func = sprintf('%d times: theta1=%f theta0=%f\n',count,theta1,theta0);
        plot(x,y,'r+',x,f,'linewidth',2); 
        legend(func)
        break;
   end 
   count = count + 1
end 

2.分类情况
y =fliplr([0 0 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1]) 时候的的分类情况

y = [0 0 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1]时候的的分类情况


### 回答1: logistic回归是一种常用的分类方法,其中包括二元分类和多元分类。其中,二元分类是指将样本划分为两类,而多元分类则是将样本划分为多于两类。 在进行多元分类时,可以使用多项式逻辑回归(multinomial logistic regression)。这种方法与二元逻辑回归类似,但是在计算类间距离时使用的是多项式代价函数。 在进行多元分类时,可以使用多种评估方法来评估模型的效果。常用的方法有准确率(accuracy)、混淆矩阵(confusion matrix)、精确率(precision)、召回率(recall)和 F1 值(F1 score)。这些指标可以帮助我们了解模型在分类中的效果,并进行模型调优。 ### 回答2: 逻辑回归(Logistic Regression)是一种常用的分类算法,用于解决二分类问题。然而,在多分类问题中,我们需要使用多项式逻辑回归(Multinomial Logistic Regression)来进行评估。 多项式逻辑回归是通过将多个二分类逻辑回归模型结合起来来实现多分类。具体而言,我们首先将类别之间进行两两组合,形成多个二分类模型。然后,对于每个二分类模型,利用逻辑回归的方法来拟合数据并计算得到决策边界。最后,通过将所有二分类结果进行综合,即可得到多分类问题的评估结果。 在使用多项式逻辑回归进行多分类评估时,我们需要注意以下几点: 1. 数据预处理:对于多分类问题,我们需要将类别变量进行独热编码,将其转换为二进制形式,以便逻辑回归模型能够正确处理多个类别。 2. 模型训练:对于多分类问题,我们需要同时训练多个二分类逻辑回归模型。一种常用的方法是使用一对多(One-vs-Rest)的策略,即将每个类别作为一个二分类问题的正类别,其他类别作为负类别,拟合对应的二分类模型。 3. 决策边界选择:在多分类问题中,需要确定不同类别之间的决策边界。一种常用的方法是使用 softmax 函数来进行类别概率的预测和划分。 4. 模型评估:对于多分类问题,我们可以使用准确率(accuracy)等指标来评估模型的性能。同时,可以绘制混淆矩阵(confusion matrix)来衡量模型在每个类别上的表现。 总而言之,多项式逻辑回归是一种常用的多分类评估方法。它通过结合多个二分类模型,对类别之间的决策边界进行建模,从而得到准确的多分类结果。 ### 回答3: Logistic回归多项式(Logistic Regression Multinomial)是一种常用的多分类模型评估方法。多分类是指将样本分为三个或三个以上的类别。Logistic回归多项式可以用于解决多分类问题,并对分类结果进行评估。 在Logistic回归多项式中,每个类别都与其他所有类别进行比较。这种方法使用了一个基础类别作为对比,然后将其他所有类别分别与该基础类别进行对比。对于每个类别,我们通过建立一个二分类Logistic回归模型来对其进行评估。 在多分类评估中,我们通常使用混淆矩阵来评估模型的性能。混淆矩阵是一个二维矩阵,其行表示实际类别,列表示预测类别。矩阵的每个元素表示属于实际类别的样本数量被预测为该类别的数量。通过分析混淆矩阵,我们可以得出以下指标来评估模型的性能: 1. 准确率(Accuracy):准确率表示被正确分类的样本占总样本数的比例。当各类别样本数量相当时,准确率是衡量模型性能的重要指标。 2. 精确度(Precision):精确度表示被正确分类的正样本占所有被预测为正样本的比例。精确度可以衡量模型对正样本分类的准确性。 3. 召回率(Recall):召回率表示被正确分类的正样本占所有真正正样本的比例。召回率可以衡量模型发现所有真正正样本的能力。 4. F1-score:F1-score是精确度和召回率的调和平均值,用于综合评估模型的性能。 除了以上指标,我们还可以绘制ROC曲线和计算AUC来评估模型在不同阈值下的性能。 通过Logistic回归多项式的多分类评估,我们可以更全面地了解模型对各类别的分类能力,从而优化模型参数、特征选择以及改进其他建模方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值