我有一个自定义图层来乘以两个张量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>
有人可以帮助我理解吗?
答案 0 :(得分:2)
根据官方文档here
轴[0]和轴[1]的长度应相同
在您的情况下,self.view.setNeedsLayout(), self.view.layoutIfNeeded(), self.view.layoutSubviews()
维度为safeAreaInsets
,A
维度为(?, x, 1)
。
很明显,从B
开始,(?, 1, y)
的第二维即axis = [2, 1]
等于A
的第一维,即1
(轴变暗从0开始)并产生预期的结果。