zoukankan      html  css  js  c++  java
  • 什么是张量?

    向量 = vector

    向量空间 = vector space

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

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

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

    张量

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

    Bi-linear form

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

    $T: U ightarrow 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 imes V ightarrow 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,⨂:

    那 $ imes$ 代表 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  这本书很易懂 ,我從這書中抄了一些內容 :

  • 相关阅读:
    【调侃】IOC前世今生
    经典 makefile 教程
    Win7  CMD大全
    关于验证码识别3
    关于验证码识别2
    关于验证码识别 1
    DirectUI的初步分析-转
    winform软件版本检测自动升级开发流程(转)
    如何让在panel里的子窗体随panel的大小改变而变化?(转)
    C#如何控制panel加载的字窗体中控件的位置随着显示器分辨率大小而改变
  • 原文地址:https://www.cnblogs.com/geniferology/p/what_are_tensors.html
Copyright © 2011-2022 走看看