本栏目(Machine learning)包括单参数的线性回归、多参数的线性回归、Octave Tutorial、Logistic Regression、Regularization、神经网络、机器学习系统设计、SVM(Support Vector Machines 支持向量机)、聚类、降维、异常检测、大规模机器学习等章节。所有内容均来自Standford公开课machine learning中Andrew老师的讲解。(https://class.coursera.org/ml/class/index)

第二讲-------多变量线性回归 Linear Regression with multiple variable


(一)、Multiple Features:


多变量假设:输出由多维输入决定,即输入为多维特征。如下图所示:Price为输出,前面四维为输入:

假设h(x)=θ0+θ1x1+……所谓多参数线性回归即每个输入x有(n+1)维[x0……xn]




(二)、Gradient Descent for Multiple Variables:


左边为但参数的梯度递减单变量学习方法,右图new algorithm为多变量学习方法。






(三)、Gradient Descent for Multiple Variables - Feature Scaling


It is important to 归一化feature,所以用到了feature scaling,即将所有feature归一化到[-1,1]区间内:

归一化方法:xi=(xi-μi)/σi

(四)、Gradient Descent for Multiple Variables - Learning Rate


梯度下降算法中另一关键点就是机器学习率的设计:设计准则是保证每一步迭代后都保证能使cost function下降。

这是cost function顺利下降的情况:

这是cost function不顺利下降的情况:

原因如右图所示,由于学习率过大,使得随着迭代次数的增加,J(θ)越跳越大,造成无法收敛的情况。

解决方法:减小学习率

总结:如何选取学习率:

测试α=0.001,收敛太慢(cost function下降太慢),测试0.01,过了?那就0.003……

(五)、Features and Polynomial Regression


假设我们的输入为一座房子的size,输出为该house的price,对其进行多项式拟合:

有两个选择,二次方程或者三次方程。考虑到二次方程的话总会到最高点后随着size↑,price↓,不合常理;因此选用三次方程进行拟合。

这里归一化是一个关键。

或者有另一种拟合方程,如图粉红色曲线拟合所示:

(六)、Normal Equation


与gradient descent平行的一种方法为Normal Equation,它采用线性代数中非迭代的方法,见下图:

我们想要找到使cost function 最小的θ,就是找到使得导数取0时的参数θ:
该参数可由图中红框公式获得:

具体来说:X是m×(n+1)的矩阵,y是m×1的矩阵

上图中为什么x要加上一列1呢?因为经常设置X(i)0=1;

下面比较一下Gradient Descent与Normal Equation的区别:

(七)、Normal Equation Noninvertibility


我们已知,对于有m个样本,每个拥有n个feature的一个训练集,有X是m×(n+1)的矩阵,XTX是(n+1)×(n+1)的方阵,那么对于参数θ的计算就出现了一个问题,如果|XTX|=0,即XTX不可求逆矩阵怎么办?这时可以进行冗余feature的删除(m<=n的情况,feature过多):

Stanford机器学习---第二讲. 多变量线性回归 Linear Regression with multiple variable相关推荐

  1. Coursera公开课笔记: 斯坦福大学机器学习第四课“多变量线性回归(Linear Regression with Multiple Variables)”

    Coursera公开课笔记: 斯坦福大学机器学习第四课"多变量线性回归(Linear Regression with Multiple Variables)" 斯坦福大学机器学习第 ...

  2. python多变量非线性拟合_python实现多变量线性回归(Linear Regression with Multiple Variables)...

    本文介绍如何使用python实现多变量线性回归,文章参考NG的视频和黄海广博士的笔记 现在对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,...,x ...

  3. 单变量与多变量线性回归(Linear Regression with One Variable)

    2.1 线性回归算法模型表示 让我们通过一个例子来开始:这个例子是预测住房价格的,我们要使用一个数据集,数据集包含俄勒冈州波特兰市的住房价格.在这里,我要根据不同房屋尺寸所售出的价格,画出我的数据集. ...

  4. Coursera公开课笔记: 斯坦福大学机器学习第二课“单变量线性回归(Linear regression with one variable)”

    Coursera公开课笔记: 斯坦福大学机器学习第二课"单变量线性回归(Linear regression with one variable)" 发表于 2012年05月6号 由 ...

  5. Ng第二课:单变量线性回归(Linear Regression with One Variable)

    二.单变量线性回归(Linear Regression with One Variable) 2.1  模型表示 2.2  代价函数 2.3  代价函数的直观理解 2.4  梯度下降 2.5  梯度下 ...

  6. 机器学习第二回——多变量线性回归

    多变量线性回归 求解最合适的一系列参数(θ0~θn) 一.多维特征(以预测房价为例) 对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(

  7. 吴恩达机器学习课后作业1.1——多变量线性回归(Linear regression with multiple variable)

    1. 问题和数据 假设你要卖掉你的房子,你想知道一个好的市场价格是多少.其中一种方法是,首先收集最近出售的房屋的信息.在本部分的练习中,你将使用多元线性回归来预测房屋价格. 数据ex1data2.tx ...

  8. 机器学习第二讲 稀疏学习Lasso Regression和正则化regularization 的Ridge Regression

    lasso (least absolute shrinkage and selection operator)要是能把全称背下来你能一直记住LASSO的原理是absolute shrinkage以及它 ...

  9. 吴恩达Coursera机器学习 - Chapter 4 多变量线性回归

    Chapter 4 – 多变量线性回归(Linear Regression with Multiple Variables) 相比第二章,这一章无非就是数据集的特征数由一个变为多个,并引入了矩阵的概念 ...

最新文章

  1. lxml安装_Beautiful Soup的安装和使用
  2. ios辅助功能之voiceover实战
  3. 阿里 Midway 正式发布 Serverless v1.0,研发提效 50%
  4. Java编程作业体会_Java作业的几点总结感想
  5. Android 渗透测试学习手册 第三章 Android 应用的逆向和审计
  6. Linux 常用命令如何使用?
  7. latex参考文献出现[S.1.]或[S.1.s.n.]
  8. filebeat配置介绍
  9. 取代奶瓶Minidwep-gtk破解WPA 全攻略
  10. python判定串口已连接_python的串口连接
  11. window计算机截屏快捷键,电脑截图是ctrl加什么键win7快捷键截图方法详解
  12. TeXmacs Bibtex文献排序
  13. 硬盘的种类及运行原理
  14. springBoot 报警告 Could not find acceptable represent
  15. EAX、EBX、ECX、EDX
  16. (七)DKN:用于新闻推荐的深度知识感知网络
  17. Python算法题笔记
  18. 关于STM32G071RB的ADC采集误差问题
  19. conda安装cv2库
  20. 如何下载 International Conference on Machine Learning(ICML)顶会的论文?从哪找ICML顶会论文?如何判断会议和期刊级别?

热门文章

  1. android:#FFFFFFFF 颜色码解析
  2. sv_labs学习笔记——sv_lab2(System Verilog)
  3. FPGA实现VGA显示(四)——————读取ROM显示彩色图片(a)
  4. Linux下oracle em安装,关于在linux下手动安装oracle之后,安装em的问题
  5. visual studio如何用低版本打开高版本项目
  6. td自动换行:设置table布局固定,td根据设定宽度自动换行
  7. c语言明解课后答案,《明解C语言》第三章笔记和练习题
  8. SVN Cleanup失败解决方法
  9. Starling常见问题解决办法
  10. How to use the Feathers ScreenNavigator component