I. 映射(Mapping)

1. 单射(Injective)

函数f 是单射当且仅当若f(x) = f(y) 则 x = y。

例子: f(x) = x+5 从实数集\(R\)到\(R\)是个单射函数。

这个函数很容易被还原:f(3) = 8,即 已知 8 可以返回 3

2. 满射(Surjective)

函数 f(从集 A 到集 B)是满射当且仅当在 B 中的每个 y 存在至少一个在 A 中的 x 满足 f(x) = y, 就是说, f 是满射当且仅当 f(A) = B。

值域里的每个元素都至少有一个定义域元素与之对应。

例子:函数 f(x) = 2x 从自然数集\(N\)到非负偶数是个满射函数。

但 f(x) = 2x 从自然数集\(N\)到\(N\)不是满射,因为没有一个自然数\(N\)可以被这个函数映射到 3。

3. 双射(Bijective)

函数 f(从 A 集到 B 集)是双射,若每个 B 中的 y 都有唯一的一个(而没有另外一个) A 集中的 x 满足 f(x) = y

或者说:当单射和满射都成立时,f 是双射。

例子: 函数 \(f(x) = x^2\) 从正实数到正实数是单射,也是满射,所以它是双射。

但从实数集\(R\)就不是,因为f(2)=4,并且f(-2)=4

II. 同态&同构

对于向量空间\(V,W\),若有映射\(\Phi :V→W\)满足如下条件,则我们称\(\Phi\)为线性映射(linear mapping)(或者向量空间同态(vector space Homomorphism)linear transform):
\[\forall{x,y}∈V, \lambda,\psi∈R:\Phi(\lambda x+\psi y)=\lambda \Phi(x) + \psi \Phi(y)\]

基于上面已经介绍了的映射的概念,我们现在可以更好地直观理解同态和同构的定义,它们分别如下:

  • \(\Phi:V→W \,\,\, linear\): 同态 (Homomorphism)

    • \(\Phi:V→W \,\,\, linear \,\, and \,\, injective\): 单一同态 (Monomorphism)
    • \(\Phi:V→W \,\,\, linear \,\, and \,\, surjective\): 满同态 (Surjective Homomorphism)
    • \(\Phi:V→W \,\,\, linear \,\, and \,\, bijective\): 同构 (Isomorphism)
  • \(\Phi:V→V \,\,\, linear\): 自同态 (Endomorphism)
    • \(\Phi:V→V \,\,\, linear \,\, and \,\, injective\): 单一自同态 (Monomorphic Endomorphism)
    • \(\Phi:V→V \,\,\, linear \,\, and \,\, surjective\): 满自同态 (Surjective Endomorphism)
    • \(\Phi:V→V \,\,\, linear \,\, and \,\, bijective\): 自同构 (Automorphism)

定理:两个维度是有限的向量空间\(V,W\),当且仅当二者的维度相同,即\(dim(V)=dim(W)\),\(V,W\)二者同构。

假设现在有三个向量空间分别为\(V,W,X\),那么它们有如下性质:

  • 如果有线性映射\(\Phi:V→W\)和\(\Psi:W→X\),那么映射\(\Phi◦\Psi:V→X\)也是线性映射;
  • 如果\(\Phi:V→W\)是同构(isomorphsim),那么\(\Phi^{-1}:V→W\)也是同构;
  • 如果\(\Phi:V→W,\Psi:V→W\)都是线性映射,那么\(\Psi+\Phi\)和\(\lambda\Phi,\lambda∈R\)也都是线性的。

1. 线性映射的矩阵表示

坐标(Coordinates) 的定义:

假设向量空间\(V\)的顺序基(ordered bases)为\(B=(b_1,...,b_n)\),那么\(V\)中任意一个向量\(x\)可由顺序基线性组合表示,即
\(x=α_1b_1+...+α_nb_n\)\(。此时矢量\)\(\alpha=[α_1,...,α_n]^{T}∈R^n\)则是\(x\)在向量空间\(V\)上以\(B\)为基的坐标。

变换矩阵(Transform Matrix) 的定义:

假设向量空间\(V∈R^n,W∈R^m\)的顺序基分别为\(B=(b_1,...,b_n),C=(c_1,...,c_m)\)。对于映射\(\Psi:V→W\),有
\[\Phi(b_j)=α_{1j}c_1+...+α_{mj}c_m=\sum_{i=1}^mα_{ij}c_i\]
则我们称\(A_{\Phi}(i,j)=α_{ij}\)为映射\(\Phi\)的变换矩阵。

