欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于PyTorch的深度學習入門教程之PyTorch的自動梯度計算

ss ? 來源:雁回晴空 ? 作者:雁回晴空 ? 2021-02-16 15:26 ? 次閱讀

本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。

Part1:PyTorch簡單知識

Part2:PyTorch的自動梯度計算

Part3:使用PyTorch構建一個神經網絡

Part4:訓練一個神經網絡分類器

Part5:數(shù)據(jù)并行化

本文是關于Part2的內容。

Part2:PyTorch的自動梯度計算

autograd package是PyTorch中所有神經網絡的核心。先了解一些基本知識,然后開始訓練第一個神經網絡。autograd package提供了Tensors上所有運算的自動求導功能。它是一個按運行定義(define-by-run)的框架,這意味著反向傳播是依據(jù)代碼運行情況而定義的,并且每一個單次迭代都可能不相同。

1 變量(Variable)

autograd.Variable 是這個package的中心類。它打包了一個Tensor,并且支持幾乎所有運算。一旦你完成了你的計算,可以調用.backward(),所有梯度就可以自動計算。

你可以使用.data屬性來訪問原始tensor。相對于變量的梯度值可以被積累到.grad中。

這里還有一個類對于自動梯度的執(zhí)行是很重要的:Function(函數(shù))

變量和函數(shù)是相互關聯(lián)的,并且建立一個非循環(huán)圖。每一個變量有一個.grad_fn屬性,它可以引用一個創(chuàng)建了變量的函數(shù)(除了那些用戶創(chuàng)建的變量——他們的grad_fn是空的)。

如果想要計算導數(shù),可以調用Variable上的.backward()。如果變量是標量(只有一個元素),你不需要為backward()確定任何參數(shù)。但是,如果它有多個元素,你需要確定grad_output參數(shù)(這是一個具有匹配形狀的tensor)。

import torch
from torch.autograd import Variable

創(chuàng)建一個變量:

x = Variable(torch.ones(2, 2), requires_grad=True)
print(x)

對變量做一個運算:

y = x + 2
print(y)

y作為一個運算的結果被創(chuàng)建,所以它有grad_fn。

print(y.grad_fn)

在y上做更多的運算:

z = y * y * 3
out = z.mean()

print(z, out)

2 梯度(Gradients)

現(xiàn)在來做反向傳播。out.backward()等價于out.backward(torch.Tensor([1.0]))。

out.backward()

打印梯度 d(out)/dx

print(x.grad)

你應該會得到一個元素為4.5的矩陣。

你可以使用autograd做很多瘋狂的事情。

x = torch.randn(3)
x = Variable(x, requires_grad=True)

y = x * 2
while y.data.norm() < 1000:
    y = y * 2

print(y)
gradients = torch.FloatTensor([0.1, 1.0, 0.0001])
y.backward(gradients)

print(x.grad)

責任編輯:xj

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4783

    瀏覽量

    101240
  • 深度學習
    +關注

    關注

    73

    文章

    5518

    瀏覽量

    121613
  • pytorch
    +關注

    關注

    2

    文章

    808

    瀏覽量

    13383
