【代码pycharm】动手学深度学习v2-07 自动求导

老师上课用jupyter 我边听边用pycharm写的

python 复制代码
import torch
print('1.自动梯度计算')
x=torch.arange(4.0,requires_grad=True)  # 1.将梯度附加到想要对其计算偏导数的变量
print('x:', x)
y=2*torch.dot(x,x) # 2.记录目标值的计算
print('y:', y)
y.backward()   # 3.执行它的反向传播函数
print('x.grad:',x.grad) # 4.访问得到的梯度
print('x.grad == 4*x:',x.grad==4*x)
print('2.计算另一个函数')
x.grad.zero_()
y=x.sum()
y.backward()
print('x.grad:',x.grad)
print('3.非标量变量的反向传播')
x.grad.zero_()
y=x*x
y.sum().backward()
print('x.grad:',x.grad)
print('4.将某些计算移动到记录的计算图之外')
x.grad.zero_()
y=x*x
u=y.detach()
z=u*x
z.sum().backward()
print('x.grad==u:',x.grad==u)
x.grad.zero_()
y.sum().backward()
print('x.grad==2*x:',x.grad==2*x)
print('5.Python控制流的梯度计算')
def f(a):
    b=a*2
    while b.norm()<1000:
        b=b*2
    if b.sum()>0:
        c=b
    else:
        c=100*b
    return c
a=torch.randn(size=(),requires_grad=True)
d=f(a)
d.backward()
print('6.a.grad==d/a',a.grad==d/a)

运行结果

相关推荐
一路向北he4 小时前
trae或者vscode定义了文件,但是文件不亮是灰的
ide·vscode·编辑器
海海不掉头发6 小时前
阶段五_实验34-38_学习总结
深度学习·神经网络·学习·机器学习
布吉岛的石头7 小时前
Java 程序员第 49 阶段5:BERT 预训练目标 MLM+NSP 的工程含义
java·人工智能·深度学习·bert·transformer
广州山泉婚姻9 小时前
Go微服务落地:服务通信、注册发现完整实现分享
人工智能·深度学习·微服务
kyrie_sakura9 小时前
大模型学习7 -- 深度学习2 -- 张量
python·深度学习
happylifetree11 小时前
Python06-08:Python开发工具PyCharm安装
python·pycharm
2601_9621773011 小时前
小白安装Claude Code完整教程:Windows从零装好并接入Crazyrouter(附403解决方法)
人工智能·深度学习·目标检测·机器学习·数据挖掘
xx_xxxxx_11 小时前
论文阅读-CoTTA
人工智能·深度学习·机器学习
空奈qwq12 小时前
PyTorch 进阶指南:从张量操作到模型训练全流程
人工智能·pytorch·深度学习
田园诗人之园12 小时前
深度学习归一化 fully 指南:BN/LN/IN/GN/RMSNorm 公式推导 + PyTorch 实验全验证(附完整可运行代码)
深度学习·深度学习归一化