关于python:Tensorflow:如何在矩阵的每个元素上执行操作

Tensorflow: How to perform an operation on each element of a matrix

我有两个矩阵A(Nx100)和B(Mx100)。我想对矩阵A中的每个元素与矩阵B中的每个元素执行一个运算(例如计算欧几里得距离)。在正常的numpy中,将使用两个for循环来完成。

现在,我正在使用映射函数tf.map_fn将矩阵A中的每个元素映射到我做A[i] - B的操作,其中A [i]是向量。这是可行的,因为TensorFlow将向量广播为矩阵形状。

我想知道是否有办法可以更轻松地做到这一点。类似于:tf.do_magic( A, B, operation )

谢谢!


A和B的欧几里得距离:

1
tf.sqrt(tf.reduce_sum(tf.square(tf.expand_dims(A, 1) - B)), 2))