从函数映射的角度理解矩阵

                            从函数映射的角度理解矩阵

0.预备知识

函数 是把一个集 "A" 的元素与另一个集 "B" 的元素配对的方法:

一般、单射、满射和双射函数

一般函数从 "A" 的每个元素指向 "B" 的一个函数

不会有一个 "A" 的元素指向多于一个 "B" 的元素,所以一对多在函数是不允许的("f(x) = 7  9" 是不允许的)

但多于一个 "A" 的元素可以指向同一个 "B" 的元素(多对一是允许的)

单射的意思是 "A" 的每个元素都有 它独有的在 "B" 的相对元素

因为它还是个函数所以一对多是不允许的

也不可以有两个 "A" 的元素指向同一个 "B" 的元素,所以多对一是不允许的

扫描二维码关注公众号,回复: 9132496 查看本文章

但可以有些 "B" 的元素没有相对的 "A" 的元素。

单射函数可以被还原

如果只有一个 "A" 的元素指向一个 "B" 的元素,那么这个 "B" 的元素可以反过来指向这个 "A" 的元素。但如果像在一个 "一般函数" 中,可以有多于一个 "A" 的元素指向同一个 "B" 的元素,这个 "B" 的元素就不能反过来指向一个 "A" 的元素了。

去阅读反函数了解更多。

单射也称为 "一对一"

满射的意思是每个(所有) "B" 的元素都有至少一个相对的 "A" 的元素(可能多于一个)。

没有一个 "B" 的元素是没有相对的 "A" 的元素的。

双射的意思是单射和双射都成立。

所以两个集合的每个元素之间都有一个完美的"一对一"关系。

(但这不只是单射的 "一对一"关系)。

图示

我们来看 "一般函数" 的图和 "单射函数" 的图:

一般函数   单射函数
一般函数   "单射"(一对一)

我们可以做个 "水平线测试":

任何水平线不会与单射函数的曲线有多于一个交叉点。

(注意:严格递增(和严格递减)函数是单射,你可以去页面了解更多)

正式定义

以下是更详细的说明:

单射

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

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

这个函数很容易被还原:

  • f(3) = 8

已知 8 可以返回 3

例子: f(x) = x2 从实数集 自然 到 自然 不是个单射函数,因为:

  • f(2) = 4 并且
  • f(-2) = 4

这不满足定义:若f(x) = f(y) 则 x = y,因为 f(2) = f(-2) 但 2 ≠ -2

换句话说,有个 "A" 的元素指向一个 "B" 的元素,这个函数不能被还原(已知函数的输出是 "4" …… 输入是多少?有两个可能!)

但是,如果我们在自然数集定义这个函数自然 到 自然,函数便是单射,因为:

  • f(2) = 4
  • 现在没有 f(-2),因为 -2 不是自然数

满射(也叫 "映成")

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

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

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

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

双射

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

或者,f 是双射,若两个集之间有一对一关系,换句话说,单射和满射都成立。

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

但从实数集自然就不是,因为

  • f(2)=4,并且
  • f(-2)=4

以上部分转载至https://www.shuxuele.com/sets/injective-surjective-bijective.html

1.介绍

定义1:映射

按照某一种对应法则F,使得对于集合N中的每一个元素,在集合M中都有与之对应的元素。

                                                                        F:N->M

看定义比较抽象,其实我们已经接触到映射的,但是是以函数的形式。以函数的形式表达映射为:

                                                                       y=F(x)

或者是:

                                                                     F:x\rightarrow y,x\euro N

例如,如下图所示的函数。这个函数所表示的映射是y=x^{2}:对于实数集中的每一个元素,在实数域中都有与之对应的元素。

在线性代数中,我们经常使用函数替代映射,但是两者的意思是一致的。比如说,你输入一个x,得到一个y。我们可以说x通过映射法则映射到y.每一个x只能映射至一个y值。如下图所示,则不能表示一个映射。因为,对于x=1,我们得到了两个y值,分别是﹢1和-1.

