Tesorflow:矩阵初始化

时间:2017-03-16 10:06:31

标签: matrix tensorflow

我得到一个矩阵 A ,其形状为 [M x N x L1] ,另一个矩阵为B形状 [M x L2] L1 L2 具有相同的尺寸大小但具有不同的值。 A和B中的M是对应的。

对于 A [M,:,]] 中的每个维度,我想给它们值 B [M:] 。这就是说,我想在矩阵 B [M] 中使用 L2 来初始化 A [M]中的每个 L1 ,:] ,我怎么能在张量流中操作呢?

详细信息:假设 A 是一个包含 M 句子的矩阵, N 字词 L1 维度词嵌入。 B 是一个包含 M 句子的矩阵,其分数为 L2 维度。 LEN(的 L1 )= LEN(的 L2 )。

如何用矩阵 B 中的分数替换句子中嵌入的每个单词?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我今天早上想通了。 一种可能的方法是:

由于M& N在张量流中没有暗淡, A:[无,无,L],B:[无,L] ,所以我使用了tf.transpose()

我们应该做的是:

1,快速尺寸:

tf.transpose( A,[1,0,2] ): [M x N x L1] ===> [N x M x L1]

                        A      ------>   A_

2,用1值初始化所有A_矩阵 将值更改为1:

                        A_ ====> _A_

3,mul矩阵:

                       tf.mul(_A_, B)     ===>   C 

4,然后快速回到昏暗的

                       tf.transpose(**C, [1,0,2]**)