Notes:上一章中主要讲了单变量线性回归,这节课主要讲多变量线性回归,
1. Multiple Features
(1)多变量线性回归即是指具有多个特征变量(
x1,x2,⋯,xn
),例如房价估计,则可能使用面积,卧室数量,层数等特征一起决定房价。相应的,就会出现多个参数(
θ1,θ2,⋯,θn
)。
(2)此时,假设函数
hθ(x)
将变为:
式中, X={x1,x2,⋯,xn} 为,其中 x0=1 ,利用向量表示则为:
式中,
Notes:本课程中小写字母 x,θ 均表示向量,大写字母 X,Θ 均表示矩阵。
2. Gradient Descent for Multiple Variables
(1)针对多变量线性回归,假设函数变为以上形式,则代价函数
J(θ)
形式表示不变,改变的只是其中的假设函数项
hθ(x(i))
。
(2)上一节中,特征变量只有1个,则梯度下降算法形式为左边形式,现在特征变量有n(大于等于1)个,则梯度下降算法形式为右边形式,例如:
3. Gradient Descent in Practice-Feature Scaling
(1)机器学习、数据挖掘工作中,数据前期准备、数据预处理过程、特征提取等几个步骤几乎要花费数据工程师一半的工作时间。同时,数据预处理的效果也直接影响了后续模型能否有效的工作。然而,目前的大部分学术研究主要集中在模型的构建、优化等方面,对数据预处理的理论研究甚少,可以说,很多数据预处理工作仍然是靠工程师的经验进行的。如果不同特征的阈值不同,相差很大,则会导致收敛速度减慢,所以需要进行特征归一化,即将所有特征的值域归一化到相同的值域,使得梯度下降算法收敛的速度加快。
Notes:
数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。以下是两种常用的归一化方法:
- Min-Max标准化(Min-Max Normalization)
该方法也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0 - 1]之间。转换函数如下:
Xnorm=X−XminXmax−Xmin
其中, Xmax 为样本数据的最大值, Xmin 为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。- 0均值标准化(Z-score standardization)
这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,该种归一化方式要求原始数据的分布可以近似为高斯分布,否则归一化的效果会变得很糟糕。转化函数为:
Xnorm=X−μσ应用范围:
1、在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,第二种方法(Z-score standardization)表现更好。
2、在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用第一种方法或其他归一化方法。比如图像处理中,将RGB图像转换为灰度图像后将其值限定在[0 255]的范围。
4. Gradient Descent in Practice-Learning Rate
(1)通过
J(θ)
关于迭代次数的函数曲线,可以观察梯度下降是否运行正确。正常情况下,随着迭代次数的增加,
J(θ)
的值会逐渐减小,直至达到收敛阈值。
(2)如果随着迭代次数的增加,
J(θ)
逐渐增大,则可能学习率
α
太大,这是需要减小
α
的值,但是如果
α
的值太小,则算法收敛速度会减慢。所以,则训练过程中,可以逐步选择合适的
α
值。
5. Features and Polynomial Regression
(1)多项式回归是一种非线性回归,他包含多种特征,如果特征值域相差较大,需要进行特征归一化。
(2)选择特征时,可以根据训练样本的整体趋势或反复测试选择最佳模型。
Notes: 以上算法需要人工选择特征进行训练学习,需要反复尝试,接下来的课中会介绍一些算法会自动选择特征,如神经网络等。
5. Normal Equation
(1)正规方程是解算线性回归(不能用于其他非线性模型)的另外一种优化算法,该算法不需要像梯度下降算法进行迭代运算,可以一次计算出最优参数。利用正规方程进行优化,第一步需要建立设计矩阵
X
和标签向量
具体解法可参考线性代数相关知识。
Tips:利用正规方程解算模型参数,不需要对特征进行归一化。
(2)梯度下降和正规方程的优缺点
梯度下降:
- 优点:适用于特征数量较多的机器学习。
- 缺点:需要选择合适的学习率 α 而且需要多次迭代运算。
正规方程:
- 优点:不需要选择合适的学习率 α 和迭代运算。
- 缺点:当特征数量较多时,运算量较大,不适用。
(3)梯度下降和正规方程的适用性
梯度下降能应用于其他非线性的模型优化,但正规方程只能用于线性模型(线性回归)的优化。