在 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:]
我正在努力寻找一种将一批张量与一批标量相乘的简单方法。
我有一个维度为 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:]