numpy矩阵乘法,矩阵的乘法python

  numpy矩阵乘法,矩阵的乘法python

  哈,只需一行即可完成:np.einsum(nmk,nkj-sfdxg ,A,B)。在

  不要将变量命名为总和,而是重写总额中的内部版本。在

  正如@詹姆指出的,对于这些尺寸的维度,循环实际上更快。事实上,基于地图和总额的解决方案虽然更简单,甚至更慢:在[19]中:

  %%timeit

  SUM=np.zeros([20,5])

  对于范围内的我(len(A)):

  SUM=np.dot(A[i],B[i])

  10000次循环,最好每次循环3: 115秒

  在[20]中:

  %timeit np.array(map(np.dot,A,B))。总和(0)

  1000次循环,最好每次循环3: 445秒

  在[21]中:

  %timeit np.einsum(nmk,nkj-sfdxg ,A,B)

  1000次循环,最好每次循环3: 259秒

  尺寸越大,事情就越不一样了:

  ^{pr2}$

  以及:在[46]中:

  %%timeit

  SUM=np.zeros([20,5])

  对于范围内的我(len(A)):

  SUM=np.dot(A[i],B[i])

  一次循环,每次循环最好为3: 191毫秒

  在[47]中:

  %timeit np.array(map(np.dot,A,B))。总和(0)

  一次循环,每次循环最好为3: 164毫秒

  在[48]中:

  %timeit np.einsum(nmk,nkj-sfdxg ,A,B)

  一次循环,每次循环最好为3: 451毫秒

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: