Pytorch 笔记——tensor
tensor和numpy中的ndarray很相似,唯一的不同是tensor可以應(yīng)用在GPU上,來(lái)加速計(jì)算。
1?創(chuàng)建tensor
| randn(size) | 創(chuàng)建一個(gè)標(biāo)準(zhǔn)正態(tài)分布內(nèi)隨機(jī)的矩陣 | |
| zeros(size) | 全零矩陣 | |
| tensor(list) | 創(chuàng)建一個(gè)內(nèi)容為參數(shù)的tensor | |
| linspace | 同numpy | |
| randperm | 返回一個(gè)0到n-1的數(shù)組 |
基本上創(chuàng)建的這些函數(shù)都有一個(gè)對(duì)應(yīng)的like函數(shù)(randn_like,zeros_like…)來(lái)創(chuàng)建一個(gè)size和形參一樣的tensor
2?tensor和ndarray的轉(zhuǎn)換
無(wú)論誰(shuí)轉(zhuǎn)換成誰(shuí),轉(zhuǎn)換的tensor和ndarray都是另一個(gè)的引用,要變一起變。
2.1?tensor->ndarray
2.2?ndarray->tensor
3?cuda和cpu的tensor切換
4 一些關(guān)于tensor的運(yùn)算
很多運(yùn)算符都在末尾有一個(gè)_,表示inplace操作
| 加法 | + | |
| tensor.add | ||
| torch.add | ||
| 修改一個(gè)的值 (很多運(yùn)算符都在末尾有一個(gè)_,表示inplace操作 |
5. torch的函數(shù)
很多函數(shù) torch.func(tensor)和tensor.func()是等價(jià)的。
size() | tensor的形狀 | |
view | torch里面的“reshape” | |
item | 如果tensor中只有一個(gè)元素的時(shí)候,使用這個(gè)函數(shù)獲取這個(gè) 數(shù)值 | |
abs | 絕對(duì)值 | |
sin | ||
mm | 矩陣相乘 | |
pow | 冪 | |
cat | 合并數(shù)組 | axis=0 沿著列的方向[1…n][0] axis=1 沿著行的方向[0][1;;;n] axis=0 (從左往右數(shù))第0個(gè)坐標(biāo)的元素疊加,其他坐標(biāo)的元素不變 axis=1 第1個(gè)坐標(biāo)的元素疊加,其他坐標(biāo)的元素不變 |
max | 如果又axis參數(shù)的話,返回的第一個(gè)下標(biāo)是所有的最大值,第二個(gè)下標(biāo)是最大值對(duì)應(yīng)的index。 axis=0 [1~n][0]里面找到最大的一個(gè), 也就是第零個(gè)坐標(biāo)的參數(shù)變化(去比較),其他坐標(biāo)的參數(shù)不變 axis=1 [0][1~n]里面找到最大的一個(gè), 也就是第一個(gè)坐標(biāo)的參數(shù)變化(去比較),其他坐標(biāo)的參數(shù)不變 | |
narrow() | 截取tensor的一部分 | torch.narrow(input, dim, start, length) ?返回的部分和input 共享內(nèi)存 ? input 需要被截取的tensor dim 沿著那個(gè)維度截取 start 起始截取下標(biāo) length? 截取多長(zhǎng)的 ? (沿著第0個(gè)下標(biāo)截取)? ? ? (沿著第1個(gè)下標(biāo)截取) |
squeeze() | 我們首先創(chuàng)建一個(gè)維度為(1,2,3)的tensor 然后對(duì)他squeeze 只有squeeze對(duì)應(yīng)的維度為1的時(shí)候,我們才會(huì)把這個(gè)維度去掉,不然的話維度保持不變 | |
unsqueeze | ||
masked_fill(data,x) | 將data為True的相應(yīng)位置的值替換為x |
?numel | tensor中元素的個(gè)數(shù) | |
permute? | tensor維度換位 | (2,0,1)的意思是,維度變換成:(原來(lái)的第二個(gè),原來(lái)的第0個(gè),原來(lái)的第1個(gè))? |
t | 轉(zhuǎn)置 | |
| logical_not | 邏輯取反 |
總結(jié)
以上是生活随笔為你收集整理的Pytorch 笔记——tensor的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 文巾解题 9 回文数
- 下一篇: pytorch笔记——autograd和