什么是张量?

Posted on 2015-05-17 19:35  Cybernetic1  阅读(1278)  评论(0编辑  收藏  举报

向量 = vector

向量空间 = vector space

 

两个向量空间 U, V 之间的线性变换,可以用 matrix 表示。

 

如果 U 的维数是 m,V 的维数是 n,则 $T: U \rightarrow V$ 的矩阵形式是 $m \times n$。

 

矩阵应该正确地理解为: 两个向量空间之间的线性变换。  矩阵只是线性方程组简写;  是「线性」这性质 逼使 这些变换成为矩阵。

 

张量

张量是 双线性变换 (bi-linear form) 的 universal form (万有形式)。  首先要了解什么是 bi-linear form,然后了解什么是 universal form。

 

 

Bi-linear form

Linear map (or transformation) 的意思是,一个由向量空间 U 到 V 的变换,服从:

 

$T: U \rightarrow V$

 

$T(v_1 + v_2) = T(v_1) + T(v_2)$

 

$T(k v) = k T(v) $

 

Bi-linear map 是 linear map 的推广,由向量空间 U,V 到 W 的变换,使其对 U 和对 V 也是线性变换:

 

$T: U \times V \rightarrow W$

 

$T(a v_1 + b v_2, u) = a T(v_1, u) + b T(v_2, u)$

 

$T(v, a u_1 + b u_2) = a T(v, u_1) + b T(v, u_2)$

 

 

Universal form

Universal form 用来表达某种结构的「最一般形式」,这个 idea 来自 category theory。

 

In our case,首先考虑两个向量空间之间的 tensor product,⨂:

 

 

那 $\times$ 代表 Cartesian product,即是 U,V 里面各取一个向量的任意组合。

 

By definition,那 tensor product 当然是 bi-linear 的。

 

但这时,如果有另一个 bi-linear map 射向 X:

 

 

注意,这 bi-linear map 未必是 tensor product,它只需要是任何 bi-linear map。 

 

而我们要求存在第三个唯一的 map,通常用 ! 号标记:

 

 

 

它使得「从 U x V 到 W 再到 X」,和「从 U x V 直接到 X」是一样的。  换句话说,就是这个由箭头表示的 diagram 是「可交换的」,即 "commutes" 。

 

实际的意思,是因为那 tensor product 保存了所有关於 bi-linear forms 的「资讯」,所以由 W 可以「重构」任何 U,V 之间的 bi-linear maps。  而且,这个万有形式是最 minimal 的,没有多馀的重复,所以只能有一个 unique map 由 W 射向 X。

 

所以说: tensor product 是所有 bi-linear forms 的 universal form

 

Bi-linear maps 可以有很多例子,但它们未必是 ⨂ 的模型 (models)。  例如: 两个向量的 inner product、cross product、两个矩阵的 matrix product、两个复数的乘积、 都是 bi-linear 的,但它们都不是 tensor product 的模型,理由是因为它们把双线性变换后的资讯萎缩了 (collapsed)。  但两个矩阵的 Kronecker product 是 tensor product,还有另一个模型是最常见的,利用 dual space V* 来描述。 

 

关於张量的代数,还有很多特性,但其抽象意义就是这个。  我暂时还没有学懂张量的详细性质,这里只能简介。

 

 

Remark:

 

最后解释一下:

 

两个向量空间的 direct sum 就是它们的 笛卡儿 乘积 U x V。  如果 U 是三度空间,V 是两度空间,则 U x V 有 3 + 2 = 5 度,它的 vectors 是像: $(v_1, v_2, v_3, u_1, u_2)$ 那样的元素。

 

但在张量积的空间 (tensor product space),$U \otimes V$ 的度数是 3 x 2 = 6。  一般来说它的度数可以大很多。  为什么张量积的空间可以大过两个向量空间的笛卡儿积?  那是因为我们在谈论两个空间之间的变换的空间。  如果我们考虑非线性变换(例如多项式变换 )、或是可微分变换,那些空间甚至是无穷维的!

 

 

Reference:

Guo, Hongyu 2014:  Modern mathematics and applications in computer graphics and vision  这本书很易懂 ,我從這書中抄了一些內容 :