逻辑回归算法是一个基于线性回归的非线性化的二分类算法

这里介绍一个非线性函数

Sigmoid函数(有些神经网络也用它来进行参数非线性化)

Python机器学习 03 逻辑回归

其中的Z为线性回归求导后的目标函数,因为最小二乘法可能求不出结果,但是梯度下降法是一定求得出结果的,区别在于速度

我们可以看到Sigmoid函数图像为

Python机器学习 03 逻辑回归

可以看到自变量取值为任意实数,值域[0,1]

所以这里的解释是:

我们将任意的输入映射到了[0,1]区间,我们在线性回归中可以得到一个预测值,再将该值映射到 Sigmoid函数中这样就完成了由值到概率的转换,也就是分类任务。

令预测函数(线性回归的目标函数值)

Python机器学习 03 逻辑回归

其中Python机器学习 03 逻辑回归

分类任务(二分类):

Python机器学习 03 逻辑回归

整合一下得:

Python机器学习 03 逻辑回归

对于二分类任务(0,1),整合后

当y取0只保留

Python机器学习 03 逻辑回归

当y取1只保留

Python机器学习 03 逻辑回归

接着我们需要对结果进行求解,与线性回归一下,我们使用似然函数进行求解

使用对数进行变换

Python机器学习 03 逻辑回归

此时应用梯度上升求最大值,因为似然函数求导是一个最大值,求一个正的最大值即求一个负的最小值,所以我们引入Python机器学习 03 逻辑回归转换为梯度下降任务

对其进行求偏导,求导过程非常简单,可以看到

Python机器学习 03 逻辑回归

因此,我们得到参数更新的方向

Python机器学习 03 逻辑回归

设置好步长m,我们就能做到梯度下降了

相关文章:

  • 2022-01-01
  • 2021-06-22
  • 2021-09-09
  • 2021-11-16
猜你喜欢
  • 2022-12-23
  • 2021-05-24
  • 2021-12-01
  • 2021-07-04
相关资源
相似解决方案