FlexiBO:基于成本感知的深度神经网络多目标优化
?PaperWeekly 原創 ·?作者?|?張瑋瑋
學校?|?東北大學碩士生
研究方向?|?腦電情緒識別
論文動機
設計機器學習系統的關鍵挑戰之一是在幾個目標之間的正確平衡,這些目標往往是不可比較和沖突的。例如,在設計深度神經網絡(DNNs)時,需要在準確性、能耗和推理時間等多個目標之間進行權衡。通常,沒有一種配置對所有目標都具有同樣好的性能。盡管已經發展了不同的多目標優化算法來識別帕累托最優配置,最新的多目標優化算法沒有考慮到每個目標不同的評估成本。
論文工作
論文提出了一種 FlexiBO(flexible Bayesian optimization)方法來解決上述問題,在改進 Pareto 超體積指標的基礎上,提出了一種新的獲取函數。獲取函數可以選擇下一個樣本和目標,以提供每單位成本的最大信息增益。
這篇論文受 Pareto Active Learning(PAL)的啟發, 與其不同的是,這篇論文使用的不同的帕累托前沿構造方法,將成本考慮在內,引入了一個新的獲取函數來采樣下一個配置和評估目標。
因此,該方法可以在評估獲得的額外信息與獲取該信息的成本之間進行權衡,從而確保我們不會為了微小的潛在收益而執行昂貴的評估。通過評估成本較低的目標而不是成本較高的目標,遍歷目標空間,并以更高的效率找到接近最優配置。
論文標題:
FlexiBO: Cost-Aware Multi-Objective Optimization of Deep Neural Networks
論文鏈接:
https://arxiv.org/abs/2001.06588
代碼鏈接:
https://github.com/softsys4ai/FlexiBO
論文方法
在多目標優化設置中,每個目標被建模為一個單獨的代理模型。在許多應用中,評估不同的目標會產生不同的成本,這其中有很多目標可能會很昂貴。因此,我們希望不計算所有的輸入,只通過非支配點來識別帕累托區域 。
更具體地說,FlexiBO 是一種基于成本感知的多目標優化算法,迭代并且自適應地選擇一系列點和目標 ,直到達到最大迭代次數 ,其目的是確定一個帕累托區域而不是帕累托前沿。為了識別 中的帕累托最優點來構造 ,論文用 的一個小子集訓練代理模型,對每個目標使用單獨的代理模型來預測目標函數的值。
沒有被任何目標采樣過的點 ,可以被預測為一個向量 ,這種預測的不確定性表示為 。
論文為每個點使用預測值和不確定值來確定不確定區域,這些不確定區域可以來決定 的支配性。接著,非支配點 被用來分類 是否屬于帕累托最優點集。這些帕累托最優點集被用來構建帕累托前沿。
初始化之后,算法逐步迭代到最大步數。每次迭代包含單個步驟:建模、帕累托區域的構建以及采樣。FlexiBO 中每個代理模型的構建都是基于每次迭代的采樣點,這些采樣點用于預測非采樣配置的目標值及其伴隨的不確定性。
我們使用這些預測來構建一個新的帕累托前沿,然后選擇下一個配置來評估最能改善帕累托前沿(以減少帕累托體積為衡量標準)的配置,每個配置都以衡量特定目標的成本為權重。
算法終止后,將最終迭代中預測為 Pareto 前沿一部分的配置返回為 Pareto 區域,即?。算法 1 給出了用 FlexiBO 實現的貝葉斯優化過程的偽代碼:
3.1 建模
在第 個迭代階段,為了預測平均向量 和標準偏差 ,對于所有的 ,論文使用了單獨的代理模型(GP 和 RF)。將每個配置 x E 分配到一個不確定區域 Rt(x),其計算如下(參見圖 3):
其中,β 是一個縮放參數,用于定義不確定區域與 σ 的比例,用于分析探索與開發的權衡。對于迭代步數 的 個目標,定義 ,不確定區域 內的悲觀值和樂觀值分別由 和 確定。
3.2 帕累托區域的構建
在每個迭代步數 ,為了確定帕累托區域,論文使用非支配點集構建了悲觀和樂觀的前沿。偽代碼如算法 2 所示。
首先,對 使用以下規則來定義 :
其次,由每個 的悲觀值 來構造悲觀帕累托前沿 。如果 小于 ,且 大于 但小于 ,更新已在 中的點 的悲觀值 。
這種構建悲觀帕累托前沿的過程確保了任何有可能被納入帕累托區域的點不會因為額外強調不確定性區域中點的悲觀值而被拋棄。論文使用已排序的悲觀值在一個目標上的排名來構造 ,如算法 2 所示。
如果 大于 ,則每個點 都包含在樂觀帕累托前沿 中。最后計算了 和 之間的 Pareto 區域的體積。
3.3 采樣
論文在考慮了每個目標 的每個 的評估成本的帕累托體積變化 。為了計算帕累托區域的體積變化,我們將每個 的不確定性區域在每個 上分別收縮到其估計均值 μ,然后計算 Pareto 體積變化 (偽代碼見算法 3)。論文使用以下方法選擇下一個樣本 和目標 :
算法在 和 中選擇最初會導致構建一個大 Pareto 區域的點,并迭代地減小 Pareto 區域的體積,如圖 5 所示。
3.4 具體工作流程?
Step 1 更新模型
性能測量的輸出被反饋到 FlexiBO。FlexiBO 使用這些信息更新其替代模型(即 GP 或 RF)的后驗分布。?
Step 2 優化獲取函數
一旦更新了代理模型,就可以重新計算獲取函數,并通過優化獲取函數來確定下一個配置和目標。
Step 3 測量信息增益
在每次探索迭代中,都需要為參數分配適當的值。每個配置選項的值是根據其最大化預期效用的能力來選擇的,而要評估的目標的選擇是基于特定目標上的預期最大體積變化。
Step 4 訓練DNN模型?
在每個新選擇的配置中,沒有必要訓練 DNN 模型。相反,對于沒有選擇昂貴目標的配置,FlexiBO 使用代理模型來近似網絡的準確性。為了測量這些配置的能源消耗,FlexiBO 用隨機參數實例化 DNN 架構,然后在目標設備上自動部署架構進行分析。?
Step 5-6 DNN性能測量
性能度量是需要從優化 DNN 的目標資源受限的硬件中收集的。根據當前部署配置的參數設置,為目標架構設置參數,檢索訓練過的 DNN。一旦優化預算耗盡,將返回 DNN 的帕累托最優配置。?
實驗?
為了評估 FlexiBO,作者在 3 個不同的領域使用了 8 種不同的架構:目標檢測、自然語言處理(NLP)和語音識別。表 1 列出了實驗中使用的體系結構、數據集、編譯器以及訓練和測試集的大小。?
為了初始化 FlexiBO,從對應的 DNN 系統的配置空間中測量了 15 個隨機采樣配置的精度和能耗。在實驗中,考慮的跨堆棧配置空間如表 2 所示。例如,硬件/操作系統配置選項會影響 DNN 的能耗,而網絡選項(例如過濾器大小)會影響準確性和能耗。
實驗設置最大迭代次數 T 為 200。然后測量了 10 次能耗,并取了中位數,目的是減少測量噪聲。精度測量不受噪聲影響,因此不會重復。實驗使用了兩種版本的 FlexiBO 和兩種不同的替代模型 GP(FlexiBO+GP)和 RF(FlexiBO+RF)。作者將本文的方法與隨機搜索(RS) 、單目標貝葉斯能耗優化(SOBO, EC)、精度優化(SOBO, Acc)、PAL 進行了對比。
為了與 FlexiBO 進行比較分析,實驗設置了一個昂貴目標在 RS 中計 算的次數上限,該上限等于昂貴目標在 FlexiBO 中計算的次數。SOBO(Acc)和 SOBO(EC)通過使用改進的最大概率來獲得一個新點,并在每次迭代中進一步測量兩個目標,從而獨立優化精度和能耗。其實驗結果如下圖所示:
圖 7 顯示了目標空間中實驗的不同配置,主要是在 Xception+ImageNet 架構上,FlexiBO(GP, RF)對比 SOBO(EC, Acc)、RS 和 PAL 方法。?
另外,實驗使用貢獻度和多樣性質量指標來評估帕累托前沿,當真實帕累托前沿的形狀和基數未知時,貢獻度特別有用,還可以用來提供使用不同方法獲得的帕累托前沿之間的公平比較。具有較大貢獻值的帕累托前沿近似更接近估計的實際帕累托前沿。
帕累托前沿的多樣性是決定傳播程度的另一個有用的質量指標。具有更高多樣性的帕累托前沿在優化過程中有更多的使用點,從而確保在多目標環境下更好地控制性能調優。圖 8 和圖 9 展示了以下不同帕累托前沿的貢獻和多樣性值。
實驗?
在本工作中,作者開發了一種新的成本感知貝葉斯多目標優化算法稱為 FlexiBO。FlexiBO 近似帕累托區域,并采用了一種新穎的成本感知獲取,不僅選函數擇下一個樣本,而且還選擇最具成本效益的目標來收集測量數據。論文使用 7 種不同的 DNN 體系結構來完成目標檢測、自然語言處理和語音識別任務,并在一個資源受限的設備上優化了精度和能耗兩個目標。
特別鳴謝
感謝 TCCI 天橋腦科學研究院對于 PaperWeekly 的支持。TCCI 關注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
?????稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
?????投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的FlexiBO:基于成本感知的深度神经网络多目标优化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 那些死在战争中的数万尸体去哪儿了?
- 下一篇: 中国航母总共有多少艘