Pytorch小知识

在用 Pytorch 编写代码时所遇到的小知识点,遇之则记之。

unsqueeze 和 squeeze

unsqueeze,加一个维度,在你 dim = x 的指定位置加。

如果你输入的 dim 是负数,就按 dim = dim + input.dim() + 1 来算位置。

dim 的范围是 [- input.dim() - 1, input.dim() + 1]

squeeze 刚好相反,减一个维度,减的这个维度,只能是你自己曾经加上去的,不能是 tensor 本身的维度。

unsqueeze 和 squeeze


mm、mul、matmul

torch.mm 正常的矩阵乘法,只能用于 2 维矩阵的相乘。

torch.mul 矩阵的 哈德玛积,当两个矩阵的维度不一致时,会自动填充到相同维度。(这一操作也叫 broadcast)

torch.matmul 可用于 2 维或更高维的矩阵乘法,如果两个矩阵的唯独不一致,它也会自动填充。


.item()

如果你有只有一个元素的张量,使用.item()来得到Python数据类型的数值

chrome_vOQEGSlgp1.png


------本文结束感谢您的阅读 ------
0%