首頁 > 後端開發 > Python教學 > PyTorch 中的 pow

PyTorch 中的 pow

Mary-Kate Olsen
發布: 2025-01-01 12:33:10
原創
339 人瀏覽過

pow in PyTorch

請我喝杯咖啡☕

*備忘錄:

  • 我的帖子解釋了 square()。
  • 我的貼文解釋了 float_power()。
  • 我的帖子解釋了abs()和sqrt()。
  • 我的帖子解釋了 gcd() 和 lcm()。
  • 我的貼文解釋了trace()、reciprocal() 和rsqrt()。

pow() 可以從零個或多個元素的0D 或多個D 張量中的兩個或零個或多個元素的0D 或多個D 張量和標量中獲得零次或多次冪的0D 或多個D 張量,如圖所示下圖:

*備忘錄:

  • pow() 可與 torch 或張量一起使用。
  • 第一個參數(輸入)帶有 torch(必要類型:int、float 或complex 的張量或標量)或使用張量(必要類型:int、float 或complex 的張量)。 *torch 必須使用沒有輸入的標量=。
  • 帶有 torch 的第二個參數或帶有張量的第一個參數是指數(必需類型:張量或整數、浮點數或複數的標量)。 *不能使用負標量。
  • torch 存在 out 參數(可選-預設:無-型別:張量): *備註:
    • 必須使用 out=。
    • 我的貼文解釋了論點。
  • 不能使用標量(輸入或張量)和標量(指數)的組合。
  • 張量(輸入(bool)或張量(bool))和標量(指數(bool))的組合有效。
import torch

tensor1 = torch.tensor(-3)
tensor2 = torch.tensor([-4, -3, -2, -1, 0, 1, 2, 3])

torch.pow(input=tensor1, exponent=tensor2)
tensor1.pow(exponent=tensor2)
# tensor([0, 0, 0, 0, 1, -3, 9, -27])

torch.pow(-3, exponent=tensor2)
# tensor([0, 0, 0, 0, 1, -3, 9, -27])

torch.pow(input=tensor1, exponent=3)
# tensor(-27)

tensor1 = torch.tensor([-3, 1, -2, 3, 5, -5, 0, -4])
tensor2 = torch.tensor([-4, -3, -2, -1, 0, 1, 2, 3])

torch.pow(input=tensor1, exponent=tensor2)
# tensor([0, 1, 0, 0, 1, -5, 0, -64])

torch.pow(-3, exponent=tensor2)
# tensor([0, 0, 0, 0, 1, -3, 9, -27])

torch.pow(input=tensor1, exponent=3)
# tensor([-27, 1, -8, 27, 125, -125, 0, -64])

tensor1 = torch.tensor([[-3, 1, -2, 3], [5, -5, 0, -4]])
tensor2 = torch.tensor([0, 1, 2, 3])

torch.pow(input=tensor1, exponent=tensor2)
# tensor([[1, 1, 4, 27], [1, -5, 0, -64]])

torch.pow(-3, exponent=tensor2)
# tensor([1, -3, 9, -27])

torch.pow(input=tensor1, exponent=3)
# tensor([[-27, 1, -8, 27], [125, -125, 0, -64]])

tensor1 = torch.tensor([[[-3, 1], [-2, 3]],
                        [[5, -5], [0, -4]]])
tensor2 = torch.tensor([2, 3])

torch.pow(input=tensor1, exponent=tensor2)
# tensor([[[9, 1], [4, 27]],
#         [[25, -125], [0, -64]]])

torch.pow(-3, exponent=tensor2)
# tensor([9, -27])

torch.pow(input=tensor1, exponent=3)
# tensor([[[-27, 1], [-8, 27]],
#         [[125, -125], [0, -64]]])

tensor1 = torch.tensor([[[-3., 1.], [-2., 3.]],
                        [[5., -5.], [0., -4.]]])
tensor2 = torch.tensor([2., 3.])

torch.pow(input=tensor1, exponent=tensor2)
# tensor([[[9., 1.], [4., 27.]],
#         [[25., -125.], [0., -64.]]])

torch.pow(-3., exponent=tensor2)
# tensor([9., -27.])

torch.pow(input=tensor1, exponent=3.)
# tensor([[[-27., 1.], [-8., 27.]],
#         [[125., -125.], [0., -64.]]])

tensor1 = torch.tensor([[[-3.+0.j, 1.+0.j], [-2.+0.j, 3.+0.j]],
                        [[5.+0.j, -5.+0.j], [0.+0.j, -4.+0.j]]])
tensor2 = torch.tensor([2.+0.j, 3.+0.j])

torch.pow(input=tensor1, exponent=tensor2)
# tensor([[[9.0000+1.5736e-06j, 1.0000+0.0000e+00j],
#          [4.0000+6.9938e-07j, 27.0000+0.0000e+00j]],
#         [[25.0000+0.0000e+00j, -125.0000-2.9812e-06j],
#          [0.0000-0.0000e+00j, -64.0000-1.5264e-06j]]])

torch.pow(-3.+0.j, exponent=tensor2)
# tensor([9.0000+1.5736e-06j, -27.0000-6.4394e-07j])

torch.pow(input=tensor1, exponent=3.+0.j)
# tensor([[[-27.+0.j, 1.+0.j],
#          [-8.+0.j, 27.+0.j]],
#         [[125.+0.j, -125.+0.j],
#          [0.+0.j, -64.+0.j]]])

my_tensor = torch.tensor([[[True, False], [True, False]],
                          [[False, True], [False, True]]])
torch.pow(input=my_tensor, exponent=True)
# tensor([[[True, False], [True, False]],
#         [[False, True], [False, True]]])
登入後複製

以上是PyTorch 中的 pow的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板