分类问题-机器学习(machine learning)笔记(Andrew Ng)

分类算法(classification problem)

逻辑回归(logistic regression)

hypothesis

hθ(x)=g(θTx)g(z)=11+ez

g(z)被称作S型函数(sigmoid function)或者逻辑函数(logistic function),函数图像如图所示,过(0,0.5)点,正无穷趋于1,负无穷趋于0

分类问题-机器学习(machine learning)笔记(Andrew Ng)

实际上,这个假设函数计算的是P(y=1|x;θ),即给定x的条件下,y=1的概率,然后我们使得

y={1,0,ififhθ(x)0.5hθ(x)<0.5nownowθTx0θTx<0

其中 θTx=0 或者 hθ(x)=0.5 被称为决策边界(decision boundary),易见θ 确定下来后,决策边界也会确定下来。
在线性回归中用到的两种拟合的方法也可以用在这里:

  • 线性 hθ(x)=g(θ0+θ1x1+θ2x2)
  • 多项式 hθ(x)=g(θ0+θ1x1+θ2x2+θ3x21+θ4x22)

cost function

J(θ)=1mi=1mCost(hθ(x(i)),y(i))Cost(hθ(x),y)={log(hθ(x))log(1hθ(x))ifify=1y=0

如果hθ(x)趋向于1的时候, y 的预测值应当取作1,所以此时 y=1 的时候,Cost 函数应当尽可能的小。当hθ(x)取到1的时候,Cost=0
如果hθ(x)趋向0的时候,y的预测值应当取做0,但是如果此时y=1,说明我们的算法很烂,Cost应该尽可能大。当hθ(x)趋向0的时候,Cost趋向于无穷。
y=0的分析相似。
我们可以简化Cost

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

所以最后的cost function为:
J(θ)=1m[i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))]

todo 这个式子是从极大似然估计而来的
为了得到θ的估计值,我们可以使用梯度下降,更新的过程如下:
θj:=θjαi=1m(hθ(x(i))y(i))x(i)j

关于这个式子的得到仍然是对代价函数J(θ)求偏导,以求能够找到以步伐α最快“下山”的路径。
求导过程:
分类问题-机器学习(machine learning)笔记(Andrew Ng)