深度學習|挑戰者Juia再出手,小型神經網絡深度學習框架比PyTorch快5倍

深度學習|挑戰者Juia再出手,小型神經網絡深度學習框架比PyTorch快5倍

很早之前 , 就有Juia取代Python的傳聞 。 雖然時至今日 , 還未實現 。 不過先天具備科學計算特色的新型物種Juia編程語言 , 的確在一步步進步 , 逐步“蠶食”以往Python的領地 。 這次則是深度學習框架方面 。
雖然現在大多數人工智能深度學習框架都支持Python接口 , 不過更具“正統血脈”的還是Torch , 作為Python語言的PyTorch框架 , 自從發布以來就廣為好評 , 在學術領域已然超越了TensorFlow 。 而后來者Julia顯然也不示弱 , 之前就有Flux.jl框架 , 不過它身材苗條 , 機智客覺得它只符合人類天性的喜好 , 而并不具備挑戰者的魄力 。 于是現在 , 又一個新框架SimpleChains.jl出現了 。 有關數據表示 , 在小模型場景下 , SimpleChains.jl相比PyTorch最少能提速5倍 。

沒錯 , 是小模型的神經網絡工作內 。 很坦率地說 , 定位于小型神經網絡的SimpleChains.jl直面這個范圍領域的瓶頸和痛點 。 它很好解決了諸如小型網絡GPU內核性能不及優良設計的CPU內核、操作Sigma時O(n)時間復雜度的內存開銷嚴重問題等這類的優化問題 , 還能在CPU上快速擬合和優化小模型 。
【深度學習|挑戰者Juia再出手,小型神經網絡深度學習框架比PyTorch快5倍】出具的實驗過程是 , 研究人員用一個2×2的矩陣做了一個實驗 , 在帶有AVX512指令集的Intel i9-10980XE跑了一下 , 1萬個epoch花了0.41秒 , 相比之下pyTorch花了15秒 , 也就是說在這種微型神經網絡上 , 提速大約35倍 。 而把實驗換到AMD EPYC 7513 帶有AVX2指令的機器上 , Julia的實現花費時間為0.72秒 , 而PyTorch的實現則需要70秒 , 差距拉升到了100倍 。
目前SimpleChains.jl的版本是V0.2.2 。 正因為這個深度學習框架對小型神經網絡更友好 , 因此它的定位也很明確 , 開發人員說得明白 , 這個框架不會對所有人都有用 , 但對那些需要它的人來說 , 它是非常有用的 。 也許 , 在工業生產力級別的大型深度學習神經網絡上 , Julia還無法和Python相比 , 畢竟后者已經有太多接口和庫了 , 占盡先天優勢 。 Julia還要假以時日繼續努力吧 。

    相關經驗推薦