【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

在这里插入图片描述

🤵‍♂️ 个人主页: @计算机魔术师
👨‍💻 作者简介:CSDN内容合伙人,全栈领域优质创作者。

该文章收录专栏
✨— 机器学习 —✨

一、线性回归能用于分类吗?

【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)(数理逻辑)回归算法(预测离散值 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 的 非常常用的学习算法

假设有如下的八个点(【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),我们需要建立一个模型得到准确的判断,那么应该如何实现呢

  • 我们尝试使用之前文章所学的线性回归 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 来拟合数据(【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)是参数列向量,注意这里的【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)是关于【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)的向量,其中【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)),并在0~1设置一个阈值 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 大于 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 的点则为1,否则为0,预测会得到如下粉丝直线

上一篇文章: 【机器学习】浅谈正规方程法&梯度下降
在这里插入图片描述

所以梯度下降算法中引出 logistic regression 算法

二、二元分类

2.1假设函数

我们希望能把 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 结果在 0 ~ 1 之间,

这里引入 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 函数 (也叫做 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 函数) —— 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)函数图像是一个区间在 0 ~ 1的S型函数,【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

在这里插入图片描述

  • 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
    那么我们的函数结果结果就会在0 ~ 1 之间

那现在我们所要做的便是需要求得参数【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 拟合模型

如下图,假设肿瘤案例,如下【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)为一个病人 同样的用列向量表示【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)的参数,那么参数一tumorSize便是肿瘤的大小,那么我们可以假设输出结果为 0.7 ,意思就是医生会告诉这个病人很不幸,会有很大(70%)的概率得到肿瘤。

  • 那么公式可以表示为 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
  • 即在【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)的条件下 求给定【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) (概率参数为【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类))的概率

在这里插入图片描述

  • 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
  • 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

概率结果只在0 ~ 1中

  • 假设如下

那么此时我们可以设置阈值【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) = 0.5,大于 0.5 的点则为1,否则为0

即在 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)(即 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类))中 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)< 0.5, 此时预测为0,在 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)(即 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)) 时,【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 预测值为1

在这里插入图片描述

2.1.1 案例一

在这里插入图片描述

此时如果满足 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)> 0.5 , 也就是横坐标 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)(这里的 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 是对应线性方程) 大于零,预测 y 为 1 条件则如下:
在这里插入图片描述

即一条切割线的右侧,此时【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) , y值 大于0.5
在这里插入图片描述

此时该切割线分割除了两个区域,分别是 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)的 情况,我们把这条边界,称为决策边界,这些都是关于假设函数的属性,决定于其参数,与数据集属性无关
在这里插入图片描述

2.1.2例子二

有数据集如下:
在这里插入图片描述

在这里插入图片描述

那我们的预测y=1时,【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)横坐标【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)满足条件为
在这里插入图片描述

  • 强调: 决策边界并不是数据集的属性,而是假设函数以及其参数的属性,数据集则是用于拟合参数 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
    不同的高阶多项式 会得到不一样的决策边界
    如:
    在这里插入图片描述

2.2 拟合logistic回归参数 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

  • 代价函数

我们给定如数据集
在这里插入图片描述

  • 那么我们如何选择参数【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)呢?

在往篇文章中我们线性回归的均方差代价函数可以变化如下:
在这里插入图片描述

我们往往希望找到如下的凹型代价函数,以可以找到参数最优。
在这里插入图片描述

三、logistic代价函数

在这里插入图片描述

3.1 当【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)代价函数图像

对该代价函数,我们可以画出当【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)时的图像。(由于 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 函数值域在0~1,对应代价函数横坐标为0 ~1)
在这里插入图片描述

在这里插入图片描述

  • 从图中我们也可以看到作为代价函数 很好的性质
  1. 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)时,即代价函数为0,此时有【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 即模型拟合优秀

  2. 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)时,即代价函数【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),此时【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)即为 。此时说明模型拟合非常差

显然当 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 时 这个代价函数满足我们的要求

在这里插入图片描述

3.2 当【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)代价函数图像

