Standford 机器学习—第二讲 Linear Regression with multiple variables(多变量线性回归)

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

Linear Regression with multiple variables – 多变量线性回归

1. 假设函数

hθ(x)=θ0+θ1x1+θ2x2+θ3x3

模型表示:

参数 含义
n 特征的个数
m 训练集的个数
x(i) 第i个训练集实例,矩阵中的第i列,是一个向量
x(i)j 第i个训练实例的第j个值

假设 x0=1 ,则假设函数公式可简化为:

hθ(x)=θTX=θ0x0+θ1x1+...+θnxn

其中 θT 表示矩阵的转置

2. 多变量梯度下降

2.1 代价函数

J(θ0θ1,...,θn)=12mi=1m(hθ(x(i))y(i))2

2.2 梯度下降算法求导

θj:=θjα1mi=1m((hθ(x(i))y(i))x(i)j),j=0,1,2,...,n

注意: 必须同时更新 θj 的值

3. 特征缩放

在面对多维特征问题时,需要保证这些特征都有相近的尺度,这样能使梯度下降算法能更快的收敛。
尝试将所有的特征尺度缩放到-1~1之间,使用如下公式:其中 μn 为平均值, sn 为标准差

xn=xnμnsn

4. 学习率

4.1 如何合理设置 α 的值

可以选择 α=0.001,0.003,0.01,0.03,0.1,0.3

4.2 通过画出迭代次数和代价函数图来观察算法何时收敛

Standford 机器学习—第二讲 Linear Regression with multiple variables(多变量线性回归)_第1张图片

5. 正规方程(Normal Equation Noninvertibility)

通过求解 θ=(XTX)1XTy ,其中X为训练集特征,y为训练集结果,求出代价函数最小的参数 θ 注意:对于不可逆的矩阵,正规方程是不可用的。

梯度下降和正规方程的比较

梯度下降 正规方程
需要选择 α 不需要
需要多次迭代 一次运算求出结果
当特征量n特别大时也适用 时间复杂度为 O(n3) ,当n<1000时可以接受
适用于各种模型 只适用于线性模型

你可能感兴趣的:(machine,learning)