机器学习基础算法之四-Logistic回归

Logsitic回归(二分类算法)

1.原理

虽然有着一个“回归”的名字,但这货实际上是个分类算法,准确来说是一个概率性非线性回归模型的二分类算法(非1即0)。其主要过程如下:
1)将已有的数据集拟合为参数化的logistic分布,即:

分布函数:

F(x)=P(X<=x)=11+e(xμ)γ

密度函数:

f(x)=F(x)=e(xμ)γγ(1+e(xμ)γ)2

其中 μ 为位置参数, γ>0 为形状参数。

Logistic回归模型如下(其中 ωT 为参数向量):

P(Y=1|X)=e(ωTx+b)1+e(ωTx+b)

P(Y=0|X)=1P(Y=1|X)=11+e(ωTx+b)

事件的几率(odds)表示为一件事情发生的概率与不发生的概率之比,即 p1p ,则对数几率为 logit(p)=logp1p=logP(Y=1|X)1P(Y=1|X)=ωTx

2)利用极大似然估计法估计模型参数,首先解释一下什么是极大似然估计:
我们所估计的模型参数,要使得产生这个给定样本的可能性最大。在最大释然估计中,我们试图在给定模型的情况下,找到最佳的参数,使得这组样本出现的可能性最大。举个极端的反面例子,如果我们得到一个中国人口的样本,男女比例为110:100,现在让你估计全国人口的真实比例,你肯定不会估计为男:女=1:0。因为如果是1:0,不可能得到110:100的样本。我们大多很容易也估计为110:100,为什么?样本估计总体?其背后的思想其实最是最大似然。似然函数可以理解为给定联合样本值X下关于参数 θT 的函数:

L(θ|x)|=f(x|θ)=i=1n(π(xi))yi(1π(xi))1yi
//联合概率密度
为方便计算,求对数似然函数:
lnL(θ|x)=i=1m(yiln[π(xi)]+(1yi)ln[(1π(xi))])

针对上式,对n+1个 ωi 求偏导数,另n+1个偏导数都为0(极大值出现在偏导数为0的地方),解方程即可。

Cost函数(损失函数):

Cost(hθ(x),y)={

你可能感兴趣的:(机器学习)