MUTAN:Multimodal Tucker Fusion For Visual Question Answering
0.写在前面
在介绍本篇论文前,我们首先介绍什么是矩阵分解,tucker张量分解,双线性模型??
0.1 矩阵分解
矩阵分解大致三个作用: 降维处理,稀疏数据填充,隐形关系挖掘。下面以推荐系统中常用的矩阵分解为例。
推荐系统中,给定一个大小为 m ∗ n m*n m∗n的评分矩阵R,元素 r i j r_{ij} rij表示用户i对商品j的评分值。
当R的秩 k = r a n k ( R ) < < m i n ( m , n ) k = rank(R)<<min(m,n) k=rank(R)<<min(m,n),并且R可表示成:
R = U V T R=UV^T R=UVT其中,U是大小为mxk的用户因子矩阵,V是nxk项因子矩阵,这一过程就是矩阵分解
当 k < r a n k ( R ) k<rank(R) k<rank(R)时,我们将矩阵分解看作是低秩逼近问题(low-rank),则分解过程变为:
R ≈ U V T R \approx UV^T R≈UVT,U和V与前面含义相同,显然,整体误差为残差方程 R − U V T R-UV^T R−UVT中所有元素的平方和,即 ∣ ∣ R − U V T ∣ ∣ 2 ||R-UV^T||^2 ∣∣R−UVT∣∣2
在实际应用中,这里的R往往是一个稀疏矩阵,因为如果有1000个用户,1000个商品,构造评分矩阵,不需要每个用户把每个商品都买一遍??
矩阵分解在推荐系统中被称为隐性因子模型,定义用户i在环境c下对项j进行评分为 r i j c r_{ijc} rijc ,一个特殊的张量分解结构,即大小mxnxd的评分张量R分解会得大小为用户因子矩阵U:mxk,项因子矩阵V:nxk,环境因子矩阵W:dxk,这就是隐形因子模型的一种高阶泛化。
所以第3阶张量R上任意位置(i,j,c)所对应的评分计算如下:


0.2 Tucker张量分解
张量分解有很多方法,张量分解通常用来解决稀疏张量的填补问题。
以三阶张量为例:假设张量 T = n 1 ∗ n 2 ∗ n 3 T=n_1*n_2*n_3 T=n1∗n2∗n3,则进行Tucker分解后变为
T ≈ X ∗ U ∗ V ∗ W T \approx X* U * V * W T≈X∗U∗V∗W

t i j k ≈ ∑ m = 1 r 1 ∑ n = 1 r 2 ∑ l = 1 r 3 ( x m n l ∗ u i m ∗ v j n ∗ w k l ) t_{ijk} \approx \sum_{m=1}^{r_1}\sum_{n=1}^{r_2}\sum_{l=1}^{r_3}(x_{mnl}*u_{im}*v_{jn}*w_{kl}) tijk≈
MUTAN模型解析

最低0.47元/天 解锁文章
2999





