“ax”在keras.backend.batch_dot中的作用

时间:2018-02-21 14:47:22

标签: python keras

我有一个自定义图层来乘以两个张量A& B尺寸(x,1)& (1,y),我想产生一个大小为(x,y)的输出C.

考虑到批处理,即矩阵的大小实际上是(?,x,1)& (?,1,y),我在打电话:

C = K.batch_dot(A,B, axes = [2,1])

这似乎产生了所需的输出,但我真的不明白axes变量在这里代表什么。我的直觉是,这些是我们想要执行矩阵乘法的轴,但我不明白为什么它在[2,1]的顺序而不是[1,2](产生错误)。< / p>

有人可以帮助我理解吗?

1 个答案:

答案 0 :(得分:2)

根据官方文档here

  

轴[0]和轴[1]的长度应相同

在您的情况下,self.view.setNeedsLayout(), self.view.layoutIfNeeded(), self.view.layoutSubviews()维度为safeAreaInsetsA维度为(?, x, 1)

很明显,从B开始,(?, 1, y)的第二维即axis = [2, 1]等于A的第一维,即1(轴变暗从0开始)并产生预期的结果。