吴恩达机器学习——分类问题
二元回归问题
y∈{0,1}
逻辑回归算法
-
假设函数:hθ(x)=1+e−θTx1
-
Sigmoid
函数:g(x)=1+e−x1

-
函数结果解释:如果结果为p
,则表示输入情况下y=1
的概率是p
。
-
结果分析:
- 当hθ(x)≥0.5时,认为y=1,hθ(x)≥0.5⇔θTx≥0
- 当hθ(x)<0.5,认为y=0,hθ(x)<0.5⇔θTx<0
- 此时的θTx=0确定的一系列点即构成此假设函数的决策边界,它将数据实例划分为两个部分
-
补充
逻辑回归模型
-
训练集:{(x1,y1),(x2,y2),…,(xm,ym)}
-
假设函数:hθ(x)=1+e−θTx1,x=⎣⎢⎢⎢⎡x0x1⋮xn⎦⎥⎥⎥⎤,θ=⎣⎢⎢⎢⎡θ0θ1⋮θn⎦⎥⎥⎥⎤,x0=1,y∈{0,1}
-
代价函数:J(θ)=m1∑i=1mCost(hθ(xi),yi)=−m1∑i=1m[yilog(hθ(xi))+(1−yi)log(1−hθ(xi))]
\begin{array}{ll}Cost(h_\theta(x),y)&=\left\{\begin{align}-log(h_\theta(x))&&y=1\\-log(1-h_\theta(x))&& y=0\end{align}\right. \\&= -ylog(h_\theta(x))-(1-y)log(1-h_\theta(x))\end{array}
-
使用梯度下降算法求解最优值
重复执行θj:=θj−α∑i=1m(hθ(xi)−yi)xji,此式子和线性回归梯度下降相同,只有假设函数不同。
-
此回归模型也可以使用特征缩放来提高收敛速度
一对多分类问题
假设有n个类,则一对n问题分为n个二元回归问题,分别使用逻辑回归模型求解。每一个子问题将一个类作为正类别,n-1个类作为负类别。由此每个类i得到一个预测函数hθi(x),用于预测y=i的概率。实际计算时,将输入x代入每一个预测函数,选取概率最大的作为结果,imax hθi(X)

高级优化方法
- BFGS
- L-BFGS
- Conjugate gradient