Lecture 9: Linear Regression 线性回归
9.1 Linear Regression Problem 线性回归问题
考虑一个问题,银行按照每个顾客的个人情况,赋予不同的信用额度。我们可不可以通过机器学习,学到一个赋予信用额度的比较好的方式呢?
信用额度是一个实数,所以输出
,属于回归问题。
这里介绍最简单的一种,即线性回归:
对 的每一个维度特征 赋予一个权重 表示重要程度,再求和,得到 ,这是线性回归的基本思想。
得到的 类似于我们之前学到的感知器算法,但是没有添加符号 这个步骤。
线性回归的几何表示如上图,寻找最优的 实际上是寻找最优的线或者超平面。
线性回归算法中,我们普遍使用“squared error”的错误度量方式。
9.2 Linear Regression Algorithm 线性回归算法
上面一小节,关于线性回归的演算法公式,我们已经介绍清楚了。
接下来,我们需要考虑的问题是,如何计算
的最小值。
在推导之前,我们先来复习一下向量和矩阵的一些相关运算。
向量、矩阵运算
向量的内积
- 所以, ,向量的内积符合交换律。
矩阵的行列式计算
- 只有方针才有行列式值。
- 二阶行列式计算如下:
- 奇排列:逆序数为奇数的排列
- 偶排列:逆序数为偶数的排列
- 例如: 共有 种排列方式,其中 逆序数为1,为奇排列; 逆序数为2,为偶排列。
- 三阶行列式计算如下:
可以看出偶排列前面符号为正号,奇排列前面符号为负号。 - 所以,三阶行列式可写成
其中, 代表排列的逆序数, 代表所有排列。 扩展到 阶行列式,
一共有 项计算是这样计算的,但是行列式的本质是什么呢?可以看知乎这篇回答:
https://www.zhihu.com/question/36966326
我看了之后也不太懂,但有个结论说:行列式是线性变换的伸缩因子.。,这个矩阵在线性变换中有放大作用
- ,面积不变
- ,面积减小
- ,图形降维,矩阵不可逆
,转…无法理解暂时,待填坑。
希望之后能理解吧,现在是真的理解不了。
矩阵的转置
- 将原矩阵的行与列交换后得到的矩阵叫做转置矩阵。
- 直观地看,它是将矩阵 的所有元素绕着一条从第1行第1列元素出发的右下方45度射线做镜面翻转,即得到 的转置。
- 相关性质:
矩阵的奇异性
奇异矩阵的英文叫做singular matrix,意思为异常的矩阵。
实际上他就是非可逆矩阵,不满秩矩阵,行列式为0的矩阵。
减小
第一步是将
改造成矩阵形式。
成立的原因:
首先 一般情况下式不等于 的,推导如下:
由矩阵转置定理 ,得
即 ,
如果此时增加条件 ,即 ,
就是说 是以左上-右下45度对角线镜面对称的方阵。
即只有矩阵 是45度镜面对称时,其转置等于它本身。假设输入 有 维特征, 是列向量,一个 的矩阵, 是列向量,也是一个 的矩阵。 就是 也就是维度为 的矩阵,即一个实数,它必然是镜面对称的。所以 成立。
- 将平方求和改造成向量模的平方:
- 假设我们有个向量 ,
- 同理
- 矩阵的线性变换
- 根据矩阵的加减法,加减的线性变换是显而易见的。即令
- 根据矩阵的乘法,将 的 项拆出来,即新的 ,行列数为
- 根据矩阵的加减法,加减的线性变换是显而易见的。即令
最终,
的矩阵形式为
第二步,探索
的图像走势,寻找使其最小的
我们把这个
看成以
为自变量的二次函数, 这个函数是连续的,可微分的,凸函数。这样的函数肯定存在极值点,这个极值点的的梯度为0。
林教授解释梯度很形象,他说当一个球到达凸函数的谷底,它往哪个方向都滚不动,梯度定义如上图,对函数的每个方向(变量)作偏微分。哪里都滚不动,我们就说各个方向的偏微分即梯度为0。
所以我们的任务是找到使得函数梯度为0的 向量。
拆平方,扩写
注意到这里使用了矩阵乘法的一些技巧, 肯定是个值,但是 是个 的矩阵,所以求标量平方值需要使用转置。
之前再证明
成立时,提到,当矩阵
是45度镜面对称时,其转置等于它本身。这里
结果是
的矩阵,镜面对称,所以,
这样,上面的因式分解式的中间两项可写成
保留自变量 ,令因变量
可写为:
看上图,当
只有一维时,
简化成简单的二次式。
类推,当
有多维时,
我们需要要求梯度为0时的 就非常简单了:
即,当 可逆时
我们把 叫做 的伪逆矩阵, 。
虽然由于 , 在大多数情况都是可逆的;但也不排除存在奇异矩阵 ,这样的话就会有很多组解,但是其中一组解仍是 ,这里 可能会有很多种定义方式。
我们在实践中,只需要调用软件程序中已经定义好的 即可。
Fun Time说当我们已经得到了
,可以做预测了,我们预测的
会长什么样呢?
答案是:只需要将算好的
代入即可。