※ 本文轉寄自 ptt.cc, 文章原始頁面
標題

[問題] 同家族、不同模型間的遷移學習?

時間
最新2023-05-10 09:54:00
留言20則留言,4人參與討論
推噓3 ( 4115 )
ctrl + y 可以刪除一整行,請將不需要的內容刪除 文章分類提示: - 問題: 當你想要問問題時,請使用這個類別。 - 討論: 當你自己已經有答案,但是也想聽聽版友意見時。 - 情報: 當你看到消息時,請使用這個類別。 根據板規規定,做適當的轉換,以及摘錄重要文意。 - 心得: 當你自己想要分享經驗時,請使用這個類別。 (回答並非義務,所以當有人回答時,哪怕句謝謝也好,多多回應,大E可編輯文章) 可以試著把程式碼用網站貼出來唷 https://pastebin.com/ (如果用不到以下框架,如觀念問題請自行視情況刪除作業系統,使用工具等項目) 作業系統:win10 問題類別:DL 使用工具:python 問題內容: 板上先進大大們好 看一些文章講到當初VGG的做法是先訓練最小的VGG11然後再用遷移學習的方式讓後面更大的VGG16、VGG19等等能夠享受預訓練帶來的好處 試著做了類似的東西,結果目前自己的方法需要指定對應的各層,發現這樣非常累而且很容易出錯,不知道有沒有比較好的做法 具體點解釋目前自己的作法: 先用迴圈讀取state_dict(),然後自己慢慢算VGG13的哪一層應該要吃VGG11的哪一層的權重 最後寫了超多的if一層一層填進去,相關的部分如下: https://pastebin.com/YCQXK75i 當然我知道用列表之類的做法應該能寫得好看一點,但我的重點不是這個,而是好奇有沒有能夠不用算或是自動算相應層的方法? 感謝 -- https://i.imgur.com/h4Q0F04.jpg
[問題] 同家族、不同模型間的遷移學習?
9月23日 發生大事了 因為就在這天,加藤惠誕生了 https://i.imgur.com/H3RhXfJ.jpg
[問題] 同家族、不同模型間的遷移學習?
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.77.97.142 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1682762982.A.10C.html

20 則留言

st1009, 1F
https://i.imgur.com/Y17uYjW.png 你是想要這個嗎(?
[問題] 同家族、不同模型間的遷移學習?
先謝謝大大提供資訊,這感覺好像有對到又好像沒有,可能可以利用起來 我主要是想避免吃到與自己不同out_channels的層 如果以out_channels和BN層來列表,兩個VGG的前面大概會長這樣 'VGG13': [ 64, B, 64, B, 128, 'VGG11': [ 64, B, 128, B, 256, 我怕VGG13第二個64會接收到VGG11第一個128層導致參數陣列整個大小不同導致錯誤 還是我這種擔心其實是多慮的?
※ 編輯: fragmentwing (42.77.97.142 臺灣), 04/29/2023 18:53:51

chang1248w, 2F
善用dict
目前是用dict沒錯 不過算不算善用滿難說的
※ 編輯: fragmentwing (42.77.97.142 臺灣), 04/29/2023 18:56:53

chang1248w, 3F
印象中tf keras好像可以辦到

chang1248w, 4F
自動比對layer name和layer weight shapes,載入

chang1248w, 5F
layer weight並忽視那些對不上的

chang1248w, 6F
印象中

fragmentwing, 7F
我的狀況是因為結構本身就不一樣所以layer_name不一

fragmentwing, 8F
樣,除非不用sequential直接給各層命名

fragmentwing, 9F
後來想想應該可以利用layer編號雖然間隔不一但必定

fragmentwing, 10F
增長的特性來寫個能自動存成list的作法

fragmentwing, 11F
雖然還是很不自動就是

st1009, 12F
我有點看不懂你的問題,但我猜不用預設forward用多個自定

st1009, 13F
義的fn來跑網路可以解決你的問題,至少可以簡化程式

fragmentwing, 14F
一般的遷移學習因為是同結構但任務不同所以預訓練可

fragmentwing, 15F
以直接載 但這次的狀況是結構不同所以我才得去指定

fragmentwing, 16F
層數

chang1248w, 17F
是說為何不把vgg11包成一層,11-16包成第二層?

st1009, 18F
我猜他希望VGG16的架構跟原版完全一樣吧,說真的以現代角

st1009, 19F
度他這樣複雜的遷移學習意義不大,因為VGG其實是小模型...

cs410567cs, 20F
不要再用VGG了

fragmentwing 作者的近期文章

[問題] torch的backward是怎麼管理的?
考慮一個類似STN(Spatial Transform Network)搭配一個用上CNN層的Classfier的架構 只是STN這次是靠不同於Classifier,獨立的loss function去評價並產生loss餵給STN自己 這樣的
Re: [問題] 新手每次跑模型時都是CPU滿載
※ 引述《matrixx (matrix)》之銘言: : 各位前輩好 小弟是程式(機器學習)新手 : 我在用vs code 跑程式中的模型時都會非常卡 : 開了工作管理員才發現都是CPU滿載 : 想讓vs code用gpu幫忙跑模型 : 但
[問題] 圖片形變相關的模型?
如題 在想是不是有對同一地點航空照進行矯正的現成模型 比如說要研究地層下陷或地形變化 但又不能保證這次和上次拍的照片角度和光線一樣 所以在做比較前要先用之前的照片當基準做照片的修復 不知道有沒有這種模型 先謝謝各位先進了
更多 fragmentwing 作者的文章...