赞
踩
随着人工智能、大数据的发展,我们常常会得到高维数据,对其 认识 和 处理方法 与普通二维数据有着许多不同,对于三维及三维以上的数据,我们统称为 张量 。张量是对向量和矩阵的一种高维拓展。
类似于矩阵的行、列,张量也有类似的概念,即纤维。
纤维(fiber),即只保留一个自由度,固定其他所有维度,呈现出条状。
切片(slices),只保留两个自由度,固定其他所有维度,呈现出片状(矩阵)。
一个N阶张量的N模展开,如图所示,将一个三阶
(
3
×
3
×
3
)
(3\times3\times3)
(3×3×3)的张量
χ
\chi
χ的切片合成为一个大的矩阵,按照切片的分割方式不同,可以分为N种模式。
具体例子如下:
一个3x4x2的张量
χ
\chi
χ按照N模展开,即按照第n个维度展开,如下所示,为张量
χ
\chi
χ的两个切片
其按照三种模态展开,即按照不同方向的切片,进行合并。
如果一个张量能被写成N个向量的 外积 ,则称这个张量为秩一张量。
这里需要注明的是:外积(Outer Product)这一概念与高中数学三维向量的外积(Exterior Product)的概念不同。
u ∘ v = u v T = [ u 1 u 2 u 3 u 4 ] [ v 1 v 2 v 3 ] = [ u 1 v 1 u 2 v 2 u 1 v 3 u 2 v 1 u 2 v 2 u 2 v 3 u 3 v 1 u 3 v 2 u 3 v 3 u 4 v 1 u 4 v 2 u 4 v 3 ] u \circ v = uv^T = \left[ \begin {array} {c} u_1 \\ u_2 \\ u_3 \\ u_4 \end {array} \right] \left[ \begin {array} {ccc} v_1 & v_2 & v_3 \end {array} \right] = \left[ \begin {array} {ccc} u_1v_1 & u_2v_2 & u_1v_3 \\ u_2v_1 & u_2v_2 & u_2v_3 \\ u_3v_1 & u_3v_2 & u_3v_3 \\ u_4v_1 & u_4v_2 & u_4v_3 \\ \end {array} \right] u∘v=uvT=⎣⎢⎢⎡u1u2u3u4⎦⎥⎥⎤[v1v2v3]=⎣⎢⎢⎡u1v1u2v1u3v1u4v1u2v2u2v2u3v2u4v2u1v3u2v3u3v3u4v3⎦⎥⎥⎤
张量
χ
\chi
χ与矩阵
U
U
U的N模乘法的公式如下:
看公式可能很难理解,具体通俗语言可以表示为:
Y = χ × n U ⇔ Y ( n ) = U X ( n ) Y = \chi \times_n U \Leftrightarrow Y _ {\left( n \right)} = UX_ {\left( n \right)} Y=χ×nU⇔Y(n)=UX(n)
Y
1
=
[
22
49
76
103
28
64
100
136
]
,
Y
2
=
[
130
157
184
211
172
208
244
280
]
Y_1 = \left[
这里提前介绍一些矩阵的乘积,与后面张量分解的介绍有关。
A的每个元素乘以B矩阵构成新的大矩阵
其结果为 ( I K ) × ( J L ) (IK) \times (JL) (IK)×(JL)大小的矩阵
对应列向量的Kronecker积
对应位置的元素相乘
以上就是张量的基础知识,这一部分较为简单,希望通过自己的总结能让后来者有所收获。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。