9.Linear Maps

news2024/11/26 14:49:05

线性映射

线性映射是将向量作为输入并产生一些新向量作为输出的转换。

从坐标定义开始(数组),再到2,3,并展示它们是如何关联的

线性映射的坐标表示最终是矩阵,

1.坐标定义(数组)

列向量是向量的坐标表示。

行向量是协向量的坐标表示。

矩阵是线性映射的坐标表示。

矩阵是如何转变向量的?

例子

现有一个作用于2x1列向量的2x2矩阵,输出的向量是?

但仅通过查看矩阵中的数字来理解矩阵在做什么会让人感到困惑。


但对所有这些数字的含义,有一个简单的解释:
注意,若使用列向量 [1 , 0 ]^{T}作为输入,将得到矩阵的第一列作为输出。
           若使用列向量 [ 0 , 1]^{T}作为输入, 将得到矩阵的第二列作为输出。

现这些列向量 [1 , 0 ]^{T} 、 [ 0 , 1]^{T}   , 它们有点基向量e1、e2的副本
之所以说是副本,是因为这里非常重要的一点:线性映射转换向量,但是线性映射不转换基向量!
因此,当使用线性映射转换向量时,基底是不会变的。  我们不会移动基底,

 虽然输出向量可能与输入向量不同,但我们仍将使用相同的基底来测量输出向量,但话虽如此,对于矩阵,第 i 列会告诉你将第 i 个基向量的副本映射到哪里。

因此,从视觉上观察一下,
现有两基底:e1、e2,还有两向量v,w。v和w有点像e1、e2的副本,

有个矩阵如下:                
        ​​​​​​​        ​​​​​​​        

那么该矩阵会将向量v(v像e1的副本)发送到哪?

只看矩阵的第一列,

它表示向量5e1+3e2 , 这就是线性映射的输出,


V在视觉上:

矩阵对向量w(e2的副本)做了什么?

看矩阵的第二列,给我们输出 -e1+4e2

视觉上:

注意到,基向量没有移动,因为线性映射不会改变基底,我们仍用相同的基底测量输出向量,

所以,综上,矩阵是线性映射的坐标解释。

2.几何定义(线性映射视为图片)

线性映射 是 空间转换,并且保持线平行, 保持线间隔均匀,保持原点静止。

为从视觉上了解它的外观,从2D空间开始,上面有一堆网格线:

(初始的输入空间?)

这里有三个线性映射的例子:

所以,上面这个线性映射基本上只是水平方向的拉伸。

这个线性映射像一个旋转,

这个线性映射像做一个倾斜变换(可把它想象成在这个方向上做一个旋转,然后沿着这个轴伸展)。

正如上面这些图所示,在所有这些情况下, 输出空间中的网格线仍然彼此平行, 都是均匀分布的(即使间距与输入空间不同),并且原点没有移动。

所有的上面这些都是线性映射可以做到的。

(注意,在该定义下,translation are not linear maps------平移不是线性映射。即使平移能使得网格线平行,间距均匀,但平移会移动原点,所以平移不是线性映射)

所以,这就是可视化的几何定义。

 

3.抽象定义(纯代数)

线性映射 是将 向量 映射 到 向量 的函数

在该情况下,现有一映射L将 向量从向量空间V 映射到 向量空间W,我们很多例子涉及到的映射是从空间V映射到 空间V, 但一般来说,输入和输出空间可以不同。

且线性映射在这里遵循两个属性:

1、可添加线性映射的输入或输出并得到相同的答案。

2.可缩放输入或缩放输出并得到相同的答案。

这两个属性被称为“线性”、 。 所以协向量和线性映射都是线性函数。唯一的区别是:协向量输出一个标量,线性映射输出向量。

下面展示 这个抽象定义 如何 与我们看到的其他定义相关联。

如前所说,有这个属性:

现展示它的几何意义,在网格上绘制输入变量,这里我们有绿色的向量v和紫色的向量w,

v+w 用黑色表示。

现展示这图中的三个线性映射是如何服从这个代数性质的。

在这些所有的输出空间中可以看到,加法定律仍然有效,

对缩放规则(第二个属性)也做同样的事情。

因此,先缩放再转换 与 先转换再缩放 是一回事。

还有一个问题,坐标定义的来源

对于下图这个矩阵乘法公式,若你不知道它背后的原因,它看起来真的很奇怪。

事实证明,矩阵乘法规则实际上来自上面这个抽象定义,

证明:

