pytorch:model.train和model.eval用法及區(qū)別詳解
使用PyTorch進行訓(xùn)練和測試時一定注意要把實例化的model指定train/eval,eval()時,框架會自動把BN和DropOut固定住,不會取平均,而是用訓(xùn)練好的值,不然的話,一旦test的batch_size過小,很容易就會被BN層導(dǎo)致生成圖片顏色失真極大!?。。。?!
Class Inpaint_Network() ...... Model = Inpaint_Nerwoek() #train: Model.train(mode=True) ..... #test: Model.eval()
model.train()
啟用 BatchNormalization 和 Dropout
model.eval()
不啟用 BatchNormalization 和 Dropout
訓(xùn)練完train樣本后,生成的模型model要用來測試樣本。在model(test)之前,需要加上model.eval(),否則的話,有輸入數(shù)據(jù),即使不訓(xùn)練,它也會改變權(quán)值。這是model中含有batch normalization層所帶來的的性質(zhì)。
在做one classification的時候,訓(xùn)練集和測試集的樣本分布是不一樣的,尤其需要注意這一點。
以上這篇pytorch:model.train和model.eval用法及區(qū)別詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python限制內(nèi)存和CPU使用量的方法(Unix系統(tǒng)適用)
這篇文章主要介紹了Python限制內(nèi)存和CPU的使用量的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-08-08python實現(xiàn)超市管理系統(tǒng)(后臺管理)
這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)超市管理系統(tǒng),增加后臺管理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-10-10Python?echarts實現(xiàn)數(shù)據(jù)可視化實例詳解
這篇文章主要為大家詳細(xì)介紹了Python?echarts實現(xiàn)數(shù)據(jù)可視化,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03python openvc 裁剪、剪切圖片 提取圖片的行和列
這篇文章主要介紹了python openvc 裁剪、剪切圖片 提取圖片的行和列,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09pycharm 取消默認(rèn)的右擊運行unittest的方法
今天小編就為大家分享一篇pycharm 取消默認(rèn)的右擊運行unittest的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11