推 f496328mm: 幫你推 我是用 Keras 用 TF 是不是比較厲害? 09/21 01:15
應該還好吧(////▽////)
主要是在FB上面看到就用了>///<
推 tsoahans: 一般網路不能疊那麼多層吧 resnet之類的特殊架構才能疊 09/21 01:22
→ tsoahans: 到一百多層 09/21 01:22
推 tsoahans: 你可以查看看 dying relu problem 09/21 01:26
有查過,我再多查查
推 KyotoAnime: 試試看add layer不要用函數包? 直接寫 09/21 03:25
→ KyotoAnime: 10層會不會要跑很久啊.. 09/21 03:26
我用1050Ti執行GPU運算,10層10w迴圈大約也在3min內,感覺還好
推 johnny78615: 用leakyrelu試試?解決 relu死掉的現象 09/21 05:53
有試過,但...沒有效果
推 ebullient: 把loss改成logistic跟lr改成decay跑100000epoch可以練 09/21 09:36
→ ebullient: 起來 09/21 09:36
不是很清楚怎改...我會研究看看!
請問您所說的lr是學習率?不是很清楚如何把我的loss改成logistic...
您說的logistic是指x - x * z + log(1 + exp(-x))嗎?
推 ebullient: goo.gl/t1L7Q3這個loss function,lr是學習率 09/21 10:48
好的,非常感謝您 <3
推 brightwish: initialize_all_variable 怎麼做的 有用random嗎 09/21 13:09
這是tf給予的函式,好像沒有random,但程式的其他地應該有對變數進行沒錯
→ brightwish: sigmoid 就是 logistic 09/21 13:12
謝謝您!
推 joeyccc1: xavier initializer 09/21 14:04
→ joeyccc1: or batch normalization 09/21 14:05
好的,謝謝您!我會再添加相關設定!
推 vfgce: hidden layer用relu, output layer用softmax.... 09/21 19:24
之前因為沒發現sigmoid跟softmax明顯差距,所以就用sigmoid了,之後會改用softmax,
謝謝您的建議!
→ pipidog: 不確定其他的問題,但看到幾點問題: 1.有人會output用 09/22 02:00
→ pipidog: sigmoid嗎? 如果你是做分類問題,應該用softmax,這兩者功 09/22 02:00
→ pipidog: 用完全不同 09/22 02:01
之所以會用是因為一開始學習時都是看到sigmoid,也真的有部份教學用sigmoid,
所以不小心就誤用了>"<
謝謝提醒<(_ _)>
→ pipidog: 2.如果是新版TF,initialize_all_variabel已經09/22 02:01
→ pipidog: 不支援了,最好也改掉. 09/22 02:01
當時找到這個範例最方便套用,
試用也沒有問題,一時沒想到會有版本新舊問題,感謝您!
→ pipidog: 3.看起來你對神經網路還很陌生,我 09/22 02:01
→ pipidog: 建議你可以先用Keras實作,而不要一開始就碰TF,你會比較懂 09/22 02:02
→ pipidog: 神經網路的模型,然後你再去搞懂TF,因為看起來你對於怎麼 09/22 02:02
→ pipidog: 搭建神經網路都還不太熟,就被困在TF的語法裡面了. 09/22 02:03
→ pipidog: 最後一提,一般對於多層感知器(就是你在做的事情),增加層 09/22 02:05
→ pipidog: 數到這麼多意義不大,一般一兩層就可以了,但節點可以多一 09/22 02:05
→ pipidog: 些.用太多層,會導致後向傳播時要處理的參數幾何式增長,計 09/22 02:07
我以前聽教學說雖然沒有一定,但節點數通常為輸入的1.5倍,我實驗原本輸入是8筆
所以就沒想到調節點數了>"<
非常感謝您無私的教導 m(_ _)m
推 kaneson: 10層dnn任一條x->y的路徑相當於乘了10次weight, 你的inpu 09/22 02:38
→ kaneson: t在0.7附近, 初始weights用random normal預設也在 0 附 09/22 02:38
→ kaneson: 近(-1,1), 這樣後面output應該都是0,所以我覺得train不 09/22 02:38
→ kaneson: 出東西來 09/22 02:38
推 kaneson: 所謂疊幾十上百層的是CNN,架構有其原理與作用,也有很多 09/22 02:52
→ kaneson: 不同技巧解決梯度消失的問題。其實最尾巴接上的full-conn 09/22 02:52
→ kaneson: ected layer與softmax組成的分類器也很少會超過二,三層 09/22 02:52
→ kaneson: 。 09/22 02:52
推 kaneson: 還有像樓上所說的剛開始建議先玩Keras, 一方面比較方便 09/22 03:00
→ kaneson: 拼接出不同典型model來比較看看,而且TF本身api很亂寫起 09/22 03:00
→ kaneson: 來也較不直覺。 09/22 03:00
我原本以為...BP會把一切問題都解決的...輸出結果錯誤,所以就把權重修正到合理範圍
,但沒想到...原來BP好像有個修正的極限(?
其實其實我窩窩當初是想要做成CNN的,但研究一段時間不知道怎寫出來,
而且我要研究資料好像也不合適用CNN,所以才放棄的>////<
因為我當時剛接觸時,手邊資料很亂...我基本上要再3天內實做出基本能跑的DL...
所以工具看到了就用...沒想到有名的Google出的工具這底層,
其實我也是現在才接觸到Keras的,或許我當初早點接觸到,就不會用TF了 >"<
推 jack529: 感覺是層數太深,資料太少,導致gradient沒有變化,可以 09/22 18:19
→ jack529: 看看Loss有沒有降低~ 09/22 18:19
似乎...沒有降低...我正在研究把Loss改成怎樣好
有位大大幫我做了一些修正,現在問題已解決,謝謝大家的幫助與支持,
接下來我會慢慢吸收這段時間大家提供給我的資訊,
感謝大家m(_ _)m
推 jack529: 期待後續xd 推薦看看Coursera,Andrew大大開的Deep Learn 09/23 15:57
→ jack529: ing,看完會更有感覺! 09/23 15:57
嗯,我英文苦手QAQQQ
不過還是感謝大大給我這個學習的機會 <3
後續嘛~原則上希望不要再有問題了 :P
推 Kazimir: 好像太晚看到了XD 我猜大概是lr和sdv太高把relu弄死了 09/25 02:07
是說其實我到現在還不是很清楚lr設多少比較好,要如何判斷...
可用的lr比我逾期的低了100倍以上...
推 f496328mm: lr 你設多少? 可以從 1e-5 開始往前走 09/25 16:23
很想知道設這數值的原因...我目前也是差不多設這數值再修
但以前看教學,0.9都有人設了...說學比較快
我真正參考的範例是0.1,完全無法想像1e-5
推 Kazimir: 如果你使用標準的微分法 那lr就只能試了 理論上來說 09/25 18:58
→ Kazimir: 先大後小比較好 一般我都是從0.01開始 不過牽涉很多因素 09/25 18:59
→ Kazimir: 所以用adam比較方便.. 常常也比手動調整好一點 09/25 19:00
我目前就是使用AdamOptimizer,我也聽說先大後小比較好,但relu一直死掉...
經過版上大大改過,才知道要小到1e-5....
目前不知道要怎求出學習率,
我只找出一個小規律,就是如果學習率*訓練次數大於1好像會死....
推 joeyccc1: 其實我第一個發現的地方是你沒有觀察cost所以只能猜或 09/26 04:18
→ joeyccc1: 者找不到錯誤在哪,但是我自己做ml也是慢慢試LR 09/26 04:18
嗯,謝謝大大提醒!
所以層數,節點數,訓練次數也是自己慢慢試囉Q
m(_ _)m
推 Kazimir: 對於層數 某大牛(好像是Bengio)有說過 你就一直加深 09/27 01:33
→ Kazimir: 直到結果不再改善為止XD 所以基本上只能試了 09/27 01:34
好的,謝謝您!總之就是慢慢觀察結果進行微調了,謝謝 <(_ _)>
※ 編輯: st1009 (1.164.93.71), 09/27/2017 19:51:52