Machine Learning 3 逻辑回归

逻辑回归

逻辑回归的引入

考虑预测值 yy 不再连续,而是离散值。这时候线性回归不再适用。

对于二分类问题y{0,1}y \in \{ 0, 1\} ,不妨使得假设函数hθ(x)h_{\theta}(x) 预测p(y=1x)p(y=1|x),即xx是种类y=1y=1的概率

构造逻辑回归函数:

hθ(x)=g(z)=g(θx)=11+eθxh_{\theta}(x) = g(z) = g(\theta x) = \frac{1}{1+e^{-\theta x}}

sigmoidsigmoid 函数:

g(z)=11+ezg(z) = \frac{1}{1 + e^{-z}}

其导数

g(z)=g(z)(1g(z))g(z)^{’} = g(z)(1-g(z))

p(yx)=hθ(x)y[1hθ(x)]1yp(y|x) = h_{\theta}(x)^{y}[1-h_{\theta}(x)]^{1-y}

我们定义:

if hθ(x)>=0.5,y=1else y=0if \space h_{\theta}(x) >= 0.5, y = 1 \\ else \space y = 0

进而问题转化为

z>=0=>y=1z >= 0 => y = 1

z<0=>y=0z < 0 => y =0

代价函数

J(θ)=1myilnhθ(x)+(1yi)ln(1hθ(x))J(\theta) = -\frac{1}{m}\sum y_{i}lnh_{\theta}(x) + (1-y_{i})ln(1-h_{\theta}(x))

可由极大似然估计推导得到

L(θ)=i=1mp(yixi)L(\theta) = \prod_{i=1}^{m} p(y_{i}|x_{i})

lnL(θ)=i=1myilnhθ(x)+(1yi)ln(1hθ(x))lnL(\theta) = \sum_{i=1}^{m}y_{i}lnh_{\theta}(x) + (1-y_{i})ln(1-h_{\theta}(x))

极大似然求极大,而损失函数求极小,在似然函数前去负号 + 求个平均就得到了损失函数

θ\theta 求偏导:

αJiαθ=[yihθ(xi)g(θx)(1g(θxi))xi+(1)1yi1hθ(xi)g(θxi)(1g(θxi))xi]=(yig(θxi))xi=(yihθ(x))xi\frac{\alpha J_{i}}{\alpha \theta} = -[\frac{y_{i}}{h_{\theta(x_{i})}} g(\theta x)(1-g(\theta x_{i}))x_{i} + (-1)\frac{1-y_{i}}{1-h_{\theta(x_{i})}} g(\theta x_{i})(1-g(\theta x_{i}))x_{i} ]\\= -(y_{i} - g(\theta x_{i}) )x_{i} \\= -(y_{i} - h_{\theta}(x))x_{i}

与线性回归的偏导形式一样,具体原因参考CS229指数族部分讲解


Machine Learning 3 逻辑回归
https://xrlexpert.github.io/2024/05/30/Machine_Learning3逻辑回归/
作者
Hirox
发布于
2024年5月30日
许可协议