收藏 人收藏

    評論

    相關推薦

    PyTorch 數(shù)據(jù)加載與處理方法

    PyTorch 是一個流行的開源機器學習庫,它提供了強大的工具來構建和訓練深度學習模型。在構建模型之前,一個重要的步驟是加載和處理數(shù)據(jù)。 1. Py
    的頭像 發(fā)表于 11-05 17:37 ?508次閱讀

    如何使用 PyTorch 進行強化學習

    計算圖和自動微分功能,非常適合實現(xiàn)復雜的強化學習算法。 1. 環(huán)境(Environment) 在強化學習中,環(huán)境是一個抽象的概念,它定義了智能體(agent)可以執(zhí)行的動作(acti
    的頭像 發(fā)表于 11-05 17:34 ?423次閱讀

    Pytorch深度學習訓練的方法

    掌握這 17 種方法,用最省力的方式,加速你的 Pytorch 深度學習訓練。
    的頭像 發(fā)表于 10-28 14:05 ?289次閱讀
    <b class='flag-5'>Pytorch</b><b class='flag-5'>深度</b><b class='flag-5'>學習</b>訓練的方法

    pytorch怎么在pycharm中運行

    第一部分:PyTorch和PyCharm的安裝 1.1 安裝PyTorch PyTorch是一個開源的機器學習庫,用于構建和訓練神經網絡。要在PyCharm中使用
    的頭像 發(fā)表于 08-01 16:22 ?1619次閱讀

    pytorch環(huán)境搭建詳細步驟

    PyTorch作為一個廣泛使用的深度學習框架,其環(huán)境搭建對于從事機器學習深度學習研究及開發(fā)的人
    的頭像 發(fā)表于 08-01 15:38 ?985次閱讀

    pytorch和python的關系是什么

    ,PyTorch已經成為了一個非常受歡迎的框架。本文將介紹PyTorch和Python之間的關系,以及它們在深度學習領域的應用。 Python簡介 Python是一種高級、解釋型、通用
    的頭像 發(fā)表于 08-01 15:27 ?2437次閱讀

    PyTorch深度學習開發(fā)環(huán)境搭建指南

    PyTorch作為一種流行的深度學習框架,其開發(fā)環(huán)境的搭建對于深度學習研究者和開發(fā)者來說至關重要。在Windows操作系統(tǒng)上搭建
    的頭像 發(fā)表于 07-16 18:29 ?1328次閱讀

    基于PyTorch的卷積核實例應用

    深度學習計算機視覺領域,卷積操作是一種至關重要的技術,尤其在圖像處理和特征提取方面發(fā)揮著核心作用。PyTorch作為當前最流行的深度
    的頭像 發(fā)表于 07-11 15:19 ?558次閱讀

    pytorch中有神經網絡模型嗎

    當然,PyTorch是一個廣泛使用的深度學習框架,它提供了許多預訓練的神經網絡模型。 PyTorch中的神經網絡模型 1. 引言 深度
    的頭像 發(fā)表于 07-11 09:59 ?852次閱讀

    PyTorch的介紹與使用案例

    學習領域的一個重要工具。PyTorch底層由C++實現(xiàn),提供了豐富的API接口,使得開發(fā)者能夠高效地構建和訓練神經網絡模型。PyTorch不僅支持動態(tài)計算圖,還提供了強大的
    的頭像 發(fā)表于 07-10 14:19 ?479次閱讀

    tensorflow和pytorch哪個更簡單?

    : TensorFlow和PyTorch都是用于深度學習和機器學習的開源框架。TensorFlow由Google Brain團隊開發(fā),而PyTorc
    的頭像 發(fā)表于 07-05 09:45 ?1024次閱讀

    解讀PyTorch模型訓練過程

    PyTorch作為一個開源的機器學習庫,以其動態(tài)計算圖、易于使用的API和強大的靈活性,在深度學習領域得到了廣泛的應用。本文將深入解讀
    的頭像 發(fā)表于 07-03 16:07 ?1198次閱讀

    PyTorch的特性和使用方法

    使用Python重新寫了很多內容,使其更加靈活易用。它不僅是一個擁有自動求導功能的深度神經網絡框架,還可以看作是一個加入了GPU支持的NumPy。PyTorch支持動態(tài)圖,允許在運行時構建計算
    的頭像 發(fā)表于 07-02 14:27 ?672次閱讀

    如何使用PyTorch建立網絡模型

    PyTorch是一個基于Python的開源機器學習庫,因其易用性、靈活性和強大的動態(tài)圖特性,在深度學習領域得到了廣泛應用。本文將從PyTorch
    的頭像 發(fā)表于 07-02 14:08 ?481次閱讀

    TensorFlow與PyTorch深度學習框架的比較與選擇

    深度學習作為人工智能領域的一個重要分支,在過去十年中取得了顯著的進展。在構建和訓練深度學習模型的過程中,深度
    的頭像 發(fā)表于 07-02 14:04 ?1101次閱讀