9.Linear Maps
线性映射
线性映射是将向量作为输入并产生一些新向量作为输出的转换。
从坐标定义开始(数组),再到2,3,并展示它们是如何关联的
线性映射的坐标表示最终是矩阵,
1.坐标定义(数组)

列向量是向量的坐标表示。
行向量是协向量的坐标表示。
矩阵是线性映射的坐标表示。
矩阵是如何转变向量的?
例子
现有一个作用于2x1列向量的2x2矩阵,输出的向量是?
但仅通过查看矩阵中的数字来理解矩阵在做什么会让人感到困惑。
但对所有这些数字的含义,有一个简单的解释:
注意,若使用列向量 作为输入,将得到矩阵的第一列作为输出。
若使用列向量 作为输入, 将得到矩阵的第二列作为输出。
现这些列向量 、
, 它们有点像基向量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系数帮助我们使用“e”基底向量构建线性映射的输出向量。
所以,可以将输出向量重写为基的线性组合,并且可在此切换内容为以按基向量e1、e2来重新分组,

现在,由于将W写成基向量的线性组合,
因此,这些系数 实际上 只是W的分量:w1、w2 ,
所以现在我们已经推到出 如何使用这些公式将V系数转换为W系数,

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

现总结一下,如果我们有一个线性映射L,它可以像这样将向量V转换为另一个向量W,其中W可以写成基底的线性组合,并且我门知道如何使用L系数转换基底(或者说我们知道L如何转换基向量副本可能更好)
这意味着我们可以在这里使用这些公式将V分量变为W分量。
如果对任意数量的维度重复这个论点,如果我们有一个n维的线性映射L,
我们将从这里的公式中得到所有的L系数,然后可以使用这个公式将V分量转换为W分量,




