在 tensorflow 中使用标量批处理 multiplication/division

Batch multiplication/division with scalar in tensorflow

我正在努力寻找一种将一批张量与一批标量相乘的简单方法。

我有一个维度为 N、4、4 的张量。我想要的是将批处理中的张量除以位置 3、3 的值。

例如,假设我有:

A = [[[1, 1, 1, 0],
      [1, 1, 1, 0],
      [1, 1, 1, 0],
      [0, 0, 0, a]], 
     [[1, 1, 1, 0],
      [1, 1, 1, 0],
      [1, 1, 1, 0],
      [0, 0, 0, b]]

我想要得到的是:

 B = [[[1/a, 1/a, 1/a, 0],
      [1/a, 1/a, 1/a, 0],
      [1/a, 1/a, 1/a, 0],
      [0, 0, 0, 1]], 
     [[1/b, 1/b, 1/b, 0],
      [1/b, 1/b, 1/b, 0],
      [1/b, 1/b, 1/b, 0],
      [0, 0, 0, 1]]

你应该这样做:

B = A / A[:, 3:, 3:]