4、Normal Equation 的向量投影解法与几何和直觉解释
参考:https://zhuanlan.zhihu.com/p/269232332
在线性回归的正交方程 ( Normal Equation )推导一文中提到使用 向量投影 的方法一步就能推导出 正交方程。从向量投影的角度,体现 线性回归 的本质。
预备知识:向量投影

平面A由基向量 所张成(Span ),换言之,平面A是
的列空间。
是平面外的一点,
是
在平面上的投影,
,求
是
和
之间的距离 :
用人话来解释下: 构建了一个平面,平面内的任何向量,它俩均可通过 线性组合 构建出来,换言之,平面外的向量它俩就搞不定了。向量
在
构建的平面外,不论
如何组合都不可能组合出
,这个问题 无解。但是,可以组合出
在平面内的投影
,这是平面内最接近
的点,
是
和
之间的偏差。于是,问题就变成了:如何找到组合
,使
。
线性代数的初心是解决: ,在明显无解的情况下(方程数 > 变量数,超定),退而求其次,解一个可以解决的近似问题:
。
垂直于
----------------------------------------------------------------------------------------------------------------------------------------------
言归正传,回到线性回归的问题:
线性回归要解决的问题是:找到合适的 ,使
实际应用中,方程的数量(样本数)经常远大于变量 / 未知数的数量(特征数),例如以下数据情况:100条数据10个字段,意味着100个方程10个未知数,显然,这样的超定方程组是无解的(over determined ),所以我们不得不改变目标,寻找一个最“接近”的近似解 ,使得
,
是
在
的列空间的投影。
将 代入
,将
代入
,将
代入
,于是就得到 Normal Equation:
翻译成线性回归的语境:由于 不在
所张成的空间内,不论
如何进行线性组合,都不可能组合出
,但是,可以组合出
在平面内的投影
,线性回归的目标就是找到参数
,使
。
在理解了线性回归的投影本质后,使用向量投影公式,只需一步就可以得到Normal Equation: 。
也可以表示为: ,其中
,被成为伪逆矩阵。
---------------------------------------------------------------------------------------------------------------------------------------------------
最后从直觉的角度再来看一下 Normal Equation 和伪逆矩阵,方便记忆:
回顾我们的出发点 ,如果
可逆,两边同时乘以
,显然
。
但在机器学习中,经常面对的是 超定( Overdetermined )方程,方程数( 数据点的数量,行,记录 )大于未知数( 即特征数,列,字段 ),非方阵, 不可逆。
是对称矩阵,也称 Gram 矩阵,它是
的方阵,大概率可逆,因此,我们很自然的希望在方程两边同时乘以
,得到:
,再两边同时乘以
就能到 Normal Equation 。这个推导并不严谨,
可能不可逆,但可作为快速记忆公式的方法。
4、Normal Equation 的向量投影解法与几何和直觉解释的更多相关文章
- Linear regression with multiple variables(多特征的线型回归)算法实例_梯度下降解法(Gradient DesentMulti)以及正规方程解法(Normal Equation)
,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, , ...
- 5种方法推导Normal Equation
引言: Normal Equation 是最基础的最小二乘方法.在Andrew Ng的课程中给出了矩阵推到形式,本文将重点提供几种推导方式以便于全方位帮助Machine Learning用户学习. N ...
- coursera机器学习笔记-多元线性回归,normal equation
#对coursera上Andrew Ng老师开的机器学习课程的笔记和心得: #注:此笔记是我自己认为本节课里比较重要.难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点: #标记为<补 ...
- Normal Equation
一.Normal Equation 我们知道梯度下降在求解最优参数\(\theta\)过程中需要合适的\(\alpha\),并且需要进行多次迭代,那么有没有经过简单的数学计算就得到参数\(\theta ...
- machine learning (7)---normal equation相对于gradient descent而言求解linear regression问题的另一种方式
Normal equation: 一种用来linear regression问题的求解Θ的方法,另一种可以是gradient descent 仅适用于linear regression问题的求解,对其 ...
- Normal Equation Algorithm
和梯度下降法一样,Normal Equation(正规方程法)算法也是一种线性回归算法(Linear Regression Algorithm).与梯度下降法通过一步步计算来逐步靠近最佳θ值不同,No ...
- normal equation(正规方程)
normal equation(正规方程) 正规方程是通过求解下面的方程来找出使得代价函数最小的参数的: \[ \frac{\partial}{\partial\theta_j}J\left(\the ...
- (三)用Normal Equation拟合Liner Regression模型
继续考虑Liner Regression的问题,把它写成如下的矩阵形式,然后即可得到θ的Normal Equation. Normal Equation: θ=(XTX)-1XTy 当X可逆时,(XT ...
- 【转】Derivation of the Normal Equation for linear regression
I was going through the Coursera "Machine Learning" course, and in the section on multivar ...
- 机器学习入门:Linear Regression与Normal Equation -2017年8月23日22:11:50
本文会讲到: (1)另一种线性回归方法:Normal Equation: (2)Gradient Descent与Normal Equation的优缺点: 前面我们通过Gradient Desce ...
随机推荐
- 一键部署nfs、rsync、sersync
一键部署nfs.rsync.sersync 项目代码: 链接:https://pan.baidu.com/s/13I0BBAYsdK-KmPekZ5VpdA 提取码:u2tw --来自百度网盘超级会员 ...
- nexus私服搭建的上传和下载
下载 方法1 下载应该先在nexus中创建相关的库(宿主库.代理库.仓库组),也可以使用原有的库 随后在pom文件中增加以下代码,即可从私服中下载相关的依赖包(注:依赖包的下载首先基于本地库,本地库没 ...
- Cubase11/12 安装破解图文教程 【2022年12月29日亲测有效】
Cubase11/12安装破解图文教程 下载安装包工具 Cubase官网:点击官网进行下载 Cubase11/12工具包:点击立即下载 Cubase12完成破解教程:点击立即查看 安装Cubase11 ...
- cnpm : 无法将“cnpm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。所在位置 行:1 字符: 1
出现问题原因: 使用vscode终端powershell控制台查看cnpm版本或者运行cnpm的相关命令时提示如标题错误(cmd控制台提示:'cnpm' 不是内部或外部命令,也不是可运行的程序或批处理 ...
- 图卷积神经网络分类的pytorch实现
图神经网络(GNN)目前的主流实现方式就是节点之间的信息汇聚,也就是类似于卷积网络的邻域加权和,比如图卷积网络(GCN).图注意力网络(GAT)等.下面根据GCN的实现原理使用Pytorch张量,和调 ...
- Win10解决文件或文件夹属性选项中只有“常规“、“以前的版本”,没有“安全”、“共享”、“位置”的方法
问题介绍: 当我想要把"桌面"文件夹的路径改到其他盘的时候,通常我只需要对着"桌面"文件夹点击右键,在属性-位置的选项卡中更改路径即可:但是我发现我在对着&qu ...
- 【USACO 2021 US Open, Platinum】United Cows of Farmer John
\(\text{Solution}\) 简要的口胡 线段树维护合法左端点数量 正序枚举 \(i\),将其视为右端点,去除不合法的左端点,统计贡献 再将其视为中间点,由它产生的左端点在线段树上区间加 注 ...
- Hexo系列(一):Hexo简介
作者:独笔孤行 官网: http://anyamaze.com 公众号:云实战 前言 博客网站的实现方法有很多种,常用的博客框架主要有wordpress.Z-Blog.hexo.Typech ...
- 【RocketMQ】Dledger日志复制源码分析
消息存储 在 [RocketMQ]消息的存储一文中提到,Broker收到消息后会调用CommitLog的asyncPutMessage方法写入消息,在DLedger模式下使用的是DLedgerComm ...
- Activity 和 Fragment 中的视图绑定
开启视图绑定 找到 build.gradle 文件,因为有两个 build.gradle,我们要操作的是第二个: 在这个位置加上这一句话,然后点击右上角的 Sync Now 按钮更新项目: andro ...