为了账号安全,请及时绑定邮箱和手机立即绑定

如何有效地计算 Pytorch 中的张量?

如何有效地计算 Pytorch 中的张量?

慕婉清6462132 2021-09-11 20:07:20
我有一个张x和x.shape=(batch_size,10),现在我想利用 x[i][0] = x[i][0]*x[i][1]*...*x[i][9] for i in range(batch_size)这是我的代码:for i in range(batch_size):    for k in range(1, 10):        x[i][0] = x[i][0] * x[i][k]但是当我实现这个forward()并调用时loss.backward(),反向传播的速度非常慢。为什么它很慢,有什么方法可以有效地实现它?
查看完整描述

2 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

当您使用两个循环来计算乘积时,复杂度为 n^2。想象一下,在反向传播过程中多次这样做,你的代码会变得很慢。

向量运算加速了这些计算,因为它们可以并行化。


查看完整回答
反对 回复 2021-09-11
  • 2 回答
  • 0 关注
  • 175 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信