国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

深度學(xué)習(xí)torch基礎(chǔ)知識(shí)

這篇具有很好參考價(jià)值的文章主要介紹了深度學(xué)習(xí)torch基礎(chǔ)知識(shí)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

detach()

detach是截?cái)喾聪騻鞑サ奶荻攘?br> 將某個(gè)node變成不需要梯度的Varibale。因此當(dāng)反向傳播經(jīng)過(guò)這個(gè)node時(shí),梯度就不會(huì)從這個(gè)node往前面?zhèn)鞑ァ?/p>

拼接函數(shù)torch.stack()

拼接:將多個(gè)維度參數(shù)相同的張量連接成一個(gè)張量

a=torch.tensor([[1,2,3],[4,5,6]])
b=torch.tensor([[10,20,30],[40,50,60]])
c=torch.tensor([[100,200,300],[400,500,600]])
print(torch.stack([a,b,c],dim=0))
print(torch.stack([a,b,c],dim=1))
print(torch.stack([a,b,c],dim=2))
print(torch.stack([a,b,c],dim=0).size())
print(torch.stack([a,b,c],dim=1).size())
print(torch.stack([a,b,c],dim=2).size())
#輸出結(jié)果為:
tensor([[[  1,   2,   3],
         [  4,   5,   6]],

        [[ 10,  20,  30],
         [ 40,  50,  60]],

        [[100, 200, 300],
         [400, 500, 600]]])
tensor([[[  1,   2,   3],
         [ 10,  20,  30],
         [100, 200, 300]],

        [[  4,   5,   6],
         [ 40,  50,  60],
         [400, 500, 600]]])
tensor([[[  1,  10, 100],
         [  2,  20, 200],
         [  3,  30, 300]],

        [[  4,  40, 400],
         [  5,  50, 500],
         [  6,  60, 600]]])
torch.Size([3, 2, 3])
torch.Size([2, 3, 3])
torch.Size([2, 3, 3])

torch.nn.DataParallel()

torch.nn.DataParallel(module, device_ids=None, output_device=None, dim=0)
module即表示你定義的模型,device_ids表示你訓(xùn)練的device,output_device這個(gè)參數(shù)表示輸出結(jié)果的device,而這最后一個(gè)參數(shù)output_device一般情況下是省略不寫(xiě)的,那么默認(rèn)就是在device_ids[0],也就是第一塊卡上。

np.clip()

a = np.arange(10)
np.clip(a, 1, 8)
array([1, 1, 2, 3, 4, 5, 6, 7, 8, 8]) # a被限制在1-8之間
a
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) # 沒(méi)改變a的原值

np.clip(a, 3, 6, out=a) # 修剪后的數(shù)組存入到a中
array([3, 3, 3, 3, 4, 5, 6, 6, 6, 6])

torch.linspace()

函數(shù)的作用是,返回一個(gè)一維的tensor,這個(gè)張量包含了從start到end,分成steps個(gè)線段得到的向量。

torch.linspace(start, end, steps=100, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) 
→ Tensor

例如

import torch
print(torch.linspace(3,10,5))
#tensor([ 3.0000,  4.7500,  6.5000,  8.2500, 10.0000])

type=torch.float
print(torch.linspace(-10,10,steps=6,dtype=type))
#tensor([-10.,  -6.,  -2.,   2.,   6.,  10.])

PyTorch中tensor.repeat()

當(dāng)參數(shù)只有兩個(gè)時(shí),第一個(gè)參數(shù)表示的是行復(fù)制的次數(shù),第二個(gè)參數(shù)表示列復(fù)制的次數(shù);
當(dāng)參數(shù)有三個(gè)時(shí),第一個(gè)參數(shù)表示的是通道復(fù)制的次數(shù),第二個(gè)參數(shù)表示的是行復(fù)制的次數(shù),第三個(gè)參數(shù)表示列復(fù)制的次數(shù)。
(1). 對(duì)于已經(jīng)存在的維度復(fù)制

