逻辑回归

一、假设函数

当处理分类问题时,尤其是二分类问题,应该限定预测的结果为 0y1 ,所以需要一个分类函数把结果正好限定在[0,1]内,逻辑函数 g(z)=11+ez 正是这样的一个函数
这里写图片描述
如果我们假设 z=θTx ,那么

hθ(x)=11+eθTx

现在 h(x) 对于任何样本的预测值都是一个介于0,1之间的值,如果 h(x)=0.7 ,我们就可以说 P(y=1|x;θ)=0.7 ,意思就再说在预测参数为 θ 的情况下样本x为1的概率为0.7,相应的预测值为0的概率为0.3。

二、决策边界

从上面所讲的我们可以知道,当 θTx0 时, hθ(x) >0.5。
如果我们定义 hθ(x)0 的样本因为它的 P(y=1|x;θ)0.5 ,所以我们把这样的样本分类为1, <0 <script type="math/tex" id="MathJax-Element-210"><0</script>的样本分类为0,那么 θTx=0 恰好就像一个边界将样本分成两个部分,从而实现了分类任务。
  当 θTx 是一个一次方程的时候,恰好是一个直线。但是有时候样本并不是一条直线可以划分的,这时候我们就可以采用类似线性回归的办法,采用多项式的办法。如 θTx=θ0+θ1x1+θ2x2+θ3x21+θ4x22 ,我们令 θ=[1,0,0,1,1] `那么` θTx=1+x21+x22 ,这时候的决策边界就是一个圆,同理我们可以设计更复杂的决策边界适应更复杂的样本。但是不管什么样的决策边界,最后决定他形状的是参数$\theta$

三、成本函数

这里不能采用与线性回归相同的函数,因为运用到逻辑回归,会成波状函数,有许多局部最小值。我们可以采用类似的函数:

J(θ)=1mi=1mCost(hθ(xi),yi)

Cost(hθ(x),y)=log(hθ(x))ify=1

Cost(hθ(x),y)=log(1hθ(x))ify=0

因为当y=1的时候,cost函数的图像如图所示:
这里写图片描述
从图我们可以看出当 h(x) 趋近于y的时候,Cost函数值越小,趋近于0的时候则是无穷大。同理y=0的情况下也是。
我们可以把两个Cost函数合二为一:

Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))

J(θ)=1mi=1m[y(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i))]

如果用向量表示:
h=g(Xθ)

J(θ)=1m(yTlog(h)(1y)log(1h))

四、梯度下降

θj=θjαmi=1m(hθ(x(i)y(i))x(i)j

可以看出是和线性回归相同的,不同的是这里的 hθ(x) 和线性回归不同。
用向量表示:
θ=θαmXT(g(Xθ)y⃗ )

五、高级优化

“Conjugate gradient”, “BFGS”, and “L-BFGS” 是三种比梯度下降速度更快但是更加复杂的算法去优化 θ ,我们比不需要写出这三种算法,直接调用现成的库就可以了。为了使用这些现成库我们首先要计算:
J(θ) `和` θjJ(θ) 。对此我们可以专门写一个函数:

function [jVal, gradient] = costFunction(theta)
  jVal = [...code to compute J(theta)...];
  gradient = [...code to compute derivative of J(theta)...];
end

接下来我们选用一种优化算法作为options,然后用fminunc()函数去实现优化。

options = optimset('GradObj', 'on', 'MaxIter', 100);
initialTheta = zeros(2,1);
   [optTheta, functionVal, exitFlag] = fminunc(@costFunction, initialTheta, options);

六、多分类问题

上面谈的只是二分类问题,当处理多分类的时候, y=(0,1,2,3...n) ,我们就可以把它转化成n+1个二分类问题。

h0θ(x)=P(y=0|x;θ)

hnθ(x)=P(y=0|x;θ)

prediction=maxi(hiθ(x))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值