机器学习(五)- 对于cost function的思考
来源:互联网 发布:手机视频修复软件 编辑:程序博客网 时间:2024/06/05 00:20
logistic regression和linear regression的代价函数的思考
谈到逻辑回归,必然逃不开与线性回归的比较。自然它们有很多不同,今天在这里主要讲讲自己对于它们代价函数的思考。
Andrew Ng教授在讲到逻辑回归的时候提到逻辑回归的代价函数本身是由统计学中最大似然估计得来的。于是趁这个机会又去百度了几篇博客,复习复习最大似然估计与最大后验概率,顺手还转载了一篇,觉得写的挺好的。以下是几点思考:
问题1:线性回归的代价函数又从何而来?
如果逻辑回归的cost function是来自于最大似然估计,那线性回归的cost function从何而来呢,为此我专门回看了Andrew Ng在讲解线性回归时,提到代价函数的时候,他非常自然的应用了最小二乘,并没有说明为什么。于是我又继续百度去寻找答案,最后在知乎上关于“在进行线性回归时,为什么最小二乘法是最优方法”的解答中找到了自己比较认可的答案。(AlWeis和赵卿元,链接如下)
https://www.zhihu.com/question/24095027
简单总结就是其实我们并非一定要使用最小二乘,但是在进行线性拟合的时候,最小二乘是一种简单,直接而且自然(符合我们的习惯和直觉)的一种方法。因为欧式空间是我们习惯且非常熟悉的空间,当有人问你如何度量两点间的距离的时候,你自然的会在脑海里构建一个欧式空间,然后说当然是求
所以我们在线性拟合时,也是自然的运用了最小二乘。在符合我们的习惯的同时,最小二乘还具有很多优点,第一就是运算简单(相减再平方),第二就是非负性,那有人就会问为什么不直接用绝对值呢,这就导出了第三个优点,可导性,函数平滑,每个点都可导,第四就是它是一个凸优化的问题,局部最优就是全局最优。
问题2:线性回归与最大似然估计的关系?
看到题目,我相信很多人都会想到下面这段推导。
首先假设线性回归模型具有如下形式:
其中,,误差。
当前已知,,怎样求呢?
假设,也就是说,那么:
然后就惊喜的发现,哇哦,原来线性回归的代价函数也是由最大似然估计推导而来。但细心的朋友们其实发现上述推导是建立在Gaussian噪声的假设下的。只能说明在Gaussian噪声的假设下,可以由最大似然估计推导出最小二乘,并不能说明其必要性。也就是说线性回归的代价函数并不是由最大似然估计推导的,它们没有必然的联系。
问题3:逻辑回归的代价函数从何而来?
我们知道线性回归的代价函数是下图中的最小二乘式子,那为什么逻辑回归不能使用最小二乘呢,第一确实不太符合我们习惯的理解,因为逻辑回归本质上是一个分类,是一个离散的值,并不能很好的转换到欧式空间里。第二点更重要的是,因为
上面我们也说了,逻辑回归的代价函数推导是来自于最大似然估计,那下面我们就用最大似然估计来推一推。(这里只讨论最简单的(0,1)分类)
由于二值分类很像二项分布,而且配合上我们所使用的sigmoid函数,我们能够直接将单一样本的类值假设成其发生的概率:
为了方便后面计算将上述两式合并:
最大似然估计,即在“模型已定,参数未知”的情况下,利用已知的训练集去拟合出一组参数,该组参数能够最大概率的返回我们的样本值。
反观我们现在,正好满足这样的要求,我们模型已知(二项分布),参数未知(求
那么上面求得的
现在我们要求使得
那么到这儿,我们就已经推导出了逻辑回归的代价函数
问题4:逻辑回归与线性回归代价函数区别和统一
讨论完上面三个问题,我们再来看看问题2,为什么线性回归不能由最大似然估计推导,而逻辑回归可以,因为对于逻辑回归,我们有所谓“二项分布”这个模型,而线性回归,我们并没有所谓“正态分布”的模型,因为我们并不了解我们所拿到的一系列散点的概率分布情况,既然模型都没有,自然不能运用最大似然估计了。这一点也印证了,线性回归与最大似然估计没有必然联系,只是在满足Gaussian噪声的情况下,能从最大似然估计推导出最小二乘。
其实造成这一系列不同的根本原因是因为
线性回归:
逻辑回归:
它们的统一又体现在,当我们进行对参数
同样地,feature scaling也是适用于逻辑回归的,可以帮助我们加快收敛速度,减少迭代次数。
- 机器学习(五)- 对于cost function的思考
- [机器学习] 代价函数(cost function)
- 机器学习第三周(二)--Cost function--Gradient descent
- 机器学习-监督学习-cost function
- 机器学习:代价函数cost function
- 机器学习-3 cost function 代价函数
- 机器学习笔记3---cost function
- Coursera 机器学习_Octave Cost Function
- Stanford机器学习课程(Andrew Ng) Week 1 Model and Cost Function --- 第二节 Cost Function
- 【吴恩达机器学习笔记学习笔记02】Cost function
- Standford机器学习 线性回归Cost Function和Normal Equation的推导
- 一些对于机器学习的感悟和思考
- 对于学习的思考
- 神经网络的cost function
- 深度学习笔记(四) cost function来源和证明
- 机器学习之&&Andrew Ng课程复习--- Cost Function(Logistic Regression)
- Stanford机器学习课程(Andrew Ng) Week 1 Model and Cost Function --- 第一节 Model representation
- 今天对于Function GUI_DOWNLOAD的学习
- apache调用php的三种方式及MPM
- CSS文本样式总结
- Eclipse部署Maven web项目到tomcat服务器时,没有将lib下的jar复制过去的解决办法
- 第一天:Androidstudio引入自己的module作为Library(方法跟坑)
- Java学习笔记
- 机器学习(五)- 对于cost function的思考
- Flume(NG)架构设计要点及配置实践
- 用硬实力,好作品,砸开阿里的前端开发金饭碗
- 最接近零的子数组和
- Android之动画-Tween动画(线性动画)
- 对于数据类型的转换顺序
- 微信支付服务端开发总结
- for、while、do..while的使用方法
- anjularjs知识点二作用域