所以向量空间\(V\)中的坐标矢量\(x\)与\(W\)中的坐标矢量\(y\)有如下变换关系:\(y=A_{\Phi}x\)

2. 基变换(Basis Change)

定义:

假设向量空间\(V\)的顺序基有两个,分别是\(B=(b_1,...,b_n),\tilde{B}=(\tilde{b_1},...,\tilde{b_n})\),向量空间\(W\)也有两个顺序基,分别为\(C=(c_1,...,c_n),\tilde{C}=(\tilde{c_1},...,\tilde{c_n})\)。\(A_{\Phi}\)是映射\(\Phi:V→W\)关于顺序基\(B,C\)的变换矩阵,\(\tilde{A_{\Phi}}\)是映射\(\Phi:V→W\)关于顺序基\(\tilde{B},\tilde{C}\)的变换矩阵,两个变换矩阵的关系如下:
\[\tilde{A_{\Phi}}$=T^{-1}A_{\Phi}S\]
其中\(S∈R^{n×n}\)表示向量空间\(V\)从基\(\tilde{B}\)到基\(B\)的恒等映射\(id_V\)的变换矩阵,\(T∈R^{m×m}\)表示向量空间\(W\)基于基\(\tilde{C}\)到基\(C\)的恒等映射\(id_W\)的变换矩阵,

3. 核(kernel)与象(Image)

先看定义:

  • 核(Kernel/null space):

    假设有映射\(\Phi:V→W\),核(kernel)为:
    \[ker(\Phi)=\Phi^{-1}(0_w)=\{v∈V:\Phi(v)=0_w\}\]

什么意思呢?就是说经过映射后,\(V\)中的一些值被映射到\(W\)的零点(如下图示),而\(V\)这些值组成的集合(即左边橘黄色部分)就称为kernel

  • 象(Image/Range)

\[Im(\Phi)=\Phi(V)=\{w∈W|\exists v∈V:\Phi(v)=w\}\]

怎么理解象呢?就是说整个向量空间\(V\)在经过映射后在向量空间\(W\)上得到的集合,也就是右边黄色部分。

为方便理解,可以把kenel粗略地理解成定义域,Image理解成值域。

另外需要注意的有如下推论:

  • 始终有\(\Phi(0_V)=0_W\),即\(0_V∈ker(\Phi)\)
  • \(Im(\Phi),Ker(\Phi)\)分别是\(W,V\)的子空间
  • 当且仅当\(Ker(\Phi)=\{0\}\)时,\(\Phi\)是单射。

Rank-Nullity Theorem(秩-零定理):对于映射\(\Phi:V→W\)始终满足如下等式:
\[dim(Ker(\Phi))+dim(Im(\Phi))=dim(V)\]

如果用matrix来说的话,假设A是一个n*n的matrix,则:\(rank(A)+nullity(A)=n\)
再通俗点说就是对A进行初等变换后得到的echelon form(行阶梯形式),不为0的行数加上全部为0的行数等于这个矩阵的行数。当然因为一般的matrix的row rank和column rank相等,所以变成column echelon form之后用列来计数也是一样的。

III. 仿射空间(Affine Spaces)

前面提到的映射都是经过零点的,下面介绍的仿射空间是偏离原点的空间。

1. 仿射子空间(Affine Subspaces)

定义:

假设\(V\)为向量空间,\(x_0∈V\), \(U\subseteq{V}\)为子空间,则子集
\[
\begin{align}
L&=x_0+U=\{x_0+u: u∈U\} \notag \\
&=\{v∈V|\exists{u∈U}:v=x_0+u\}\subseteq{V} \notag
\end{align}
\]
称为向量空间\(V\)的 仿射子空间(affine subspace)linear manifold。\(U\)称为Direction (Space),\(x_0\)称为support point

2. 仿射映射(Affine Mappings)

参考资料

MARSGGBO♥原创







2018-12-16

