Stanford机器学习---第二讲. 多变量线性回归 Linear Regression with multiple variable
原文:http://blog.csdn.net/abcjennifer/article/details/7700772
本栏目(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的更多相关文章
- [Machine Learning] 多变量线性回归(Linear Regression with Multiple Variable)-特征缩放-正规方程
我们从上一篇博客中知道了关于单变量线性回归的相关问题,例如:什么是回归,什么是代价函数,什么是梯度下降法. 本节我们讲一下多变量线性回归.依然拿房价来举例,现在我们对房价模型增加更多的特征,例如房间数 ...
- 机器学习(三)--------多变量线性回归(Linear Regression with Multiple Variables)
机器学习(三)--------多变量线性回归(Linear Regression with Multiple Variables) 同样是预测房价问题 如果有多个特征值 那么这种情况下 假设h表示 ...
- 机器学习 (二) 多变量线性回归 Linear Regression with Multiple Variables
文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang 的个人 ...
- 机器学习 (一) 单变量线性回归 Linear Regression with One Variable
文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang的个人笔 ...
- 机器学习第4课:多变量线性回归(Linear Regression with Multiple Variables)
4.1 多维特征 目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征, 例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,...,xn).
- Ng第四课:多变量线性回归(Linear Regression with Multiple Variables)
4.1 多维特征 4.2 多变量梯度下降 4.3 梯度下降法实践 1-特征缩放 4.4 梯度下降法实践 2-学习率 4.5 特征和多项式回归 4.6 正规方程 4.7 正规方程及不可逆性 ...
- 斯坦福第四课:多变量线性回归(Linear Regression with Multiple Variables)
4.1 多维特征 4.2 多变量梯度下降 4.3 梯度下降法实践 1-特征缩放 4.4 梯度下降法实践 2-学习率 4.5 特征和多项式回归 4.6 正规方程 4.7 正规方程及不可逆性 ...
- python实现多变量线性回归(Linear Regression with Multiple Variables)
本文介绍如何使用python实现多变量线性回归,文章参考NG的视频和黄海广博士的笔记 现在对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为( x1,x2,..., ...
- 4、、多变量线性回归(Linear Regression with Multiple Variables)
4.1 多维特征 目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,...xn) 增添更多特征后, ...
随机推荐
- Bootstrap系列 -- 25. 下拉菜单分割线
在Bootstrap框架中的下拉菜单还提供了下拉分隔线,假设下拉菜单有两个组,那么组与组之间可以通过添加一个空的<li>,并且给这个<li>添加类名“divider”来实现添加 ...
- [USACO2005][POJ3171]Cleaning Shifts(DP+线段树优化)
题目:http://poj.org/problem?id=3171 题意:给你n个区间[a,b],每个区间都有一个费用c,要你用最小的费用覆盖区间[M,E] 分析:经典的区间覆盖问题,百度可以搜到这个 ...
- Bootstrap3.0学习第十九轮(JavaScript插件——标签页)
详情请看 http://aehyok.com/Blog/Detail/46.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...
- Beta版本的贡献率
陈志灏:负责ACTIVITY部分的编写,与服务器间数据交换,贡献率百分比:%30 尤志明:负责服务器PHP编写,以及一些JAVA编程方面的编译问题的解决,贡献率百分比:%40 周子淇:负责layout ...
- Beta冲刺阶段
Beta冲刺阶段 现阶段工作安排以及问题解决 Struts2框架配置 网上下载Struts 2 的框架代码,按照书上教程进行配置 遇到的问题:书上配置过程和实际操作有出入,按照书上过程无法完成配置过程 ...
- [转]SQL注入攻防入门详解
原文地址:http://www.cnblogs.com/heyuquan/archive/2012/10/31/2748577.html =============安全性篇目录============ ...
- neutron中的dhcp功能
1. 分布式dhcp 特点: 1)一个dhcp port对应多个host上的tap设备. 2)基于port event的network与agent的绑定与解绑定,即创建tap设备.namespace. ...
- VB中的属性、方法和事件概念解析
Visual Basic 语言中的所有对象都有它们自己的属性.方法和事件,其中包括窗体和控件.可以将属性视为对象的特性,将方法视为对象的操作,而将事件视为对象的响应. 日常生活中的对象(如氦气球)也具 ...
- 学习笔记--函数式线段树(主席树)(动态维护第K极值(树状数组套主席树))
函数式线段树..资瓷 区间第K极值查询 似乎不过似乎划分树的效率更优于它,但是如果主席树套树状数组后,可以处理动态的第K极值.即资瓷插入删除,划分树则不同- 那么原理也比较易懂: 建造一棵线段树(权值 ...
- Codevs2157 配对
题目描述 Description 给出2个序列A={a[1],a[2],…,a[n]},B={b[1],b[2],…,b[n]},从A.B中各选出n个元素进行一一配对(可以不按照原来在序列中的顺序), ...