欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Pytorch環(huán)境搭建與基本語(yǔ)法

 更新時(shí)間:2020年06月03日 08:32:02   作者:磐創(chuàng)AI  
這篇文章主要介紹了Pytorch環(huán)境搭建與基本語(yǔ)法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

來(lái)源 | OpenCV學(xué)堂

作者 | gloomyfish

基本思路選擇

以前我用過(guò)Caffe,用過(guò)tensorflow,最近一直在用pytorch感覺(jué)特別好用。所以打算寫(xiě)點(diǎn)我學(xué)習(xí)的過(guò)程跟經(jīng)驗(yàn),如果你是一個(gè)pytorch的高手自然可以忽略,如果你也打算學(xué)習(xí)pytorch框架,那就跟我一起學(xué)習(xí)吧,所謂獨(dú)學(xué)而無(wú)友,孤陋而寡聞!

pytorch安裝

01

演示系統(tǒng)環(huán)境

  • Windows10
  • Pytorch1.4
  • CUDA10.0
  • VS2015
  • Python3.6.5

CPU版本

install pytorch torchvision cpuonly -c pytorch

GPU版本

install pytorch torchvision cudatoolkit=10.0 -c pytorch

測(cè)試安裝是否正常, CUDA支持正常

測(cè)試結(jié)果一切正常!

安裝的時(shí)候你還可以更直接點(diǎn)

pip install pytorch torchvision

就好啦!我知道很多人喜歡用各種python的工具跟IDE做開(kāi)發(fā),那些都是個(gè)人愛(ài)好,喜歡就好,但是千萬(wàn)別強(qiáng)迫別人跟你一樣!有IDE強(qiáng)迫癥!我從開(kāi)始學(xué)習(xí)python就一直用pycharm!千萬(wàn)別問(wèn)我好用不好用,方便不方便!覺(jué)得適合自己即可。

Pytorch基本語(yǔ)法演示

02

演示了pytorch中基本常量、變量、矩陣操作、CUDA調(diào)用,numpy與tensor轉(zhuǎn)化,維度轉(zhuǎn)化,自動(dòng)梯度等基本知識(shí)。代碼如下:

from __future__ import print_function
import torch
import numpy as np

print(torch.__version__)

# 定義矩陣
x = torch.empty(2, 2)
print(x)

# 定義隨機(jī)初始化矩陣
x = torch.randn(2, 2)
print(x)

# 定義初始化為零
x = torch.zeros(3, 3)
print(x)

# 定義數(shù)據(jù)為tensor
x = torch.tensor([5.1, 2., 3., 1.])
print(x)

# 操作
a = torch.tensor([1.,2.,3.,4.,5.,6.,7.,8.])
b = torch.tensor([11.,12.,13.,14.,15.,16.,17.,18.])
c = a.add(b)
print(c)

# 維度變換 2x4
a = a.view(-1, 4)
b = b.view(-1, 4)
c = torch.add(a, b)
print(c, a.size(), b.size())

# torch to numpy and visa
na = a.numpy()
nb = b.numpy()
print("\na =",na,"\nb =", nb)

# 操作
d = np.array([21.,22.,23.,24.,25.,26.,27.,28.], dtype=np.float32)
print(d.reshape(2, 4))
d = torch.from_numpy(d.reshape(2, 4))
sum = torch.sub(c, d)
print(sum, "\n sum = ", sum.size())

# using CUDA
if torch.cuda.is_available():
 result = d.cuda() + c.cuda()
 print("\n result = ", result)

# 自動(dòng)梯度
x = torch.randn(1, 5, requires_grad=True)
y = torch.randn(5, 3, requires_grad=True)
z = torch.randn(3, 1, requires_grad=True)
print("\nx=",x, "\ny=",y, "\nz=",z)
xy = torch.matmul(x, y)
xyz = torch.matmul(xy, z)
xyz.backward()
print(x.grad, y.grad, z.grad)

運(yùn)行輸出結(jié)果:

1.4.0
tensor([[0., 0.],
        [0., 0.]])
tensor([[-0.4624, -1.1495],
        [ 1.9408, -0.1796]])
tensor([[0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.]])
tensor([5.1000, 2.0000, 3.0000, 1.0000])
tensor([12., 14., 16., 18., 20., 22., 24., 26.])
tensor([[12., 14., 16., 18.],
        [20., 22., 24., 26.]]) torch.Size([2, 4]) torch.Size([2, 4])

a = [[1. 2. 3. 4.]
 [5. 6. 7. 8.]]
b = [[11. 12. 13. 14.]
 [15. 16. 17. 18.]]