对应 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)的情况下:
在这里插入图片描述

  • 如下图
  1. 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)时,即代价函数为 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)此时有【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 即模型拟合优秀

  2. 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)时,即代价函数 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),此时【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)即为 。函数惩罚很大

同样的符合代价函数性质
在这里插入图片描述

至此,我们定义了关于单变量数据样本的分类代价函数,我们所选择的代价函数可以为我们解决代价函数为非凹函数的问题以及求解参数最优,接下来我们使用梯度下降算法来拟合 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 算法

四、 代价函数与梯度下降

为了避免让代价函数分为 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)两种情况 ,我们要找一个方法来把这两个式子合并成一个等式,以便更简单写出代价函数,并推导出梯度下降。

公式如下图蓝色字体公式
在这里插入图片描述

由于 y 只有两个情况 0,1 ,利用该性质 当y = 1 时,y=0情况的多项式消去,y = 0 时同理,这样就成功表达了两种不同情况的函数
在这里插入图片描述

  • 通过将式子合并为一个等式,代价函数(cost function) 变化为如下(参考:统计学的极大似然法为不同模型已知数据寻找参数的方法,即选取概率最大的参数
    最大似然函数参考文章

在这里插入图片描述

  • 同样,将微积分求其偏导
    在这里插入图片描述
  • 并用此公式更新每个参数 (注意是:同步更新)
    在这里插入图片描述

4.1 线性回归与logistic回归的梯度下降规则

我们可以惊奇的发现以上公式与线性回归时所用来梯度下降的方程一样

那么线性回归和logistic回归是同一种算法吗?

线性回归和logistic在梯度下降更新的函数区别在于:【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

  1. 对于线性回归 : 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
  2. 对于logistic回归:【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

虽然在梯度下降算法看起来规则相同,但假设的定义发生了变化,所以梯度下降和logistic回归是完全不一样的算法

  • 我们用此算法更新各个参数,可以通过for进行实现,也可以通过向量化进行实现。

关于向量化,可以参考文章 【机器学习】向量化计算 – 机器学习路上必经路

在这里插入图片描述

数据标准化可参考文章: 【机器学习】梯度下降之数据标准化

五、高级优化算法

高级优化算法,与梯度下降相比能够大大提高 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 回归速度,也使得算法更加适合大型数据集机器学习问题。
除了使用梯度下降算法,还有诸多如下算法

在这里插入图片描述

  • 不需要选择学习率【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) ( 存在智能内循环,智能选择最佳的学习率【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)
  • 下降速率快得多

缺点

  • 太过于复杂了

在实际解决问题中,我们很少通过自己编写代码求平方根或者求逆矩阵,我们往往都是使用别人写的好的数据科学库,如numpy

有如下例子(求两个参数)
在这里插入图片描述

在logistic回归中,我们使用如下的【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)参数向量 (使用参数向量化)
【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

六、多元分类:一对多

例如将邮件分为亲人,朋友,同事。例如将天气分类,下雨,晴天等、我们可以将这些用数字0,1,2表达,以上这些都是多类别分类

与二分类图像不同(右图
在这里插入图片描述

我们要做的就是将这数据集转换为三个独立的二元分类问题, 我们将创建一个新的**”伪“训练集**,其中第二类第三类为负类,第一类为正类(如下图右侧)

在这里插入图片描述

  • 同理,将其他两类样本如上创建数据集,以及对应的拟合分类器,进行一个标准的逻辑回归分类器,得到对应边界
    在这里插入图片描述

【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类)

每个分类器都对应与之的情况训练,y = 1, 2, 3 的情况
在这里插入图片描述

我们训练了逻辑回归分类器 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),用于预测 【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类) 的概率,为了做出预测,我们向分类器输入一个【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),期望获得预测,我们需要在这三个回归分类器中运行输入【机器学习】Logistic 分类回归算法 (二元分类 & 多元分类),选出结果中概率最大的一个(最可信)的那个分类器,就是我们要的类别。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

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

(0)
乘风的头像乘风管理团队
上一篇 2023年2月10日 下午10:11
下一篇 2023年2月10日 下午10:15

相关推荐