1. 内容概要

  • Multivariate Linear Regression(多元线性回归)

    • 多元特征
    • 多元变量的梯度下降
    • 特征缩放
  • Computing Parameters Analytically
    • 正规公式(Normal Equation )
    • 正规公式非可逆性(Normal Equation Noninvertibility)

2. 重点&难点

1)多元变量的梯度下降

2) 特征缩放

为什么要特征缩放

首先要清楚为什么使用特征缩放。见下面的例子

  • 特征缩放前



由图可以知道特征缩放前,表示面积的x1变量的值远大于x2,因此J(θ)图像表示就是椭圆的,导致在梯度下降的过程中,收敛速度非常慢。

  • 特征缩放后

对各变量特征缩放后绘制出来的损失函数J(θ)明显收敛更快,这也是为什么需要特征缩放的原因了。

实现方法

  • feature scaling

\[
\begin{equation}
x_i := \frac{x_i}{x_\max - x_\min}
\end{equation}
\]

每个输入值除以(max - min)

  • mean normalization

\[
\begin{equation}
x_i := \frac{x_i - μ_i}{s_i}
\end{equation}
\]

μi: 均值

si: max - min

3) Normal Equation 正规方程式

Normal Equation

\[
\begin{equation}
θ = (X^T·X)^{﹣1}·X·Y
\end{equation}
\]

具体推理过程详见掰开揉碎推导Normal Equation

与梯度下降方法进行比较

梯度下降 正规方程式
需要选择步长α 不需要选择步长α
需要迭代训练很多次 一次都不需要迭代训练
O(kn2) O(n3,计算(XT·X)-1需要花费较长时间
即使数据特征n很大,也可以正常工作 n如果过大,计算会消耗大量时间

4) 正规方程不可逆

当XT·X不可逆时,很显然此时正规方程将不能正常计算,常见原因如下:

  • 冗余特征,在两个特点紧密相关(即它们呈线性关系,例如面积和(长,宽)这两个特征线性相关)
  • 太多的特征(例如:m≤n)。 在这种情况下,可以删除一些特征或使用"regularization"。

补充:

  • A是可逆矩阵的充分必要条件是 |A|≠0

MARSGGBO♥原创







2017-8-2

Andrew Ng机器学习课程笔记--week2(多元线性回归&正规公式)的更多相关文章

  1. Andrew Ng机器学习课程笔记--汇总

    笔记总结,各章节主要内容已总结在标题之中 Andrew Ng机器学习课程笔记–week1(机器学习简介&线性回归模型) Andrew Ng机器学习课程笔记--week2(多元线性回归& ...

  2. Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归)

    title: Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归) tags: 机器学习, 学习笔记 grammar_cjkRuby: true --- 之前看过一遍,但是总是模 ...

  3. Andrew Ng机器学习课程笔记(一)之线性回归

    Andrew Ng机器学习课程笔记(一)之线性回归 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7364598.html 前言 ...

  4. Andrew Ng机器学习课程笔记(五)之应用机器学习的建议

    Andrew Ng机器学习课程笔记(五)之 应用机器学习的建议 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7368472.h ...

  5. Andrew Ng机器学习课程笔记(四)之神经网络

    Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...

  6. Andrew Ng机器学习课程笔记(三)之正则化

    Andrew Ng机器学习课程笔记(三)之正则化 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365475.html 前言 ...

  7. Andrew Ng机器学习课程笔记(二)之逻辑回归

    Andrew Ng机器学习课程笔记(二)之逻辑回归 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7364636.html 前言 ...

  8. Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计

    Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7392408.h ...

  9. 斯坦福机器学习视频笔记 Week2 多元线性回归 Linear Regression with Multiple Variables

    相比于week1中讨论的单变量的线性回归,多元线性回归更具有一般性,应用范围也更大,更贴近实际. Multiple Features 上面就是接上次的例子,将房价预测问题进行扩充,添加多个特征(fea ...

随机推荐

  1. Win7 JBOSS的下载安装、环境变量配置以及部署

    1. 下载安装 http://jbossas.jboss.org/downloads/ 我下载的是:JBoss AS7.1.1.Final 2. 解压安装包  D:\Java\jboss-as-7.1 ...

  2. Ambari2.5.3卸载smartsense

    第一步,确定SmartSence服务均已关闭 curl -u admin:$PASSWORD -i -H 'X-Requested-By: ambari' -X PUT -d '{"Requ ...

  3. new/delete 与 malloc/free的区别

    一.概述     在C++中,申请动态内存与释放动态内存用new/delete 与 malloc/free都可以,而且他们的存储方式相同,new/malloc申请的动态内存位于堆中,无法被操作系统自动 ...

  4. 大数据算法->推荐系统常用算法之基于内容的推荐系统算法

    港真,自己一直非常希望做算法工程师,所以自己现在开始对现在常用的大数据算法进行不断地学习,今天了解到的算法,就是我们生活中无处不在的推荐系统算法. 其实,向别人推荐商品是一个很常见的现象,比如我用了一 ...

  5. Java 简单的 socket 编程入门实战

    这个是给女朋友写的:) 首先需要知道我们每个电脑都可以成为server(服务器) 和 client(客户端) 我们需要使用java来实现客户端与服务器的数据传输 先帖上代码 注意这里两张代码处于两个j ...

  6. jQuery 去空

    //去左右空格; function trim(s){ return s.replace(/(^\s*)|(\s*$)/g, ""); }     //去掉字符串中所有空格(包括中间 ...

  7. iOS上机题(附个人见解)

    ##机试题目如下 用命令行创建一个以CocoaPods管理的项目[Test-你的姓名拼音],新建3个ViewController,完成以下题目 将下面的问题在一个UITabView里面列出所有问题,单 ...

  8. Git时光机穿梭之管理修改

    现在,假定你已经完全掌握了暂存区的概念.下面,我们要讨论的就是,为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件. 你会问,什么是修改?比如你新增了一行,这就是一个修改 ...

  9. Javascript数组(1)--基本属性及方法

    数组Array是Javascript语言中非常重要的两种引用类型数据之一,另外一种为对象Object.Array的数据模型可分为两种进行存储:堆栈结构.队列结构. 昨天,确切说是前天了,去和大学同学见 ...

  10. 纯干货!华为软件开发云编译构建之Maven

    一.Maven介绍 Maven是一个项目管理和整合的工具.Maven为开发者提供了一套完整的构建生命周期框架.开发团队基本不用花多少时间就能自动完成工程的基础构建配置,因为Maven使用了一个标准的目 ...