逻辑回归模型及代价函数正则化

Hello,大家好,我是Tony

逻辑回归模型及代价函数正则化

欢迎大家访问我的个人主页:Tony’s Blog,让我们一起站在巨人的肩膀之上!

逻辑回归(logistic Regression Model)

本节将介绍逻辑回归的几个基本概念:

1、解释模型输出:

逻辑回归目的是输出一下方程:
hθ(x)=g(θTx) h_{\theta}(x)=g\left(\theta^{T} x\right)

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

2、逻辑回归的代价函数

J(θ)=1mi=1mcost(hθ(x(i)),y(i)) J(\theta)=\frac{1}{m} \sum_{i=1}^{m} \operatorname{cost}\left(h_{\theta}\left(x^{(i)}\right), y^{(i)}\right)

cost(hθ(x(i),y(i))={log(hθ(x)) if y=1log(1hθ(x)) if y=0 \operatorname{cost}\left(h_{\theta}\left(x^{(i)}, y^{(i)}\right)=\left\{\begin{aligned} -\log \left(h_{\theta}(x)\right) & \text { if } y=1 \\ -\log \left(1-h_{\theta}(x)\right) & \text { if } y=0 \end{aligned}\right.\right.

Note:y=0 or 1 always

3、代价函数降低方法

梯度下降
J(θ)=1m[i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))] J(\theta)=-\frac{1}{m}\left[\sum_{i=1}^{m} y^{(i)} \log h_{\theta}\left(x^{(i)}\right)+\left(1-y^{(i)}\right) \log \left(1-h_{\theta}\left(x^{(i)}\right)\right)\right]
want min J

Repeat{
θj:=θjαi=1n(hθ(x(i))y(i))xj(i) \theta_{j}:=\theta_{j}-\alpha \sum_{i=1}^{n}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right) x_{j}^{(i)}
}

代价函数正则化

对于为什么要对代价函数进行正则化可以参考链接博客:机器学习中对过拟合的正则化策略,里面也有一些高级算法

对于正则化(Regularization)之后的代价函数为:
J(θ)=1m[i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))]+λ2mj=1nθj2 J(\theta)=-\frac{1}{m}\left[\sum_{i=1}^{m} y^{(i)} \log h_{\theta}\left(x^{(i)}\right)+\left(1-y^{(i)}\right) \log \left(1-h_{\theta}\left(x^{(i)}\right)\right)\right]+\frac{\lambda}{2 m} \sum_{j=1}^{n} \theta_{j}^{2}
使用梯度下降算法对下式进行梯度下降:
Repeat
{
θj:=θjα[1mi=1m(hθ(x(i))y(i))xj(i)+λmθj] \theta_{j}:=\theta_{j}-\alpha\left[\frac{1}{m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right) x_{j}^{(i)}+\frac{\lambda}{m} \theta_{j}\right]
}