您好,登錄后才能下訂單哦!
這篇文章主要介紹“Pytorch優(yōu)化器內(nèi)部的各參數(shù)信息打印結(jié)果”,在日常操作中,相信很多人在Pytorch優(yōu)化器內(nèi)部的各參數(shù)信息打印結(jié)果問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Pytorch優(yōu)化器內(nèi)部的各參數(shù)信息打印結(jié)果”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
代碼:
import timeimport torchimport torch.optim as optimclass Model(torch.nn.Module):def __init__(self):super(Model,self).__init__()self.conv1=torch.nn.Sequential(#輸入torch.Size([64, 1, 28, 28])torch.nn.Conv2d(1,64,kernel_size=3,stride=1,padding=1),# 用于搭建卷積神經(jīng)網(wǎng)絡(luò)的卷積層,主要的輸入?yún)?shù)有輸入通道數(shù)、 # 輸出通道數(shù)、卷積核大小、卷積核移動(dòng)步長(zhǎng)和Padding值。 # 輸出維度 = 1+(輸入維度-卷積核大小+2*padding)/卷積核步長(zhǎng) #輸出torch.Size([64, 64, 28, 28])torch.nn.ReLU(),#輸出torch.Size([64, 64, 28, 28])torch.nn.Conv2d(64,128,kernel_size=3,stride=1,padding=1),#輸出torch.Size([64, 128, 28, 28])torch.nn.ReLU(),torch.nn.MaxPool2d(stride=2,kernel_size=2)# 主要的輸入?yún)?shù)是池化窗口大小、池化窗口移動(dòng)步長(zhǎng)和Padding值 #輸出torch.Size([64, 128, 14, 14]))self.dense=torch.nn.Sequential(#輸入torch.Size([64, 14*14*128])torch.nn.Linear(14*14*128,1024),#class torch.nn.Linear(in_features,out_features,bias = True)#輸出torch.Size([64, 1024])torch.nn.ReLU(),torch.nn.Dropout(p=0.5),# torch.nn.Dropout類用于防止卷積神經(jīng)網(wǎng)絡(luò)在訓(xùn)練的過程中 # 發(fā)生過擬合,其工作原理簡(jiǎn)單來(lái)說(shuō)就是在模型訓(xùn)練的過程中, # 以一定的隨機(jī)概率將卷積神經(jīng)網(wǎng)絡(luò)模型的部分參數(shù)歸零,以達(dá) # 到減少相鄰兩層神經(jīng)連接的目的。這樣做是為了讓我們最后訓(xùn) # 練出來(lái)的模型對(duì)各部分的權(quán)重參數(shù)不產(chǎn)生過度依賴,從而防止 # 過擬合。對(duì)于torch.nn.Dropout類,我們可以對(duì)隨機(jī)概率值 # 的大小進(jìn)行設(shè)置,如果不做任何設(shè)置,就使用默認(rèn)的概率值0.5。 torch.nn.Linear(1024,10)#輸出torch.Size([64, 10]) ) def forward(self,x):#torch.Size([64, 1, 28, 28])x = self.conv1(x)#輸出torch.Size([64, 128, 14, 14])x = x.view(-1,14*14*128)#view()函數(shù)作用是將一個(gè)多行的Tensor,拼接成一行,torch.Size([64, 14*14*128])x = self.dense(x)#輸出torch.Size([64, 10])return x model = Model() lr = 0.005optimizer = optim.Adam(model.parameters(), lr=lr)for param_group in optimizer.param_groups:print(param_group.keys())# print(type(param_group))print([type(value) for value in param_group.values()])print('查看學(xué)習(xí)率: ',param_group['lr'])
打印結(jié)果展示:
Windows PowerShell 版權(quán)所有 (C) Microsoft Corporation。保留所有權(quán)利。 嘗試新的跨平臺(tái) PowerShell https://aka.ms/pscore6 加載個(gè)人及系統(tǒng)配置文件用了 925 毫秒。 (base) PS C:\Users\chenxuqi\Desktop\新建文件夾> & 'D:\Anaconda3\envs\ssd4pytorch2_2_0\python.exe' 'c:\Users\chenxuqi\.vscode\extensions\ms-python.python-2020.11.371526539\pythonFiles\lib\python\debugpy\launcher' '60077' '--' 'c:\Users\chenxuqi\Desktop\新建文件夾\tt.py' dict_keys(['params', 'lr', 'betas', 'eps', 'weight_decay', 'amsgrad']) [<class 'list'>, <class 'float'>, <class 'tuple'>, <class 'float'>, <class 'int'>, <class 'bool'>] 查看學(xué)習(xí)率: 0.005 (base) PS C:\Users\chenxuqi\Desktop\新建文件夾> conda activate ssd4pytorch2_2_0 (ssd4pytorch2_2_0) PS C:\Users\chenxuqi\Desktop\新建文件夾>
到此,關(guān)于“Pytorch優(yōu)化器內(nèi)部的各參數(shù)信息打印結(jié)果”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。