当前位置: 首页 > news >正文

【线性代数的本质|笔记】从线性变换的角度看向量的点积和叉积

点积与叉积


引入点积的标准方法

定义:对于给定的两个同维度的向量求解点积,就是将向量相对应的维度的分量相乘再相加。
在这里插入图片描述
几何意义:两个向量w和v的点积,可以看成是向量w在v方向的投影和v长度的乘积;或者是向量v在w方向上的投影和w长度的乘积。
在这里插入图片描述

  • 点积是有符号的,投影也是有正负之分的,符号表达了向量投影与另一向量的方向是否一致。
  • 运用向量的点积判断两个向量的方向
v·w说明
<0方向大致相反,夹角为钝角
>0方向大致相同,夹角为锐角
=0向量垂直,夹角为直角

点积的顺序无关性

按照上面的标准观点介绍点积的时候,计算方法很容易掌握,但是其中“谁向谁投影都不影响结果”这一观点会很令人费解。

1.当向量v和向量w长度相同,对称性。
在这里插入图片描述
其一,因为二者长度相同,所以直观理解起来谁向谁投影是一个镜像问题。
其二,上图的两种投影方式实际上构成了一对全等三角形(AAS型),很容易证明v在w上的投影和w在v上的投影长度是相等的。

2.通过对某一向量长度进行放缩来破坏对称性。
在这里插入图片描述
做法一:将w向量向伸长了两倍的v向量进行投影,w的投影长度不变,v本身长度扩大,故结果扩大。

做法二:将伸长了两倍的v向量向w向量进行投影,w本身的长度不变,v在w上的投影扩大了两倍(这一点可以用相似比为2的一对相似三角形来理解),故总结果依然扩大了两倍。


点积运算与投影操作的关联性

总的来说,这种操作之间的关联可以归结与数学中重要的性质——对偶性。
在具体解释何为对偶性之前,我们要先探讨一下多维空间到一维空间的线性变换。

严格的线性性质的定义
在这里插入图片描述
直观的线性性质的理解(在前几篇文章中都有提到)
等距分布的数据点在经过线性变换之后依然保持等距分布。
在这里插入图片描述

实例分析一:考虑一个二维空间到一维空间的线性变换

  1. 在前文中也探讨过,一个线性变换是可以用一个矩阵来进行描述的,一个从二维空间到一维空间的线性变换可以用一个1x2维度的矩阵来进行描述(每一列都表示变换之后基向量所处于的位置)
    在这里插入图片描述
  1. 假设有一个变换矩阵【1,-2】,且有一个原向量v = [4,3]^T,现在想要跟踪它线性变换之后的结果
    在这里插入图片描述
    一个向量可以根据某一基和对应基上的坐标来表示构成,原向量[4,3]^T可以看做是原i向量的4倍加上原j向量的3倍所构成。
    根据线性变换之后i和j向量分别落在了一维数轴上的1和-2处,那么新的向量自然应该落在(-2x3+1x4=-2)处。

