线性回归回顾与logistic回归 | 机器学习笔记

01 再看线性回归

之前我们选择线性回归的时候,只是认为那些数据看上去很符合线性的样子,选择最小平方损失函数的时候,也是直接提出来的,没有考虑过为什么会是这个样子。接下来就从概率的角度来解释这些问题。

首先假设目标变量和输入与下面这个方程相关:

其中\varepsilon^{(i)} 是一个误差项(error term),来捕捉一些我们建模的时候故意或者无意忽略但是对于预测有影响的因素。有时候也可以作为一个随机的噪声(random noise)。“误差项(噪声项)”的引入允许我们获得参数值和预测的置信程度。

我们进一步假设\varepsilon^{(i)} 独立同分布且服从均值为0,方差为\sigma ^{2} 高斯分布,那么我们能够把这个假设写为\varepsilon^{(i)}\thicksim N(0,\sigma^{2}) ,即\varepsilon^{(i)} 的概率密度是:

那么根据高斯分布的性质,这时候的输出y也是一个随机变量。且有

,即:

这里提示一下,很重要的一个记号,在论文里面经常看见。

表示θ做参数,随机变量x^{(i)}y^{(i)} 的分布。 这里再提示一下,连续随机变量密度函数上的取值并不代表概率。连续随机变量在每一点上面的概率都是0。这是基础知识,别忘了。要是密度函数上面A点的值很大,B点的值很小。只能够说明在A点附近的可能性很大。也就是说,虽然在某点上的概率是多少是错的,但是我们还是需要在密度函数上面找最值,因为这个点“附近”的概率是最大的。

一般来说,我们感兴趣的并不是单个数据点的似然值,而是整个数据集上面所有点的似然值。要是有m个数据点,我们感兴趣的就是他们的联合条件密度,且因为各自独立,有:

上面那个记号就是联合条件密度的记号,不要在其中想太多。

写成向量更紧缩的形式:p(y|X;\theta) 其中,

同样也仅仅是写的更加简洁一点,也别在上面想太多。 令:

我们把这个函数叫做似然函数(likelihood function),是以θ为变量的函数。

通过前面的原理可以知道

本质就是把之前的几个公式代进去了而已,不用解释了。

这个公式的意思也很容易理解。怎么选择θ使得整个似然函数有最大的值,也就是让\theta^{T}x^{(i)} 更加接近于y^{(i)} 。这个地方有点难想,多理解几遍。

学过概率论的都知道,接下来要对数化一下,使得方程更加容易解出来。没有什么技巧,暴力推导如下:

我们的目的是要大化L(θ),那么只需要最小化

这个函数就行了。

对于这个函数是不是有点眼熟呢?就是之前的最小均方误差了。

因为这里是

这种形式,刚好和之前的是反的。所以在用梯度法求的时候,就不是梯度下降法了,而是梯度上升法。

到这里,对于线性回归的回顾就到这里了,这里引出了概率的方法来做机器学习的推导,对于理解下面的logistic的推导是有帮助的。

02

Logistic回归

1.背景

logistic回归是非常进经典的分类的方法,分类问题在第一个笔记有详细的介绍。他和回归的区别就是他的y值是离散的值,比如有3个类,分别是0类,1类和2类这样子。

我们这里讨论的分类问题主要是2分类问题,就是最后的结果只有两类,姑且定做0类(负类)和1类(正类)。那么y的值就为0或者1。

把hypotheses h_{\theta}(x) 改写成另外的形式

其中

这个函数就叫做logistic函数或者sigmoid函数

当的时候,sigmoid函数值为0.5.然后随着z的值越大,函数越趋向于1;随着x的值越小,x的值越趋向于0.

因为这样,那么当一个数据丢进sigmoid函数中得到的值大于0.5,那么就可以把它归为1类.反之,当得到的值小于0.5,那么就把它归为0类.

最终,不管你丢进去什么值,最终的结果就会在0和1之间。

然后这个函数的导数可以很容易推得

这个性质很重要,不管是在计算里面还是在证明里面。

2.梯度下降学习

首先我们假设

这个限制表示有且只会有两个结果。 上面的可以写为

假设我们提供的训练的例子都是独立同分布的。我们能够写出似然函数为:

对数似然函数为:

之前我们说过,我们想要得到参数的表达式,需要最大化(对数)似然函数。

如果你数学足够好的话,你也许能够手推上面这个似然函数的最值。但是,这几乎是没有意义的。

我们可以使用梯度上升的方法来逼近近似,这是计算机容易实现的,扩展性比手算要好的方式。

那么问题就转化为怎么算出某个\theta_{j} 的偏导。

暴力手推:

在上面的推导中,用到了前面提到的那个logistic函数导数的公式。 最终的梯度更新公式为

这个更新公式和线性回归的公式是差不多的。

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2017-09-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据挖掘DT机器学习

机器学习中,正则化是怎么回事?

在机器学习中最大的危险就是过拟合,为了解决过拟合问题,通常有两种办法,第一是减少样本的特征(即维度),第二就是我们这里要说的“正则化”(又称为“惩罚”,pen...

2746
来自专栏技术专栏

Python3入门机器学习(五)-线性回归算法

线性回归算法以一个坐标系里一个维度为结果,其他维度为特征(如二维平面坐标系中横轴为特征,纵轴为结果),无数的训练集放在坐标系中,发现他们是围绕着一条执行分布。线...

1503
来自专栏算法修养

文本分类学习 (八)SVM 入门之线性分类器

SVM 和线性分类器是分不开的。因为SVM的核心:高维空间中,在线性可分(如果线性不可分那么就使用核函数转换为更高维从而变的线性可分)的数据集中寻找一个最优的超...

261
来自专栏机器学习算法原理与实践

决策树算法原理(上)

    决策树算法在机器学习中算是很经典的一个算法系列了。它既可以作为分类算法,也可以作为回归算法,同时也特别适合集成学习比如随机森林。本文就对决策树算法原理做...

753
来自专栏PPV课数据科学社区

机器学习常见的算法面试题总结

摘要:包含机器学习常见算法公式、原理和优缺点比较,简介清洗,适合作为面试和考试前速查和记忆使用。 朴素贝叶斯 P(A∩B)=P(A)*P(B|A)=P(B)*P...

5635
来自专栏Vamei实验室

概率论04 随机变量

我们了解了“样本空间”,“事件”,“概率”。样本空间中包含了一次实验所有可能的结果,事件是样本空间的一个子集,每个事件可以有一个发生的概率。概率是集合的一个“测...

1808
来自专栏决胜机器学习

机器学习(十六) ——SVM理论基础

机器学习(十六)——SVM理论基础 (原创内容,转载请注明来源,谢谢) 一、概述 支持向量机(supportvector machine,SVM),是一种分类...

3527
来自专栏Brian

熵的理解

---- 熵 熵在信息论中代表随机变量不确定度的度量。一个离散型随机变量X的熵H(X)定义为: image.png 明确定义的科学名词且与内容无关,而且不随信息...

2826
来自专栏机器学习算法原理与实践

scikit-learn K近邻法类库使用小结

    在K近邻法(KNN)原理小结这篇文章,我们讨论了KNN的原理和优缺点,这里我们就从实践出发,对scikit-learn 中KNN相关的类库使用做一个小结...

463
来自专栏编程

我的R语言小白之梯度上升和逐步回归的结合使用

我的R语言小白之梯度上升和逐步回归的结合使用 今天是圣诞节,祝你圣诞节快乐啦,虽然我没有过圣诞节的习惯,昨天平安夜,也是看朋友圈才知道,原来是平安夜了,但是我昨...

2136

扫码关注云+社区