模型表示

多变量的线性回归也叫做“多元线性回归”。首先还是先明确几个符号的含义。

  • \(x{^{(i)}_j}\):第i个训练样本的第j个特征,比如面积楼层客厅数
  • \(x^{(i)}\):第i个训练样本的输入
  • \(m\):训练样本的数量
  • \(n\):特征的数量

多元线性模型的假设函数的形式如下:
\[
h_θ(x)=θ_0+θ_1x_1+θ_2x_2+θ_3x_3+...+θ_nx_n
\]
对应的\(x_1\)是房子的面积,\(x_2\)是房子的层数,...

用矩阵的形式来表示假设函数可以表示为:


这里让每个样本的第一个特征\(x{^{(i)}_0}\)都等于1。

梯度下降

和一元模型一样,我们只需要将参数收敛的程序做\(n\)次就可以了。


\[
θ=θ-α\frac{1}{m}(X^T(X\cdotθ-y))
\]

加速梯度下降

有两种方法可以帮助我们加速梯度下降,分别是特征缩放均值归一化

特征缩放

当特征保持在差不多相同的范围时,梯度下降的速度会快一些。


然而实际问题中可能就不这么完美,例如\(x_1\)的范围是0-2000,\(x_2\)的范围是0-5,得到的轮廓图是细长的同心椭圆,收敛所需要的迭代次数因此更多。


现在通过特征缩放的方法让每一个特征在相同的尺度范围内,让特征除以特征的范围(max-min)。
\[
x_1=\frac{size}{2000},x_2=\frac{number-of-bedrooms}{5}
\]
这样\(x_1,x_2\)的范围都在0-1之间。

均值归一化

均值归一化先减去该特征的平均值\(u_i\),在除以标准差\(s_i\)或是range(max-min)。
\[
x_i:=\frac{x_i-u_i}{s_i}
\]
例如,\(x_i\)代表房价在100到2000之间,平均值为1000,那么
\[
x_i:=\frac{x_i-1000}{1900}
\]

多项式回归


当输入数据的分布是这个样子的,直线的拟合程度是不高的。

可以考虑以一元二次函数来拟合,
\[
h_θ(x)=θ_0+θ_1x_1+θ_2x_2^{2}
\]
但是二次函数随着面积增大后面会下降,这与显示不符,进一步考虑三次函数来拟合
\[
h_θ(x)=θ_0+θ_1x_1+θ_2x_2^{2}+θ_3x_3^3
\]
三次函数会带来巨大的特征范围,这是特征缩放将变得十分重要。因此可以进一步考虑将三次替换为平方根
\[
h_θ(x)=θ_0+θ_1x_1+θ_2x_2^{2}+θ_3\sqrt x_3
\]
这就是多项式回归。

正规方程

在梯度下降中,我们通过调节学习率\(\alpha\),迭代的算法来求解使得\(J(θ)\)最优的参数解。正规方程的方法不涉及到调参,而是一步直接求出参数\(θ\)。
\[
θ=(X^TX)^{-1}X^Ty
\]


与梯度下降的对比

梯度下降 正规方程
需要调节\(\alpha\) 不需要调节\(\alpha\)
需要多次迭代 一次求出\(θ\)
在特征\(n\)很大时也能很好工作 \(n\)很大时,在求解\((X^TX)\)时时间复杂度很大