import torch
 
a = torch.tensor([[1], [2], [3]])  # 3 * 1
b = a.repeat(3, 2)
print('a\n:', a)
print('shape of a', a.size())  # 原始shape = (3,1)
print('b:\n', b)
print('shape of b', b.size())  # 新的shape = (3*3,1*2),新增加的數(shù)據(jù)通過(guò)復(fù)制得到
 
'''   運(yùn)行結(jié)果   '''
a:
tensor([[1],
        [2],
        [3]])
shape of a torch.Size([3, 1])  注: 原始shape =3,1)
b:
 tensor([[1, 1],
        [2, 2],
        [3, 3],
        [1, 1],
        [2, 2],
        [3, 3],
        [1, 1],
        [2, 2],
        [3, 3]])
shape of b torch.Size([9, 2])  新的shape =3*3,1*2

(2). 對(duì)于原始不存在的維度數(shù)量拓展

import torch
a = torch.tensor([[1, 2], [3, 4], [5, 6]])  # 3 * 2
b = a.repeat(3, 2, 1)   # 在原始tensor的0維前拓展一個(gè)維度,并把原始tensor的第1維擴(kuò)張2倍,都是通過(guò)復(fù)制來(lái)完成的
print('a:\n', a)
print('shape of a', a.size())  # 原始維度為 (3,2)
print('b:\n', b)
print('shape of b', b.size())  # 新的維度為 (3,2*2,2*1)=(3,4,2)

'''   運(yùn)行結(jié)果   '''
a:
 tensor([[1, 2],
         [3, 4],
         [5, 6]])
shape of a torch.Size([3, 2])   注:原始維度為 (3,2)
b:
 tensor([[[1, 2],
          [3, 4],
          [5, 6],
          [1, 2],
          [3, 4],
          [5, 6]],
 
         [[1, 2],
          [3, 4],
          [5, 6],
          [1, 2],
          [3, 4],
          [5, 6]],
 
         [[1, 2],
          [3, 4],
          [5, 6],
          [1, 2],
          [3, 4],
          [5, 6]]])
