笔者是一名软件工程专硕的研一小菜鸡,若是文章中呈现纰漏,请不吝赐教。
本篇笔记仅供交流学习,如需转载请注明出处。

一、线性变换的定义

百度百科对于线性变换的定义如下:

线性映射( linear mapping)是从一个向量空间V到另一个向量空间W的映射且放弃加法运算和数量乘法运算,而线性变换(linear transformation)是线性空间V到其本身的线性映射。

这里的意思是线性映射是由向量空间\( V \rightarrow W \) 的映射,而线性变换是线性映射的一个特例,是由线性空间\( V \)到其本身的映射。

维基百科对于线性映射的定义如下:

In mathematics, and more specifically in linear algebra, a linear map (also called a linear mapping, linear transformation, vector space homomorphism, or in some contexts linear function) is a mapping)\( \displaystyle V\to W \)between two vector spaces that preserves the operations of vector addition and scalar multiplication.

大体翻译一下:在数学中,更具体地说是在线性代数中,线性映射(也被称为线性变换、向量空间同态,或者在某些状况下也被叫做线性函数)是一种\( \displaystyle V\to W \)的映射,这种映射保留了向量加法和标量乘法运算。

从维基百科的定义来看,能够不必辨别线性映射和线性变换。

二、如何判断是否为线性变换

你能够将线性变换了解为一个非凡的函数,这个能够使得\( \displaystyle V\to W \),并且满足以下条件:

$$\begin{array}{l}\mathbf{T}(\mathbf{x}+\mathbf{y})=\mathbf{T}(\mathbf{x})+\mathbf{T}(\mathbf{y}) \\\mathbf{T}(a \mathbf{x})=a \mathbf{T}(\mathbf{x})\end{array}\tag{1}$$

其中\( x,y \in V \),\( a \in R \)

辨认给定函数\( f(x) \)是否为线性变换非常简单,只须要查看\( f(x) \)中的每一项是否都是\( x \)与一个数的乘积,如果是,\( f \)则是线性变换。

举个例子:

$$\mathbf{f}(x, y, z)=(3 x-y, 3 z, 0, z-2 x)\tag{2}$$

便是一个线性变换,而

$$\mathbf{g}(x, y, z)=(3 x-y, 3 z+2,0, z-2 x) \\\mathbf{h}(x, y, z)=(3 x-y, 3 x z, 0, z-2 x) \tag{3}$$

这两个都不是线性变换。因为在函数\( g \)中,第二个重量为\( 3z+2 \),\( 2 \)是一个常数,并不蕴含输出向量\( (x,y,z) \)中的任何重量,也能够换种解释办法,依照\( (1) \)中的第二个公式,应有\( \mathbf{T}(\mathbf{0})=\mathbf{0} \),而\( g(0,0,0)=(0,2,0,0) \)与上式矛盾。在函数\( h \)中,很显著含有一个非线性重量\( 3xz \),因而也不是一个线性变换。

三、线性变换的直观解释

本篇文章最重要的局部终于来了,废话不多说,间接进入正题。

变换实质上是函数,其承受一个输出,而后输入对应的后果。之所以叫变换,是因为从几何的角度咱们能够用静止的形式来了解变换,如旋转、伸缩、投影或几者叠加等操作。上面通过一个动图来演示一下。

那如何了解线性呢?其在几何直观上必须满足以下条件:

  1. 变换前是直线,变换后仍然是直线
  2. 原点放弃固定不动

也就是说,你应该把线性变换看作是“放弃坐标网格平行并等距散布”的变换

1、一点不太直观的货色

以前上线性代数课的时候老师必定通知过你,能够将上面这个式子

$$\mathbf{f}(x, y)=(3 x-y, 2 x) \tag{4}$$

改写为:

$$f\left(\left[\begin{array}{l}x \\y \end{array}\right]\right)=\left[\begin{array}{cc}3 & -1\\2 & 0\end{array}\right]\left[\begin{array}{l}x \\y \end{array}\right]\tag{5}$$

于是,这个线性变换就能够用一个矩阵来实现了。

2、该矩阵的实质

从下面的式子能够看进去,这个矩阵能够示意一个特定的线性变换,当这个矩阵与一个向量相乘则示意将这个特定的线性变换作用于该向量。那你有没有好奇过这个矩阵在几何空间中示意的是什么呢?上面以二维空间为例来阐明。

如上图所示,\( \vec{A} \)能够看作是一个向量,能够示意为

$$\vec{A}=\left[\begin{array}{l}3 \\2\end{array}\right]$$

也能够示意为\( \vec{A}=3 \vec{i}+2 \vec{j} \),其中\( \vec{i} \),\( \vec{j} \)是该向量空间的基向量。在本示例中

