美文网首页
CS229学习笔记(二)——分类问题与逻辑斯蒂回归(Classi

CS229学习笔记(二)——分类问题与逻辑斯蒂回归(Classi

作者: RookieLiuWW | 来源:发表于2019-01-14 11:32 被阅读0次

    当y仅能取小数目的离散值时,即为分类问题。本节着重分析二分(binary classification)问题,其中y仅能取0和1。0又被称为负类(negative class),1又被称为正类(positive class),有时也会使用符号“-”、“+”表示。

(一)逻辑斯蒂回归(Logistic Regression)

    由于y的取值发生了变化,我们相应修改h_\theta(x)形式:

                                         h_\theta=g(\theta^Tx)=\frac{1}{1+e^{-\theta^Tx}}

这里                                          g(z) = \frac{1}{1+e^{-z}}

被称为逻辑斯蒂方程(logistic function)或者sigmoid函数(sigmoid function)。函数图像如下:

同样,我们令x_0 = 1,使得\theta^Tx = \theta_0 + \sum_{j=1}^n \theta_j x_j .

计算出g(z)的导数有:

                                                g’(z) = \frac{d}{dz} \frac{1}{1+e^{-z}}

                                                          =\frac{1}{(1+e^{-z})^2}(e^{-z})

                                                          =\frac{1}{1+e^{-z}}\cdot (1-\frac{1}{(1+e^{-z})})

                                                          =g(z)(1-g(z))

让我们假设:

                                                  P(y=1|x;\theta) = h_\theta(x)

                                                  P(y=0|x;\theta) = 1-h_\theta(x)

将两式和为一式有:           p(y|x;\theta)=(h_\theta(x))^y(1-h_\theta(x))^{1-y}

假设m个训练例子相互独立,则其最大似然函数可写为:

                                                  L(\theta) = p(\vec{y}|X;\theta)

                                                            =\prod_{i=1}^m p(y^{(i)}|x^{(i)};\theta)

                                                            =\prod_{i=1}^m (h_\theta(x^{(i)}))^{y^{(i)}}(1-h_\theta(x^{(i)})) ^{1-y^{(i)}}

与前例相同,我们仍然最大化对数似然函数

               l(\theta)=logL(\theta)=\sum_{i=1}^{m}y^{(i)}log(x^{(i)})+(1-y^{(i)})log(1-h(x^{(i)}))

选用梯度上升的方式最大化对数似然函数,(在线性回归中,最大化对数似然函数即最小化代价函数,故在线性回归中选用的梯度下降法。)同样,我们先考虑一个训练例子的情况,:

推广到随机梯度上升法有:

                                        \theta_j:=\theta_j+\alpha(y^{(i)}-h_\theta(x^{(i)}))x_j^{(i)}

与线性回归相同,同样可以使用牛顿法得到\theta

(二)感知器学习算法(The perceptron learning algorithm)

考虑修改逻辑斯蒂回归方法使得输出值只能为0和1,自然地,我们需要将g设定为阈值函数:

同样令h_\theta(x)=g(\theta^Tx),如果我们使用如下更新规则:

                                          \theta_j:=\theta_j+\alpha(y^{(i)}-h_\theta(x^{(i)}))x_j^{(i)}

则称为感知器学习算法。

 

相关文章

网友评论

      本文标题:CS229学习笔记(二)——分类问题与逻辑斯蒂回归(Classi

      本文链接:https://www.haomeiwen.com/subject/ertddqtx.html