吴恩达第三周逻辑回归

分类问题
我们尝试预测的是结果是否属于某一个类(例如正确或错误)
分类举例

  1. 判断一封电子邮件是否是垃圾邮件
  2. 判断一次金融交易是否是欺诈
  3. 判断一个肿瘤是恶性的还是良性的

考查二元分类问题
我们将因变量(dependent variable)可能属于的两个类分别称为正向类(positive class)和负向类(negative class),我们分类器的输出值要么是1要么是0,1表示正向类,0表示负向类。

引入一个新的模型:逻辑回归模型
hθ(x)=g(θTX)h_\theta(x)=g(\theta^TX)
其中,X代表特征向量,g代表一个常用的逻辑函数(logistic function):Sigmoid function,是一个常见的S型函数
sigmoid函数的公式
g(z)=11+ezg(z)=\frac{1}{1+e^{-z}}

sigmoid函数图形
吴恩达第三周逻辑回归
图片来源:维基百科

对模型的理解
hθ(x)=g(θTX)h_\theta(x)=g(\theta^TX)的作用是,对于给定的输入变量,根据选择的参数,计算输出变量等于1的可能性(Estimated probality)用数学公式表达:
hθ(x)=P(y=1x;θ)h_\theta(x)=P(y=1|x;\theta)
例如,对于给定的x,通过确定的参数计算得到hθ(x)=0.7h_\theta(x)=0.7,则表示y有70%的可能性
是1(正向类),相应地,有30%的可能性是0(负向类)。

代价函数
如何拟合逻辑回归模型的参数θ\theta

逻辑回归的代价函数为
J(θ)=1mi=1mCost(hθ(x(i)),y(i))J(\theta)=\frac{1}{m}\sum_{i=1}^{m}Cost(h_\theta(x^{(i)}),y^{(i)})
其中
Cost(hθ(x),y)={log(hθ(x))if y=1log(1hθ(x))if y=0 Cost(h_\theta(x^{}),y^{})= \begin{cases} -log(h_\theta(x)) & \text{if $y$=1}\\ -log(1-h_\theta(x))&\text{if $y$=0} \end{cases}

吴恩达第三周逻辑回归来源:吴恩达上课ppt
这样构建的Cost(hθ(x),y)Cost(h_\theta(x^{}),y^{})函数的特点是:

  1. 当实际输出y=1,并且hθ(x)=1h_\theta(x)=1时,误差为0
  2. 当实际输出y=1,但是hθ(x)1h_\theta(x)≠1时,误差随着hθ(x)h_\theta(x)变小而增大
  3. 当实际输出y=0,并且hθ(x)=0h_\theta(x)=0时,误差为0
  4. 当实际输出y=0,但是hθ(x)0h_\theta(x)≠0时,误差随着hθ(x)h_\theta(x)变大而增大

吴恩达第三周逻辑回归
来源:机器学习个人笔记完整版v5.4-A4打印版

代价函数Cost(hθ(x),y)Cost(h_\theta(x^{}),y^{})的简化表达式,将分段函数写成一个表达式
Cost(hθ(x),y)=y×log(hθ(x))(1y)×log(1hθ(x))Cost(h_\theta(x^{}),y^{})=-y\times log(h_\theta(x))-(1-y) \times log(1-h_\theta(x))

由上面逻辑回归的代价函数
J(θ)=1mi=1mCost(hθ(x(i)),y(i))J(\theta)=\frac{1}{m}\sum_{i=1}^{m}Cost(h_\theta(x^{(i)}),y^{(i)})
代入得
逻辑回归的代价函数为
J(θ)=1mi=1m[y(i)×log(hθ(x(i)))(1y(i))×log(1hθ(x(i)))]J(\theta)=\frac{1}{m}\sum_{i=1}^{m}\left [-y^{(i)}\times log\left(h_\theta(x^{(i)})\right)-(1-y^{(i)}) \times log\left(1-h_\theta(x^{(i)})\right)\right ]

提出负号,即
J(θ)=1mi=1m[y(i)×log(hθ(x(i)))+(1y(i))×log(1hθ(x(i)))]J(\theta)=-\frac{1}{m}\sum_{i=1}^{m}\left [y^{(i)}\times log\left(h_\theta(x^{(i)})\right)+(1-y^{(i)}) \times log\left(1-h_\theta(x^{(i)})\right)\right ]

使用梯度下降法计算使得该代价函数最小的参数值
吴恩达第三周逻辑回归来源:吴恩达上课ppt

参考资料
吴恩达,Deep Learning
黄海广,机器学习个人笔记完整版v5.4-A4打印版