7、Logistic回归

logistic回归是使用最多的分类算法

二分类

预测值:yε{0, 1}, 0代表负类(No, 假设不成立);1代表正类(Yes,假设成立)

应用:邮件分类(垃圾邮件 or 非垃圾邮件)

假设函数

logistic函数又称Sigmoid函数,是一个在生物学中常见的S型函数,也称为S型生长曲线。由于其单增以及反函数单增等性质,常被用作神经网络等阀值函数,将变量映射到0-1之间,所以logistic函数到预测值:0≤y≤1

logistic方程式:g(z) = 1/(1 + e-z),0≤g(z)≤1

线性回归假设函数:h(x) = θTx

所以,logistic假设函数:h(x) = g(θTx) = 1/(1 + eTx),0≤h(x)≤1

logistic模型解释

因为预测值y只能取值0或者1,根据概率在给定参数θ下概率P(y=1)和P(y=0)的和为1,即:P(y=0;θ) + P(y=1;θ) = 1

决策界限

根据logistic图形

  • h(z)≥0.5,y=1; 由h(z)=g(θTx)≥0.5,推出z≥0, 即θTx≥0
  • h(z)<0.5,y=0;由h(z)=g(θTx)<0.5,推出z<0, 即θTx<0

所以z=0是假设函数的决策界限,决策界限是假设函数的一个属性,它把假设函数图形分成两半:y=0和y=1

损失函数

训练集:{(x1,y1),(x2,y2),(x3,y3),...,(xm,ym)} ,m个样本

X = [x0 x1 ... xm]T, x0=1, yε{0, 1}

h(x) = 1/(1 + eTx) 

线性回归损失函数:J(θ)=Σ(h(xi)-yi)2/m, iε{1, m}

令Cost(h(xi),yi)=(h(xi)-yi)2

所以,J(θ)=Σ(h(xi)-yi)2/m=ΣCost(h(xi),yi)/m, iε{1, m}

损失函数:

  • Cost(h(x), y)=-log(h(x)), y=1
  • Cost(h(x), y)= -log(1-h(x)), y=0

结合图形:

1、当y=1:

  • h(x)=1时,Cost=0,损失函数值最小
  • h(x)=0时,Cost=∞,损失函数值最大

2、当y=0:

  • h(x)=0时,Cost=0,损失函数值最小
  • h(x)=1时,Cost=∞,损失函数值最大 

简化损失函数和梯度下降

J(θ)=Σ(h(xi)-yi)2/m=ΣCost(h(xi),yi)/m, iε{1, m}

Cost(h(x), y)=-log(h(x)), y=1

Cost(h(x), y)= -log(1-h(x)), y=0

简化损失函数:

Cost(h(x), y)=-log(h(x))-(1-y)log(1-h(x))

所以梯度下降:J(θ)=Σ(h(xi)-yi)2/m=-Σyilog(h(xi))+(1-yi)log(1-h(xi))/m, iε{1, m}

简化损失函数和梯度下降

minJ(θ): repeat{ θj := θj-α(∂/∂θj)J(θ)}

梯度下降和缩放同样适用于logistic回归

高级优化方法

  • cojugate gradient
  • BFGS
  • L-BFGS

以上三种算法的优点:不需要选择学习率,比梯度下降收敛速度快

缺点:比梯度下降算法复杂

多分类问题

简化为二分类问题来处理,比如三分类简化为三个二分类来处理

 

 

 

 

posted @ 2018-12-27 23:40  起航追梦人  阅读(444)  评论(0编辑  收藏  举报