Processing math: 100%

二分类问题

在二分类问题中,输出y{0,1}。同样的,我们也可以用线性拟合来尝试解决二分类问题(如下图左),但数据点比较异常时,容易出现下图右这样的情况:

一般,在二分类问题中,我们会选用『logistic函数』来拟合(因为形状像S,又称为『sigmoid函数』): hθ(x)=g(θTx)=11+eθTx

logistic函数g(z)=1/(1+ez)的形状如下: 可以定义 P(y=1|x;θ)=hθ(x) P(y=0|x;θ)=1hθ(x)
于是: P(y|x;θ)=hθ(x)y(1hθ(x))(1y)
进行极大似然估计: L(θ)=P(y|x;θ)=mi=1P(y(i)|x(i);θ)=mi=1hθ(x(i))y(i)(1hθ(x(i)))(1y(i))
为了计算方便,定义 l(θ)=log(L(θ)) =mi=1log(P(y(i)|x(i);θ)) =mi=1(y(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i))))
利用梯度上升进行求解: θ:=θ+αθl(θ)
其中 θjl(θ)=θjl(θ)=mi=1(y(i)hθ(x(i)))x(i)j θj:=θj+αmi=1(y(i)hθ(x(i)))x(i)j
最终的梯度上升结果几乎与线性拟合中的梯度下降结果一样。