参考链接: torch.pow()
功能:
实现张量和标量之间逐元素求指数操作,
或者在可广播的张量之间逐元素求指数操作.
代码实验展示:
Microsoft Windows [版本 10.0.18363.1256]
(c) 2019 Microsoft Corporation。保留所有权利。
C:\Users\chenxuqi>conda activate ssd4pytorch1_2_0
(ssd4pytorch1_2_0) C:\Users\chenxuqi>python
Python 3.7.7 (default, May 6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.manual_seed(seed=20200910)
<torch._C.Generator object at 0x000001DB5C50D330>
>>>
>>> a = torch.randn(4)
>>> a
tensor([ 0.2824, -0.3715, 0.9088, -1.7601])
>>> torch.pow(a, 2)
tensor([0.0797, 0.1380, 0.8259, 3.0980])
>>>
>>>
>>>
>>> exp = torch.arange(2.0, 6.0)
>>> a = torch.arange(1., 5.)
>>> a
tensor([1., 2., 3., 4.])
>>> exp
tensor([2., 3., 4., 5.])
>>> torch.pow(a, exp)
tensor([1.0000e+00, 8.0000e+00, 8.1000e+01, 1.0240e+03])
>>>
>>>
>>>
>>>
>>>
>>> exp = torch.arange(1., 5.)
>>> base = 2
>>> exp
tensor([1., 2., 3., 4.])
>>> torch.pow(base, exp)
tensor([ 2., 4., 8., 16.])
>>>
>>>
代码实验展示:
(base) PS C:\Users\chenxuqi> python
Python 3.7.4 (default, Aug 9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.manual_seed(seed=20200910)
<torch._C.Generator object at 0x000001269B1F2A90>
>>> a = torch.randn(4)
>>> a
tensor([ 0.2824, -0.3715, 0.9088, -1.7601])
>>> torch.pow(a, 2)
tensor([0.0797, 0.1380, 0.8259, 3.0980])
>>> a.pow(2)
tensor([0.0797, 0.1380, 0.8259, 3.0980])
>>>
>>>
>>>
>>> exp = torch.arange(2.0, 6.0)
>>> a = torch.arange(1., 5.)
>>> a
tensor([1., 2., 3., 4.])
>>> exp
tensor([2., 3., 4., 5.])
>>> torch.pow(a, exp)
tensor([1.0000e+00, 8.0000e+00, 8.1000e+01, 1.0240e+03])
>>> a.pow(exp)
tensor([1.0000e+00, 8.0000e+00, 8.1000e+01, 1.0240e+03])
>>>
>>>
>>>
>>> exp = torch.arange(1., 5.)
>>> base = 2
>>> exp
tensor([1., 2., 3., 4.])
>>> torch.pow(base, exp)
tensor([ 2., 4., 8., 16.])
>>> base.pow(exp)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'int' object has no attribute 'pow'
>>> exp.pow(base)
tensor([ 1., 4., 9., 16.])
>>>
>>>
>>>