將pytorch的網(wǎng)絡(luò)等轉(zhuǎn)移到cuda
神經(jīng)網(wǎng)絡(luò)一般用GPU來(lái)跑,我們的神經(jīng)網(wǎng)絡(luò)框架一般也都安裝的GPU版本,本文就簡(jiǎn)單記錄一下GPU使用的編寫(xiě)。
GPU的設(shè)置不在model,而是在Train的初始化上。
第一步是查看是否可以使用GPU
self.GPU_IN_USE = torch.cuda.is_available()
就是返回這個(gè)可不可以用GPU的函數(shù),當(dāng)你的pytorch是cpu版本的時(shí)候,他就會(huì)返回False。
然后是:
self.device = torch.device('cuda' if self.GPU_IN_USE else 'cpu')
torch.device是代表將torch.tensor分配到哪個(gè)設(shè)備的函數(shù)
接著是,我看到了一篇文章,原來(lái)就是將網(wǎng)絡(luò)啊、數(shù)據(jù)啊、隨機(jī)種子啊、損失函數(shù)啊、等等等等直接轉(zhuǎn)移到CUDA上就好了!
于是下面就好理解多了:
轉(zhuǎn)移模型:
self.model = Net(num_channels=1, upscale_factor=self.upscale_factor, base_channel=64, num_residuals=4).to(self.device)
設(shè)置cuda的隨機(jī)種子:
torch.cuda.manual_seed(self.seed)
轉(zhuǎn)移損失函數(shù):
self.criterion.cuda()
轉(zhuǎn)移數(shù)據(jù):
data, target = data.to(self.device), target.to(self.device)
pytorch 網(wǎng)絡(luò)定義參數(shù)的后面無(wú)法加.cuda()
pytorch定義網(wǎng)絡(luò)__init__()的時(shí)候,參數(shù)不能加“cuda()", 不然參數(shù)不包含在state_dict()中,比如下面這種寫(xiě)法是錯(cuò)誤的
self.W1 = nn.Parameter(torch.FloatTensor(3,3), requires_grad=True).cuda()
應(yīng)該去掉".cuda()"
self.W1 = nn.Parameter(torch.FloatTensor(3,3), requires_grad=True)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python?windows安裝cuda+cudnn+pytorch教程
- 顯卡驅(qū)動(dòng)CUDA?和?pytorch?CUDA?之間的區(qū)別
- pytorch?cuda安裝報(bào)錯(cuò)的解決方法
- PyTorch中的CUDA的操作方法
- PyTorch?device與cuda.device用法介紹
- pytorch 如何用cuda處理數(shù)據(jù)
- pytorch中.to(device) 和.cuda()的區(qū)別說(shuō)明
- PyTorch CUDA環(huán)境配置及安裝的步驟(圖文教程)
- Linux安裝Pytorch1.8GPU(CUDA11.1)的實(shí)現(xiàn)
- 詳解win10下pytorch-gpu安裝以及CUDA詳細(xì)安裝過(guò)程
- Pytorch使用CUDA流(CUDA?stream)的實(shí)現(xiàn)
相關(guān)文章
matplotlib實(shí)戰(zhàn)之餅圖繪制詳解
餅圖,或稱(chēng)餅狀圖,是一個(gè)劃分為幾個(gè)扇形的圓形統(tǒng)計(jì)圖表,這篇文章主要為大家詳細(xì)介紹了如何使用Matplotlib繪制餅圖,需要的小伙伴可以參考下2023-08-08Python實(shí)現(xiàn)刪除windows下的長(zhǎng)路徑文件
這篇文章主要為大家詳細(xì)介紹一下如何利用Python語(yǔ)言實(shí)現(xiàn)刪除windows下的長(zhǎng)路徑文件功能,文中的示例代碼講解詳細(xì),具有一定參考借鑒價(jià)值,感興趣的可以了解一下2022-07-07基于python爬取梨視頻實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了基于python爬取梨視頻實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11對(duì)pycharm代碼整體左移和右移縮進(jìn)快捷鍵的介紹
今天小編就為大家分享一篇對(duì)pycharm代碼整體左移和右移縮進(jìn)快捷鍵的介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07python實(shí)現(xiàn)自動(dòng)整理文件
這篇文章主要介紹了python實(shí)現(xiàn)自動(dòng)整理文件,主要內(nèi)容通過(guò)整理桌面雜亂無(wú)章都是文檔和資料了解用python如何批量將不同后綴的文件移動(dòng)到同一文件夾,需要的朋友可以參考一下2022-04-04python matplotlib繪圖,修改坐標(biāo)軸刻度為文字的實(shí)例
今天小編就為大家分享一篇python matplotlib繪圖,修改坐標(biāo)軸刻度為文字的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05