首先我们有一个线性映射L,它作用于向量V,并产生输出向量W,

若将向量V拓展成它的分量,就能得到

通过L的线性规则,得到:

e1、e2是向量,所以你可能会问如何根据   基底e1、e2来表达这些向量,
现做个 简单的假设:
假设线性映射L是从V到V的函数,因此输入空间和输出空间是相同的。
因此,输出空间V仍然具有基底e1、e2,

这意味着我们仍然可以将 这些输出向量 写为相同的旧基 e1、e2的线性组合,

而这些线性组合的系数L_{1}^{1},L_{1}^{2},L_{2}^{1},L_{2}^{2},

这些L系数帮助我们使用“e”基底向量构建线性映射的输出向量。
 

所以,可以将输出向量重写为基的线性组合,并且可在此切换内容为以按基向量e1、e2来重新分组,

现在,由于将W写成基向量的线性组合,

因此,这些系数 实际上 只是W的分量:w1、w2 , 

所以现在我们已经推到出 如何使用这些公式将V系数转换为W系数,

而这些公式 就是那些当你做标准的2x2矩阵乘以一个2x1的列向量。

现总结一下,如果我们有一个线性映射L,它可以像这样将向量V转换为另一个向量W,其中W可以写成基底的线性组合,并且我门知道如何使用L系数转换基底(或者说我们知道L如何转换基向量副本可能更好)

这意味着我们可以在这里使用这些公式将V分量变为W分量。

如果对任意数量的维度重复这个论点,如果我们有一个n维的线性映射L,
我们将从这里的公式中得到所有的L系数,然后可以使用这个公式将V分量转换为W分量,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1092796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

iOS- flutter flavor 多环境Configurations配置

一、点击PROJECT的Runner,选择Info选项,在Configurations下方的号添加不同环境的配置,如下图: 二、选择TAGETS的Runner项目,选择Build Settings选项,在输入框输入package,为不同环境配置相应的…

结构体对齐规则

1.第一个成员在结构体变量偏移量为0的地址处。 2.其他成员变量对齐到某个数字(对齐数)的整数倍的地址处。(对齐数编译器默认的一个对齐数与该成员大小的较小值)注意:目前有且只有VS编译器有默认为8. 3.结构体总大小为最大对齐数的整数倍。 4.如果嵌套…

快速修复“找不到xinput1_3.dll无法继续执行此代码的”问题的5个方法

在计算机系统中,DLL(动态链接库)是一个重要的组件,它负责在程序和操作系统之间进行有效的通信。然而,有时候我们可能会遇到“xinput1_3.dll”文件出现问题的情况,这可能会导致系统不稳定甚至无法正常运行。…

回归预测 | MATLAB实现IBES-ELM基于改进的秃鹰搜索优化算法优化极限学习机的数据回归预测(多指标,多图)

