假设有两个张量列表:

r1 = K.variable(1)
r2 = K.variable(2)
v1 = K.variable(3)
v2 = K.variable(4)
l1 = [r1,r2]
l2 = [v1,v2]


我正在尝试计算这两个张量的MSE。我正在做的是:

res = []
for i in range(len(l1)):
    res.append(K.square(l1[i] - l2[i]))
return sum(res)/len(res)


但是我认为这段代码是一个质量。有没有更有效,更优雅的方法来做到这一点?谢谢。

最佳答案

我认为您应该能够简单地做到:

return K.mean(K.square(K.stack(l1) - K.stack(l2)))


请注意,这里我假设列表中的所有张量都具有相同的形状(就像您的代码段一样,否则它也会失败)。

10-07 19:11
查看更多