亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Pytorch dataloader在加載最后一個(gè)batch時(shí)卡死的解決

 更新時(shí)間:2021年05月28日 10:15:47   作者:Wilber529  
這篇文章主要介紹了Pytorch dataloader在加載最后一個(gè)batch時(shí)卡死的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

問(wèn)題:

自己寫(xiě)了個(gè)dataloader,為了部署方便,用OpenCV的接口進(jìn)行數(shù)據(jù)讀取,而沒(méi)有用PIL,代碼大致如下:

    def __getitem__(self, idx):
        sample = self.samples[idx]
 
        img = cv2.imread(sample[0])
        img = cv2.resize(img, tuple(self.input_size))
        img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
        # if not self.val and random.randint(1, 10) < 3:
        #     img = self.img_aug(img)
        img = Image.fromarray(img) 
        img = self.transforms(img)        
        ...

結(jié)果在訓(xùn)練過(guò)程中,在第1個(gè)epoch的最后一個(gè)batch時(shí),程序卡死。

解決方案:

可能是因?yàn)镺penCV與Pytorch互鎖的問(wèn)題,關(guān)閉OpenCV的多線程,問(wèn)題解決。

cv2.setNumThreads(0)
cv2.ocl.setUseOpenCL(False)

補(bǔ)充:pytorch 中一個(gè)batch的訓(xùn)練過(guò)程

# 一般情況下
optimizer.zero_grad()             # 梯度清零
preds = model(inputs)             # inference,前向傳播求出預(yù)測(cè)值
loss = criterion(preds, targets)  # 計(jì)算loss
loss.backward()                   # 反向傳播求解梯度
optimizer.step()                  # 更新權(quán)重,更新網(wǎng)絡(luò)權(quán)重參數(shù)

此外,反向傳播前,如果不進(jìn)行梯度清零,則可以實(shí)現(xiàn)梯度累加,從而一定程度上解決顯存受限的問(wèn)題。

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

相關(guān)文章

  • 一條命令解決mac版本python IDLE不能輸入中文問(wèn)題

    一條命令解決mac版本python IDLE不能輸入中文問(wèn)題

    本文通過(guò)一條命令幫助大家解決mac版本python IDLE無(wú)法輸入中文問(wèn)題,需要的朋友可以參考下
    2018-05-05
  • python基礎(chǔ)之并發(fā)編程(三)

    python基礎(chǔ)之并發(fā)編程(三)

    這篇文章主要介紹了詳解python的并發(fā)編程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • 詳解Python實(shí)現(xiàn)同時(shí)支持帶調(diào)用和不調(diào)用帶裝飾器

    詳解Python實(shí)現(xiàn)同時(shí)支持帶調(diào)用和不調(diào)用帶裝飾器

    一般來(lái)說(shuō),不帶參數(shù)裝飾器,再使用時(shí)不加括號(hào),帶參數(shù)的裝飾器使用時(shí)必須加括號(hào),這篇文章主要介紹了Python實(shí)現(xiàn)同時(shí)支持帶調(diào)用和不調(diào)用帶裝飾器的相關(guān)知識(shí),需要的朋友可以參考下
    2023-06-06
  • Linux添加Python?path方法及修改環(huán)境變量的三種方法

    Linux添加Python?path方法及修改環(huán)境變量的三種方法

    這篇文章主要介紹了Linux添加Python?path方法及修改環(huán)境變量的三種方法,Linux 下設(shè)置環(huán)境變量有三種方法,一種用于當(dāng)前終端,一種用于當(dāng)前用戶,一種用于所有用戶,本文對(duì)每種方法給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • python版單鏈表反轉(zhuǎn)

    python版單鏈表反轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了python版單鏈表反轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 詳解利用Pytorch實(shí)現(xiàn)ResNet網(wǎng)絡(luò)之評(píng)估訓(xùn)練模型

    詳解利用Pytorch實(shí)現(xiàn)ResNet網(wǎng)絡(luò)之評(píng)估訓(xùn)練模型

    這篇文章主要為大家介紹了利用Pytorch實(shí)現(xiàn)ResNet網(wǎng)絡(luò)之評(píng)估訓(xùn)練模型詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Python Pandas分組聚合的實(shí)現(xiàn)方法

    Python Pandas分組聚合的實(shí)現(xiàn)方法

    這篇文章主要介紹了Python Pandas分組聚合的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • pytorch實(shí)現(xiàn)保證每次運(yùn)行使用的隨機(jī)數(shù)都相同

    pytorch實(shí)現(xiàn)保證每次運(yùn)行使用的隨機(jī)數(shù)都相同

    今天小編就為大家分享一篇pytorch實(shí)現(xiàn)保證每次運(yùn)行使用的隨機(jī)數(shù)都相同,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • 對(duì)Pyhon實(shí)現(xiàn)靜態(tài)變量全局變量的方法詳解

    對(duì)Pyhon實(shí)現(xiàn)靜態(tài)變量全局變量的方法詳解

    今天小編就為大家分享一篇對(duì)Pyhon實(shí)現(xiàn)靜態(tài)變量全局變量的方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Python如何用NumPy讀取和保存點(diǎn)云數(shù)據(jù)

    Python如何用NumPy讀取和保存點(diǎn)云數(shù)據(jù)

    這篇文章主要介紹了Python如何用NumPy讀取和保存點(diǎn)云數(shù)據(jù),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08

最新評(píng)論