我有兴趣在TensorFlow中对Kronecker Recurrent Units实施
this paper.
这涉及Kronecker产品的计算. TensorFlow没有Kronecker产品的操作.我正在寻找一种有效而强大的计算方法.
这是否存在,还是需要手动定义TensorFlow操作?
最佳答案 TensorFlow 1.7在tf.contrib.kfac.utils.kronecker_product中提供了函数
kronecker_product
:
a = tf.eye(3)
b = tf.constant([[1., 2.], [3., 4.]])
kron = tf.contrib.kfac.utils.kronecker_product(a, b)
tf.Session().run(kron)
输出:
array([[1., 2., 0., 0., 0., 0.],
[3., 4., 0., 0., 0., 0.],
[0., 0., 1., 2., 0., 0.],
[0., 0., 3., 4., 0., 0.],
[0., 0., 0., 0., 1., 2.],
[0., 0., 0., 0., 3., 4.]], dtype=float32)