映射中的集合N我们称之为定义域,M称之为取值空间。取值空间的子集我们称之为值域。

定义2:映射中的定义域,取值空间,值域

假设我们定义的映射y=F(x),其中x\in N,y\in MN称为映射的定义域,M称为映射的取值空间,映射的值域是取值空间的子集,其表示为:

                                                                      V_{F}=\left ( F(x)|x\in N \right )

在线性代数中,函数的输入和输出不再是单独的标量值,而是向量。假设我们在坐标系统中的基向量分别为e_{1},e_{2}\begin{pmatrix} x_{1}\\ x_{2} \end{pmatrix}是向量的坐标值。我们有函数y=F(x),把向量x映射为新的向量y=\begin{pmatrix} y_{1}\\ y_{2} \end{pmatrix}。即:

那么,上述所描述的映射把二维空间的向量X映射至e1轴上。如下图所示:

如图所示,该映射的效果是把输入向量投影到e1轴上。二维空间的任何一个向量都可以作为输入向量,因此,该映射的定义域为R^{^{2}},取值空间也是R^{^{2}}。由于输出向量仅仅是在e1轴上。因此,该映射的值域应该是e1轴。

如上图所示的绿色轴,表示的即为该映射的值域。

一个更有意思的映射,

如下图所示:

输入向量为红色标记的X,输出向量为蓝色标记的y。该映射把所有输入向量逆时针旋转了π/3。

我们已经了解到向量的映射是一种简单的函数,函数的输入一个向量,输出另外一个向量

 

2.变换矩阵

如上一小节中的映射,把输入向量逆时针旋转60度。事实上,我们可以改写为如下表达形式:

或者更为简短的表达:

因此,我们可以把映射表示成矩阵的形式。其中矩阵A我们称之为变换矩阵。

上一小节把输入向量映射到坐标轴e1的映射也可以表示为矩阵的形式:

所有向量的映射是否都可以写成y=Ax的形式,其中矩阵中的系数都是常数?答案是否定的。假设有如下映射:

其实并不能写成y=Ax的形式。虽然我们也可以写成:

但是A中的系数并不是常量。那么怎样的映射才可以写成y=Ax的形式呢?我们必须从线性映射的概念说起。

定义3:线性映射

满足如下条件的映射F,才称之为线性映射:

理论1:矩阵形式的线性映射

映射,当且仅当该映射是线性映射的时候,才能写成的矩形形式。

证明:

我们必须从两个方向求证。即每一个线性映射都可以写成y=Ax的形式;每一个映射y=Ax都是线性的。我们在二维空间中对其进行求证。类似的,在其他N维空间中,我们也可以用类似的方法求证。

假设我们在集合N和集合M中有两个基向量e1,e2,因此我们可以把输入向量和输出向量写成如下的形式:

代入到映射函数中,我们可得:

由于F是线性的,我们根据线性映射的性质可知:

由于映射是把一个输入向量映射至另外一个输出向量,那么,F(e1)也可以用基向量表示。假设输出向量F(e1)在基向量的坐标表示为:\begin{pmatrix} a_{11}\\ a_{12} \end{pmatrix},即:

同理可知:

代入到y中,我们可以求得:

对比:

我们可以得出y_{1}=a_{11}x_{1}+a_{12}x_{2},y_{2}=a_{21}x_{1}+a_{22}x_{2}:,即:

也就可以表示为:y=Ax

从另一方面,我们必须求证如果y=Ax是映射矩阵形式,那么该映射是线性的。假设我们有一个输入向量为x^{{}'}=\begin{pmatrix} x{_{1}}'\\ x{_{2}}' \end{pmatrix},另外一个输入向量x{}''=\begin{pmatrix} x{_{1}}''\\ x{_{2}}'' \end{pmatrix}。我们根据矩阵的的性质有:

满足线性映射的条件,得证。

 

发布了49 篇原创文章 · 获赞 138 · 访问量 30万+

猜你喜欢

转载自blog.csdn.net/lz0499/article/details/90321863
今日推荐