(整理自AndrewNG的课件,转载请注明。整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/

在遇到线性回归问题时,我们总是令。可是我们为什么这样选择代价函数呢?我们提到过是为了使目标变量(指)的真实值和预测值的距离最小,想想也算合理。但是本篇博文将从概率的角度解释为什么这么选择代价函数,相信大家看完之后就会明白这个选择之后蕴含的更加深层次的原因。

首先,让我们假设:输入变量和目标变量满足等式,其中误差表示在建模过程中没有考虑到的,但是对预测结果有影响的因素或者是指随机的噪声。根据实际观测和中心极限定理知,这些因素都服从正态分布,进一步假设这些误差之间是独立同分布的,则它们的和也服从正态分布,且均值为0,方差为。上述结论可以写成:

,这表明

,其中符号表示以为参数,给定的分布。如果给定(设计矩阵,包括所有的)和,则目标变量的分布可以写成:

,对于给定的,我们可以将它看成关于 的函数。从另一个角度,我们也可以把它看成是关于的函数,称为似然函数:

,由于已经假设之间独立同分布,这个公式可以写成:

,现在已经得出表示之间关系的概率模型,现在回到最初的问题,如何学习参数?最大似然函数原理:我们应该选择使似然函数最大时对应的值,因为这么选择,训练集中的对应的样本发生的概率是最大的。就是说,事件发生了,我们就认为此事件发生的概率是最大的。

所以我们要求出使取得最大值时的:为方便计算,一般对似然函数取对数:

,显然,使最大化,等价于是最小化,这不就是我们最初选择的代价函数么?任务完成。

总结一下:通过对数据作出合理的概率假设,得出最小二乘回归可以使得似然函数取得最大值的结论。另外,在前面的回归方法中,我们没有考虑到方差的影响,此文章证明的选择确实与无关。在没有提出概率解释之前,我们用距离的概念解释了选择代价函数为最小二乘的合理性,本文又通过概率进行了解释,两方面互相呼应,使理解更加深刻。一点点小体会:要多读书,只有博采众长,才可以相互印证。

Linear Regression(线性回归)(三)—代价函数J(θ)选择的概率解释的更多相关文章

  1. Spark2 Linear Regression线性回归

    回归正则化方法(Lasso,Ridge和ElasticNet)在高维和数据集变量之间多重共线性情况下运行良好. 数学上,ElasticNet被定义为L1和L2正则化项的凸组合: 通过适当设置α,Ela ...

  2. Linear Regression(线性回归)(一)—LMS algorithm

    (整理自AndrewNG的课件,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 1.问题的引出 先从一个简单的例子说起吧,房地产公司有一些关于Po ...

  3. Linear Regression 线性回归

    Motivation 问题描述 收集到某一地区的房子面积和房价的数据(x, y)42组,对于一套已知面积的房子预测其房价?   由房价数据可视化图可以看出,可以使用一条直线拟合房价.通过这种假设得 ...

  4. Linear Regression(线性回归)(二)—正规方程(normal equations)

    (整理自AndrewNG的课件,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) 在上篇博客中,我们提出了线性回归的概念,给出了一种使代价函数最小的 ...

  5. ML 线性回归Linear Regression

    线性回归 Linear Regression MOOC机器学习课程学习笔记 1 单变量线性回归Linear Regression with One Variable 1.1 模型表达Model Rep ...

  6. 线性回归 Linear regression(3) 线性回归的概率解释

    这篇博客从一种方式推导了Linear regression 线性回归的概率解释,内容来自Standford公开课machine learning中Andrew老师的讲解. 线性回归的概率解释 在Lin ...

  7. Machine Learning – 第2周(Linear Regression with Multiple Variables、Octave/Matlab Tutorial)

    Machine Learning – Coursera Octave for Microsoft Windows GNU Octave官网 GNU Octave帮助文档 (有900页的pdf版本) O ...

  8. Andrew Ng机器学习 一: Linear Regression

    一:单变量线性回归(Linear regression with one variable) 背景:在某城市开办饭馆,我们有这样的数据集ex1data1.txt,第一列代表某个城市的人口,第二列代表在 ...

  9. Andrew Ng机器学习 五:Regularized Linear Regression and Bias v.s. Variance

    背景:实现一个线性回归模型,根据这个模型去预测一个水库的水位变化而流出的水量. 加载数据集ex5.data1后,数据集分为三部分: 1,训练集(training set)X与y: 2,交叉验证集(cr ...

随机推荐

  1. BZOJ 3408: [Usaco2009 Oct]Heat Wave 热浪( 最短路 )

    普通的最短路...dijkstra水过.. ------------------------------------------------------------------------------ ...

  2. python成长之路——第三天

    一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在pyt ...

  3. HDU 3932 Groundhog Build Home 【基础模拟退火】

    和刚才那道是一模一样 不过求的是最小的,只要稍微修改一下就可以了~ //#pragma comment(linker, "/STACK:16777216") //for c++ C ...

  4. 动态加载EXE和DLL

    程序中加载了一个DLL文件,但生成的EXE在脱离了DLL文件后仍然可以 单独使用,这是动态加载DLL技术.即:调用资源中的DLL. 此技术的好处:EXE可以使用DLL中的函数,但不会额外增加一 个DL ...

  5. javaScript 网页特效 输出语句

    大家好,我是小强老师,今天主要讲解 三个最为常用的输出语句.  alert() 弹出警示框 window.alert(‘继续学习’);  完整的写法 效果如下: 因为alert 属于window 对象 ...

  6. java入门(1) 程序运行机制及运行过程

    首先我们来看一下java程序在底层是怎么工作的: JAVA有两种核心机制: Java虚拟机(Java Virtual Machine): 1.java虚拟机可以理解成一个以字节码为机器指令的CPU. ...

  7. 再造 “手机QQ” 侧滑菜单(三)——视图联动

    代码示例:https://github.com/johnlui/SwiftSideslipLikeQQ 本 文中,我们将一起使用 UINavigationController 来管理主视图,并实现点击 ...

  8. C++的运算符

    C++的运算符十分丰富,使得C++的运算十分灵活方便.例如把赋值号(=)也作为运算符处理,这样,a=b=c=4就是合法的表达式,这是与其他语言不同的.C++提供了以下运算符: 算术运算符+(加)  - ...

  9. 【CSDN博客之星评选】我为什么坚持写博客

    今天无意中在CSDN的博客之星评选活动看到自己竟然是候选人之一,真的是十分的惊讶也十分的高兴.对于喜欢写东西.喜欢分享的我来说,已经忍不住用文字来记录一下今天的美好心情,同时也让我回想起我是如何开始在 ...

  10. day8 - isinstance--issubclass-异常处理-自定义异常

    一.isinstance(obj, cls) 检查是否obj是否是类 cls 的对象 __author__ = 'Administrator' class Foo(object): pass obj ...