shape of b torch.Size([3, 6, 2])   新的維度為 (3,2*2,2*1=34,2

pytorch索引查找 index_select

anchor_w = FloatTensor(scaled_anchors).index_select(1, LongTensor([0]))

先定義了一個(gè)tensor,這里用到了linspace和view方法。
第一個(gè)參數(shù)是索引的對(duì)象,第二個(gè)參數(shù)0表示按行索引,1表示按列進(jìn)行索引,第三個(gè)參數(shù)是一個(gè)tensor,就是索引的序號(hào),比如b里面tensor[0, 2]表示第0行和第2行,c里面tensor[1, 3]表示第1列和第3列文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-636461.html

a = torch.linspace(1, 12, steps=12).view(3, 4)
print(a)
b = torch.index_select(a, 0, torch.tensor([0, 2]))
print(b)
print(a.index_select(0, torch.tensor([0, 2])))
c = torch.index_select(a, 1, torch.tensor([1, 3]))
print(c)

-----輸出結(jié)果-----
tensor([[ 1.,  2.,  3.,  4.],
        [ 5.,  6.,  7.,  8.],
        [ 9., 10., 11., 12.]])
tensor([[ 1.,  2.,  3.,  4.],
        [ 9., 10., 11., 12.]])
tensor([[ 1.,  2.,  3.,  4.],
        [ 9., 10., 11., 12.]])
tensor([[ 2.,  4.],
        [ 6.,  8.],
        [10., 12.]])

到了這里,關(guān)于深度學(xué)習(xí)torch基礎(chǔ)知識(shí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【人工智能】實(shí)驗(yàn)二: 洗衣機(jī)模糊推理系統(tǒng)實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    【人工智能】實(shí)驗(yàn)二: 洗衣機(jī)模糊推理系統(tǒng)實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    理解模糊邏輯推理的原理及特點(diǎn),熟練應(yīng)用模糊推理。 設(shè)計(jì)洗衣機(jī)洗滌時(shí)間的模糊控制。 已知人的操作經(jīng)驗(yàn)為: “污泥越多,油脂越多,洗滌時(shí)間越長(zhǎng)”; “污泥適中,油脂適中,洗滌時(shí)間適中”; “污泥越少,油脂越少,洗滌時(shí)間越短”。 模糊控制規(guī)則如表1所示: x y z

    2024年02月03日
    瀏覽(98)
  • 【人工智能】實(shí)驗(yàn)四:遺傳算法求函數(shù)最大值實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    【人工智能】實(shí)驗(yàn)四:遺傳算法求函數(shù)最大值實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    實(shí)驗(yàn)?zāi)康?熟悉和掌握遺傳算法的原理、流程和編碼策略,并利用遺傳算法求解函數(shù)優(yōu)化問(wèn)題,理解求解流程并測(cè)試主要參數(shù)對(duì)結(jié)果的影響。 實(shí)驗(yàn)內(nèi)容 采用遺傳算法求解函數(shù)最大值。 實(shí)驗(yàn)要求 1. 用遺傳算法求解下列函數(shù)的最大值,設(shè)定求解精度到15位小數(shù)。 (1)給出適應(yīng)度

    2024年02月03日
    瀏覽(89)
  • 【人工智能】實(shí)驗(yàn)三 A*算法求解八/十五數(shù)碼問(wèn)題實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    【人工智能】實(shí)驗(yàn)三 A*算法求解八/十五數(shù)碼問(wèn)題實(shí)驗(yàn)與基礎(chǔ)知識(shí)

    熟悉和掌握啟發(fā)式搜索的定義、估價(jià)函數(shù)和算法過(guò)程,并利用A*算法求解N數(shù)碼難題,理解求解流程和搜索順序。 以8數(shù)碼問(wèn)題和15數(shù)碼問(wèn)題為例實(shí)現(xiàn)A*算法的求解程序(編程語(yǔ)言不限)。 設(shè)計(jì)兩種不同的估價(jià)函數(shù)。 設(shè)置相同的初始狀態(tài)和目標(biāo)狀態(tài),針對(duì)不同的估價(jià)函數(shù),求得

    2024年02月03日
    瀏覽(419)
  • 【人工智能】實(shí)驗(yàn)五 采用卷積神經(jīng)網(wǎng)絡(luò)分類(lèi)MNIST數(shù)據(jù)集與基礎(chǔ)知識(shí)

    熟悉和掌握 卷積神經(jīng)網(wǎng)絡(luò)的定義,了解網(wǎng)絡(luò)中卷積層、池化層等各層的特點(diǎn),并利用卷積神經(jīng)網(wǎng)絡(luò)對(duì)MNIST數(shù)據(jù)集進(jìn)行分類(lèi)。 編寫(xiě)卷積神經(jīng)網(wǎng)絡(luò)分類(lèi)軟件,編程語(yǔ)言不限,如Python等,以MNIST數(shù)據(jù)集為數(shù)據(jù),實(shí)現(xiàn)對(duì)MNIST數(shù)據(jù)集分類(lèi)操作,其中MNIST數(shù)據(jù)集共10類(lèi),分別為手寫(xiě)0—9。

    2024年02月04日
    瀏覽(93)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)筆記

    深度學(xué)習(xí)基礎(chǔ)知識(shí)筆記

    怎么樣提特征 (1)無(wú)人駕駛, 計(jì)算機(jī)視覺(jué) (2)人臉識(shí)別 移動(dòng)端-計(jì)算量太大,速度慢,卡。 參數(shù):成千上百萬(wàn)的。 (3)醫(yī)學(xué) (4)變臉 (5)圖像自動(dòng)上色 有監(jiān)督的問(wèn)題, 1 分類(lèi): 挑戰(zhàn):照射角度,形狀改變,部分遮擋,背景混入 套路:收集數(shù)據(jù)給定標(biāo)簽,訓(xùn)練分類(lèi)器

    2024年02月13日
    瀏覽(34)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)整理

    Auto-encoders是一種人工神經(jīng)網(wǎng)絡(luò),用于學(xué)習(xí)未標(biāo)記數(shù)據(jù)的有效編碼。它由兩個(gè)部分組成:編碼器和解碼器。編碼器將輸入數(shù)據(jù)轉(zhuǎn)換為一種更緊湊的表示形式,而解碼器則將該表示形式轉(zhuǎn)換回原始數(shù)據(jù)。這種方法可以用于降維,去噪,特征提取和生成模型。 自編碼器的訓(xùn)練過(guò)程

    2024年01月17日
    瀏覽(25)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)神經(jīng)網(wǎng)絡(luò)

    深度學(xué)習(xí)基礎(chǔ)知識(shí)神經(jīng)網(wǎng)絡(luò)

    1. 感知機(jī) 感知機(jī)(Perceptron)是 Frank Rosenblatt 在1957年提出的概念,其結(jié)構(gòu)與MP模型類(lèi)似,一般被視為最簡(jiǎn)單的人工神經(jīng)網(wǎng)絡(luò),也作為二元線性分類(lèi)器被廣泛使用。通常情況下指單層的人工神經(jīng)網(wǎng)絡(luò),以區(qū)別于多層感知機(jī)(Multilayer Perceptron)。盡管感知機(jī)結(jié)構(gòu)簡(jiǎn)單,但能夠?qū)W習(xí)

    2024年02月03日
    瀏覽(26)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)-感知機(jī)+神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)

    深度學(xué)習(xí)基礎(chǔ)知識(shí)-感知機(jī)+神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)

    參考書(shū)籍:(找不到資源可以后臺(tái)私信我) 《深度學(xué)習(xí)入門(mén):基于Python的理論與實(shí)現(xiàn) (齋藤康毅)》 《Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition (Aurelien Geron [Géron, Aurélien])》 機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的區(qū)別: Perceptron(感知機(jī)) 感知機(jī)就是一種接收多種輸入信

    2023年04月26日
    瀏覽(20)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)-pytorch數(shù)據(jù)基本操作

    深度學(xué)習(xí)基礎(chǔ)知識(shí)-pytorch數(shù)據(jù)基本操作

    1.1.1 數(shù)據(jù)結(jié)構(gòu) 機(jī)器學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的主要數(shù)據(jù)結(jié)構(gòu),例如 ? ? ? ? ? ? ? ? 0維:叫標(biāo)量,代表一個(gè)類(lèi)別,如1.0 ? ? ? ? ? ? ? ? 1維:代表一個(gè)特征向量。如 ?[1.0,2,7,3.4] ? ? ? ? ? ? ? ? 2維:就是矩陣,一個(gè)樣本-特征矩陣,如: [[1.0,2,7,3.4?] ? ? ? ? ? ? ?? ? ?

    2024年02月11日
    瀏覽(26)
  • 深度學(xué)習(xí)基礎(chǔ)知識(shí)(三)-線性代數(shù)的實(shí)現(xiàn)

    1.標(biāo)量使用 標(biāo)量由只有一個(gè)元素的張量表示,標(biāo)量可以做最簡(jiǎn)單的計(jì)算。 結(jié)果: 2.向量使用 向量:將標(biāo)量值組成的列表就是向量 結(jié)果: 訪問(wèn)張量的長(zhǎng)度 只有一個(gè)軸的張量,形狀只有一個(gè)元素 創(chuàng)建一個(gè)二維矩陣5行4列,然后將矩陣做轉(zhuǎn)置,軸對(duì)稱(chēng)的一個(gè)轉(zhuǎn)置 結(jié)果:其實(shí)就是把

    2024年02月10日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包