PyTorch练习——张量的四则运算与矩阵运算

发布于:2024-12-18 ⋅ 阅读:(131) ⋅ 点赞:(0)

练习1:

# 导入Torch库
import torch

# 创建两个张量
x = torch.tensor([1, 2, 3])
y = torch.tensor([4, 5, 6])

# 执行加法操作
z = torch.add(x, y)
print("加法结果:", z)

# 执行减法操作
z = torch.subtract(x, y)
print("减法结果:", z)

# 执行乘法操作
z = torch.multiply(x, y)
print("乘法结果:", z)
加法结果: tensor([5, 7, 9])
减法结果: tensor([-3, -3, -3])
乘法结果: tensor([ 4, 10, 18])
#练习2:
# 导入Torch库
import torch

# 定义一个张量x,并设置requires_grad=True以跟踪其梯度
x = torch.tensor([3.0], requires_grad=True)

# 定义函数f(x) = x^2 + 2x + 1
y = x**2 + 2*x + 1

# 使用自动微分计算y关于x的导数
y.backward()

# 输出导数值
print("导数值:", x.grad.item())
导数值: 8.0
#练习3:
# 导入Torch库
import torch

# 生成一个包含10个随机数的张量
x = torch.randn(10)

# 计算均值
mean = x.mean()
print("均值:", mean.item())

# 计算中位数
median = x.median()
print("中位数:", median.item())

# 计算众数
mode = torch.mode(x)
print("众数:", mode.values.item(), mode.indices.item())

# 计算方差
var = x.var()
print("方差:", var.item())

# 计算标准差
std = x.std()
print("标准差:", std.item())
均值: -0.7022029161453247
中位数: -0.7682544589042664
众数: -2.352609872817993 8
方差: 0.6179051399230957
标准差: 0.7860694527626038
#练习4:
# 导入Torch库
import torch

# 创建两个形状不同的张量
x = torch.tensor([[1, 2], [3, 4]])
y = torch.tensor([5, 6])

# 使用矩阵广播机制进行加法、减法、乘法和除法运算
add_result = x + y
subtract_result = x - y
multiply_result = x * y
divide_result = x / y

# 输出结果
print("加法结果:", add_result)
print("减法结果:", subtract_result)
print("乘法结果:", multiply_result)
print("除法结果:", divide_result)
加法结果: tensor([[ 6,  8],
        [ 8, 10]])
减法结果: tensor([[-4, -4],
        [-2, -2]])
乘法结果: tensor([[ 5, 12],
        [15, 24]])
除法结果: tensor([[0.2000, 0.3333],
        [0.6000, 0.6667]])

网站公告

今日签到

点亮在社区的每一天
去签到