【Math for ML】线性代数-单射,满射,双射,同构,同态,仿射的更多相关文章

  1. 【Math for ML】矩阵分解(Matrix Decompositions) (下)

    [Math for ML]矩阵分解(Matrix Decompositions) (上) I. 奇异值分解(Singular Value Decomposition) 1. 定义 Singular V ...

  2. 【Math for ML】线性代数之——向量空间

    I. Groups 在介绍向量空间之前有必要介绍一下什么Group,其定义如下: 注意定义中的\(\bigotimes\)不是乘法,而是一种运算符号的统一标识,可以是乘法也可以是加法等. 此外,如果\ ...

  3. 【Math for ML】向量微积分(Vector Calculus)

    I. 向量梯度 假设有一个映射函数为\(f:R^n→R^m\)和一个向量\(x=[x_1,...,x_n]^T∈R^n\),那么对应的函数值的向量为\(f(x)=[f_1(x),...,f_m(x)] ...

  4. 【Math for ML】矩阵分解(Matrix Decompositions) (上)

    I. 行列式(Determinants)和迹(Trace) 1. 行列式(Determinants) 为避免和绝对值符号混淆,本文一般使用\(det(A)\)来表示矩阵\(A\)的行列式.另外这里的\ ...

  5. 【Math for ML】解析几何(Analytic Geometry)

    I. 范数(Norm) 定义: 向量空间\(V\)上的范数(norm)是如下函数: \[ \begin{align} \|·\|:V→R, \notag \\ x→\|x\| \notag \end{ ...

  6. 离散数学 II(最全面的知识点汇总)

    离散数学 II(知识点汇总) 目录 离散数学 II(知识点汇总) 代数系统 代数系统定义 例子 二元运算定义 运算及其性质 二元运算的性质 封闭性 可交换性 可结合性 可分配性 吸收律 等幂性 消去律 ...

  7. AI:模式识别的数学表示(集合—函数观点)

    前言: 模式识别的定义,参考:模式识别两种方法:知识和数据 .百科定义:模式识别(英语:Pattern Recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读.我们把环境与客 ...

  8. 【NLP CS224N笔记】Lecture 3 GloVe: Global Vectors for Word Representation

    I. 复习word2vec的核心思路 1. Skip-gram 模型示意图: 2.word vectors的随机梯度 假设语料库中有这样一行句子: I love deep learning and N ...

  9. How do I learn machine learning?

    https://www.quora.com/How-do-I-learn-machine-learning-1?redirected_qid=6578644   How Can I Learn X? ...

随机推荐

  1. 从CAP理论中分析Eureka与zookeeper的区别

    著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性).A(可用性)和P(分区容错性).由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡.在此Zookeeper保证 ...

  2. 快速入门Treap(代码实现)

    学习数据结构对我来说真的相当困难,网上讲\(Treap\)的我也看不太懂,前前后后花了大概六天才把\(Treap\)学会.为了避免再次忘记,这里我整理一下\(Treap\)的基础知识和模板. 阅读此文 ...

  3. ResourceBundle读取properties配置文件

    package cn.rocker.readProperties; import java.util.ResourceBundle; import org.junit.Test; /** * @Cla ...

  4. zookeeper的搭建和简单的使用

    一.什么是zookeeper,有什么用 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据 ...

  5. java io系列26之 RandomAccessFile

    本文主要介绍 RandomAccessFile. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_26.html 更多内容请参考:java io系列0 ...

  6. linux安装Subversion版本控制工具(Subversion + Apache + jsvnadmin)

    操作系统:Centos 6.7 集成环境服务器:10.0.210.112 操作用户:root 建议安装前更新操作系统 # yum update 更新完成后重启 # reboot 1: 安装 Apach ...

  7. JDK记录-JVM原理与调优(转载)

    转载自<https://www.cnblogs.com/andy-zhou/p/5327288.html> 一.什么是JVM JVM是Java Virtual Machine(Java虚拟 ...

  8. spring-data-redis分布式

    本文转载http://hbxflihua.iteye.com/blog/2383495 1.引入spring-data-redis依赖的jar 包 <dependency> <gro ...

  9. ACM-ICPC 2018 焦作赛区网络预赛 K Transport Ship (多重背包)

    https://nanti.jisuanke.com/t/31720 题意 t组样例,n种船只,q个询问,接下来n行给你每种船只的信息:v[i]表示这个船只的载重,c[i]表示这种船只有2^(c[i] ...

  10. POJ - 2057 The Lost House(树形DP+贪心)

    https://vjudge.net/problem/POJ-2057 题意 有一只蜗牛爬上某个树枝末睡着之后从树上掉下来,发现后面的"房子"却丢在了树上面,.现在这只蜗牛要求寻找 ...