是什么einsum呢
使用einsum函数,我们可以使用爱因斯坦求和约定(Einstein summation convention)在NumPy数组上指定操作。
假设我们有两个数组,A和B。...[4, 5, 6, 7],
[8, 9,10,11]])
我们通常如何在NumPy中执行此操作?...即使是这个小的例子,einsum也要快三倍。
如何使用einsum
关键是为输入数组的轴和我们想要输出的数组选择正确的标签。
函数使我们可以选择两种方式之一执行此操作:使用字符串或使用整数列表。...对于两个二维数组A和B,矩阵乘法操作可以用np.einsum(‘ij,jk->ik’, A, B)完成。
这个字符串是什么意思?想象’ij,jk->ik’在箭头->处分成两部分。...要了解输出数组的计算方法,请记住以下三个规则:
在输入数组中重复的字母意味着值沿这些轴相乘。乘积结果为输出数组的值。
在本例中,我们使用字母j两次:A和B各一次。这意味着我们将A每一行与B每列相乘。