機器學習演算法可近似性的量化評估分析
機器學習演算法可近似性的量化評估分析
機器學習演算法被廣泛應用在識別、數據分析和搜索等領域的分類問題上.由於這類問題往往涉及大量高維度數據、複雜的訓練及預測方法,演算法的執行過程會消耗大量的能量.因此如何降低監督學習演算法的能耗已經成為計算機領域研究熱點之一.
近似計算作為一種非常有潛力的技術被用來優化機器學習演算法的能耗.主要思路是利用演算法訓練或預測的過程中結果對誤差的容忍性,通過近似數據或省略部分非關鍵計算,只引入少量的輸出上的誤差而極大地降低演算法的能耗.
我們發現,目前的工作大多專註於利用特定演算法的近似特性而忽視了不同演算法近似特性的差別對能耗優化帶來的影響.我們定義「可近似性」(approximatability,簡寫為Xbility)為近似計算所節省的能耗Esavings與輸出結果質量下降Qloss的比值。其中對Qloss的度量需要根據具體的問題確定,如在圖像處理應用中,Qloss通常以近似前後圖像PSNR損失值為度量標準,在本文中Qloss為演算法近似前後分類準確度的損失值.可近似性表徵了單位結果質量的下降所能換取的能耗節省.了解不同演算法「可近似性」的差異對近似計算優化能耗有著非常重要的作用,對演算法「可近似性」的評估可以保證應用使用近似計算時選出能耗最優的演算法.
對演算法可近似性的評估首先需要確定要優化的能耗類型.機器學習演算法處理分類問題時分為兩個階段:訓練階段和分類階段,相比於分類階段,訓練階段中影響能耗因素較多,如學習率、batch大小和懲罰因子等,這些因素使得在訓練階段中可近似性評估的公平性難以被保證;其次對應用來說,訓練過程的主要目的是確定分類所需的參數值,可以通過離線執行預先設定好,而演算法分類階段是解決問題的過程,對應用的執行不可或缺,因此本文主要關注分類階段的能耗.根據計算系統層次和耗能因素,我們將分類階段的能耗分解。
本文選取了三類常用的機器學習演算法:支持向量機(SVM)、隨機森林(RF)和神經網路(NN)演算法(其中NN演算法包括卷積神經網CNN和多層感知機MLP),在保證初始分類準確度一致的前提下,評估了針對上述不同類型的能耗不同演算法可近似性的差異.
評估結果表明,演算法可近似性的差異確實會對能耗優化產生重要影響,並且針對不同能耗,演算法的可近似性並不固定.首先,針對樣本存儲能耗,對近似產生的突變雜訊更加魯棒的RF演算法的可近似性最高,與NN演算法相比,可多節省14%存儲能耗.其次,針對樣本訪存能耗,NN演算法由於訓練過程複雜易陷入局部最優等不穩定的特點使得在降低樣本數據精度時分類準確度下降明顯,而SVM演算法和RF演算法對訪存近似更加魯棒,平均節省能耗比NN演算法分別多16%和11%.最後,針對與演算法有關的參數訪存能耗和計算能耗,由於不同演算法近似前的能耗差異很大,演算法的可近似性的差異對能耗優化的影響將十分有限,分類應用選擇演算法的依據將更多取決於參數訪存能耗和計算能耗的差異度.
引用信息
江樹浩,鄢貴海,李家軍,盧文岩,李曉維。機器學習演算法可近似性的量化評估分析。《計算機研究與發展》,2017,54(6):1337-1347


※初學者必讀的八個趣味機器學習項目‖教程 數據集
※無需編程,僅用攝像頭,Google 最新項目讓你 3 分鐘學會機器學習
※谷歌新項目公開:無需學編程,用手機攝像頭和瀏覽器即可機器學習
※通過 TensorFlow 進行的機器學習 如何幫助可口可樂實現移動購買憑證
※人人可以機器學習!谷歌教你零編程基礎玩轉機器學習‖github 教程
TAG:機器學習 |