【Coursera-ML-Notes】线性回归(下)的更多相关文章

  1. Coursera ML笔记 - 神经网络(Representation)

    前言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归.逻辑回归.Softmax回归.神经网络和SVM等等,主要学习资料来自Standford Andrew N ...

  2. (转载)[机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation

    [机器学习] Coursera ML笔记 - 监督学习(Supervised Learning) - Representation http://blog.csdn.net/walilk/articl ...

  3. [机器学习] Coursera ML笔记 - 逻辑回归(Logistic Regression)

    引言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归.逻辑回归.Softmax回归.神经网络和SVM等等.主要学习资料来自Standford Andrew N ...

  4. 如何应用ML的建议-下

    正则化与过拟合(highvariance)和欠拟合(highbias)的关系-部分(五) ML的诊断方法-部分(六) 如何采取下一步-部分(七) 部分(五) 从图中可以看出,正则化项可以用来影响模型函 ...

  5. ml的线性回归应用(python语言)

    线性回归的模型是:y=theta0*x+theta1   其中theta0,theta1是我们希望得到的系数和截距. 下面是代码实例: 1. 用自定义数据来看看格式: # -*- coding:utf ...

  6. Linux Notes:Linux下的远程登录协议及软件

    常见的远程登录协议 1.RDP(remote desktopp protocol)协议,windows远程桌面协议 2.telnet CLI 界面下远程管理,几乎所有的操作系统都有,数据明文传输,不安 ...

  7. ML:多变量线性回归(Linear Regression with Multiple Variables)

    引入额外标记 xj(i) 第i个训练样本的第j个特征 x(i) 第i个训练样本对应的列向量(column vector) m 训练样本的数量 n 样本特征的数量 假设函数(hypothesis fun ...

  8. JavaScript机器学习之线性回归

    译者按: AI时代,不会机器学习的JavaScript开发者不是好的前端工程师. 原文: Machine Learning with JavaScript : Part 1 译者: Fundebug ...

  9. 如何应用ML的建议-上

    本博资料来自andrew ng的13年的ML视频中10_X._Advice_for_Applying_Machine_Learning. 遇到问题-部分(一) 错误统计-部分(二) 正确的选取数据集- ...

  10. 机器学习实验报告:利用3层神经网络对CIFAR-10图像数据库进行分类

    PS:这是6月份时的一个结课项目,当时的想法就是把之前在Coursera ML课上实现过的对手写数字识别的方法迁移过来,但是最后的效果不太好… 2014年 6 月 一.实验概述 实验采用的是CIFAR ...

随机推荐

  1. HTML5视频播放插件 video.js介绍

    video.js是一款很流行的html5视频播放插件.很适合在移动端播放视频(比如微信网页),功能强大,且支持降级到flash,兼容ie8.官网:http://videojs.com/    git& ...

  2. HTML中IMG标签总结

    一.Img标签有两个重要的属性: 1.src  属性:图片的地址 2.alt  属性:图片不显示是现实的文字 二.Img标签是行级元素: img.input属于行内替换元素.height/width/ ...

  3. MySQL 开启事件 使用定时器调用存储过程

      mysql定时器是系统给提供了event,而oracle里面的定时器是系统给提供的job.废话少说,下面创建表:create table mytable (id int auto_incremen ...

  4. Django templates加载css/js/image等静态资源

    配置步骤: 1.首先在应用下面创建static目录 2.将静态资源拷贝进去 3.在应用的settings.py文件中添加 import os BASE_PATH = os.path.dirname(o ...

  5. 搭建Jupyter Notebook服务器

    昨天发了Jupyter的使用,补一篇Jupyter服务器的搭建~ 一.搭建Jupyter 1.安装 使用virtualenv建虚拟环境.在虚拟环境中安装jupyter.matplotlib等等需要的库 ...

  6. 分享一个强大的makedown编辑器

    Yosoro 官网地址 https://yosoro.coolecho.net/ 很强大,支持直接粘贴图片,是直接上传到github仓库. 可直接导出md,html,pdf格式,特别方便 找了好几天的 ...

  7. HDOJ:1533-Going Home(最小费用流)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1533 解题心得: 第一次写最小费用流的题,去hdoj上找了一个入门级题目,建图比较简单,用了spfa和 ...

  8. APP支付 + 退款(JAVA实现)

    首先,你得先有微信开发平台账号密码还需要开通应用,然后还有微信服务商平台商户版账号(这些我都是给产品经理拿的) 其次我认为你先去看一看微信开发平台的文档!  https://pay.weixin.qq ...

  9. 【BZOJ4818】序列计数(动态规划,生成函数)

    [BZOJ4818]序列计数(生成函数) 题面 BZOJ 题解 显然是求一个多项式的若干次方,并且是循环卷积 或者说他是一个\(dp\)也没有问题 发现项数很少,直接暴力乘就行了(\(FFT\)可能还 ...

  10. 北京Uber优步司机奖励政策(1月15日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...