日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2.0 自动梯度 - PyTorch学习笔记

發布時間:2025/4/5 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2.0 自动梯度 - PyTorch学习笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

自動梯度 (AUTOGRAD: AUTOMATIC DIFFERENTIATION)

  • 導入 torch 包
  • import torch
  • 新建一個需要的2x2張量,并設置梯度記錄為開啟狀態
  • x = torch.ones(2, 2, requires_grad=True) print(x)

    輸出:

    tensor([[1., 1.],[1., 1.]], requires_grad=True)
  • 進行一個張量操作
  • y = x + 2 print(y)

    輸出:

    tensor([[3., 3.],[3., 3.]], grad_fn=<AddBackward0>)
  • 顯示張量的梯度已經被記錄
  • print(y.grad_fn)

    輸出:

    <AddBackward0 object at 0x7f1d35f45ef0>
  • 求均值
  • z = y * y * 3 out = z.mean()print(z, out)

    輸出:

    tensor([[27., 27.],[27., 27.]], grad_fn=<MulBackward0>) tensor(27., grad_fn=<MeanBackward0>)
  • 更改梯度計算參數為True
  • a = torch.randn(2, 2) a = ((a * 3) / (a - 1)) print(a.requires_grad) a.requires_grad_(True) print(a.requires_grad) b = (a * a).sum() print(b.grad_fn)

    輸出:

    False True <SumBackward0 object at 0x7f1d35f5bb38>
  • 開始反向傳播
  • out.backward() print(x.grad)

    輸出:

    tensor([[4.5000, 4.5000],[4.5000, 4.5000]])
  • 計算 y 的范數
  • x = torch.randn(3, requires_grad=True)y = x * 2 while y.data.norm() < 1000:y = y * 2print(y)

    輸出:

    tensor([1001.7316, 475.3566, -226.5395], grad_fn=<MulBackward0>)
  • 計算 x 的梯度
  • v = torch.tensor([0.1, 1.0, 0.0001], dtype=torch.float) y.backward(v)print(x.grad)

    輸出:

    tensor([1.0240e+02, 1.0240e+03, 1.0240e-01])
  • 關閉梯度跟蹤
  • print(x.requires_grad) print((x ** 2).requires_grad)with torch.no_grad():print((x ** 2).requires_grad)

    輸出:

    True True False
  • 關閉梯度跟蹤的另一個方式 .detach()
  • print(x.requires_grad) y = x.detach() print(y.requires_grad) print(x.eq(y).all())

    輸出:

    True False tensor(True)

    Ref

    https://pytorch.org/tutorials/beginner/blitz/autograd_tutorial.html

    總結

    以上是生活随笔為你收集整理的2.0 自动梯度 - PyTorch学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。