近年來人工智能和大數(shù)據(jù)的迅速發(fā)展正在深刻改變著這個世界和我們的生活方式。人工智能的核心是機(jī)器學(xué)習(xí)(Machine Learning) 算法,自 2006 年以來,在機(jī)器學(xué)習(xí)領(lǐng)域,以深度學(xué)習(xí)(Deep Lerning) 為代表的機(jī)器學(xué)習(xí)算法取得了突破性的進(jìn)展,在2017年AlphaGo大戰(zhàn)圍棋冠軍李世石后這一技術(shù)加速走向市場、落地應(yīng)用。而SSD作為大數(shù)據(jù)的一種存儲介質(zhì),正在取代HDD成為主流的存儲設(shè)備。那么當(dāng)機(jī)器學(xué)習(xí)遇上SSD,會擦出怎樣的火花呢?
一、什么是機(jī)器學(xué)習(xí)?
·機(jī)器學(xué)習(xí)是讓計(jì)算機(jī)具有學(xué)習(xí)的能力,無需進(jìn)行明確編程?!?亞瑟·薩繆爾,1959
·計(jì)算機(jī)程序利用經(jīng)驗(yàn) E 學(xué)習(xí)任務(wù) T,性能是 P,如果針對任務(wù) T 的性能 P 隨著經(jīng)驗(yàn) E 不斷增長,則稱為機(jī)器學(xué)習(xí)?!?湯姆·米切爾,1997
機(jī)器學(xué)習(xí)是一類算法的總稱,這些算法從大量歷史數(shù)據(jù)中挖掘出其中隱含的規(guī)律,并用于預(yù)測或者分類,更具體的說,機(jī)器學(xué)習(xí)可以看作是尋找一個函數(shù),輸入是樣本數(shù)據(jù),輸出是期望的結(jié)果,只是這個函數(shù)過于復(fù)雜,以至于不太方便形式化表達(dá)。需要注意的是,機(jī)器學(xué)習(xí)的目標(biāo)是使學(xué)到的函數(shù)很好地適用于“新樣本”,而不僅僅是在訓(xùn)練樣本上表現(xiàn)很好。學(xué)到的函數(shù)適用于新樣本的能力,稱為泛化(Generalization)能力。
二、機(jī)器學(xué)習(xí)步驟
通常學(xué)習(xí)一個好的函數(shù),分為以下三步:
1、選擇一個合適的模型,這通常需要依據(jù)實(shí)際問題而定,針對不同的問題和任務(wù)需要選取恰當(dāng)?shù)哪P?,模型就是一組函數(shù)的集合。
2、判斷一個函數(shù)的好壞,這需要確定一個衡量標(biāo)準(zhǔn),也就是我們通常說的損失函數(shù)(Loss Function),損失函數(shù)的確定也需要依據(jù)具體問題而定,如回歸問題一般采用歐式距離,分類問題一般采用交叉熵代價(jià)函數(shù)。
3、找出“最好”的函數(shù),如何從眾多函數(shù)中最快的找出“最好”的那一個,這一步是最大的難點(diǎn),做到又快又準(zhǔn)往往不是一件容易的事情。常用的方法有梯度下降算法,最小二乘法等和其他一些技巧(tricks)。
學(xué)習(xí)得到“最好”的函數(shù)后,需要在新樣本上進(jìn)行測試,只有在新樣本上表現(xiàn)很好,才算是一個“好”的函數(shù)。
三、機(jī)器學(xué)習(xí)的類型
機(jī)器學(xué)習(xí)主要有三種基本類型:監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)。
1監(jiān)督學(xué)習(xí)
監(jiān)督學(xué)習(xí)是使用已知正確答案的示例來訓(xùn)練模型。已知數(shù)據(jù)和其一一對應(yīng)的標(biāo)簽,訓(xùn)練一個智能算法,將輸入數(shù)據(jù)映射到標(biāo)簽的過程,它的常見應(yīng)用場景如分類問題和回歸問題。常見的算法有K近鄰算法、線性回歸、邏輯回歸、支持向量機(jī)(SVM)、決策樹和隨機(jī)森林、神經(jīng)網(wǎng)絡(luò)。
分類
在分類中,機(jī)器被訓(xùn)練成將一個組劃分為特定的類。分類的一個簡單例子是電子郵件帳戶上的垃圾郵件過濾器。過濾器分析你以前標(biāo)記為垃圾郵件的電子郵件,并將它們與新郵件進(jìn)行比較。如果它們匹配一定的百分比,這些新郵件將被標(biāo)記為垃圾郵件并發(fā)送到適當(dāng)?shù)奈募A。那些比較不相似的電子郵件被歸類為正常郵件并發(fā)送到你的郵箱。
也許你會問這個分類算法對于SSD有什么用呢?SSD中的一個典型的分類問題是IO模式識別,判斷IO是純讀、純寫或者混合讀寫的,這是一個三分類的問題;判斷IO是順序的還是隨機(jī)的,這是一個二分類的問題??梢愿鶕?jù)實(shí)際情況選擇相應(yīng)的相應(yīng)的機(jī)器學(xué)習(xí)分類算法識別出不同的IO模式,然后針對不同的模式FTL就可采取不同策略,進(jìn)而提升SSD的性能。
回歸
回歸問題通常是用來預(yù)測一個值,它的預(yù)測結(jié)果是連續(xù)的,如預(yù)測房價(jià)、未來的天氣情況等,例如一個產(chǎn)品的實(shí)際價(jià)格為500元,通過回歸分析預(yù)測值為499元,我們認(rèn)為這是一個比較好的回歸分析。
回歸算法在SSD中能用在什么地方呢?回歸算法在SSD的一個應(yīng)用是IO強(qiáng)度預(yù)測,在一定模式下IO強(qiáng)度在時序上是有一定規(guī)律的,可以根據(jù)前一段時間的IO強(qiáng)度預(yù)測下一段時間的IO強(qiáng)度,Smart-IO技術(shù)采用長短期記憶人工神經(jīng)網(wǎng)絡(luò)LSTM對IO強(qiáng)度進(jìn)行預(yù)測。提前預(yù)測出IO強(qiáng)度后就可優(yōu)化FTL策略、合理分配GC占用資源、合理調(diào)度、提高數(shù)據(jù)命中率等,進(jìn)而提升SSD性能。
2非監(jiān)督學(xué)習(xí)
在無監(jiān)督學(xué)習(xí)中,數(shù)據(jù)是無標(biāo)簽的。學(xué)習(xí)模型是為了推斷出數(shù)據(jù)的一些內(nèi)在結(jié)構(gòu)。無監(jiān)督學(xué)習(xí)主要分為聚類和降維。
聚類用于根據(jù)屬性和行為對象進(jìn)行分組。這與分類不同,因?yàn)檫@些組不是你提供的。聚類的一個例子是將一個組劃分成不同的子組(例如,基于年齡和婚姻狀況),然后應(yīng)用到有針對性的營銷方案中。大多數(shù)大數(shù)據(jù)可視化使用降維來識別趨勢和規(guī)則。主要算法: K-means、層次聚類分析(HCA)、DBSCAN。
高維數(shù)據(jù)中很容易出現(xiàn)樣本稀疏、距離計(jì)算困難等問題,即“維度災(zāi)難”,為了緩解維度災(zāi)難,常用的就是降維。降維的主要方法有主成分分析(PCA)、線性判別分析(LDA)、局部線性嵌入(LLE)。如圖所示,通過PCA的方法可以把一個三位的數(shù)據(jù)降維成一個二維數(shù)據(jù)。
無監(jiān)督學(xué)習(xí)由于沒有標(biāo)簽,相比監(jiān)督學(xué)習(xí)來說相當(dāng)于少了一些輸入信息,實(shí)際應(yīng)用中相對監(jiān)督學(xué)習(xí)學(xué)習(xí)會困難一些,那么在SSD是否就無用武之地了呢?非也非也。Smart-IO數(shù)據(jù)分組技術(shù)用K-means算法對IO進(jìn)行冷熱數(shù)據(jù)分組,然后把不同組的數(shù)據(jù)寫到不同的block或者die上,那么就可以減小,可減小WA,延長SSD使用壽命。
3強(qiáng)化學(xué)習(xí)
強(qiáng)化學(xué)習(xí)算法的思路非常簡單,以游戲?yàn)槔?,如果在游戲中采取某種策略可以取得較高的得分,那么就進(jìn)一步「強(qiáng)化」這種策略,以期繼續(xù)取得較好的結(jié)果。這種策略與日常生活中的各種「績效獎勵」非常類似。我們平時也常常用這樣的策略來提高自己的游戲水平。AlphaGo下圍棋也是這個原理,只告訴機(jī)器圍棋的基本規(guī)則,但是不告訴它人類摸索了上千年才總結(jié)出來的定式等圍棋戰(zhàn)術(shù),讓機(jī)器完全依靠自學(xué),打敗人類。
強(qiáng)化學(xué)習(xí)感覺和SSD很難沾上邊,不過熟悉SSD(固態(tài)硬盤)的人都知道,垃圾回收(GC,Garbage Collection)是SSD固件設(shè)計(jì)中的重要一環(huán),也是影響SSD主控性能的重要因素。一般的GC機(jī)制都是只根據(jù)當(dāng)前硬盤空閑空間狀態(tài)來做GC的:當(dāng)有空閑空間的時,不啟動GC;反之,當(dāng)沒有空閑空間的情況下,執(zhí)行GC任務(wù)。這種策略的缺點(diǎn)是如果在用戶操作的時候進(jìn)行GC會造成SSD性能明顯下降,可以在主控空閑時提前進(jìn)行GC,但是GC過于頻繁會造成WA寫放大過大,所以需要一個平衡,需要一種算法來自動確定何時GC,強(qiáng)化學(xué)習(xí)正好可以排上用場,給定一定的衡量標(biāo)準(zhǔn),然后讓機(jī)器通過強(qiáng)化學(xué)習(xí)的方法訓(xùn)練來自動學(xué)習(xí)GC的時機(jī),得到更優(yōu)的GC的策略。
四、DapuStor機(jī)器學(xué)習(xí)技術(shù)
DapuStor已基于SSD開發(fā)出Smart-IO Data Grouping和Smart-IO Intensities Prediction等先進(jìn)技術(shù),把機(jī)器學(xué)習(xí)的先進(jìn)算法用到了SSD中,提升了SSD的產(chǎn)品性能。同時自研的帶有計(jì)算和智能的數(shù)據(jù)存儲處理器芯片(簡稱DPU),可以在芯片層面實(shí)現(xiàn)更多的智能功能和硬件加速,實(shí)現(xiàn)存算一體,滿足高端存儲和邊緣計(jì)算市場的需求。
-
SSD
+關(guān)注
關(guān)注
20文章
2837瀏覽量
117130 -
人工智能
+關(guān)注
關(guān)注
1791文章
46671瀏覽量
237123 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8353瀏覽量
132315
原文標(biāo)題:當(dāng)機(jī)器學(xué)習(xí)遇上SSD
文章出處:【微信號:dputech,微信公眾號:DapuStor】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論