深度學習只能用實數?憑什麼不能用複數!
GIF/1.7M
圖:pixabay
原文來源:intuitionmachine
作者:Carlos E. Perez
「機器人圈」編譯:嗯~阿童木呀、多啦A亮
深度學習只能使用實數,難道沒有人覺得這很奇怪嗎?或者說,如果深度學習使用複數(注意:具有虛數的那種數字)的話,這就更奇怪了?一個可行的論據是,大腦在計算過程中使用複數的可能性是非常低的。但是,你也可以提出這樣的一個論據,大腦是不會執行矩陣乘法或鏈式法則的。此外,人工神經網路(ANN)具有實際神經元的模型。而我們在很久以前就用實數分析(即具有實數變數的函數理論)代替了生物學上的合理性。
但是,為什麼我們甚至一度地停止實數分析呢?我們已經把激進的現實主義都押寶在線性代數和微分方程上了,我們不妨也把所有的東西放在一起,用更廣的角度來分析一下複變函數。也許複變函數論的複雜世界將給予我們更為強大的方法。畢竟,如果它適用於量子力學,那麼它也許可能同樣適用於深度學習。此外,深度學習和量子力學都是關於信息處理的科學,兩者可能是同樣的事物。
所以出於論據的考慮,讓我們把任何有關生物合理性的需要的想法擱置起來。這是一個古老的論據,在1957年弗蘭克?羅森布拉特(Frank Rosenblatt)提出第一個ANN的時候就已經通過了。那麼問題就是,深度學習中複數能夠提供哪些實數無法提供的呢?
其實,在過去的幾年中,已經有幾篇論文探討了深度學習中複數的使用。但令人驚訝的是,他們中的大多數從未納入經同行評議的雜誌中。深度學習正統還只是流行於學科中。不過我們可以來回顧一下這些有趣的論文。
DeepMind有一篇文章《組合長短期記憶網路》(https://arxiv.org/abs/1602.03032)(Ivo Danihelka,Greg Wayne,Benigno Uria,Nal Kalchbrenner,Alex Graves),探討了用於組合記憶的複數的使用。該系統用於增加LSTM的記憶。該研究的結論是,使用複數可以提供更高的記憶容量網路。而在數學方面的折衷是,相較於使用實數,使用複數需要更小的矩陣。下圖顯示了在記憶成本中存在的可衡量的差異(與傳統LSTM相比):
Yoshua Bengio及其在蒙特利爾的團隊探討了複數的使用的另一個領域。在一篇題為《循環神經網路的酉演化》(https://arxiv.org/pdf/1511.06464v4.pdf)(Martin Arjovsky,Amar Shah,Yoshua Bengio)的論文中,研究人員探索了酉矩陣(Unitary matrices)。他們認為,如果一個矩陣的特徵值接近1,那麼在減少梯度消失方面可能會有真正的好處。在這項研究中,他們探索將複數的使用作為RNN網路的權重。這項研究的結論是:
經驗證據表明,我們的uRNN能夠更好地通過長序列傳遞梯度信息,並且不會像LSTM那樣遭受飽和隱藏狀態的影響。
他們採取多項措施來量化這些行為VS更為傳統的RNN:
使用複數值的系統顯然具有更強大的魯棒性和更為穩定的表現。
還有一篇涉及Bengio的團隊和麻省理工學院人員(Li Jing、Caglar Gulcehre、Caglar Gulcehre、Caglar Gulcehre、Caglar Gulcehre、Bengio、Bengio))的文章使用「門控機制(Gating mechanism)」方法。論文《門控正交循環單元:學習遺忘》(又名GORU)探討了長期依賴性關係被更好地捕獲的可能性,並且這可以導致一個更具魯棒性的遺忘機制。在下圖中,它們將顯示在複製任務中失敗的其他基於RNN的系統:
FAIR和EPFL(Cijo Jose,Moustpaha Cisse和Francois Fleuret)的一個團隊也有類似的文章,在《Kronecker循環單元》(https://arxiv.org/pdf/1705.10142v2.pdf)中,他們還使用酉矩陣來顯示複製任務的可行性。它們揭示了一種矩陣分解的方法,大大減少了所需參數的使用。本文介紹了他們使用複數值的動機。
由於行列式是一個連續的函數,所以在實際空間中的酉子集(unitary set)被斷開。因此,使用實值網路,我們不能使用標準的連續優化程序來跨越整個單一集合。相反,酉子集在複雜的空間中連接,因為它的決定因素是單位圓上的點,而我們沒有這個問題。
這篇文章的其中一個亮點就是這個非常有見地的架構理念:
狀態應該保持高維,可以使用高容量網路將輸入編碼到內部狀態,並提取預測值,但是循環動態本身可以並且應該用低容量模型來實現。
到目前為止,這些方法已經探索了RNN中複雜值的使用。來自MILA《深度複雜網路》(https://arxiv.org/pdf/1705.09792v1.pdf)(Chiheb Trabelsi等人)最近的一篇文章進一步探討了在卷積網路中使用的方法。 作者在視覺任務中測試他們的網路,產生具有競爭力的結果。
最後,我們必須提及它在生成式對抗網路中的用途。畢竟,這似乎是最熱門的話題。 一篇才《GAN的數值》(https://arxiv.org/pdf/1705.10461v1.pdf)(Lars Mescheder,Sebastian Nowozin,Andreas Geiger)的論文探討了GAN的容易出現問題的收斂性質。他們用復值探索雅克比矩陣(Jacobian)的特徵,使用它們創造了最先進的GAN平衡問題的方法。
在去年的一篇文章中,我寫了全息原理與深度學習之間的關係。該方法探討了張量網路與深度學習架構的相似性。量子力學可以被認為是使用概率更廣義的形式。使用複數使得在正常概率下找不到的附加功能成為可能。更具體地說,是疊加和干擾的能力。為了達到全息效果,你可以隨時使用複數。
這裡提到的研究論文表明,在深度學習架構中使用復值確實有很多「真正的」優勢。研究表明,跨層梯度信息的傳播更加強大,更高的記憶容量,更精確的遺忘行為,大幅降低序列的網路大小以及提高GAN訓練中的穩定性。這些眾多的優點,不能被忽略。如果我們接受現在深度學習的任意一層都是可微的,,那麼也許我們應該儘可能利用複數分析,那麼我們就有了更多的選擇:
也許複數不常用的原因之一是研究人員不熟悉。喜歡優化演算法的那些人一般都不使用複數。在運籌學中幾乎不需要複數。另一方面,物理學家一直使用它。在量子力學中,那些虛數一直在不斷湧現。這並不奇怪,只是碰巧反映了現實。我們對於這些深度學習系統為什麼運行這麼好依然很少了解。因此,尋求替代方案可能會引發一些意想不到的突破。


※貝索斯:「隱秘」建起AI傳奇帝國
※Natural 自然語言處理—NLP全解析
※波士頓諮詢聯手MIT發布萬字人工智慧報告,詳解企業如何跨越「AI應用鴻溝」
※「好的AI公司,是讓合作夥伴滿意」 ——AI先行者說
TAG:機器人圈 |