PyTorch 张量支持多种操作,这些操作主要可以分为两大类:张量操作和张量与标量的交互操作。
索引和切片:
张量[开始:结束:步长]:用于截取张量的子集。张量[:, 列名] 或 张量[行名, :]:按列或行选择元素。张量[开始:结束, 开始:结束]:选择子矩阵。数学运算:
+, -, *, /, //:基本的算术运算。**:幂运算。abs(), acos(), asin(), atan(), ceil(), cos(), cosh(), deg2rad(), dist(), e()(自然对数的底数 e),erf(), erfc(), exp(), expm1(), fabs(), factorial(), floor(), fmod(), frexp(), fsum(), gamma(), gcd(), hypot(), inf(), isclose(), isfinite(), isinf(), isnan(), ldexp(), lgamma(), log(), log10(), log1p(), log2(), modf(), nan_to_num(), permute(), pow(), prod(), rad2deg(), remainder(), round(), sign(), sin(), sinh(), sqrt(), tan(), tanh(), transpose() 等。统计函数:
mean(), median(), mode(), std(), var() 等。线性代数操作:
addmm(), addmv(), addr(), bmm(), bmv(), dot(), eig(), inv(), matmul(), mm(), mv(), qr(), symeig(), svd() 等。其他操作:
expand_as(), flatten(), gather(), index_select(), permute(), repeat_interleave(), reshape(), scatter_add(), scatter_nd(), shape(), squeeze(), stack(), unsqueeze() 等。广播:当张量与标量进行算术运算时,标量会自动广播到张量的形状以进行运算。
与标量的算术运算:
张量 + 标量张量 - 标量张量 * 标量张量 / 标量与标量的比较运算:
==, ~=, <, <=, >, >= 等。其他操作:
torch.all(), torch.any(), torch.argmax(), torch.argmin(), torch.argmax(dim=None), torch.argmax(dim=某个维度), torch.any(dim=None), torch.any(dim=某个维度), torch.eq(), torch.exp(), torch.log(), torch.log10(), torch.log1p(), torch.log2(), torch.max(), torch.min(), torch.mean(), torch.median(), torch.mode(), torch.norm(), torch.prod(), torch.std(), torch.sum(), torch.tan() 等。请注意,上述列表可能并不全面,PyTorch 的张量操作会随着版本的更新而有所变化。为了获取最准确的信息,建议查阅最新的 PyTorch 官方文档。