*Memos:
- My post explains add().
- My post explains mul().
- My post explains div().
- My post explains remainder().
- My post explains fmod().
sub() can do subtraction with two of the 0D or more D tensors of zero or more elements or scalars or the 0D or more D tensor of zero or more elements and a scalar, getting the 0D or more D tensor of zero or more elements as shown below:
*Memos:
-
sub()
can be used with torch or a tensor. - The 1st argument(
input
) withtorch
(Type:tensor
orscalar
ofint
,float
orcomplex
) or using a tensor(Type:tensor
ofint
,float
orcomplex
)(Required). - The 2nd argument with
torch
or the 1st argument with a tensor isother
(Required-Type:tensor
orscalar
ofint
,float
orcomplex
). - The 3rd argument with
torch
or the 2nd argument with a tensor isalpha
(Optional-Default:1
-Type:tensor
orscalar
ofint
,float
orcomplex
). *other
is multiplied byalpha
(input
or a tensor-(other
xalpha
)). - There is
out
argument withtorch
(Optional-Default:None
-Type:tensor
): *Memos:-
out=
must be used. - My post explains
out
argument.
-
- subtract() is the alias of
sub()
.
import torch tensor1 = torch.tensor([9, 7, 6]) tensor2 = torch.tensor([[4, -4, 3], [-2, 5, -5]]) torch.sub(input=tensor1, other=tensor2) tensor1.sub(other=tensor2) torch.sub(input=tensor1, other=tensor2, alpha=1) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(1)) # tensor([[5, 11, 3], [11, 2, 11]]) torch.sub(input=tensor1, other=tensor2, alpha=0) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(0)) # tensor([[9, 7, 6], [9, 7, 6]]) torch.sub(input=tensor1, other=tensor2, alpha=2) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(2)) # tensor([[1, 15, 0], [13, -3, 16]]) torch.sub(input=tensor1, other=tensor2, alpha=-1) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(-1)) # tensor([[13, 3, 9], [7, 12, 1]]) torch.sub(input=tensor1, other=tensor2, alpha=-2) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(-2)) # tensor([[17, -1, 12], [5, 17, -4]]) torch.sub(input=9, other=tensor2) torch.sub(input=9, other=tensor2, alpha=1) torch.sub(input=9, other=tensor2, alpha=torch.tensor(1)) # tensor([[5, 13, 6], [11, 4, 14]]) torch.sub(input=tensor1, other=4) torch.sub(input=tensor1, other=4, alpha=1) torch.sub(input=tensor1, other=4, alpha=torch.tensor(1)) # tensor([5, 3, 2]) torch.sub(input=9, other=4) torch.sub(input=9, other=4, alpha=1) torch.sub(input=9, other=4, alpha=torch.tensor(1)) # tensor(5) tensor1 = torch.tensor([9., 7., 6.]) tensor2 = torch.tensor([[4., -4., 3.], [-2., 5., -5.]]) torch.sub(input=tensor1, other=tensor2) torch.sub(input=tensor1, other=tensor2, alpha=1.) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(1.)) # tensor([[5., 11., 3.], [11., 2., 11.]]) torch.sub(input=9., other=tensor2) torch.sub(input=9., other=tensor2, alpha=1.) torch.sub(input=9., other=tensor2, alpha=torch.tensor(1.)) # tensor([[5., 13., 6.], [11., 4., 14.]]) torch.sub(input=tensor1, other=4) torch.sub(input=tensor1, other=4, alpha=1.) torch.sub(input=tensor1, other=4, alpha=torch.tensor(1.)) # tensor([5., 3., 2.]) torch.sub(input=9., other=4) torch.sub(input=9., other=4, alpha=1.) torch.sub(input=9., other=4, alpha=torch.tensor(1.)) # tensor(5.) tensor1 = torch.tensor([9.+0.j, 7.+0.j, 6.+0.j]) tensor2 = torch.tensor([[4.+0.j, -4.+0.j, 3.+0.j], [-2.+0.j, 5.+0.j, -5.+0.j]]) torch.sub(input=tensor1, other=tensor2) torch.sub(input=tensor1, other=tensor2, alpha=1.+0.j) torch.sub(input=tensor1, other=tensor2, alpha=torch.tensor(1.+0.j)) # tensor([[5.+0.j, 11.+0.j, 3.+0.j], # [11.+0.j, 2.+0.j, 11.+0.j]]) torch.sub(input=9.+0.j, other=tensor2) torch.sub(input=9.+0.j, other=tensor2, alpha=1.+0.j) torch.sub(input=9.+0.j, other=tensor2, alpha=torch.tensor(1.+0.j)) # tensor([[5.+0.j, 13.+0.j, 6.+0.j], # [11.+0.j, 4.+0.j, 14.+0.j]]) torch.sub(input=tensor1, other=4.+0.j) torch.sub(input=tensor1, other=4.+0.j, alpha=1.+0.j) torch.sub(input=tensor1, other=4.+0.j, alpha=torch.tensor(1.+0.j)) # tensor([5.+0.j, 3.+0.j, 2.+0.j]) torch.sub(input=9.+0.j, other=4.+0.j) torch.sub(input=9.+0.j, other=4.+0.j, alpha=1.+0.j) torch.sub(input=9.+0.j, other=4.+0.j, alpha=torch.tensor(1.+0.j)) # tensor(5.+0.j)
Top comments (0)