线性回归中提到最小二乘损失函数及其相关知识。对于这一部分知识不清楚的同学能够參考上一篇文章《线性回归、梯度下降》。

本篇文章主要解说使用最小二乘法法构建损失函数最小化损失函数的方法。

最小二乘法构建损失函数

最小二乘法也一种优化方法,用于求得目标函数的最优值。简单的说就是:让我们的预測值与真实值总的拟合误差(即总残差)达到最小。

在线性回归中使用最小二乘法构建了损失函数:

上一篇文章《线性回归、梯度下降》中提到求解使损失函数J(θ)取最小的θ值有两种方法:梯度下降(gradient descent)正则方程(The normal equations)。以下主要讲一下正则方程。梯度下降方法最小化损失函数參考文章《线性回归、梯度下降

正则方程

将训练特征表示为X矩阵,结果表示成y向量,仍然是线性回归模型。损失函数不变。那么θ能够直接由以下公式得出:

推导过程涉及线性代数方面的知识,这里不再具体展开线性代数知识。

设m为训练样本数;x为样本中的自变量,即二手房价格预測中的房屋面积和我是数目。x为n维向量;向量y为训练数据中的房屋价格。y为m维向量。那么训练数据能够用矩阵表示为:

           

由于,所以就能够表示为:

损失函数就转化为:

线性代数中有两个公式:

当中符号表示一个m*n的矩阵。这个矩阵的第(i,j)个元素为

上面两个公式合起来能够表示为:

根据这这个公式对损失函数J(θ)推导:

为了最小化J(θ)。又由于J(θ)由最小二乘法得到,J(θ)的取值大于等于0。即最小值为0。

所以,我们使,从而得到θ取值:

损失函数 - Andrew Ng机器学习公开课笔记1.2的更多相关文章

  1. Andrew Ng机器学习公开课笔记 -- 支持向量机

    网易公开课,第6,7,8课 notes,http://cs229.stanford.edu/notes/cs229-notes3.pdf SVM-支持向量机算法概述, 这篇讲的挺好,可以参考   先继 ...

  2. Andrew Ng机器学习公开课笔记–Principal Components Analysis (PCA)

    网易公开课,第14, 15课 notes,10 之前谈到的factor analysis,用EM算法找到潜在的因子变量,以达到降维的目的 这里介绍的是另外一种降维的方法,Principal Compo ...

  3. Andrew Ng机器学习公开课笔记 -- 学习理论

    网易公开课,第9,10课 notes,http://cs229.stanford.edu/notes/cs229-notes4.pdf 这章要讨论的问题是,如何去评价和选择学习算法   Bias/va ...

  4. Andrew Ng机器学习公开课笔记 -- Regularization and Model Selection

    网易公开课,第10,11课 notes,http://cs229.stanford.edu/notes/cs229-notes5.pdf   Model Selection 首先需要解决的问题是,模型 ...

  5. Andrew Ng机器学习公开课笔记–Reinforcement Learning and Control

    网易公开课,第16课 notes,12 前面的supervised learning,对于一个指定的x可以明确告诉你,正确的y是什么 但某些sequential decision making问题,比 ...

  6. Andrew Ng机器学习公开课笔记 – Factor Analysis

    网易公开课,第13,14课 notes,9 本质上因子分析是一种降维算法 参考,http://www.douban.com/note/225942377/,浅谈主成分分析和因子分析 把大量的原始变量, ...

  7. Andrew Ng机器学习公开课笔记 -- 线性回归和梯度下降

    网易公开课,监督学习应用.梯度下降 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 线性回归(Linear Regression) 先看个 ...

  8. Andrew Ng机器学习公开课笔记 -- Logistic Regression

    网易公开课,第3,4课 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 前面讨论了线性回归问题, 符合高斯分布,使用最小二乘来作为损失函数 ...

  9. Andrew Ng机器学习公开课笔记–Independent Components Analysis

    网易公开课,第15课 notes,11 参考, PCA本质是旋转找到新的基(basis),即坐标轴,并且新的基的维数大大降低 ICA也是找到新的基,但是目的是完全不一样的,而且ICA是不会降维的 对于 ...

随机推荐

  1. Hive总结(五)hive日志

    日志记录了程序执行的过程.是一种查找问题的利器. Hive中的日志分为两种 1. 系统日志,记录了hive的执行情况,错误状况. 2. Job 日志,记录了Hive 中job的运行的历史过程. 系统日 ...

  2. Java图像渐变

    图像渐变我们大体想一下思路无非是这样:将图像所有的像素点的RBG,每个点就减去相同的量,而且这个量是个渐变的量.是的,就是这样,我们的程序也是这个思路,不过就是没有单纯的“想”这么简单了.我这里只编写 ...

  3. hadoop集群环境配置成功与否查看方法

    1.Hadoop启动jobhistoryserver来实现web查看作业的历史运行情况,由于在启动hdfs和Yarn进程之后,jobhistoryserver进程并没有启动,需要手动启动jobhist ...

  4. grunt yoman bower的理解

    grunt : 前端构建工具 1 什么事前端构建工具 目前前端已经开始了工程化 比如 一个项目 里面用到了几十个js文件 几十个css 很多图片资源 我们如果引入 还是按照以前的方式 out 因此这个 ...

  5. C语言-常量指针与指针常量

    最近倪健问我一个问题,他说:什么是常指针?什么是指向常变量的指针?请举例说明 我查阅资料后这么回答他了, 指针常量(常指针):int * const p : 指针是一个常量,也就是说它始终指向那个地址 ...

  6. 通过 chroot 重新设置 root 密码

    实例:通过 chroot 重新设置 root 密码 忘记了 root 密码该怎么办?接下来的 demo 将演示如何通过 chroot 命令重新设置 centos7 中被忘记了的 root 密码.sys ...

  7. JavaScript学习总结(10)——实用JS代码大全

    事件源对象  event.srcElement.tagName  event.srcElement.type 捕获释放  event.srcElement.setCapture();   event. ...

  8. wmic windows

    http://www.ynpxrz.com/n614885c2025.aspx http://www.ynpxrz.com/n614883c2025.aspx http://www.ynpxrz.co ...

  9. 洛谷——P3178 [HAOI2015]树上操作

    https://www.luogu.org/problem/show?pid=3178#sub 题目描述 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个操作,分为三种:操作 1 ...

  10. Java总结之线程

    [线程的基本概念] 线程是一个程序内部的顺序控制流. 线程和进程的差别:   每一个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销.   线程能够看成是轻量级的进程,同一类线程 ...