关于机器学习:机器学习笔记3多元线性回归和正规方程

6次阅读

共计 2266 个字符,预计需要花费 6 分钟才能阅读完成。

多元线性回归的假如函数

  • 下边咱们介绍多个特色量的线性回归模式,并通过向量乘法示意。例如,之前的预测房价例子中,咱们只有一个特征向量(屋宇大小),来预测屋宇价格。然而,实际上屋宇价格不仅仅与大小无关,还与卧室数量、楼层数、应用年限等多个特征向量无关
相干符号含意


在多元线性回归中,m 仍示意数据集的数据数量,上标 i 示意第 i 个训练样本;n 示意每个数据的特征值数量,下标示意数据的第 i 个特色

多元假如函数的引入

  • 例如在房价预测的例子中,可用上图的多元线性函数作为假如函数。随着面积、楼层数、此屋宇所在楼层增大,房价增大;随着屋宇年限增大,房价变小
用向量模式示意多元假如函数
  • 设 x0=1,即定义了额定的特色量,但取值总为 1. 这样特色量可用一个 n + 1 维向量示意,同样咱们把参数看做 n + 1 维的行向量。两个向量相乘,就失去咱们的假如函数

多元线性回归的梯度降落法

  • 前边咱们提到了多元线性回归的假如模式,下边咱们看一下如何找到满足假如最拟合的参数。即如何应用梯度降落法,解决多特色的线性回归问题
  • 多元线性回归的梯度降落法与一元线性回归相似,都是先写出代价函数式子,而后将代价函数代入梯度降落公式中,通过计算失去参数 j 的偏导数项。一直的用参数 j,减去学习速率 a * 参数 j 的偏导数,直到参数收敛

  • 多元梯度降落的参数更新规定实际上和一元梯度降落也是雷同的。只是把 x0 设为 1 而已

梯度降落算法的应用技巧

  • 在学习完多特色的线性回归模型后,咱们来看一下梯度降落算法的应用技巧
梯度缩放
  • 当机器学习问题有多个特色时,若特色都处于相近的范畴内,梯度降落算法会更快地收敛。若特色范畴相差较大,如预测房价问题中,面积大小在 0~2000 间,卧室数目在 1~5 之间,那么轮廓图就变成了十分瘦长的椭圆(相似地形图,卧室数目单位影响更大,所以变动更快,而地形图中变动快的线密集)。这个时候咱们应用梯度降落法,就会来回稳定,降落迟缓


这样的状况下,咱们就会进行特色缩放,让特色的范畴尽可能靠近。这样轮廓图就会就会靠近圆,不再是瘦长的椭圆。这时梯度降落的速率就会变快

  • 一般来说,特色缩放将特色缩放到 - 1 和 1 之间。然而实际上范畴能够大于小于这个范畴,只有别太过分就行


如上图,0~3、-2~0.5 是能够承受不必缩放的,然而 -100~100、0.001 就相差太远,须要用特色缩放。一般来说,-3~3 和 -1/3~1/ 3 是能够承受的,超出就要思考特色缩放

均值归一化
  • 除了梯度学习,也能够通过均值归一化,即让特征值具备 0 的平均值,来让梯度降落更快。减去平均值,除以范畴(最大值 - 最小值)。不肯定齐全准确,大略就行

如何抉择适合的特色和假如函数

  • 前边学习了多特色的线性回归,下边咱们来看一下如何抉择适合的特色或者办法
抉择适合的特色:能够本人发明新的特色
  • 在预测房价的例子中,若给予宽度深度两个特色,而真正确定房价的特色应该是面积。所以咱们用深度 * 宽度,失去新的特色面积,用一元线性回归进行预测

即咱们不是给什么特色就用什么特色,而是从特色和标签的角度扫视问题,必要时通过定义新的特色,失去更好地模型

抉择适合的假如函数:理解各种函数的走势
  • 在机器学习中,有时线性函数不能很好的拟合数据,可能要用到非线性函数。如预测房价中,显然直线是不能拟合的;若应用二次函数的话,后边会降回来,然而房价不会因为面积过大降回来,不符合实际;因而咱们思考应用三次函数拟合

    正规方程:求最优解参数的另一种办法

    • 在前边的线性回归问题中,咱们始终应用梯度降落法求假如函数的最优解参数,这种办法须要通过屡次迭代,来收敛到参数的全局最小值。这里,咱们再引入正规方程的办法,通过矩阵计算,一步得出参数的最优解
先对正规方程有一个直观了解

  • 先从一个参数看起,求最优解,就是求导,而后导数置零失去的参数值
  • 当有多个参数时,对每个参数求偏导数,全副置零时失去的每个参数的值。然而偏微分办法太过简单,因而咱们不应用遍历微分的办法,而是通过矩阵计算失去参数值
  • 假如有 m = 4 个样本数据,首先构建前边的 x 矩阵。每个样本给出本人的特征向量(依然 x0=1),转置后,将第一个数据的向量作为第一行,第二个数据的向量作为第二行,以此类推。而后进行下边的矩阵计算,失去的后果就是参数值

正规方程和梯度降落的比拟

  • 梯度降落法:

(1)若参数不在相近的范畴内,须要梯度缩放或者特色归一化,解决到相近范畴内;特征方程则不须要
(2)须要人为抉择学习速率,尝试不同的学习速率,运行屡次找到最好的那个,带来了额定的工作和麻烦
(3)须要屡次迭代,计算慢

  • 特征方程:

(1)不须要抉择学习速率
(2)运行一次即可
(3)不须要画出曲线查看收敛性

  • 看了上边,仿佛正规方程远优于梯度降落。然而,特征方程须要样本数目 m 和特色量 n 值比拟小。因为矩阵运算相当于矩阵维度的三次方计算,当 m 或 n 太大时,计算会十分慢,还不如用梯度降落快。个别,咱们把一万作为分界点,超过一万就只思考梯度降落法,一万以内正规方程比拟好

而且随着算法越来越简单,后边的分类算法等只能用梯度降落,不能用特征方程解决
##### 应用正规方程的问题:矩阵的不可逆性

  • 当应用正规方程时发现矩阵不可逆怎么办?通常由两种起因引起

(1)某些特色间存在一个固定关系。例如预测房价中,把面积英寸和平方米作为特色,两者存在 3.28 的换算(线性)关系,这会造成矩阵的不可逆
(2)特色数量远大于数据个数。假如咱们有 10 个训练样本,却有 100 个特征值,要从 10 个样本中找到 100 个参数值,太艰难。可能造成矩阵的不可逆。对于 m >>n 的问题,咱们能够通过正则化的线性代数办法,删除某些反复或低效特色解决 m >>n 的问题

正文完
 0