PyTorch里面的torch.nn.Parameter()詳解
在看過很多博客的時候發(fā)現(xiàn)了一個用法self.v = torch.nn.Parameter(torch.FloatTensor(hidden_size)),首先可以把這個函數(shù)理解為類型轉(zhuǎn)換函數(shù),將一個不可訓(xùn)練的類型Tensor轉(zhuǎn)換成可以訓(xùn)練的類型parameter并將這個parameter綁定到這個module里面(net.parameter()中就有這個綁定的parameter,所以在參數(shù)優(yōu)化的時候可以進(jìn)行優(yōu)化的),所以經(jīng)過類型轉(zhuǎn)換這個self.v變成了模型的一部分,成為了模型中根據(jù)訓(xùn)練可以改動的參數(shù)了。
使用這個函數(shù)的目的也是想讓某些變量在學(xué)習(xí)的過程中不斷的修改其值以達(dá)到最優(yōu)化。
出現(xiàn)這個函數(shù)的地方
在concat注意力機(jī)制中,權(quán)值V是不斷學(xué)習(xí)的所以要是parameter類型,不直接使用一個torch.nn.Linear()可能是因?yàn)閷W(xué)習(xí)的效果不好。
通過做下面的實(shí)驗(yàn)發(fā)現(xiàn),linear里面的weight和bias就是parameter類型,且不能夠使用tensor類型替換,還有l(wèi)inear里面的weight甚至可能通過指定一個不同于初始化時候的形狀進(jìn)行模型的更改。
self.gamma被綁定到模型中了,所以可以在訓(xùn)練的時候優(yōu)化
以上這篇PyTorch里面的torch.nn.Parameter()詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
簡單介紹Python中的try和finally和with方法
這篇文章主要介紹了Python中的try和finally和with方法,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識,需要的朋友可以參考下2015-05-05django Layui界面點(diǎn)擊彈出對話框并請求邏輯生成分頁的動態(tài)表格實(shí)例
這篇文章主要介紹了django Layui界面點(diǎn)擊彈出對話框并請求邏輯生成分頁的動態(tài)表格實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05基于PyQT實(shí)現(xiàn)區(qū)分左鍵雙擊和單擊
這篇文章主要介紹了基于PyQT實(shí)現(xiàn)區(qū)分左鍵雙擊和單擊,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05Python 中的Selenium異常處理實(shí)例代碼
本文通過實(shí)例代碼給大家介紹了Python 中的Selenium異常處理的相關(guān)知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧2018-05-05利用Python實(shí)現(xiàn)簡易計算器的示例代碼
最近學(xué)習(xí)了字符串,運(yùn)算符,條件語句,循環(huán)語句,我在想可以用我最近學(xué)的東西做什么? 看到運(yùn)算我就想到了可以做一個簡易的計算器,感興趣的可以了解一下2022-11-11Python數(shù)據(jù)結(jié)構(gòu)之循環(huán)鏈表詳解
循環(huán)鏈表 (Circular Linked List) 是鏈?zhǔn)酱鎯Y(jié)構(gòu)的另一種形式,它將鏈表中最后一個結(jié)點(diǎn)的指針指向鏈表的頭結(jié)點(diǎn),使整個鏈表頭尾相接形成一個環(huán)形,使鏈表的操作更加方便靈活。本文將詳細(xì)介紹一下循環(huán)鏈表的相關(guān)知識,需要的可以參考一下2022-01-01