相关文章:
9.Linear Maps
线性映射 线性映射是将向量作为输入并产生一些新向量作为输出的转换。 从坐标定义开始(数组),再到2,3,并展示它们是如何关联的 线性映射的坐标表示最终是矩阵, 1.坐标定义(数组) 列向量是向量的坐标表示…...
大数据Doris(十):添加BE步骤
文章目录 添加BE步骤 一、使用mysql连接 二、添加be...
Vue2 +Element UI 表格行合并
如果相邻数据是一致的,则单元格的行合并,指定需要合并的列,下面我是指定合并了分类和类型这两列。 先看效果 Element UI为我们的<el-table>提供了一个属性span-method:合并行或列的计算方法 下面是一个示例: html部分 - 主要是在表上指…...
SuperEdge易学易用系列-一键搭建SuperEdge集群
条件说明: 系统 公网IP 内网IP 服务器所在地 K8S版本 Centos7.9 114.116.101.254 192.168.0.245 北京 v1.22.6 Centos7.9 119.8.1.96 192.168.0.83 香港 v1.22.6 Ubuntu22 94.74.108.152 192.168.0.154 纽约 v1.22.6 1. 开始部署 1.1 两条指令从零搭建一个边缘集…...
农场养殖农产品商城小程序搭建
鸡鸭羊牛鱼养殖用户不少,其规模也有大有小,尤其对一些生态养殖企业,其产品需求度更高,同时他们也有实际的销售需求。 由于具备较为稳定的货源,因此大规模多规格销售属性很足。 通过【雨科】平台搭建农场养殖商城&…...
大语言模型之十七-QA-LoRA
由于基座模型通常需要海量的数据和算力内存,这一巨大的成本往往只有巨头公司会投入,所以一些优秀的大语言模型要么是大公司开源的,要么是背后有大公司身影公司开源的,如何从优秀的开源基座模型针对特定场景fine-tune模型具有广大的…...
UML组件图综合指南:设计清晰、可维护的软件系统
介绍: UML(Unified Modeling Language)组件图是软件系统设计中的重要工具,用于描绘系统的物理结构和组件之间的关系。在软件工程中,通过创建清晰的组件图,团队能够更好地理解系统的模块化结构和组织关系&a…...
深入浅出ThreadPoolExecutor(一)
文章目录 线程池简诉ThreadPoolExecutor详解ThreadPoolExecutor参数详解创建线程池的工具类Executors 线程池简诉 针对各种池子,比如 连接池:用于管理和重复使用数据库连接,避免频繁创建和销毁数据库连接带来的性能开销。对象池:用于管理和重复使用对象…...
网站的常见攻击与防护方法
在互联网时代,几乎每个网站都存在着潜在的安全威胁。这些威胁可能来自人为失误,也可能源自网络犯罪团伙所发起的复杂攻击。无论攻击的本质如何,网络攻击者的主要动机通常是谋求经济利益。这意味着无论您经营的是电子商务项目还是小型商业网站…...
网络工程师知识点3
41、各个路由协议,在华为设备中的优先级? 直连路由 0 OSPF 10 静态 60 42、OSPF:开放式最短路径优先路由协议,使用SPF算法发现和计算路由 OSPF的优点: 1、收敛速度快,无路由自环,适用于大型网络…...
mongoDB 性能优化
文章目录 前言mongoDB 性能优化1. explain方法来查看查询的执行计划2. 查看mongoDB 集合的索引3. mongoDB 怎么添加索引4. 升序索引与降序索引是什么意思 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易…...
10月13日,每日信息差
今天是2023年10月13日,以下是为您准备的13条信息差 第一、欧盟投资4.5亿欧元在法国建设电池超级工厂。欧洲投资银行是欧盟的贷款机构,也是世界上最大的跨国银行之一 第二、北京银行推出数字人民币智能合约平台 数字人民币预付资金管理产品在商超场景…...
Spring Boot 中的 Redis 数据操作配置和使用
Spring Boot 中的 Redis 数据操作配置和使用 Redis(Remote Dictionary Server)是一种高性能的开源内存数据库,用于缓存、消息队列、会话管理和数据存储。在Spring Boot应用程序中,Redis被广泛用于各种用例,包括缓存、…...
rust宏
宏看起来和函数很像,只不过名称末尾有一个感叹号 ! 。 宏并不产生函数调用,而是展开成源码,并和程序的其余部分一起被编译。 Rust宏和C不同,Rust的宏会展开为抽象语法树(AST,abstract syntax treeÿ…...
性能测试之性能测试指标详解
前言 刚开始,以为做性能测试,就是做些脚本、参数化、关联,压起来之后,再扔出一个结果。 但实际上不止这些内容,还要加上性能分析,关注调优之后响应时间有多大的提升,TPS 有多大的提高…...
CustomNavBar 自定义导航栏视图
1. 创建偏好设置键 CustomNavBarTitlePreferenceKey.swift import Foundation import SwiftUI//State private var showBackButton: Bool true //State private var title: String "Title" //"" //State private var subtitle: String? "SubTitl…...
canal rocketmq
上篇文章canal 消费进度说到直接使用ClusterCanalConnector并发消费是有问题的,可以先用单点将canal事件发送到mq中,再由mq并发处理,另外mq还可以做到削峰的作用,让canal数据不至于阻塞。 使用队列,可以自己起一个单实…...
【数据库系统概论】第九章关系查询处理何查询优化
9.1查询处理 一:查询处理步骤 关系数据库管理系统查询处理可以分为4个阶段: 查询分析查询检查查询优化查询执行 (1)查询分析 任务:对查询语句进行扫描,分析词法、语法是否符合SQL语法规则 如果没有语…...
bp盐丘模型波场数值模拟matlab
波场数值模拟是地震勘探和地震学研究中常用的工具,而BP(Backpropagation)盐丘模型是一种用于地下介质成像的方法。如果您想在MATLAB中进行波场数值模拟,并结合BP盐丘模型进行地下成像,可以按照以下步骤进行:…...
结构体对齐规则
1.第一个成员在结构体变量偏移量为0的地址处。 2.其他成员变量对齐到某个数字(对齐数)的整数倍的地址处。(对齐数编译器默认的一个对齐数与该成员大小的较小值)注意:目前有且只有VS编译器有默认为8. 3.结构体总大小为最大对齐数的整数倍。 4.如果嵌套…...
2026年主流抓娃娃App大对比,哪个才是你的“抓宝神器”?
在当今快节奏的生活中,年轻人面临着来自学业、工作、社交等多方面的压力。为了缓解这些压力,寻找适合的解压方式成为了大家的共同需求。抓娃娃App作为一种新兴的娱乐方式,正逐渐受到年轻人的喜爱。下面我们就从潮流趋势、科技前沿、行业洞察等…...
构建本地化个人助理系统:事件驱动架构与模块化设计实践
1. 项目概述:一个高度可定制的个人助理系统最近在GitHub上看到一个挺有意思的项目,叫“Personal-Assistant”,作者是idk-man69。光看名字,你可能会觉得这又是一个类似Siri或Google Assistant的语音助手,但点进去仔细研…...
跨越平台限制:如何用WorkshopDL免费获取Steam创意工坊模组
跨越平台限制:如何用WorkshopDL免费获取Steam创意工坊模组 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为Epic Games或GOG平台无法访问Steam创意工坊而烦恼吗…...
如何轻松管理Switch游戏:NS-USBLoader完整指南,三步搞定游戏安装与系统引导
如何轻松管理Switch游戏:NS-USBLoader完整指南,三步搞定游戏安装与系统引导 【免费下载链接】ns-usbloader Awoo Installer and GoldLeaf uploader of the NSPs (and other files), RCM payload injector, application for split/merge files. 项目地址…...
从分布式到可分发:大规模软件制品分发架构设计与实践
1. 项目概述:从“分布式”到“可分发”的思维跃迁最近在梳理团队内部的基础设施时,又翻出了distr-sh/distr这个项目。说实话,第一次看到这个仓库名,我下意识地把它归类为又一个“分布式系统”框架。但当我真正点进去,花…...
从零构建本地化AI代码助手:架构、微调与工程实践
1. 项目概述:从零构建你自己的Claude代码助手最近在开发者社区里,一个名为“build-your-claude-code-from-scratch”的项目引起了我的注意。这个标题本身就充满了吸引力——它暗示着一种可能性:我们是否能够不依赖任何现成的、闭源的商业API&…...
Onekey:重构Steam Depot清单下载流程的现代化解决方案
Onekey:重构Steam Depot清单下载流程的现代化解决方案 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey Onekey作为一款专为Steam Depot清单设计的自动化下载工具,通过其创…...
PowerInfer:基于热点神经元预测的LLM高性能推理引擎部署指南
1. 项目概述:当推理速度成为AI落地的瓶颈最近在折腾本地大模型推理的朋友,估计都绕不开一个核心痛点:速度。模型效果再好,生成一句话要等上十几秒,那种“卡顿感”足以劝退绝大多数想把它集成到实际应用里的开发者。我自…...
基于语义搜索的AI代码理解工具copaw-code深度解析
1. 项目概述:一个面向代码搜索与理解的AI工具 最近在GitHub上看到一个挺有意思的项目,叫 QSEEKING/copaw-code 。乍一看这个标题,可能会有点摸不着头脑,“copaw”是什么?但结合“code”和项目托管在QSEEKING这个组织…...
认识Python数据包套接字
如你所知,数据包格式套接字(Datagram Sockets)也叫“无连接的套接字”,在代码中使用 SOCK_DGRAM 表示。可以将 SOCK_DGRAM 比喻成高速移动的摩托车快递,它有以下特征:强调快速传输而非传输顺序;…...
