PyTorch:addmm函数的目的

时间:2018-04-02 10:05:00

标签: pytorch

以下PyTorch函数(doc)的目的是什么:

torch.addmm(beta=1, mat, alpha=1, mat1, mat2, out=None)

更具体地说,有没有理由更喜欢这个功能,而不仅仅是使用

beta * mat + alpha * (mat1 @ mat2)

1 个答案:

答案 0 :(得分:2)

addmm函数是等式beta*mat + alpha*(mat1 @ mat2)的优化版本。我运行了一些测试并计算了他们的执行时间。

  • 如果beta=1, alpha=1,那么两个语句(addmm和手册)的执行大致相同(addmm只是快一点),无论矩阵如何大小

  • 如果betaalpha不是1,则addmm比小型矩阵的手动执行快两倍(总数为10的元素 5 )。但是,如果矩阵很大(按10 6 的顺序),加速似乎可以忽略不计(39ms v / s 41ms