目录
1、基础运算
- 可以使用 + - * / 推荐
- 也可以使用 torch.add, mul, sub, div
(1)加法运算
def add():
# add +
# 这两个Tensor加减乘除会对b自动进行Broadcasting
a = torch.rand(3,4)
b = torch.rand(4)
print("a = {}".format(a))
print("b = {}".format(b))
# a、b列数相同,行数不同,将a的每行与b对应位置相加
c1 = a + b
c2 = torch.add(a,b)
c3 = torch.eq(c1,c2)
# torch.all()判断每个位置的元素是否相同
c4 = torch.all(c3)
print("a + b = {}".format(c1))
print("a + b = {}".format(c2))
print("torch.eq = {}".format(c3))
print("torch all = {}".format(c4))
# a = tensor([[0.8514, 0.5017, 0.3924, 0.7817],
# [0.0219, 0.7352, 0.5634, 0.7285],
# [0.9187, 0.1628, 0.9236, 0.3603]])
# b = tensor([0.0809, 0.0295, 0.6065, 0.8024])
# a + b = tensor([[0.9322, 0.5312, 0.9989, 1.5841],
# [0.1028, 0.7647, 1.1700, 1.5309],
# [0.9996, 0.1923, 1.5301, 1.1627]])
# a + b = tensor([[0.9322, 0.5312, 0.9989, 1.5841],
# [0.1028, 0.7647, 1.1700, 1.5309],
# [0.9996, 0.1923, 1.5301, 1.1627]])
# torch.eq = tensor([[True, True, True, True],
# [True, True, True, True],
# [True, True, True, True]])
# torch
# all = True
(2)减法运算
def minus():
# 这两个Tensor加减乘除会对b自动进行Broadcasting
a = torch.rand(3,4)
b = torch.rand(4)
print("a = {}".format(a))
print("b = {}".format(b))
# a、b列数相同,行数不同,将a的每行与b对应位置相加
c1 = a - b
c2 = torch.sub(a,b)
# torch.all()判断每个位置的元素是否相同
c3 = torch.eq(c1,c2)
c4 = torch.all(c3)
print("a - b = {}".format(c1))
print("a - b = {}".format(c2))
print("torch.eq = {}".format(c3))
print("torch all = {}".format(c4))
# a = tensor([[0.8499, 0.1003, 0.3179, 0.1217],
# [0.2119, 0.7742, 0.3973, 0.7241],
# [0.8559, 0.3558, 0.1549, 0.4583]])
# b = tensor([0.4750, 0.9261, 0.7107, 0.1397])
# a - b = tensor([[0.3749, -0.8258, -0.3928, -0.0180],
# [-0.2631, -0.1519, -0.3135, 0.5844],
# [0.3809, -0.5703, -0.5558, 0.3186]])
# a - b = tensor([[0.3749, -0.8258, -0.3928, -0.0180],
# [-0.2631, -0.1519, -0.3135, 0.5844],
# [0.3809, -0.5703, -0.5558, 0.3186]])
# torch.eq = tensor([[True, True, True, True],
# [True, True, True, True],
# [True, True, True, True]])
# torch
# all = True