pytorch 實現(xiàn)在預訓練模型的 input上增減通道
更新時間:2020年01月06日 11:31:51 作者:Hi_AI
今天小編就為大家分享一篇pytorch 實現(xiàn)在預訓練模型的 input上增減通道,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
如何把imagenet預訓練的模型,輸入層的通道數隨心所欲的修改,從而來適應自己的任務
#增加一個通道 w = layers[0].weight layers[0] = nn.Conv2d(4, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False) layers[0].weight = torch.nn.Parameter(torch.cat((w, w[:, :1, :, :]), dim=1)) #方式2 w = layers[0].weight layers[0] = nn.Conv2d(4, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False) layers[0].weight = torch.nn.Parameter(torch.cat((w, torch.zeros(64, 1, 7, 7)), dim=1)) #單通道輸入 layers[0] = nn.Conv2d(1, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False) layers[0].weight = torch.nn.Parameter(w[:, :1, :, :])
以上這篇pytorch 實現(xiàn)在預訓練模型的 input上增減通道就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python使用裝飾器和線程限制函數執(zhí)行時間的方法
這篇文章主要介紹了python使用裝飾器和線程限制函數執(zhí)行時間的方法,主要涉及timelimited函數的使用技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04