深度学习中的张量分解与应用
1. 张量分解方法概述
张量分解是处理高维数据的重要工具,在深度学习中有着广泛的应用。常见的张量分解方法包括 CP 分解、Tucker 分解和张量 - 列车(TT)分解。
1.1 CP 分解
CP 分解将一个张量表示为多个一阶张量的和。对于一个 N 阶张量 X,CP 分解可以紧凑地表示为 (X = 〈U^{(1)},U^{(2)},··· ,U^{(N)}〉)。这种用 CP 分解表示的张量有时被称为 Kruskal 格式。例如,图 15.4 展示了一个三阶张量 X 的 CP 分解,将其分解为一阶张量的和。
1.2 Tucker 分解
Tucker 分解将张量 X 非唯一地分解为一个核心张量 (G \in R^{R_1×R_2×···×R_N}) 和一组因子矩阵 ({U^{(1)},U^{(2)},··· ,U^{(N)}}),其中 (U^{(n)} \in R^{R_n×I_n}),(n = 1,2,…,N)。分解公式为:
(X = G ×_1 U^{(1)} ×_2 U^{(2)} ×_3 ··· ×_N U^{(N)})
核心张量捕捉了因子矩阵列之间的相互作用。如果 (R_n \ll I_n),(\forall n),则核心张量可以看作是 X 的压缩版本。CP 分解可以表示为 Tucker 分解的特殊情况,即 (R_n = R),(\forall n \in {1,2,…N}),且核心张量为超对角张量。Tucker 分解紧凑地表示为 (〈G; U^{(1)},U^{(2)},··· ,U^{(N)}〉),如图 15.5 所示。当因子矩阵为正交矩阵时,Tucker 模型被称
超级会员免费看
订阅专栏 解锁全文
2910

被折叠的 条评论
为什么被折叠?