$$\vec{i}=\left[\begin{array}{l}1 \\0\end{array}\right]$$

$$\vec{j}=\left[\begin{array}{l}0 \\1\end{array}\right]$$

\( \vec{A} \)能够写成:

$$\vec{A}=3\left[\begin{array}{l}1 \\0\end{array}\right]+2\left[\begin{array}{l}0 \\1\end{array}\right]=\left[\begin{array}{ll}1 & 0 \\0 & 1\end{array}\right]\left[\begin{array}{l}3 \\2\end{array}\right]\tag{6}$$

那如果咱们将下面的向量空间进行旋转并拉伸失去如下所示的向量空间(其中坐标轴\( x,y \)依然是原坐标轴,背景格也能够当作原坐标轴):

原向量空间的基向量\( \vec{i} \),\( \vec{j} \)经线性变换后为该向量空间中的\( \overrightarrow{i^{\prime}} \),\( \overrightarrow{j^{\prime}} \),能够看出这里的

$$\overrightarrow{A^{\prime}}=3\overrightarrow{i^{\prime}}+2 \overrightarrow{j^{\prime}}$$

对应到原向量空间的坐标,

$$\overrightarrow{i^{\prime}}=\left[\begin{array}{l}1 \\-2\end{array}\right]$$

$$\overrightarrow{j^{\prime}}=\left[\begin{array}{l}3 \\0\end{array}\right]$$

\( \overrightarrow{A^{\prime}} \)能够示意为:

$$\overrightarrow{A^{\prime}}=3\left[\begin{array}{l}1 \\-2\end{array}\right]+2\left[\begin{array}{l}3 \\0\end{array}\right]=\left[\begin{array}{ll}1 & 3 \\-2 & 0\end{array}\right]\left[\begin{array}{l}3 \\2\end{array}\right]\tag{7}$$

比照公式\( (7) \)和公式\( (6) \)能够看出惟一变动的就是左乘的矩阵而这两个矩阵都是各自向量空间中的基向量的坐标拼起来的,即:

$$\begin{aligned}\left[\begin{array}{ll}1 & 0 \\0 & 1\end{array}\right] &=\left[\begin{array}{ll}\vec{i} & \vec{j}\end{array}\right] \\\left[\begin{array}{ll}1 & 3 \\-2 & 0\end{array}\right] &=\left[\begin{array}{ll}\overrightarrow{i^{\prime}} & \overrightarrow{j^{\prime}}\end{array}\right]\end{aligned} \tag{8}$$

咱们再将公式\( (7) \)扭转一下,能够写成:

$$\overrightarrow{A^{\prime}}=\left[\begin{array}{ll}1 & 3 \\-2 & 0\end{array}\right]\left[\begin{array}{l}3 \\2\end{array}\right]=\left[\begin{array}{ll}1 & 3 \\-2 & 0\end{array}\right]\vec{A}\tag{9}$$

后面曾经说过了

$$\vec{A}=\left[\begin{array}{l}3 \\2\end{array}\right]$$

矩阵

$$\left[\begin{array}{ll}1 & 3 \\-2 & 0\end{array}\right]=\left[\begin{array}{ll}\overrightarrow{i^{\prime}} & \overrightarrow{j^{\prime}}\end{array}\right] $$

到这里不难看出,实际上线性变换是扭转了基向量(当然这么说不谨严),能够这么了解。矩阵的列其实就是变换后的基向量\( \overrightarrow{i^{\prime}} \), \( \overrightarrow{j^{\prime}} \),这就是该矩阵的真正含意。你能够将这里的矩阵了解为一个记号,它形容了一个线性变换,矩阵的第一列能够看作是变换后的第一个基向量的落脚点,矩阵的第二列看作是变换后的第二个基向量的落脚点。

3. 推广

到这里这篇文章曾经靠近序幕,那咱们再将这里的论断推广一下:

你能够了解为一个二维空间中的线性变换能够由四个数字确定,即一个\( 2*2 \)矩阵确定,如

$$\left[\begin{array}{ll}a & b \\c & d\end{array}\right]$$

\( (a, c) \)就看作是变换后第一个基向量的落脚点,\( (b, d) \)看作是变换后第二个基向量的落脚点。当你想晓得任意一个向量

$$\vec{B}=\left[\begin{array}{l}x \\ y\end{array}\right]$$

通过此线性变换后失去的后果\( \overrightarrow{B^{\prime}} \),即

$$\overrightarrow{B^{\prime}}=\left[\begin{array}{ll}a & b \\c & d\end{array}\right]\left[\begin{array}{l}x \\y\end{array}\right]\tag{10}$$

本文到此结束,感激浏览~