【发布时间】:2020-10-05 23:45:56
【问题描述】:
在我的训练过程中,我倾向于使用大量对torch.cat() 的调用并将张量复制到新的张量中。 autograd如何处理这些操作?这些操作会影响梯度值吗?
【问题讨论】:
-
torch.cat是数学意义上的函数(当仅限于给定形状的张量时——但由于 Python 类型系统的表达能力差而产生的这种限制对于您想要处理的几乎所有函数都是必需的使用 PyTorch 的 autograd)。是什么让你不这么认为? -
(提示:连接 R^m 和 R^n 的元素以获得 R^(m+n) 的元素是数学意义上的函数。从这里你可以恢复
torch.cat确实如此,但有上述警告。)