AndrewNG机器学习听课笔记(1 )——线性回归(linear regression)

原创 2012年11月15日 11:00:27

Andrew NG机器学习听课笔记(1

                                                  ——线性回归(linear regression

听课的时候只是觉得这老师讲课听起来真舒服,等差不多的时候,实验室一小子说这货就是大名鼎鼎的coursera的创始人之一NG先生,此时此刻,在自责我自己有眼无珠的同时也暗暗的庆幸,能搜到这样的公开课实属万幸。。

线性回归是一种监督学习的方法,本节主要讲了最小二乘法以及梯度下降法。

为了以后的笔记方便,首先规定下符号的意义:

m :训练集的容量(即训练样本的个数)

n :样本的维数

:参数,也叫回归系数

训练样本

: i =1…m:第i个样本

j=1…n样本的第j

:回归方程

:给定对应的值,也叫target,目标

以后的所有符号都遵从这个记法。

线性回归问题可以简单的描述为给定m个训练样本以及与之对应的target,求得回归方程,使得能够对一个新的样本对应的target 做出相应的预测。

首先定义一个衡量预测的标准:

我们可以用偏差平方和:来表示,当然这个表示方法不唯一,不同的表示方法可能会导致不同的结果,我们会在以后慢慢讨论。

这样的话我们就有了目标:

这样,线性回归问题就转化为一个优化问题了。怎么使上式取得最小呢?本节课主要介绍了三种方法:

第一种是 梯度下降法(gradient descent

首先从一个初始值开始,重复以下步骤

     

直到最后的收敛条件。

下面我们求,首先我们针对只有一个样本的情况:



从而上述的更新算法 

这是针对一个样本的情况,当有多个样本(m)时更新算法就变成了


上式就是随机梯度下降法最终的更新准则。其中是一个自己设定的参数,叫做学习率,由它控制着梯度下降的速度。

 

通过上面的描述不难发现一个严重的问题:当样本容量非常大的时候,每更新一个都要把所有的样本跑一遍,这样浪费了大量的时间和空间复杂度,同时当样本足够大的时候,算法是不可行的。

 

为此提出了一个类似于梯度下降法的优化方法:随机梯度下降法:

算法如下:

For j = 1:m


(对所有的i)


repeat

 

 

另外对于最小二乘,大家都知道的一个方法:

  



,从而,对关于求导并让导数等于0,最终就得到了,从而,这是一个非迭代的算法,算是一个解析解吧。

 

下面讨论针对有不同的表示方法:

下面给出minkowski距离的一个通式:

上式中q取不同的值,会导致我们最终的迭代收敛的位置:q=1时,算法收敛于中值,当q=2时,算法收敛于均值,当q=0时,算法收敛于众数。

 

最终还有一个关于收敛终止条件的,有两种方法,第一种是前后两次更新的的差小于某个阈值。但更常用的是前后两次更新后的值的变化。

spyder使用笔记

Spyder是一个python的集成开发环境,其优点是模仿Matlab环境,可以方便的查看和修改数组取值。之前用过另一个开发环境PTVS(Python Tools for Visual Studio)...
  • lzv2v
  • lzv2v
  • 2017年04月27日 13:40
  • 538

Andrew Ng机器学习课程10

Andrew Ng机器学习课程10 VC dimension, model selection,feature selection

AndrewNG机器学习听课笔记(1 )——线性回归(linear regression)

Andrew NG机器学习听课笔记(1)                                                  ——线性回归(linear regression) 听课...

斯坦福机器学习视频笔记 Week1 线性回归和梯度下降 Linear Regression and Gradient Descent

斯坦福机器学习视频笔记 Week1 Linear Regression and Gradient Descent

Andrew机器学习笔记1:线性回归 linear regression

根据斯坦福大学Andrew NG的机器学习课程整理。线性回归 linear regression。

Andrew NG机器学习课程笔记系列之——机器学习之多变量线性回归(Linear Regression with multiple variables)

1. Multiple features(多维特征) 在机器学习之单变量线性回归(Linear Regression with One Variable)我们提到过的线性回归中,我们只有一个单一特征量...

Andrew NG机器学习课程笔记系列之——机器学习之单变量线性回归(Linear Regression with One Variable)

1. 模型表达(Model Representation) 我们的第一个学习算法是线性回归算法,让我们通过一个例子来开始。这个例子用来预测住房价格,我们使用一个数据集,该数据集包含俄勒冈州波特兰市的住...

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

斯坦福大学机器学习第四课"多变量线性回归“学习笔记,本次课程主要包括7部分: 1) Multiple features(多维特征) 2) Gradient descent for multiple...

斯坦福大学机器学习——线性回归(Linear Regression)

一、概念 线性回归是利用称为线性回归函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。线性回归函数则是一个或多个称为回归系数的模型参数的线性组合。 二、用途 当结论或者类是数值,并且所有训...

机器学习笔记01:线性回归(Linear Regression)和梯度下降(Gradient Decent)

最近在Coursera上看吴大神的Machine Learning,感觉讲的真的很棒。所以觉得应该要好好做做笔记,一方面是加强自己对ML中一些方法的掌握程度和理解,另一方面也能方便自己或者同样爱好ML...
  • Artprog
  • Artprog
  • 2016年04月09日 14:33
  • 4363
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:AndrewNG机器学习听课笔记(1 )——线性回归(linear regression)
举报原因:
原因补充:

(最多只允许输入30个字)