RGF算法+遷移學(xué)習(xí)精確預(yù)測(cè)硬盤(pán)故障?!禤redicting Disk Replacement towards Reliable Data Centers》由IBM研究院發(fā)表于數(shù)據(jù)挖掘頂會(huì)議KDD 2016。磁盤(pán)是當(dāng)今數(shù)據(jù)中心中最常見(jiàn)的硬件設(shè)備,也是最易發(fā)生故障的設(shè)備。盡管有如RAID的防御機(jī)制,系統(tǒng)的可用性和可靠性仍然經(jīng)常嚴(yán)重沖擊。 本文采用RGF算法和遷移學(xué)習(xí)精確預(yù)測(cè)硬盤(pán)故障從而判斷硬盤(pán)是否應(yīng)該更換。其方法對(duì)硬件設(shè)備的故障預(yù)測(cè)有借鑒意義。
互聯(lián)網(wǎng)迅速發(fā)展,網(wǎng)絡(luò)服務(wù)數(shù)量驟增, 大規(guī)模海量數(shù)據(jù)存儲(chǔ)系統(tǒng)是必不可少的支持。雖然新的存儲(chǔ)介質(zhì)例如SSD,已經(jīng)在讀性能等很多方面擁有了比磁盤(pán)更好的性能,但就目前來(lái)講,其高昂的花費(fèi)使大部分?jǐn)?shù)據(jù)中心難以負(fù)擔(dān)。因此,大型數(shù)據(jù)中心依然采用傳統(tǒng)的以磁盤(pán)為主的存儲(chǔ)系統(tǒng)。這樣做采購(gòu)成本上雖然有了節(jié)省,但磁盤(pán)頻繁損壞導(dǎo)致的數(shù)據(jù)丟失給企業(yè)帶來(lái)的損失也是不可忽視的重大問(wèn)題。
據(jù)美國(guó)63個(gè)數(shù)據(jù)中心組織進(jìn)行的一項(xiàng)研究顯示,數(shù)據(jù)中心的停機(jī)費(fèi)用在過(guò)去幾年中顯著增加,從2010年的5600美元/分鐘增加到2016年的8851美元/分鐘。以往基于磁盤(pán)SMART屬性建立的各種磁盤(pán)故障預(yù)測(cè)模型,雖然取得了一定的效果,但是其在SMART屬性選擇、準(zhǔn)確性以及模型的復(fù)用性上存在不足之處。
因此,本文提出了一個(gè)自動(dòng)、精確的磁盤(pán)故障預(yù)測(cè)的方法,判斷磁盤(pán)在接下來(lái)一段時(shí)間內(nèi)需不需要替換。下面兩個(gè)圖展示的是有無(wú)替換預(yù)測(cè)的磁盤(pán)可用性示意圖。左圖代表的是傳統(tǒng)的磁盤(pán)異常檢測(cè),磁盤(pán)狀態(tài)開(kāi)始變差后才檢測(cè)到磁盤(pán)故障,這時(shí)的可用性已經(jīng)降到了最低才開(kāi)始更換磁盤(pán)。右圖展示的是使用磁盤(pán)故障預(yù)測(cè)的情況,首先系統(tǒng)判斷磁盤(pán)的狀態(tài)即將要變差,然后工程師在磁盤(pán)可用性降低之前更換磁盤(pán)。通過(guò)這兩個(gè)圖的對(duì)比,我們可以看出提前預(yù)測(cè)磁盤(pán)故障可以降低故障對(duì)系統(tǒng)可用性的沖擊。
磁盤(pán)故障預(yù)測(cè)的挑戰(zhàn)
但是,磁盤(pán)故障預(yù)測(cè),存在如下挑戰(zhàn):
不是所有的SMART屬性都與磁盤(pán)故障相關(guān)。因?yàn)槿狈MART屬性對(duì)磁盤(pán)狀態(tài)指示的標(biāo)準(zhǔn),所以需要從SMART屬性中選擇與一部分磁盤(pán)故障相關(guān)的屬性,作為故障預(yù)測(cè)模型的輸入。
磁盤(pán)故障數(shù)據(jù)高度不平衡。隨著時(shí)間的推移,健康磁盤(pán)的SMART數(shù)據(jù)量一直在增加,但是只有一小部分磁盤(pán)(2%)被替換,即被替換的磁盤(pán)數(shù)據(jù)非常少。分類(lèi)算法通常最大限度地提升整體精度,少數(shù)類(lèi)所包含的信息就會(huì)很有限,從而難以確定少數(shù)類(lèi)數(shù)據(jù)的分布,即在其內(nèi)部難以發(fā)現(xiàn)規(guī)律,進(jìn)而造成少數(shù)類(lèi)的識(shí)別率低。
不同類(lèi)型的磁盤(pán)SMART存在差異。SMART是特定于制造商的,它們的編碼和標(biāo)準(zhǔn)化在制造商之間差別很大,所以不能使用同一個(gè)預(yù)測(cè)性模型來(lái)判斷不同型號(hào)的磁盤(pán)。下面兩個(gè)圖展示的是不同類(lèi)型磁盤(pán)的SMART數(shù)據(jù)差異,其中左圖表示的是溫度,右圖表示的是開(kāi)機(jī)關(guān)機(jī)的周期,從兩個(gè)圖的對(duì)比可以看出,不同類(lèi)型的磁盤(pán)SMART確實(shí)存在差異。
設(shè)計(jì)思想
本文分為如下五步來(lái)解決故障預(yù)測(cè)的挑戰(zhàn):
選擇SMART屬性。使用突變點(diǎn)(changepoint)檢測(cè)的方法對(duì)SMART屬性分類(lèi),選擇與磁盤(pán)替換相關(guān)的SMART屬性。
生成時(shí)間序列。使用指數(shù)平滑來(lái)生成簡(jiǎn)化但是信息豐富的時(shí)間序列。
解決數(shù)據(jù)不平衡性。通過(guò)欠抽樣(downsampling)選擇具有代表性的健康磁盤(pán)的數(shù)據(jù),然后用這些數(shù)據(jù)來(lái)代表全部的健康磁盤(pán),從而使健康磁盤(pán)與替換磁盤(pán)的比例達(dá)到平衡。
對(duì)磁盤(pán)狀態(tài)分類(lèi)。RGF是一個(gè)分類(lèi)算法,可以將磁盤(pán)的狀態(tài)分成0/1的狀態(tài),如果當(dāng)前時(shí)間序列被分成1狀態(tài),則認(rèn)為磁盤(pán)即將出現(xiàn)故障,需要更換磁盤(pán)。
遷移學(xué)習(xí)??紤]到同一廠商生產(chǎn)的不同磁盤(pán)模型之間也存在一定差異,本文使用了遷移學(xué)習(xí)的方法,從而利用某種磁盤(pán)上訓(xùn)練的模型來(lái)預(yù)測(cè)同一廠商的其他磁盤(pán)的故障替換情況。
1、選擇SMART屬性
因?yàn)镾MART數(shù)據(jù)是隨著時(shí)間的增長(zhǎng)而生成的,所以文中是通過(guò)時(shí)間序列突變點(diǎn)(changepoint)檢測(cè)來(lái)確定SMART與磁盤(pán)替換的相關(guān)性。當(dāng)被替換的磁盤(pán)SMART時(shí)間序列中某個(gè)SMART屬性發(fā)生突變,而且這個(gè)轉(zhuǎn)變是永久性不可恢復(fù)的,那么可以認(rèn)為這個(gè)屬性與磁盤(pán)替換是相關(guān)的。
下圖展示的是SMART_187_raw(無(wú)法糾正的錯(cuò)誤)的折線圖,這是報(bào)告給操作系統(tǒng)的無(wú)法通過(guò)硬件ECC校正的錯(cuò)誤。如果數(shù)據(jù)值不為零,就應(yīng)該備份磁盤(pán)上的數(shù)據(jù)了。從圖中可以看出在第50天的時(shí)候,SMART_187_raw值突然增大,即第50天為突變點(diǎn)。
通過(guò)檢測(cè)每一個(gè)SMART屬性,本文得到了下表中展示的結(jié)果(只展示部分結(jié)果)。在表格中,SgtA和HitA分別表示希捷和日立的磁盤(pán)型號(hào),Ratio表示磁盤(pán)替換前該屬性值出現(xiàn)突變的比例。我們可以看出有些SMART屬性確實(shí)與磁盤(pán)替換無(wú)關(guān),而且對(duì)于不同型號(hào)的磁盤(pán),與磁盤(pán)替換事件相關(guān)的SMART屬性是不相同的。
2、生成時(shí)間序列
經(jīng)過(guò)第一步的SMART屬性值的挑選,下一步需要做的是生成預(yù)測(cè)模型可以使用的時(shí)間序列。使用時(shí)間序列作為模型的數(shù)據(jù)是基于如下三點(diǎn)考慮的:
每天的數(shù)據(jù)都是不穩(wěn)定的,可能某天的SMART數(shù)據(jù)缺失。
磁盤(pán)具有一定的自恢復(fù)性,不能根據(jù)某一天的數(shù)據(jù)來(lái)判定磁盤(pán)接下來(lái)一段時(shí)間的狀態(tài)。
如果只看某一天的數(shù)據(jù),則無(wú)法提前一段時(shí)間來(lái)預(yù)測(cè)磁盤(pán)故障,也就無(wú)法留出充足的時(shí)間給工程師更換磁盤(pán)。
所以本文使用指數(shù)平滑的方法來(lái)生成時(shí)間序列,S_t=α·Y_t+(1-α)·S_(t-1)是指數(shù)平滑的公式,其中α是平滑參數(shù),Y_t是之前t個(gè)數(shù)據(jù)的平滑值。α越接近1,平滑后的值越接近當(dāng)前時(shí)間的數(shù)據(jù)值。指數(shù)平滑不舍棄過(guò)去的數(shù)據(jù),而是僅給予逐漸減弱的影響程度,即隨著數(shù)據(jù)的遠(yuǎn)離,賦予逐漸收斂為零的權(quán)數(shù)。
3、解決數(shù)據(jù)不平衡性
遇到不平衡數(shù)據(jù)時(shí),以總體分類(lèi)準(zhǔn)確率為學(xué)習(xí)目標(biāo)的傳統(tǒng)分類(lèi)算法會(huì)過(guò)多地關(guān)注多數(shù)類(lèi),而使少數(shù)類(lèi)樣本的分類(lèi)性能下降。因?yàn)檫@些算法大多數(shù)建立在各類(lèi)數(shù)據(jù)分布平衡的假設(shè)之下,以尋求數(shù)據(jù)總體分類(lèi)準(zhǔn)確率為最大目標(biāo)。而在磁盤(pán)故障預(yù)測(cè)的場(chǎng)景下,磁盤(pán)故障的數(shù)量是遠(yuǎn)遠(yuǎn)小于正常磁盤(pán)的。本文使用了欠抽樣(downsampling)的方式來(lái)平衡數(shù)據(jù)。
具體做法是這樣的,對(duì)健康磁盤(pán)的時(shí)間序列樣本做K-means聚類(lèi),聚類(lèi)之后每一個(gè)類(lèi)別中樣本都是相似的,然后選擇距離聚類(lèi)中心最近的n個(gè)點(diǎn)作為健康磁盤(pán)樣本的抽樣結(jié)果。
4、對(duì)磁盤(pán)狀態(tài)分類(lèi)
本文使用了RGF算法對(duì)磁盤(pán)狀態(tài)分類(lèi)。RGF 算法是一個(gè)分類(lèi)算法,它是GBDT(梯度提升決策樹(shù))算法最好的變種之一。針對(duì) GBDT 每次迭代只優(yōu)化新建樹(shù)以及過(guò)擬合的問(wèn)題,RGF使用了正則化的全局優(yōu)化貪心搜索改進(jìn)算法:
每次迭代直接對(duì)整個(gè)貪心森林進(jìn)行學(xué)習(xí)
新增決策樹(shù)后進(jìn)行全局的參數(shù)優(yōu)化
引入顯式的針對(duì)決策樹(shù)的正則項(xiàng)來(lái)防止過(guò)擬合
文中對(duì)比了RGF與其他分類(lèi)算法的分類(lèi)結(jié)果,上表中的P、R、F分別表示準(zhǔn)確率(precision)、召回率(recall)、F-分?jǐn)?shù)(F-score)。從表中可以看出,RGF的效果是最好的。
5、遷移學(xué)習(xí)
同一廠商生產(chǎn)的不同磁盤(pán)模型之間也是存在差異的。本文發(fā)現(xiàn),不同磁盤(pán)模型之間具有相似的SMART屬性,但相同的SMART屬性之間的數(shù)據(jù)分布不同。因此,直接將訓(xùn)練集磁盤(pán)模型上建立的預(yù)測(cè)模型用于同一廠商生產(chǎn)的其他磁盤(pán)模型的故障預(yù)測(cè),不能達(dá)到最好的預(yù)測(cè)效果。
首先我們來(lái)說(shuō)明遷移學(xué)習(xí)中的兩個(gè)重要概念,域(domain)和任務(wù)(task)。如下圖所示。
域(domain):包括特征空間(feature space)X和邊緣概率分布(marginal probability distribution)P(x), x ∈X。例如,一組圖片中的所有可能顏色構(gòu)成一個(gè)特征空間,而各種顏色出現(xiàn)的頻率則為邊緣概率分布。
任務(wù)(task):給定一個(gè)域,任務(wù)還包含兩個(gè)要素,標(biāo)簽空間(label space)y和預(yù)測(cè)函數(shù)(predictive function)f(·)=P(y|x)。例如,一組圖片中可能出現(xiàn)的所有元素構(gòu)成一個(gè)標(biāo)簽空間,而通過(guò)預(yù)測(cè)函數(shù)可以得出某幅特定圖片中包含哪些元素。
同一廠商生產(chǎn)的不同磁盤(pán)模型之間具有一定的關(guān)聯(lián)性,但它們之間存在樣本選擇偏差(sample selection bias)。即不同種磁盤(pán)模型之間雖然具有大量的重疊特征,但源數(shù)據(jù)實(shí)例(帶標(biāo)簽的訓(xùn)練數(shù)據(jù))和目標(biāo)數(shù)據(jù)實(shí)例(無(wú)標(biāo)簽的測(cè)試數(shù)據(jù))的分布不同。因此,作者采用了基于實(shí)例的遷移學(xué)習(xí)方法來(lái)消除源數(shù)據(jù)和目標(biāo)數(shù)據(jù)之間的樣本選擇偏差,從而將某種磁盤(pán)上訓(xùn)練的模型應(yīng)用于其他磁盤(pán)上。
具體的,對(duì)于兩種磁盤(pán)模型1和2,將帶標(biāo)簽的磁盤(pán)1實(shí)例與無(wú)標(biāo)簽的磁盤(pán)2實(shí)例放在一起。訓(xùn)練一個(gè)分類(lèi)函數(shù),使f(x)表示一個(gè)磁盤(pán)屬于模型1或模型2的概率。利用分類(lèi)函數(shù)f對(duì)帶標(biāo)簽的訓(xùn)練數(shù)據(jù)集進(jìn)行重新采樣,從而消除樣本選擇偏差,使訓(xùn)練集與測(cè)試集數(shù)據(jù)服從同一分布。此時(shí),根據(jù)重新采樣的訓(xùn)練集,利用前文所述的RGF算法訓(xùn)練出函數(shù),g(x)代表該類(lèi)型磁盤(pán)的一個(gè)實(shí)例需要進(jìn)行替換的概率。由于重新采樣的訓(xùn)練集與測(cè)試集服從相同的數(shù)據(jù)分布,因此可將預(yù)測(cè)函數(shù)g直接應(yīng)用于同一廠商生產(chǎn)的其他磁盤(pán)模型上(測(cè)試集)。
作者分別使用兩個(gè)廠商生產(chǎn)的磁盤(pán)的數(shù)據(jù)集SgtA和HitA訓(xùn)練模型,并使用遷移學(xué)習(xí)的方法將兩種模型分別應(yīng)用于同廠商的其他磁盤(pán)數(shù)據(jù)集SgtB和HitB上。上表分別展示了直接將模型 A應(yīng)用于磁盤(pán)B上以及運(yùn)用遷移學(xué)習(xí)方法將模型A應(yīng)用于磁盤(pán)B的替換預(yù)測(cè)的準(zhǔn)確率、召回率、F-分?jǐn)?shù)??梢钥闯?,應(yīng)用遷移學(xué)習(xí)方法后,預(yù)測(cè)準(zhǔn)確性得到了很大提高,從而大大減少了需要訓(xùn)練的模型數(shù)量。
總結(jié)
本文介紹了一套自動(dòng)、精確的磁盤(pán)故障預(yù)測(cè)方法,用于判斷磁盤(pán)在接下來(lái)一段時(shí)間內(nèi)是否需要替換。通過(guò)選擇SMART屬性、生成時(shí)間序列、解決數(shù)據(jù)不平衡性等步驟,將磁盤(pán)故障預(yù)測(cè)轉(zhuǎn)化為對(duì)時(shí)間序列數(shù)據(jù)的分類(lèi)問(wèn)題。之后使用RGF算法對(duì)磁盤(pán)狀態(tài)進(jìn)行分類(lèi),從而找出可能發(fā)生故障的磁盤(pán)。對(duì)于同一廠商生產(chǎn)的不同型號(hào)的磁盤(pán),采用遷移學(xué)習(xí)的方法進(jìn)行處理,在保證預(yù)測(cè)準(zhǔn)確性的同時(shí)減少模型訓(xùn)練開(kāi)銷(xiāo)。最后,文中采用不同廠商、多種類(lèi)型的磁盤(pán)SMART數(shù)據(jù)驗(yàn)證該方法,達(dá)到了較高的準(zhǔn)確率和召回率。
-
IBM
+關(guān)注
關(guān)注
3文章
1765瀏覽量
74860 -
磁盤(pán)
+關(guān)注
關(guān)注
1文章
380瀏覽量
25276 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8438瀏覽量
133080
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論