而上述线性变换作用的过程完全用数值计算来表达的话,就可以解析成一个矩阵乘法运算(前两篇文章对于矩阵变换理解时说过这一观点)。
在这里插入图片描述

  • 图中的矩阵乘法的运算模式是等同于向量的点积,但是形式上略有不一致,若把第一个矩阵看做是第一个向量的转置,那么这里矩阵的乘法运算和向量的点积运算就完全契合了。
  1. 探讨将“一个二维向量转化为一个数的线性变换和这个二维向量本身之间有何特性”的问题。
  • 由下图,假设要将平面上的向量投影到u向量所在的轴上。且可判断该投影所对应的变换是一个线性变换。
    在这里插入图片描述
  • 接下来我们先解决变换所对应的矩阵是什么的问题
    在这里插入图片描述
    根据“用线性变换来理解矩阵”的观点,要想求解出该线性变换对应的矩阵,就应该把二维平面的i向量和j向量在u轴上投影的坐标求解出来。
    先以求解i在u上的投影为例,因为这里i和u均取的为单位向量,所以根据前文讨论的对称性,可以知道i在u上的投影=u在i上的投影=u在i上的坐标=ux
    在这里插入图片描述
    同理就可以得到变换矩阵的最终表达:
    在这里插入图片描述
  1. 将矩阵的投影变换与投影中的数值计算再连接起来看:
  • 已知一个投影变换矩阵,现在要求出一个向量在经过投影变换之后的新向量的表示:
    在这里插入图片描述
  • 而根据数值计算,可以看到矩阵乘法的运算结果和前文中对于向量点积的定义是完全一致的。
    在这里插入图片描述
  • 虽然前文中的讨论都是基于单位向量的,若讨论的向量本身并不是单位向量,那么可以将点积的运算(投影的变换操作)分成两步:第一步就是按照向量所在方向进行投影;第二步就是将投影得到的结果再按照放缩的系数进行相乘。

对偶性

在这里插入图片描述

  1. 一个向量的对偶就是由它定义的线性变换
    在这里插入图片描述
  2. 一个多维空间到一维空间的线性变换的对偶是多维空间中的某个特定向量
    在这里插入图片描述

叉积的标准介绍

  1. 两个向量所张成的平行四边形的面积
  • 以向量运算的平行四边形法则作出两个向量张成的平行四边形,计算相应面积
  • 考虑平行四边形的定向问题
    ①若第一个向量在第二个向量的右边,则结果为正
    在这里插入图片描述
    p.s.上图中叉积运算并不严格正确
    ②顺序对于叉积的运算结果会有影响
    在这里插入图片描述
    按序计算两个基向量的叉积,运算结果应该为正的,正如图片中所说——基向量的顺序往往为定向的基础。
    在这里插入图片描述
  1. 行列式与向量张成的平行四边形的面积

将参与叉积运算的两个向量的坐标分别写在矩阵的各列中,构成的矩阵计算行列式的值就等于定向过后的平行四边形面积的值。
在这里插入图片描述
p.s.怎么样把矩阵和线性变换相关联,从而把行列式和面积的缩放比对应起来,可以参考前面两篇讲行列式和矩阵变换的文章。

  1. 叉积运算的一些直观印象

两个向量之间的夹角对叉积运算结果有影响
在这里插入图片描述
在这里插入图片描述
叉积运算的数乘性质
在这里插入图片描述

  1. 叉积的定义

①叉积的运算实质就是生成一个新的向量,该向量垂直于参与运算的两个向量所围成的平面,向量的长度为平行四边形的面积。
在这里插入图片描述
②叉积的运算定向——右手定则
在这里插入图片描述
③运算规则与技巧——写成一个三阶行列式进行运算
在这里插入图片描述


以线性变换的眼光看叉积

  1. 回顾一下对偶性的概念
  • 无论什么时候看到一个从多维空间到一维空间的变换,这个变换都会与多维空间中的唯一的一个向量对应。
  • 也就是说,对某个向量应用该线性变换 等价于 某个向量和变换对应的向量进行点积运算
  • 之所以可以将变换应用和向量点积进行对偶等价,是因为多维空间到一维空间的变换可以用一个行矩阵进行表示,而该矩阵的每一列都对应原高维空间中的每一维基向量变换后的位置。
  • 每次看到一个从高维空间到一维空间的变换,都能找到一个和变换对偶的向量;使得与这个向量进行点积运算等价于应用这个线性变换。
  1. 利用点积的对偶性来找到向量叉积运算的结果

①实施计划在这里插入图片描述

  • 之所以采用这样一个思路来学习,是因为找到这样一个从三维空间到一维空间的线性变换是至关重要的;这个线性变换能够清楚解释叉积的计算过程和几何意义。

