好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁(yè) > 知識(shí)庫(kù) > 解決pytorch trainloader遇到的多進(jìn)程問題

解決pytorch trainloader遇到的多進(jìn)程問題

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

pytorch中嘗試用多進(jìn)程加載訓(xùn)練數(shù)據(jù)集,源碼如下:

trainloader = torch.utils.data.DataLoader(trainset, batch_size=4, shuffle=True, num_workers=3)

結(jié)果報(bào)錯(cuò):

RuntimeError: 
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

        The "freeze_support()" line can be omitted if the program
        is not going to be frozen to produce an executable.

從報(bào)錯(cuò)信息可以看到,當(dāng)前進(jìn)程在運(yùn)行可執(zhí)行代碼時(shí),產(chǎn)生了一個(gè)新進(jìn)程。這可能意味著您沒有使用fork來啟動(dòng)子進(jìn)程或者是未在主模塊中正確使用。

后來經(jīng)過查閱發(fā)現(xiàn)了原因,因?yàn)閣indows系統(tǒng)下默認(rèn)用spawn方法部署多線程,如果代碼沒有受到__main__模塊的保護(hù),新進(jìn)程都認(rèn)為是要再次運(yùn)行的代碼,將嘗試再次執(zhí)行與父進(jìn)程相同的代碼,生成另一個(gè)進(jìn)程,依此類推,直到程序崩潰。

解決方法很簡(jiǎn)單

把調(diào)用多進(jìn)程的代碼放到__main__模塊下即可。

if __name__ == '__main__':
    transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])
    trainset = torchvision.datasets.CIFAR10(root='./data', train=True, download=True, transform=transform)
    trainloader = torch.utils.data.DataLoader(trainset, batch_size=4, shuffle=True, num_workers=3)

補(bǔ)充:pytorch-Dataloader多進(jìn)程使用出錯(cuò)

使用Dataloader進(jìn)行多進(jìn)程數(shù)據(jù)導(dǎo)入訓(xùn)練時(shí),會(huì)因?yàn)槎噙M(jìn)程的問題而出錯(cuò)

dataloader = DataLoader(transformed_dataset, batch_size=4,shuffle=True, num_workers=4)

其中參數(shù)num_works=表示載入數(shù)據(jù)時(shí)使用的進(jìn)程數(shù),此時(shí)如果參數(shù)的值不為0而使用多進(jìn)程時(shí)會(huì)出現(xiàn)報(bào)錯(cuò)

RuntimeError: An attempt has been made to start a new process before the current process has finished its bootstrapping phase. This probably means that you are not using fork to start your child processes and you have forgotten to use the proper idiom in the main module: if __name__ == '__main__': freeze_support() ... The "freeze_support()" line can be omitted if the program is not going to be frozen to produce an executable.

此時(shí)在數(shù)據(jù)的調(diào)用之前加上if __name__ == '__main__':即可解決問題

if __name__ == '__main__':#這個(gè)地方可以解決多線程的問題

        for i_batch, sample_batched in enumerate(dataloader):

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

您可能感興趣的文章:
  • pytorch多進(jìn)程加速及代碼優(yōu)化方法
  • PyTorch 解決Dataset和Dataloader遇到的問題
  • 解決pytorch DataLoader num_workers出現(xiàn)的問題

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

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決pytorch trainloader遇到的多進(jìn)程問題》,本文關(guān)鍵詞  解決,pytorch,trainloader,遇到,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《解決pytorch trainloader遇到的多進(jìn)程問題》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于解決pytorch trainloader遇到的多進(jìn)程問題的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: www.毛片网站| 两男一女一起做爰电影| 国产调教vk| 噜噜噜狠狠夜夜躁精品仙踪林| 媚娘直播app下载| 亚瑟王电影在线观看完整版| 你操综合| 日本19禁综艺免费观看| 尤物影院在线观看| k8s经典-K82-Net入口| 一级毛片女人喷潮| 四影虎影ww4hu55.com| 嫩模李丽莎1分37秒在线观看| 娜美罗宾本子全彩无遮挡| 动漫美女被羞羞动漫歪漫| 日本 欧美 精品 另类 激情| 亚洲AV永久无码精品无码自慰| 亚洲国产在| 青青影院| 男人和女人互怼app| 成人夫妻网站色情毛片无码视频| 无遮挡扒开双腿猛进入免费| 苍井空电影《色欲迷墙》| 国产+日本++变态+++另类| 黄色激情网址| 中文字幕久久久久久久系列| gl办公室强摁做开腿呻吟h| 大汉臊烂你开荤粗肉高H视频| 色狠狠xx| 欧美男男视频观看videos| 国产AV女人久久精品| 日韩黄色三级电影| 免费人成动漫在线播放r18| H啊轻点灬太粗太长了小说 | 婷丁四月| 黄色肉小说| 姐姐的情人| 亚洲欧美精品一区天堂久久| 韩国三级大全久久网站中文字幕| 欧美精品一区二区三区AV麻豆| 特级特黄A片一级一片亲下面|