本栏目(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)=12m∑i=1m(hθ(x(i))−y(i))2
2.2 梯度下降算法求导
θj:=θj−α1m∑i=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 通过画出迭代次数和代价函数图来观察算法何时收敛

5. 正规方程(Normal Equation Noninvertibility)
通过求解 θ=(XTX)−1XTy,其中X为训练集特征,y为训练集结果,求出代价函数最小的参数θ。注意:对于不可逆的矩阵,正规方程是不可用的。
梯度下降和正规方程的比较
| 梯度下降 | 正规方程 |
|---|---|
| 需要选择α | 不需要 |
| 需要多次迭代 | 一次运算求出结果 |
| 当特征量n特别大时也适用 | 时间复杂度为O(n3),当n<1000时可以接受 |
| 适用于各种模型 | 只适用于线性模型 |
本文详细介绍了多变量线性回归的基本概念和技术细节,包括假设函数的定义、多变量梯度下降算法及其参数更新方式、特征缩放的重要性及其实现方法、正规方程的原理及其与梯度下降算法的对比等内容。
5万+

被折叠的 条评论
为什么被折叠?



