主頁 > 知識庫 > pytorch 如何使用float64訓練

pytorch 如何使用float64訓練

熱門標簽:沈陽防封電銷卡品牌 池州外呼調研線路 江西省地圖標注 富錦商家地圖標注 武漢外呼系統(tǒng)平臺 如何申請400電話費用 外呼系統(tǒng)哪些好辦 沈陽外呼系統(tǒng)呼叫系統(tǒng) 沈陽人工外呼系統(tǒng)價格

pytorch默認使用單精度float32訓練模型,

原因在于:

使用float16訓練模型,模型效果會有損失,而使用double(float64)會有2倍的內存壓力,且不會帶來太多的精度提升。

本人,最近遇到需要使用double數據類型訓練模型的情況,具體實現需要把模型的權重參數數據類型和輸入數據類型全部設置為torch.float64即可。

可使用torch的一個函數,輕松地把模型參數轉化為float64

torch.set_default_dtype(torch.float64)

輸入類型可使用

tensor.type(torch.float64)

補充:float32和float64的本質區(qū)別

首先我們需要知道何為bits和bytes?

bits:名為位數bytes:為字節(jié)簡單的數就是MB和G的關系!

那么8bits=1bytes,下面是各個單位的相互轉化!

那么float32和float64有什么區(qū)別呢?

數位的區(qū)別一個在內存中占分別32和64個bits,也就是4bytes或8bytes數位越高浮點數的精度越高它會影響深度學習計算效率?

float64占用的內存是float32的兩倍,是float16的4倍;

比如對于CIFAR10數據集,如果采用float64來表示,需要60000*32*32*3*8/1024**3=1.4G,光把數據集調入內存就需要1.4G;

如果采用float32,只需要0.7G,如果采用float16,只需要0.35G左右;

占用內存的多少,會對系統(tǒng)運行效率有嚴重影響;(因此數據集文件都是采用uint8來存在數據,保持文件最?。?/p>

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 解決Pytorch半精度浮點型網絡訓練的問題
  • PyTorch梯度裁剪避免訓練loss nan的操作
  • pytorch訓練神經網絡爆內存的解決方案
  • Pytorch訓練模型得到輸出后計算F1-Score 和AUC的操作
  • pytorch加載預訓練模型與自己模型不匹配的解決方案
  • Pytorch訓練網絡過程中l(wèi)oss突然變?yōu)?的解決方案

標簽:通遼 呂梁 銅川 黑龍江 阿里 株洲 潛江 常德

巨人網絡通訊聲明:本文標題《pytorch 如何使用float64訓練》,本文關鍵詞  pytorch,如何,使用,float64,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《pytorch 如何使用float64訓練》相關的同類信息!
  • 本頁收集關于pytorch 如何使用float64訓練的相關信息資訊供網民參考!
  • 推薦文章