PyTorch一小時(shí)掌握之基本操作篇
創(chuàng)建數(shù)據(jù)

torch.empty()
創(chuàng)建一個(gè)空張量矩陣.
格式:
torch.empty(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False, pin_memory=False, memory_format=torch.contiguous_format) → Tensor
參數(shù):
- size: 生成矩陣的形狀, 必選
- dtype: 數(shù)據(jù)類型, 默認(rèn)為 None
例子:
# 創(chuàng)建一個(gè)形狀為[2, 2]的矩陣 a = torch.empty(2, 2) print(a) # 創(chuàng)建一個(gè)形狀為[3, 3]的矩陣 b = torch.empty(3, 3) print(b)
輸出結(jié)果:
tensor([[0., 0.],
[0., 0.]])
tensor([[0., 0., 0.],
[0., 0., 0.],
[0., 0., 0.]])
torch.zeros()
創(chuàng)建一個(gè)全零矩陣.
格式:
torch.zeros(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
參數(shù):
- size: 生成矩陣的形狀, 必選
- dtype: 數(shù)據(jù)類型, 默認(rèn)為 None
例子:
# 創(chuàng)建一個(gè)形狀為[2, 2]的全零數(shù)組 a = torch.zeros([2, 2], dtype=torch.float32) print(a) # 創(chuàng)建一個(gè)形狀為[3, 3]的全零數(shù)組 b = torch.zeros([3, 3], dtype=torch.float32) print(b)
輸出結(jié)果:
tensor([[0., 0.],
[0., 0.]])
tensor([[0., 0., 0.],
[0., 0., 0.],
[0., 0., 0.]])
torch.ones()
創(chuàng)建一個(gè)全一矩陣.
格式:
torch.ones(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
參數(shù):
- size: 生成矩陣的形狀, 必選
- dtype: 數(shù)據(jù)類型, 默認(rèn)為 None
例子:
# 創(chuàng)建一個(gè)形狀為[2, 2]的全一數(shù)組 a = torch.ones([2, 2], dtype=torch.float32) print(a) # 創(chuàng)建一個(gè)形狀為[3, 3]的全一數(shù)組 b = torch.ones([3, 3], dtype=torch.float32) print(b)
輸出結(jié)果:
tensor([[1., 1.],
[1., 1.]])
tensor([[1., 1., 1.],
[1., 1., 1.],
[1., 1., 1.]])
torch.tensor()
通過數(shù)據(jù)創(chuàng)建張量.
格式:
torch.tensor(data, *, dtype=None, device=None, requires_grad=False, pin_memory=False) → Tensor
參數(shù):
- data: 數(shù)據(jù) (數(shù)組, 元組, ndarray, scalar)
- dtype: 數(shù)據(jù)類型, 默認(rèn)為 None
例子:
# 通過數(shù)據(jù)創(chuàng)建張量 array = np.arange(1, 10).reshape(3, 3) print(array) print(type(array)) tensor = torch.tensor(array) print(tensor) print(type(tensor))
輸出結(jié)果:
[[1 2 3]
[4 5 6]
[7 8 9]]
<class 'numpy.ndarray'>
tensor([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]], dtype=torch.int32)
<class 'torch.Tensor'>
torch.rand()
創(chuàng)建一個(gè) 0~1 隨機(jī)數(shù)的張量矩陣.
格式:
torch.rand(*size, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
參數(shù):
- size: 生成矩陣的形狀, 必選
- dtype: 數(shù)據(jù)類型, 默認(rèn)為 None
例子:
# 創(chuàng)建形狀為[2, 2]的隨機(jī)數(shù)矩陣 rand = torch.rand(2, 2) print(rand)
輸出結(jié)果:
tensor([[0.6209, 0.3424],
[0.3506, 0.7986]])
數(shù)學(xué)運(yùn)算

torch.add()
返回相加的張量.
格式:
torch.add(input, other, *, out=None) → Tensor
例子:
# 張量相加 input1 = torch.tensor([[1, 2], [3, 4]]) print(input1) input2 = torch.tensor([[4, 3], [2, 1]]) print(input2) output = torch.add(input1, input2) print(output)
輸出結(jié)果:
tensor([[1, 2],
[3, 4]])
tensor([[4, 3],
[2, 1]])
tensor([[5, 5],
[5, 5]])
注: 相加的張量形狀必須一致, 否則會報(bào)錯.
torch.sub()
返回相減的張量.
例子:
# 張量相減 input1 = torch.tensor([[1, 2], [3, 4]]) print(input1) input2 = torch.tensor([[4, 3], [2, 1]]) print(input2) output = torch.sub(input1, input2) print(output)
輸出結(jié)果:
tensor([[1, 2],
[3, 4]])
tensor([[4, 3],
[2, 1]])
tensor([[-3, -1],
[ 1, 3]])
torch.matmul()
例子:
# 張量矩陣相乘 input1 = torch.tensor([[1, 1, 1]]) print(input1) input2 = torch.tensor([[3], [3], [3]]) print(input2) output = torch.matmul(input1, input2) print(output)
輸出結(jié)果:
tensor([[1, 1, 1]])
tensor([[3],
[3],
[3]])
tensor([[9]])
索引操作
索引 (index) 可以幫助我們快速的找到張量中的特定信息.

例子:
# 簡單的索引操作 ones = torch.ones([3, 3]) print(ones[: 2]) print(ones[:, : 2])
調(diào)試輸出:
tensor([[1., 1., 1.],
[1., 1., 1.]])
tensor([[1., 1.],
[1., 1.],
[1., 1.]])
到此這篇關(guān)于PyTorch一小時(shí)掌握之基本操作篇的文章就介紹到這了,更多相關(guān)PyTorch基本操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實(shí)現(xiàn)批量轉(zhuǎn)換圖片為黑白
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)批量轉(zhuǎn)換圖片為黑白,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06
python 遞歸遍歷文件夾,并打印滿足條件的文件路徑實(shí)例
下面小編就為大家?guī)硪黄猵ython 遞歸遍歷文件夾,并打印滿足條件的文件路徑實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08
python實(shí)現(xiàn)的文件同步服務(wù)器實(shí)例
這篇文章主要介紹了python實(shí)現(xiàn)的文件同步服務(wù)器,實(shí)例分析了文件同步服務(wù)器的原理及客戶端、服務(wù)端的實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-06-06
pycharm新建Vue項(xiàng)目的方法步驟(圖文)
這篇文章主要介紹了pycharm新建Vue項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
python構(gòu)建基礎(chǔ)的爬蟲教學(xué)
在本篇內(nèi)容里小編給大家分享的是關(guān)于python構(gòu)建基礎(chǔ)的爬蟲教學(xué)內(nèi)容,需要的朋友們學(xué)習(xí)下。2018-12-12
OpenCV半小時(shí)掌握基本操作之角點(diǎn)檢測
這篇文章主要介紹了OpenCV基本操作之角點(diǎn)檢測,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09

