欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決Pytorch在測(cè)試與訓(xùn)練過(guò)程中的驗(yàn)證結(jié)果不一致問(wèn)題

 更新時(shí)間:2021年06月03日 09:46:44   作者:the步履不停shy  
這篇文章主要介紹了解決Pytorch在測(cè)試與訓(xùn)練過(guò)程中的驗(yàn)證結(jié)果不一致問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

引言

今天在使用Pytorch導(dǎo)入此前保存的模型進(jìn)行測(cè)試,在過(guò)程中發(fā)現(xiàn)輸出的結(jié)果與驗(yàn)證結(jié)果差距甚大,經(jīng)過(guò)排查后發(fā)現(xiàn)是forward與eval()順序問(wèn)題。

現(xiàn)象

此前的錯(cuò)誤代碼是

    input_cpu = torch.ones((1, 2, 160, 160))
    target_cpu =torch.ones((1, 2, 160, 160))
    target_gpu, input_gpu = target_cpu.cuda(), input_cpu.cuda()
    model.set_input_2(input_gpu, target_gpu)
    model.eval()
    model.forward()

應(yīng)該改為

    input_cpu = torch.ones((1, 2, 160, 160))
    target_cpu =torch.ones((1, 2, 160, 160))
    target_gpu, input_gpu = target_cpu.cuda(), input_cpu.cuda()
    model.set_input_2(input_gpu, target_gpu)
    # 先f(wàn)orward再eval
    model.forward()
    model.eval()

當(dāng)時(shí)有個(gè)疑慮,為什么要在forward后面再加eval(),查了下相關(guān)資料,主要是在BN層以及Dropout的問(wèn)題。

當(dāng)使用eval()時(shí),模型會(huì)自動(dòng)固定BN層以及Dropout,選取訓(xùn)練好的值,否則則會(huì)取平均,可能導(dǎo)致生成的圖片顏色失真。

PyTorch進(jìn)行訓(xùn)練和測(cè)試時(shí)一定注意要把實(shí)例化的model指定train/eval

使用PyTorch進(jìn)行訓(xùn)練和測(cè)試時(shí)一定注意要把實(shí)例化的model指定train/eval,eval()時(shí),框架會(huì)自動(dòng)把BN和DropOut固定住,不會(huì)取平均,而是用訓(xùn)練好的值,不然的話,一旦test的batch_size過(guò)小,很容易就會(huì)被BN層導(dǎo)致生成圖片顏色失真極大?。。。。?!

eg:

Class Inpaint_Network()
......
Model = Inpaint_Nerwoek()

#train:
Model.train(mode=True)
.....

#test:
Model.eval()

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

相關(guān)文章

  • Python可視化分析全球火山分布

    Python可視化分析全球火山分布

    也就在前幾天,南太平洋島國(guó)湯加發(fā)生火山噴發(fā)。所以今天小編將為大家介紹如何用Python當(dāng)中的folium模塊以及其他的可視化庫(kù)來(lái)對(duì)全球的火山情況做一個(gè)分析。需要的可以參考一下
    2022-01-01
  • python解決網(wǎng)站的反爬蟲(chóng)策略總結(jié)

    python解決網(wǎng)站的反爬蟲(chóng)策略總結(jié)

    網(wǎng)站做了很多反爬蟲(chóng)工作,爬起來(lái)有些艱難,本文詳細(xì)介紹了python解決網(wǎng)站的反爬蟲(chóng)策略,有需要的小伙伴可以參考下。
    2016-10-10
  • python交互模式下輸入換行/輸入多行命令的方法

    python交互模式下輸入換行/輸入多行命令的方法

    這篇文章主要介紹了python交互模式下輸入換行/輸入多行命令的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • python生成器在讀取接口用例中應(yīng)用解析

    python生成器在讀取接口用例中應(yīng)用解析

    這篇文章主要為大家介紹了python生成器在讀取接口用例中應(yīng)用解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • tensorflow可視化Keras框架中Tensorboard使用示例

    tensorflow可視化Keras框架中Tensorboard使用示例

    這篇文章主要為大家介紹了tensorflow可視化Keras框架中Tensorboard使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • python處理multipart/form-data的請(qǐng)求方法

    python處理multipart/form-data的請(qǐng)求方法

    今天小編就為大家分享一篇python處理multipart/form-data的請(qǐng)求方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Python對(duì)象類型及其運(yùn)算方法(詳解)

    Python對(duì)象類型及其運(yùn)算方法(詳解)

    下面小編就為大家?guī)?lái)一篇Python對(duì)象類型及其運(yùn)算方法(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 使用Python實(shí)現(xiàn)生成對(duì)角矩陣和對(duì)角塊矩陣

    使用Python實(shí)現(xiàn)生成對(duì)角矩陣和對(duì)角塊矩陣

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)生成對(duì)角矩陣和對(duì)角塊矩陣,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • python cx_Oracle模塊的安裝和使用詳細(xì)介紹

    python cx_Oracle模塊的安裝和使用詳細(xì)介紹

    這篇文章主要介紹了python cx_Oracle模塊的安裝和使用詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • python sorted函數(shù)的小練習(xí)及解答

    python sorted函數(shù)的小練習(xí)及解答

    這篇文章主要介紹了python sorted函數(shù)的小練習(xí)及解答,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論