中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pytorch 更改預訓練模型網絡結構的方法

發布時間:2020-09-22 17:43:02 來源:腳本之家 閱讀:262 作者:wayne980 欄目:開發技術

一個繼承nn.module的model它包含一個叫做children()的函數,這個函數可以用來提取出model每一層的網絡結構,在此基礎上進行修改即可,修改方法如下(去除后兩層):

resnet_layer = nn.Sequential(*list(model.children())[:-2])

那么,接下來就可以構建我們的網絡了:

class Net(nn.Module):
  def __init__(self , model):
    super(Net, self).__init__()
    #取掉model的后兩層
    self.resnet_layer = nn.Sequential(*list(model.children())[:-2])
    
    self.transion_layer = nn.ConvTranspose2d(2048, 2048, kernel_size=14, stride=3)
    self.pool_layer = nn.MaxPool2d(32) 
    self.Linear_layer = nn.Linear(2048, 8)
    
  def forward(self, x):
    x = self.resnet_layer(x)
 
    x = self.transion_layer(x)
 
    x = self.pool_layer(x)
 
    x = x.view(x.size(0), -1) 
 
    x = self.Linear_layer(x)
    
    return x

最后,構建一個對象,并加載resnet預訓練的參數就可以啦~

resnet = models.resnet50(pretrained=True)
model = Net(resnet)

以上這篇pytorch 更改預訓練模型網絡結構的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大宁县| 安福县| 瑞金市| 锦屏县| 通化市| 左贡县| 二连浩特市| 阿合奇县| 碌曲县| 云龙县| 垦利县| 延边| 郸城县| 盐池县| 宝清县| 益阳市| 奎屯市| 大名县| 余干县| 蕲春县| 元谋县| 措勤县| 大渡口区| 洛南县| 晋中市| 扎兰屯市| 临西县| 察哈| 疏附县| 资中县| 万州区| 奉新县| 本溪| 盐源县| 青岛市| 临泽县| 台山市| 视频| 饶平县| 香港| 理塘县|