天天看點

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

這一研究可能促使人們重新審視 GPU 在深度神經網絡訓練中扮演的角色。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

最近,有學者發現在 GPU 而不是 CPU 上訓練的機器學習系統在訓練過程中可能包含更少的誤差,并産生更好的結果。這一發現與一般的了解相沖突,即 GPU 隻具有加速功能,而不是使訓練結果更好。

來自波茲南密茨凱維奇大學、大阪大學、索尼等機構的研究者在一篇論文中得出了這一結論。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好
論文位址: https://arxiv.org/pdf/2109.01451.pdf 該研究表明,深度神經網絡在面對各種硬體和軟體配置時表現出的「不确定性」有利于更昂貴 GPU,并在測試中發現,專門在 CPU 上訓練的深度神經網絡在相同的 epoch 上産生更高的誤差。
不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好
在論文的補充示例中,我們看到(底部兩行)從各種 GPU 獲得的結果品質相似,而在第一行中得出,從一系列其他功能非常強大的 CPU 獲得結果較差。

奇怪的現象

但是,該研究發現這一現象并不适用于目前流行的機器學習算法,比如簡單的自編碼器(autoencoder),這種現象就不會出現。

盡管如此,這項工作還是暗示了複雜神經網絡訓練的有效性可能存在逃逸速度(escape velocity),在這種情況下以較低的速度和較長的訓練時間覆寫相同的操作,并不能獲得人們期望的數學疊代例程的同等性能。

研究人員認為,這種性能差異可能是某些神經網絡所特有的,GPU 專門處理的一些不确定方面,這些方面經常被視為最終要克服的障礙,GPU 不僅能提供顯著的益處,而且最終可能被有意地納入系統。這項研究發現可以為與大腦相關的計算處理提供更深入的見解。

在 GPU 上以這種方式識别提升效率和結果品質的奇特性質,有可能更深入地了解「黑箱」AI 架構,甚至提升 CPU 性能。遺憾的是,目前這一現象的根本原因尚不清楚。

自編碼器 VS PredNet

在研究異常時,研究人員使用一個基本自編碼器(autoencoder)和哈佛大學提出的 PredNet(Predictive Neural Network)進行研究。其實,這項研究可追溯到 2016 年,旨在探索和嘗試複制人類大腦皮層的行為。

自編碼器和 PredNet 都是基于深度神經網絡的,它們旨在通過無監督學習合成圖像。自編碼器對每批次圖像進行線性處理,産生輸出,并将輸出作為循環 pipeline 的下一個圖像輸入。此外,自編碼器是在 MNIST 手寫資料集上訓練的。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

在 MNIST 資料庫上訓練自編碼器,該資料庫包含 60,000 張 28×28 像素的訓練圖像,以及 10,000 張測試圖像。

與自編碼器相比,PredNet 可以用來評估複雜的視訊輸入,并且在 FPSI 資料集上進行了訓練。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

FPSI 的圖像序列,以第一人稱視角展示了在迪士尼世界的一天。

此外,這兩種架構在複雜度上非常不同。自編碼器在設計上用于重建圖像而不是預測目标值。相比之下,PredNet 是 4 層結構,每層包含使用卷積 LSTM 的表征神經元。這些層輸出上下文預測,然後與目标進行比較,進而生成在網絡中傳播的誤差項。

自編碼器與 PredNet 的相同點是都使用無監督學習。

下圖左為具有簡單、線性架構的自編碼器,圖右為具有更複雜和循環網絡的 PredNet。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

研究者在一系列硬體和軟體配置下對這兩種架構進行了測試,包括以下兩種配置方式:

有 CPU 無 GPU(Intel i5-4590、i7-6800K、i5-7600K 或 AMD Ryzen-5-3600)既有 CPU 又有 GPU(Intel i5-7600K + NVIDIA GTX-750Ti、i5-7600K + GTX-970、i7-6700K + GTX-1080 等)

他們使用互動式程序檢視器 htop 來確定所有訓練保持在單線程(Intel i7-6800K)、四線程(Intel i5-4590 和 i5-7600K)或六線程(AMD Ryzen-5-3600)上。

鞍點

在自編碼器上,所有配置的平均差在有無 cuDNN 的情況下都不明顯。對于PredNet,結果更令人意外,CPU 和 GPU 訓練在損失評估與品質之間存在顯著差異。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

PredNet 在 4 塊 CPU 和 8 塊 GPU 上訓練的平均損失結果。cuDNN 處于關閉狀态。

研究者總結表示:「盡管運作機制不清楚,但 GPU 硬體看起來具有提升 DNN 訓練的能力。」結果表明,GPU 在避免鞍點時表現更好(鞍點是梯度下降中描述斜坡底部的區域)。

不确定性助益學習準确率,GPU訓練預測性DNN誤差更少、效果更好

梯度下降中斜坡的最低點是「鞍點」。圖源:

https://www.pinterest.com.au/pin/436849232581124086/

鞍點雖然是一個障礙,但在最近關于随機梯度下降(SGD)的思考中,它被認為很大程度上容易解決。但本論文表明,不僅 CPU 需要獨特的配置來避免鞍點,而且鞍點的影響或許應該予以重新審視。