回归预测 | MATLAB实现IBES-ELM 基于改进的秃鹰搜索优化算法优化极限学习机的数据回归预测(多指标,多图) 目录 回归预测 | MATLAB实现IBES-ELM 基于改进的秃鹰搜索优化算法优化极限学习机的数据回归预测(多指标,多图&a…

DL Homework 3

给定训练集,将每个样本输入给前馈神经网络,得到网络输出为,其在数据集上的结构化风险为 首先简单解释一下这堆话,结构化风险经验风险正则化项,经验风险为,对于函数我们大多数采取的为交叉熵函数,,正则化项为,首先神经网…

【软考-中级】系统集成项目管理工程师-配置管理历年案例

持续更新。。。。。。。。。。。。。。。 目录 2023 上 试题三(20分) 2023 上 试题三(20分) 某公司有自己的质量管理体系,其中配置管理程序已运行多年,由项目经理牵头组建变更控制委员会(CCB),在创建配置管理环境后,并经过变更申请…

微信小程序入门级

目录 一.什么是小程序? 二.小程序可以干什么? 三.入门使用 3.1. 注册 3.2. 安装 3.3.创建项目 3.4.项目结构 3.5.应用 好啦今天就到这里了,希望能帮到你哦!!! 一.什么是小程序? 微信小程…

【全网最细】谷歌小恐龙无敌代码它来了!

谷歌小恐龙是什么? 每次断网的时候,大家是不是都会玩一会,小恐龙快跑的游戏,或者在信息课上玩一玩,对不对? 还没玩过的小伙伴也不用担心,打开谷歌,输入这段网址:chrome…

【计算机组成体系结构】电路基本原理与加法器设计

一、算术逻辑单元—ALU 1.基本的逻辑运算(1bit的运算) 基本逻辑运算分为,与、或、非。大家应该很熟悉了,与:全1为1,否则为0。或:全0为0,否则为1。非:取反。三个基本的逻…

一种更具破坏力的DDoS放大攻击新模式

近日,内容分发网络(CDN)运营商Akamai表示,一种使网站快速瘫痪的DDoS放大攻击新方法正在被不法分子所利用。这种方法是通过控制数量巨大的中间设备(middlebox,主要是指配置不当的服务器)&#xf…

thinkphp6 入门(8)-- Session

开启Session Session功能默认是没有开启的(API应用通常不需要使用Session) think\middleware\SessionInit// 添加引用 use think\facade\Session; 赋值 Session::set(name, thinkphp);取值 // 如果值不存在,返回null Session::get(name)…

【Java学习之道】JavaFx 框架与组件介绍

引言 如果你曾经尝试过使用Java编写一个漂亮的窗口应用程序,那么你一定知道JavaFX这个强大的工具。JavaFX是Java 8中引入的一个GUI开发框架,它提供了丰富的组件和功能,使得我们可以轻松地创建出功能强大、界面美观的桌面应用程序。无论你是想…

linux命令执行的结果如何快速传递给下一个管道?xargs完虐

xargs xargs是给命令传递参数的过滤器,他的作用就是将上一步的输出传递到下一命令的输入上。类似于shell脚本中$? 。这样使用的好处是什么呢?你想想每次想关闭一个进程,你是否需要先查找,然后拿着结果再去执行第二条命令&#x…

【09】基础知识:React组件的生命周期

组件从创建到死亡它会经历一些特定的阶段。 React 组件中包含一系列勾子函数&#xff08;生命周期回调函数 <> 生命周期钩子函数 <> 生命周期函数 <> 生命周期钩子&#xff09;&#xff0c;会在特定的时刻调用。 我们在定义组件时&#xff0c;会在特定的生…

leetcode做题笔记173. 二叉搜索树迭代器

实现一个二叉搜索树迭代器类BSTIterator &#xff0c;表示一个按中序遍历二叉搜索树&#xff08;BST&#xff09;的迭代器&#xff1a; BSTIterator(TreeNode root) 初始化 BSTIterator 类的一个对象。BST 的根节点 root 会作为构造函数的一部分给出。指针应初始化为一个不存在…

排序优化:如何实现一个通用的、高性能的排序函数?

文章来源于极客时间前google工程师−王争专栏。 几乎所有的编程语言都会提供排序函数&#xff0c;比如java中的Collections.sort()。在平时的开发中&#xff0c;我们都是直接使用&#xff0c;这些排序函数是如何实现的&#xff1f;底层都利用了哪种排序算法呢&#xff1f; 问题…

微信小程序入门---超详细教程

一&#xff0c;小程序入门 1.1 什么是小程序&#xff1f; 2017年度百度百科十大热词之一 微信小程序&#xff08;wei xin xiao cheng xu&#xff09;&#xff0c;简称小程序&#xff0c;英文名Mini Program&#xff0c;是一种不需要下载安装即可使用的应用( 张小龙对其的定义…

好的摄影师都会iPhone 8和iOS 11的这三项功能

众所周知&#xff0c;苹果的手机像素一直处于智能手机摄影的前沿&#xff0c;在即将到来的九月&#xff0c;苹果公司准备证明他拥有最好的相机技术。 虽然我们还不知道iPhone 8摄像头的具体细节&#xff0c;如几百万像素、光学变焦是多少&#xff0c;但我们确实知道苹果正在给i…

2023年全球团队协作工具排名推荐,这6款值得关注!

随着远程工作变得越来越普遍&#xff0c;团队协作工具在今天的工作场所变得越来越重要。然而&#xff0c;找到合适的协作工具来满足团队的需求可能是一个挑战。有这么多可用的选项&#xff0c;很难决定哪一个对您的团队最有效。 在本文中&#xff0c;我们将研究团队协作工具的不…

小程序的入门

目录 小程序的简介 好处 安装及使用 小程序的入门案列 小程序的简介 微信小程序是一种轻量级的应用程序&#xff0c;可以在微信平台上运行。它们具有快速、便捷和低成本等特点。通过微信小程序&#xff0c;用户可以在微信内直接使用各种功能&#xff0c;而无需下载和安装额外…