[[21. 22. 23. 24.]
 [25. 26. 27. 28.]]
tensor([[-9., -8., -7., -6.],
        [-5., -4., -3., -2.]])
 sum =  torch.Size([2, 4])

 result =  tensor([[33., 36., 39., 42.],
        [45., 48., 51., 54.]], device='cuda:0')

x= tensor([[ 0.3029, -0.4030, -0.9148, -0.9237,  0.7549]], requires_grad=True)
y= tensor([[-0.9032, -0.4092, -0.0682],
        [ 0.3689, -0.9655, -0.1346],
        [ 1.5101,  1.4418,  0.1058],
        [ 1.0259, -1.6011,  0.4881],
        [-0.3989,  0.9156, -1.6290]], requires_grad=True)
z= tensor([[ 1.4343],
        [ 2.2974],
        [-0.0864]], requires_grad=True)
tensor([[-2.2298, -1.6776,  5.4691, -2.2492,  1.6721]]) tensor([[ 0.4344,  0.6959, -0.0262],
        [-0.5781, -0.9260,  0.0348],
        [-1.3121, -2.1017,  0.0790],
        [-1.3249, -2.1222,  0.0798],
        [ 1.0827,  1.7342, -0.0652]]) tensor([[-3.0524],
        [ 1.1164],
        [-1.7437]])

總結(jié)

到此這篇關(guān)于Pytorch–環(huán)境搭建與基本語(yǔ)法的文章就介紹到這了,更多相關(guān)Pytorch–環(huán)境搭建與基本語(yǔ)法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python查找重復(fù)圖片并刪除(圖片去重)

    python查找重復(fù)圖片并刪除(圖片去重)

    這篇文章主要為大家詳細(xì)介紹了python查找重復(fù)圖片并刪除,識(shí)別不同尺寸大小一致的圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • 玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    用Python實(shí)現(xiàn)發(fā)短信功能,當(dāng)監(jiān)控到問(wèn)題出現(xiàn)時(shí),短信報(bào)警,使問(wèn)題能得到及時(shí)的處理。當(dāng)然,我相信,用Python發(fā)短信應(yīng)用場(chǎng)景不止此一處,下面我們開(kāi)始Python發(fā)短信的實(shí)現(xiàn),感興趣的朋友參考下吧
    2022-01-01
  • Python?Pipeline處理數(shù)據(jù)工作原理探究

    Python?Pipeline處理數(shù)據(jù)工作原理探究

    如果你是一個(gè)Python開(kāi)發(fā)者,你可能聽(tīng)過(guò)"pipeline"這個(gè)術(shù)語(yǔ),但?pipeline?到底是什么,它又有什么用呢?在這篇文章中,我們將探討?Python?中的?pipeline?概念,它們是如何工作的,以及它們?nèi)绾螏椭憔帉?xiě)更清晰、更高效的代碼
    2024-01-01
  • Python version 2.7 required, which was not found in the registry

    Python version 2.7 required, which was not found in the regi

    這篇文章主要介紹了安裝PIL庫(kù)時(shí)提示錯(cuò)誤Python version 2.7 required, which was not found in the registry問(wèn)題的解決方法,需要的朋友可以參考下
    2014-08-08
  • Python對(duì)象的生命周期源碼學(xué)習(xí)

    Python對(duì)象的生命周期源碼學(xué)習(xí)

    這篇文章主要為大家介紹了Python對(duì)象的生命周期源碼學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • python getpass實(shí)現(xiàn)密文實(shí)例詳解

    python getpass實(shí)現(xiàn)密文實(shí)例詳解

    這篇文章主要介紹了python getpass實(shí)現(xiàn)密文實(shí)例詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python實(shí)現(xiàn)ftp文件傳輸功能

    python實(shí)現(xiàn)ftp文件傳輸功能

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)ftp文件傳輸功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 使用python搭建服務(wù)器并實(shí)現(xiàn)Android端與之通信的方法

    使用python搭建服務(wù)器并實(shí)現(xiàn)Android端與之通信的方法

    今天小編就為大家分享一篇使用python搭建服務(wù)器并實(shí)現(xiàn)Android端與之通信的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • python統(tǒng)計(jì)字母、空格、數(shù)字等字符個(gè)數(shù)的實(shí)例

    python統(tǒng)計(jì)字母、空格、數(shù)字等字符個(gè)數(shù)的實(shí)例

    今天小編就為大家分享一篇python統(tǒng)計(jì)字母、空格、數(shù)字等字符個(gè)數(shù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • python SocketServer源碼深入解讀

    python SocketServer源碼深入解讀

    這篇文章主要介紹了python SocketServer源碼深入解讀,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論