濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout

pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout

熱門標(biāo)簽:地圖標(biāo)注線上如何操作 400電話辦理哪種 河北防封卡電銷卡 開封語音外呼系統(tǒng)代理商 天津電話機(jī)器人公司 電銷機(jī)器人的風(fēng)險(xiǎn) 應(yīng)電話機(jī)器人打電話違法嗎 手機(jī)網(wǎng)頁嵌入地圖標(biāo)注位置 開封自動(dòng)外呼系統(tǒng)怎么收費(fèi)

我們知道,dropout一般都在訓(xùn)練的時(shí)候使用,那么測(cè)試的時(shí)候如何也開啟dropout呢?

在pytorch中,網(wǎng)絡(luò)有train和eval兩種模式,在train模式下,dropout和batch normalization會(huì)生效,而val模式下,dropout不生效,bn固定參數(shù)。

想要在測(cè)試的時(shí)候使用dropout,可以把dropout單獨(dú)設(shè)為train模式,這里可以使用apply函數(shù):

def apply_dropout(m):
    if type(m) == nn.Dropout:
        m.train()

下面是完整demo代碼:

# coding: utf-8
import torch
import torch.nn as nn
import numpy as np
class SimpleNet(nn.Module):
    def __init__(self):
        super(SimpleNet, self).__init__()
        self.fc = nn.Linear(8, 8)
        self.dropout = nn.Dropout(0.5)
    def forward(self, x):
        x = self.fc(x)
        x = self.dropout(x)
        return x
net = SimpleNet()
x = torch.FloatTensor([1]*8)
net.train()
y = net(x)
print('train mode result: ', y)
net.eval()
y = net(x)
print('eval mode result: ', y)
net.eval()
y = net(x)
print('eval2 mode result: ', y)
def apply_dropout(m):
    if type(m) == nn.Dropout:
        m.train()
net.eval()
net.apply(apply_dropout)
y = net(x)
print('apply eval result:', y)

運(yùn)行結(jié)果:

可以看到,在eval模式下,由于dropout未生效,每次跑的結(jié)果不同,利用apply函數(shù),將Dropout單獨(dú)設(shè)為train模式,dropout就生效了。

補(bǔ)充:Pytorch之dropout避免過擬合測(cè)試

一.做數(shù)據(jù)

二.搭建神經(jīng)網(wǎng)絡(luò)

三.訓(xùn)練

四.對(duì)比測(cè)試結(jié)果

注意:測(cè)試過程中,一定要注意模式切換

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 淺談pytorch中的dropout的概率p
  • PyTorch 實(shí)現(xiàn)L2正則化以及Dropout的操作
  • Python深度學(xué)習(xí)pytorch神經(jīng)網(wǎng)絡(luò)Dropout應(yīng)用詳解解

標(biāo)簽:成都 常州 六盤水 駐馬店 山東 宿遷 蘭州 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout》,本文關(guān)鍵詞  pytorch,實(shí),現(xiàn)在,測(cè)試,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout》相關(guān)的同類信息!
  • 本頁收集關(guān)于pytorch 實(shí)現(xiàn)在測(cè)試的時(shí)候啟用dropout的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    家居| 鞍山市| 凉山| 杭锦旗| 沽源县| 嫩江县| 贵港市| 南澳县| 平陆县| 巴青县| 清水河县| 新兴县| 达尔| 尉氏县| 赞皇县| 西安市| 本溪市| 杭锦后旗| 历史| 卢氏县| 抚远县| 大同县| 福州市| 星座| 黄山市| 涡阳县| 公主岭市| 壤塘县| 怀远县| 从化市| 高雄市| 凤凰县| 夹江县| 普洱| 宣城市| 奉贤区| 余姚市| 东源县| 吉安市| 宝山区| 平果县|