import torch
# 创建一个张量
x = torch.tensor([1.0, 2.0, 3.0, 4.0])
# 创建一个需要计算梯度的张量
y = torch.tensor([5.0, 6.0, 7.0, 8.0], requires_grad=True)
# 定义一个简单的线性函数
z = x + y
# 计算 z 的均值
mean_z = z.mean()
# 反向传播,计算梯度
mean_z.backward()
# 打印 y 的梯度
print(y.grad)
导入 PyTorch 库:
import torch
这行代码导入了 PyTorch 库,它是用于深度学习和科学计算的强大工具。
创建张量:
x = torch.tensor([1.0, 2.0, 3.0, 4.0])
创建了一个包含四个浮点数的张量 x。
创建需要计算梯度的张量:
y = torch.tensor([5.0, 6.0, 7.0, 8.0], requires_grad=True)
创建了一个同样包含四个浮点数的张量 y,并且设置 requires_grad=True 表示这个张量需要计算梯度。
定义一个简单的线性函数:
z = x + y
将张量 x 和 y 相加,结果存储在张量 z 中。
计算 z 的均值:
mean_z = z.mean()
计算张量 z 的均值,并将结果存储在 mean_z 中。
反向传播,计算梯度:
mean_z.backward()
调用 backward() 方法进行反向传播,自动计算并存储 y 的梯度。
打印 y 的梯度:
print(y.grad)
打印张量 y 的梯度,验证反向传播是否正确执行。
上一篇:python随机生成数字
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站