②找到一个从三维空间到一维整数的映射函数
在这里插入图片描述
输入一个三维空间中的向量,计算该向量和已知的v和w向量所张成的平行六面体的体积(三个向量所构成方阵的行列式的值)

  • 该函数是线性的【变换也是线性的】(根据行列式的相关性质可证)

③引进对偶性的思想
因为上面得到了一个从多维到一维的映射函数,且函数本身也是线性的。那么根据在点积运算一节中所学习到的对偶性可知——能够找到一个矩阵来代替这个线性变换
在这里插入图片描述
而我们要找的这个行矩阵(其对应的转置就是一个三维列向量)称之为p。需要使得p向量和三维空间中任一向量的点积都等于p与v和w构成的三维方阵的行列式。
在这里插入图片描述

④计算意义的探讨
将点积运算和行列式计算的结果进行比对,就可以得到需要求解的向量p的各个分量就是v和w坐标的特定组合。在这里插入图片描述

  • 仔细瞅一瞅上面v和w各个维度坐标的线性组合,就和叉积运算时各个分量的系数一致。
    在这里插入图片描述
    从几何的角度来理解线性函数的计算过程——先将v和w张成的平行四边形及其面积求出,再将p向量往垂直于平行四边形的法向量进行投影,将投影值和面积值进行乘积得到的就是函数计算的结果
  • 纯粹考虑数值,上述计算过程与将长度为平行四边形面积且垂直于平行四边形平面的向量p和(x,y,z)向量进行点积的结果是一致的。

后记

本文是根据《线性代数的本质》公开课视频记录所得。

【官方双语/合集】线性代数的本质 - 系列合集P10-12

相关文章:

  • 【线性代数的本质|笔记】基变换、特征向量和特征值
  • 【线性代数的本质|笔记】抽象几何空间、克莱姆法则及其几何解释
  • 【线性代数的本质|笔记】各章节笔记汇总
  • 支持向量机(SVM)的模型定义与推导
  • 【微积分的本质|笔记】绪论——微积分中的核心思想
  • 【微积分的本质|笔记】有关导数
  • 操作系统知识点复习(3):文件管理
  • 【微积分的本质|笔记】直观理解链式法则和乘积法则
  • 【CMU|深入理解计算机系统】Course Review
  • 【微积分的本质|笔记】指数函数求导
  • 【MIT算法导论】算法分析与基础知识
  • 【微积分的本质|笔记】隐函数求导的意义与理解
  • 【微积分的本质|笔记】极限
  • 【微积分的本质|笔记】泰勒级数
  • 【微积分的本质|笔记】面积和斜率的联系
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • Facebook AccountKit 接入的坑点
  • JavaScript新鲜事·第5期
  • Js基础——数据类型之Null和Undefined
  • oschina
  • sublime配置文件
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 基于 Babel 的 npm 包最小化设置
  • 力扣(LeetCode)21
  • 前端_面试
  • 区块链技术特点之去中心化特性
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 突破自己的技术思维
  • 原生Ajax
  • 怎样选择前端框架
  • 走向全栈之MongoDB的使用
  • ​​​​​​​​​​​​​​Γ函数
  • ​HTTP与HTTPS:网络通信的安全卫士
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (3)llvm ir转换过程
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (力扣)循环队列的实现与详解(C语言)
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (七)Java对象在Hibernate持久化层的状态
  • (已解决)什么是vue导航守卫
  • (转)C#调用WebService 基础
  • (转)IOS中获取各种文件的目录路径的方法
  • .NET Core 版本不支持的问题
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • @staticmethod和@classmethod的作用与区别
  • [202209]mysql8.0 双主集群搭建 亲测可用
  • [AAuto]给百宝箱增加娱乐功能
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [CDOJ 838]母仪天下 【线段树手速练习 15分钟内敲完算合格】
  • [CTF]2022美团CTF WEB WP
  • [error] 17755#0: *58522 readv() failed (104: Connection reset by peer) while reading upstream
  • [IE编程] WebBrowser控件的多页面浏览(Tabbed Browsing)开发接口