楊軍 從事大規模機器學習系統研發及應用相關工作
在DeepMind的官網blog裡[3],提到了Google使用DeepMind提供的AI技術,在機房的能耗上獲得了大幅的削減,對應於PUE(Power Usage Effectiveness[19])的減少。具體來說,通過build了一個Machine Learning的模型,對機房的PUE指標[14]趨勢進行預測,從而指導製冷設備的配置優化,減少了閒置的用於製冷的電力消耗。從[3]裡public出的指標來看,這項技術能夠為Google減少15%的數據中心整體耗電量。而從[15]的數據來看,2014年,Google全年的電力消耗已經達到了4,402,836 MWh,這個數字相當於30多萬美國家庭一年的電力消耗。所以15%的整體耗電量節省可以映射成上億美元的資金節省[4](對於這裡節省的具體數字,我會有一些concern,認為實際的電量節省沒有這麼顯著,我結合具體數字,估算的電力節省大約在5百萬美元左右,在文末會有一些對應的細節分析)。
這是一個看起來很讓人amazing的數字,從[5]裡,能夠看到一些更有趣的數字:
從2000年到2005年,全美的機房電力消耗累積增加了90%;
從2005年到2010年,全美的機房電力消耗累積增加了24%;
從2010年到2014年,全美的機房電力消耗累積只增加了4%。
而從[7]裡,我們能夠看到,伺服器數量的增長速度可是顯著高於上面的電力消耗增長數字:
2000年到2005年,伺服器年複合新增率是15%(累積增長率100%);
2005年到2010年,伺服器年複合新增率是5%(累積增長率27%);
2010年到2014年,伺服器年複合新增率是3%(累積增長率12%)。
考慮到每年伺服器的折舊淘汰率,不能簡單地把伺服器數量增長率與機房電力消耗增長率進行對比。不過,還是能夠看到機房電力消耗的增幅持續下降的趨勢要比伺服器數量增幅的下降趨勢更為明顯。這從[7]裡提供的一個關於機房能耗的趨勢圖可以更為直觀地感受到:
在背後支撐這個現象的,是一系列能耗相關的技術。比如[6]裡提到的製冷技術、低功耗技術的進步、hyper-scale機房替換小機房帶來的運維邊際成本的下降及技術上的改善、雲計算的興起[5][9][10]等等。
在[8][12]裡也提到了一些Google在機房能耗上的細節工作。
而除了上面提到的這些有助於減少機房電力消耗的技術以外,Google從14年開始,就已經在嘗試通過Machine Learning的方法[1]來減少機房耗電量,今年DeepMind發布的基於神經網絡模型[3]對機房製冷成本cut-off的實驗數據只是一個具體的use case而已:
[3]裡所發布的工作是Google Data Center團隊的Jim Gao與DeepMind合作的項目,目前還沒有正式的文獻可供了解其細節。不過Jim Gao從14年就開始嘗試運用Machine Learning技術來改善機房功耗,當時的工作還是發表了一份技術報告[2],裡頭倒是有一些細節可考。
在[2]裡,使用神經網絡,對PUE進行了回歸建模。
如果從現在的技術視角來看,[2]裡提出的神經網絡模型並不是很複雜,就是一個由5個等寬(每層50個神經元)隱藏層組成的MLP[16]網絡。Loss Function採取的是Squared Loss(因為建模目標是PUE,這實際上是一個浮點數,所以作為一個Regression Problem來建模),loss的具體數學形式見下圖):
其中m是樣本的數目,L是神經網絡的層數(包括輸入層和輸出層),h_\theta表徵輸出層的神經元具體數值。在Loss Function裡引入了二範數正則來避免over-fit,所以這裡的Loss Function也是對問題的一個標準的Ridge Regression[18]建模。
輸入由19個浮點特徵組成。訓練樣本由18萬條樣本組成,每條樣本對應於一個5分鐘長度的時間窗口的聚合數據,數據的總時間跨度將近兩年。70%的數據用作訓練集,30%用作驗證集和測試集,為了避免time bias,在切割訓練與測試集之前,對樣本進行了隨機打散。輸入特徵都進行了歸一化,確保都落在了[-1, 1]的區間內(採用的是樸素的min-max歸一化[17])。考慮到這個訓練樣本的規模和模型複雜度,訓練過程在單機就可以完成,並沒有使用GPU,也不需要考慮分布式訓練的需要。
模型的評估,直接使用了Google某一個真實機房在夏天持續一個月的PUE指標作為target,與模型擬合預測的結果進行了對比:
模型的mean absolute error是[0.004-0.005, 0.004+0.005],對於1.06的PUE值,相對誤差比例< 0.8%。
從上面的圖表能夠看到,模型在PUE > 1.14的值域區間的誤差較大,這跟這段區間的累積樣本數量較少有關。
關於這個模型的具體應用場景,可以列舉幾個:
1.模型可以預測出PUE值與input feature的關係,而這些input feature又來源於物理設備採集的傳感數據,其中有些數據是可以通過參數配置的(比如啟用的制冷機的數目),所以通過這裡的PUE模型,可以指導機房運維人員通過仿真實驗找到更具能耗比的機房配置。
2.機房升級,需要將原機房的流量打到其他機房,其他機房的製冷系統的工作配置需要進行調整,通過PUE Model,可以幫助找到更優的製冷系統配置調整參數。
把[2]與[3]結合起來來看,我會有一些有趣的發現:
I. 在[2]裡給出了Google數據中心的歷史PUE值,我結合[14]的數據做了一下人工validate,數據是能夠對上的,下面提供的就是[14]裡的數據:
而[2]裡提供的數據如下(截止到14年):
我們能夠看到從14年到16年,PUE值幾乎是穩定在1.12,沒有發生比較顯著的變化。
II. 在[3]裡,claim通過DeepMind與Google Data Center合作,在PUE指標上整體減少了15%。這15個百分點的計算方式就很重要了。
如果是相對於PUE的絕對值,那麼考慮到PUE的理論最優值是1.0,幾乎可以肯定,這個15%是有問題的(在[3]裡提起到了這裡的PUE reduction是考慮到了製冷以外的能耗以及電力損失等,不過我還是不太認為這裡的15%是相對於1.12的PUE基準值來計算的)。
如果是相對於PUE裡overhead的部分(從PUE的計算公式,我們可以知道,> 1的那部分都屬於為了供給計算設施的能量所引入的額外消耗,對應於1.12,overhead部分就是0.12),那麼我會覺得更make sense一些。
按照上面我認為更合理的口徑算法,DeepMind claims的電力節省量大約是:
0.12 * 0.15 * 4,402,836 MWh([15]裡public出的Google全年的電力消耗) = 79,251 MWh。
而這部分節省下的電力,如果按照[20]裡的數據,每KWh工業用電的費用是7美分,那麼,對應的費用節省是:
4402836 * 0.12 * 0.15 * 0.07美元 * 1000 = 5,547,573美元。
(如果以PUE的絕對數值作為計算基準的話,對應的費用節省是:
4402836 * 1.12 * 0.15 * 0.07 * 1000 = 51,777,451,倒是勉強能對上過億美元的電費節省的說法)
看起來還是節省了不少電費,不過跟[4]裡所說的上億美元的節省還是存在較大的出入。
不過在DeepMind官方站點上,我並沒有看到關於電費節省的具體費用的數字,所以這裡表現出的不嚴謹目前來看還更多是一個媒體的過度解讀。
最後說說我的一些感受。
1.關於使用神經網絡對PUE進行回歸建模。
我個人認為,這更多是一個建模人員的taste問題,並不是說明這個問題場景神經網絡就是最合適的手段,要比shallow model一定要強。比如說,使用GBDT這樣的非線性樹模型,我的直覺是也能獲得相近的預測表現。畢竟,這個場景下的訓練數據並不多,特徵量也比較少,是否能夠充分發揮神經網絡模型的優勢我是存在一定的疑問的。
2.AI-First
這一年多來,AI-First類似的字眼在不同的媒體、場合聽到過很多次。Google在說[23]、Baidu在說、微軟也在說[24],我個人的預判是,以machine learning為代表的data-driven策略未來會在更多目前看起來比較傳統的領域裡發揮不可替代的價值。比如機房的耗電節能、故障智能運維[25][27][28]、硬體體系結構設計[22]這種比較傳統的,看起來比較「硬」的領域,未來也許都能夠看到更多AI技術的身影。而隨著IoT技術的進步[26]和網絡互聯帶寬的發展,現實世界會更多、更深層地投影到數字世界,而針對這個數字投影,也會有大量的數據挖掘的工作可做。
3.雲計算
雖然我對[4]裡所說的通過AI技術獲得上億美元電費節省的說法存在比較強的疑問,不過我倒是對於[5][9][10]裡提到的以雲計算為基礎,將更多分布式的小規模的機房替換成集中式的hyper-scale機房的作法所能帶來的能源消耗的節省寄予了很高的期望。在[5]裡也有一張很形象的圖說明了把企業辦公工作移入到雲端帶來的能耗收益:
從社會分工的角度來看,作為基礎設施的計算設備和基礎軟體,通過集約化的方式進行管理,是比較典型的帕累託改進[21]。我個人也很看好,對於基礎性的機器學習和數據處理平臺,通過雲計算的方式來為中小企業提供使用權而非所有權(大企業的case比較特殊,涉及到企業競爭安全的考量,未必適合)。這可能也是Google、Amazon、Microsoft以及阿里在雲平臺乃至雲端數據處理平臺上發力的一個重要動機吧。
References:
[1]. Better data centers through machine learning. https://googleblog.blogspot.com/2014/05/better-data-centers-through-machine.html. Google, 2014.
[2]. Jim Gao. Machine Learning Applications for Data Center Optimization. Google, 2014.
http://research.google.com/pubs/pub42542.html
[3]. DeepMind AI Reduces Google Data Center Cooling Bill by 40%. https://deepmind.com/blog/deepmind-ai-reduces-google-data-centre-cooling-bill-40/
[4]. Google uses DeepMind AI to cut Data Center Energy Bills. Google uses DeepMind AI to cut data center energy bills
[5]. Google. Data Centers Get Fit on Efficiency. https://green.googleblog.com/2016/06/data-centers-get-fit-on-efficiency.html
[6]. Julie Chao. Data Centers Continue to Proliferate While Their Energy Use Plateaus. http://newscenter.lbl.gov/2016/06/27/data-centers-continue-proliferate-energy-use-plateaus/
[7]. ETA of US. United States Data Center Energy Usage Report. United States Data Center Energy Usage Report
http://eta.lbl.gov/sites/all/files/lbnl-1005775_v2.pdf
[8]. 2009年數據中心能效峰會. https://www.google.com/about/datacenters/efficiency/external/2009-summit.html
[9]. Google Apps Cuts GSA Energy Costs. Google Apps Cuts GSA Energy Costs
[10]. Lawrence Berkley National Laboratory. The Energy Efficiency Potential of Cloud-Based Software: A U.S. Case Study. http://crd.lbl.gov/assets/pubs_presos/ACS/cloud_efficiency_study.pdf
[11]. Google. Efficiency: How We Do It. https://www.google.com/about/datacenters/efficiency/internal/#tab0=0
[12]. Google. The Case of Energy-Proportional Computing. IEEE Computer, 2007. http://research.google.com/pubs/pub33387.html
[13]. Report to Congress on Server and Data Center Energy Efficiency. 2008. Report to Congress on Server and Data Center Energy Efficiency: Public Law 109-431
[14]. Measuring Efficiency. https://www.google.com/about/datacenters/efficiency/internal/index.html#measuring-efficiency
[15]. https://www.google.com/green/bigpicture/references.html
[16]. Multilayer Perceptron. Multilayer perceptron
[17]. Rescaling. Feature scaling
[18]. Ridge Regression. Tikhonov regularization
[19]. Power Usage Effectiveness. Power usage effectiveness
[20]. Average Price of Electricity to Ultimate Customers by End-User Section. EIA - Electricity Data
[21]. Pareto Efficiency. Pareto efficiency
[22]. Tianshi Chen. ArchRanker: A Ranking Approach to Design Space Exploration. ISCA, 2014.
[23]. Google Blog. This Year’s Founders』 Letter. https://googleblog.blogspot.com/2016/04/this-years-founders-letter.html
[24]. Techcrunch. Microsoft CEO Satya Nadella on How AI Will Transform His Company. Microsoft CEO Satya Nadella on how AI will transform his company
[25]. Daniel Sun. Non-Intrusive Anomaly Detection With Streaming Performance Metrics and Logs for DevOps in Public Clouds: A Case Study in AWS. IEEE Transactions on Emerging Topics in Computing, 2016.
[26]. Charith Perera. The Emerging Internet of Things Marketplace From an Industrial Perspective: A Survey. IEEE Transactions on Emerging Topics in Computing, 2016.
[27]. Better Living Through Statistics: Monitoring Doesn’t Have To Suck. https://github.com/jaqx0r/blts
[28]. Intelligent Site Reliability Engineering — A Machine Learning Perspective. http://blog.adnanmasood.com/2016/05/19/intelligent-site-reliability-engineering-a-machine-learning-perspective/
文章來源:大腦模擬
《SPSS數據分析入門與提高》SPSS是基於圖形界面操作,對於沒有編程基礎的用戶來說十分友好,課程將從基礎入手,在學習SPSS的基本操作過程中,結合相應的統計概率知識,讓學員更能掌握數據分析的本質!點擊下方二維碼查看課程詳情