pytorch

pytorch张量支持哪些操作

小樊
81
2024-12-25 20:48:31
栏目: 深度学习

PyTorch 张量支持多种操作,这些操作主要可以分为两大类:张量操作和张量与标量的交互操作。

张量操作

  1. 索引和切片

    • 张量[开始:结束:步长]:用于截取张量的子集。
    • 张量[:, 列名]张量[行名, :]:按列或行选择元素。
    • 张量[开始:结束, 开始:结束]:选择子矩阵。
  2. 数学运算

    • +, -, *, /, //:基本的算术运算。
    • **:幂运算。
    • 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() 等。
  3. 统计函数

    • mean(), median(), mode(), std(), var() 等。
  4. 线性代数操作

    • addmm(), addmv(), addr(), bmm(), bmv(), dot(), eig(), inv(), matmul(), mm(), mv(), qr(), symeig(), svd() 等。
  5. 其他操作

    • expand_as(), flatten(), gather(), index_select(), permute(), repeat_interleave(), reshape(), scatter_add(), scatter_nd(), shape(), squeeze(), stack(), unsqueeze() 等。

张量与标量的交互操作

  1. 广播:当张量与标量进行算术运算时,标量会自动广播到张量的形状以进行运算。

  2. 与标量的算术运算

    • 张量 + 标量
    • 张量 - 标量
    • 张量 * 标量
    • 张量 / 标量
    • 其他算术运算符。
  3. 与标量的比较运算

    • ==, ~=, <, <=, >, >= 等。
  4. 其他操作

    • 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 官方文档。

0
看了该问题的人还看了