这几天听到一个词, 叫张量. 我搞不懂, 搜索了一下, 知乎上有一篇高达上的文章 https://www.zhihu.com/question/20695804 什么是张量(tensor)
看完了之后, 还是有点不懂, 又去百度知道看了看接地气的一些回答. 大概有点云里雾里的意思. 比如这个 https://zhidao.baidu.com/question/491820112312655852.html
复制一点这个的其他回答: https://zhidao.baidu.com/question/1694199330113507748.html
在同构的意义下,第零阶张量 (r = 0) 为标量 (Scalar),第一阶张量 (r = 1) 为向量 (Vector), 第二阶张量 (r = 2) 则成为矩阵 (Matrix)。例如,对于3维空间,r=1时的张量为此向量:(x,y,z)。
张量:
0阶, 标量(Scalar)
1阶, 矢量(Vector)
2阶, 矩阵(Matrix)
张量是两个变量空间之间的映射关系, 是一个实数(不变量)
我自己觉得, 张量说实在的就是一个乘数. 是一个不变量.
从一维线性开始说起, 一个物理量 比如3千克, 等于什么? 3千克= 1千克(基准量) 乘以 3(乘数)
现在换个基准量, 比如克, 3千克= 1克(基准量) 乘以3000(乘数), 3千克和3000克的换算关系就是一个张量, 是不变的. 这个张量就是二者的乘数的比值.
即, 3千克映射到3000克, 是1:1000的关系, 张量等于1000, 是不变的. 3X1000就把千克换算成了克,
反过来, 3000克, 映射到 3千克, 是1000:1的关系, 张量等于1000, 是不变的. 3000/1000, 就把克换算成了千克.
那你说, 为什么一个是乘, 一个是除呢? 因为这是2个不同的映射. 但是不管是千克到克, 还是克到千克, 只要这个映射(千克->克, 克->千克)定下来了, 这个换算关系就定下来了(乘或者除). 其实乘和除, 本质差不多.
因此, 张量就是一个不变量, 表示映射关系不变, 那么映射表示的是谁和谁的映射呢?
表示的是变量空间A 到另一个变量空间B的映射
A变量空间<==映射关系记为张量==>B变量空间
3千克 1000 3000克
4千克 1000 4000克
就是说, 按千克计算的变量有无穷个, 比如3千克, 4千克, 5.5千克, ........
到另一个变量空间, 有个映射关系的 3000克, 4000克, 5500克
这个张量记为:
a: B->R
即千克和克的映射关系为一个实数1000, 属于R(实数集), 是一个标量.
再说说二维平面, 一个矢量架设基准量1为 长度为1的有向线段(从起点指向终点), 为了便于计算, 通常将起点定于原点, 终点为一个二维量.
这个时候, 我们有定义了一个基准量, 现在长度为2的有向线段为基准的1了, 于是相当于原来二维平面上的有向线段都放大了2倍(旧的换算成新的), 也就是说原来的和现在的换算关系是2倍(乘数),
现在加点料, 不仅放大了2倍, 还旋转了45度角, 学过了物理的都知道分解为2个分量了, 于是(x, y)都要乘以(根号2, 根号2)了, 即旧的 映射到 新的 , 乘数变成了一个二维标量(根号2, 根号2), 也是不变的换算关系.
这就是二维的张量, 表示的是一个映射关系(一个矢量A空间, 映射到另一个矢量B空间), 它有2个分量组成, 你可以将这个两个分量一起看, 就是一个量, 张量
三维空间的 张量(映射关系) 就是一个矩阵, 一旦基准量定好了, 张量就固定了. 或者你可以认为, 矩阵就是一个乘数 一个三维量A X 乘数=另一个三维量B(可能坍塌, 降维), 乘数就是A和B的换算关系.
至于乘数 如何表示, 那是数学上的事情, 但是不管你会如何表示, 只要A变量空间和B变量空间的基准量(通常应该叫单位吧, 哈哈), 固定了, 乘数也就固定了(A到B的换算关系就固定了, B到A的换算关系也固定了).
瞎编乱造, 请各位批评指正.