Logistic回归及梯度上升算法

本文详细介绍了Logistic回归及其在分类问题中的应用,通过Sigmoid函数建立预测模型,并探讨了梯度上升算法,包括批量梯度上升和随机梯度上升的实现细节,以及如何在实际中调整学习率以优化模型。

开始学习机器学习算法的时候就接触了Logistic回归及梯度下降法,但是当时并没有深入去自己推导一下公式,写一写代码,现在学习xgboost的时候又碰到Logistic回归相关的知识,干脆自己推一遍,写一下代码吧。。

逻辑回归

逻辑回归可以用来进行回归与分类,两者仅有略微不同,主体算法是一样的,本文以分类进行讲解。如下图二分类问题,我们希望找到一个直线(高维空间为超平面)来将数据划分开。
这里写图片描述
这样的线性边界可以表示为:θ0x1+θ1x2+...+θmxm=θTxθ0x1+θ1x2+...+θmxm=θTx
上式右边x为向量。
我们取预测函数为Sigmoid函数,Sigmoid函数有一个很棒的特点是它的导数f(x)=f(x)(1f(x))f′(x)=f(x)(1−f(x))
则预测函数可表示为:

P(y=1|x;θ)=hθ(x)P(y=1|x;θ)=hθ(x)
P(y=0|x;θ)=1hθ(x)P(y=0|x;θ)=1−hθ(x)

将这两个式子合并一下:
P(y|x;θ)=(hθ(x))y(1hθ(x))1yP(y|x;θ)=(hθ(x))y(1−hθ(x))1−y

显然:
当y=0的时候上式等价于 P(y=0|x;θ)=1hθ(x)P(y=0|x;θ)=1−hθ(x)
当y=1的时候上式等价于 P(y=1|x;θ)=hθ(x)P(y=1|x;θ)=hθ(x)

取似然函数L(θ)=mi=1(hθ(x(i)))yi(1hθ(x(i)))1yiL(θ)=∏i=1m(hθ(x(i)))yi(1−hθ(x(i)))1−yi
我们的目的就是求解似然函数的最大值,为了方便求解,我们取对数似然函数如下:

logL(θ)=i=1m(yiloghθ(x(i))+(1yi)log(1hθ(x(i))))logL(θ)=∑i=1m(yiloghθ(x(i))+(1−yi)log(1−hθ(x(i))))
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值