關注前沿科技 量子位
曉查 發自 凹非寺
量子位 報導 | 公眾號 QbitAI
沒有乘法的神經網絡,你敢想像嗎?無論是單個神經元的運算還是卷積運算,都不可避免地要使用乘法。
然而乘法對硬體資源的消耗遠大於加法。如果不用乘法,全部改用加法應該可以讓運算速度大大提升。
去年年底,來自北京大學、華為諾亞方舟實驗室、鵬城實驗室的研究人員將這一想法付諸實踐,他們提出了一種只用加法的神經網絡AdderNet(加法器網絡)。一作是華為諾亞方舟實習生,正在北大讀博三。
如今,這篇文章已經被CVPR 2020收錄(Oral),官方也在GitHub上開放了原始碼。有興趣的同學不妨前往一試究竟。
加法器網絡簡介
加法器網絡的核心在於:用L1距離代替歐氏距離。
L1距離是求兩點之間坐標差值的絕對值之和,因此全程不涉及乘法。
在這種新的定義下,反向傳播中用到的求偏導數運算也變成了求減法。梯度下降的優化過程也被叫做符號SGD(signSGD)。
在加法器網絡的新定義下,特徵向量的空間分布也和CNN有很大的不同。
那麼AdderNet的實際效果如何呢?
在CIFAR-10的圖像分類任務中,AdderNet相比當初Bengio等人提出的加法神經網絡BNN性能有大幅提升,並且已經接近了傳統CNN的結果。
開原始碼
官方的AdderNet基於Python3和PyTorch。
先按照PyTorch的官方文檔準備ImageNet數據集,運行程序評估它在驗證集上的效果:
python test.py —data_dir 'path/to/imagenet_root/'
AdderNet可以在ImageNet數據集上達到74.9%的Top-1準確度和91.7%的Top-5準確度。
或者將CIFAR-10數據集下載到本地,測試一下它在CIFAR-10上的效果
python test.py —dataset cifar10 —model_dir models/ResNet20-AdderNet.pth —data_dir 'path/to/cifar10_root/'
不過AdderNet仍需自己訓練,官方表示將很快發布預訓練模型。
現階段的AdderNet並非沒有缺陷,作者在項目主頁中說,由於AdderNet是用加法過濾器實現的,因此推理速度較慢,需要用CUDA編寫才能提高速度。
這與作者希望提高神經網絡運算速度的初衷還有一段距離。
但這篇論文的作者表示,今後還會繼續加法器神經網絡的研究,發表更多的成果,讓我們一起期待這項研究取得新的進展吧。
華為諾亞實驗室實習生領銜打造
AdderNet這篇文章的一作名叫陳漢亭,畢業於同濟大學數學系,現在在北京大學信息科學技術學院攻讀博士學位,同時在華為諾亞方舟實驗室實習。
在碩博連讀的前三年中,他已經以一作身份發表了5篇論文,其中一篇《Data-Free Learning of Student Networks》被ICCV 2019收錄,另外它參與多篇論文還被NeurIPS、IJCAI、ICML等頂會收錄。
傳送門
原始碼:
https://github.com/huawei-noah/AdderNet
論文地址:
https://arxiv.org/abs/1912.13200
作者系網易新聞·網易號「各有態度」籤約作者
— 完 —
北京時間3月21日早10:30,線上首次雲試乘無人車!急尋眾多監工們,跟隨輕舟智航L4級無人車應對矽谷晚高峰。此外更有兩位輕舟智航頂級技術專家、前Waymo核心工程師拆解其創新技術路徑以及大規模智能仿真系統的具體應用。
戳二維碼,備註「無人車」即可報名、加交流群與同好討論交流無人車進展~
高能直播 | 雲體驗無人車試乘+頂級技術專家拆解仿真系統
量子位 QbitAI · 頭條號籤約作者
վ'ᴗ' ի 追蹤AI技術和產品新動態
喜歡就點「在看」吧 !
原標題:《華為開源只用加法的神經網絡:實習生領銜打造,效果不輸傳統CNN | CVPR 2020 Oral》
閱讀原文