《系統,我真不是蘇聯學霸》第77章 我給的靈感?(1)

作者:無機糖·1個月前

第77章 我給的靈感?

漆昊想起了之前他指出Sigmoid函式在反向傳播時,每一層梯度都會打折。

當時他說過梯度沒有消失,只是在衰減,這是啟用函式選取帶來的結構性缺陷,所以必須更換啟用函式。

現在,陳工等人聽從了自己的建議,可為什麼換了之後,梯度不僅沒救回來,反而瘋狂抽風,不是直接卡死,就是爆出NaN導致程式崩潰?

漆昊想要從面前的資料中找出一點線索。

輕量化網路、波動性的點雲原始輸入、以及……機載晶片。

等一下,這地方不對啊。

“陳工,我能再看看相關的程式碼嗎?”

“稍等。“陳工開始操作,在螢幕上調出了訓練端基的網路初始化和資料預處理指令碼。

漆昊看了一會兒,指著螢幕某處說:“陳工,你看這行輸入,原始點雲的資料範圍在 0.5米到 50米之間,你們沒有做 Zscore或者MinMax歸一化,直接以原始 float值餵了進去。”

“然後,你們的引數初始化,用的是剛提出來的 Xavier初始化對吧?”

“我看你給的文獻中,有這麼一篇。”

陳工有些得意:“那當然,這是學術界最前沿的初始化方法,論文裡證明了它能保證輸入和輸出的方差一致。”

漆昊輕嘆了口氣,完了,他的想法是對的。

“陳工,Xavier初始化是有嚴格前提的,它是專門給Sigmoid或者Tanh這種對稱啟用函式設計的,推導的假設是,啟用函式關於原點對稱……

“每一層網路的輸出方差,都會直接縮水一半,如果是10層網路,傳到最後一層,方差也沒剩下多少,這跟梯度消失有什麼區別?”

“那NaN又是怎麼爆出來的?”

“機載晶片算力差,你們直接餵了原始點雲,點雲原始數值大,輸入方差可能高達上千,再加上 Xavie使用場景不合適,問題就暴露了出來。”

陳工疑惑地問道:“這是你剛才想出來的?”

“是的,這也多虧陳工剛才的講解,才讓我找到了靈感。”

陳工頓時一臉懵圈。

我給的靈感?

我自個兒想了幾天,腦袋都快想禿了也沒整明白,我什麼時候給你靈感了?

陳工仔細想了下,漆昊這一手基於方差傳播的數學推導看上去沒什麼問題,但作為典型的工科博士,他們顯然不可能只憑嘴上說說就徹底信服,畢竟,在工程落地領域,再完美的數學公式也必須經歷實際程式碼的檢驗。

陳工沒輕易說好或者不好,只是斟酌道:“漆昊同學,你這個Relu初始化方差修正的思路現在聽起來沒問題,但是,神經網路在多層級迭代中的實際表現很複雜,我們得把你這一套寫進初始化腳本里,重新跑一遍幾萬組的點雲訓練資料,看看收斂曲線才能下結論。”

“沒錯,實踐是檢驗真理的唯一標準。”漆昊爽快回答。

“大概需要多久能出測試結果?”

猜你喜歡

同題材或同分類的其他作品。