大資料時代的壓縮表現形式

OReillyData發表於2016-04-19


640?wx_fmt=jpeg

在開發智慧實時應用時,你可能經常會通過資料平臺來分析和解密大資料中的模式和洞察。這些應用所依賴的後端架構常常會是分散式、可容錯和可橫向擴充套件的大資料處理技術。但也有一些情況下,壓縮表現形式也是有用的,甚至是必須的。移動裝置和(物聯網裡的)感測器的興起帶來了把計算從雲頂移向邊緣的軟體和裝置。另外記憶體計算也趨向於更快,造成很多流行的(分散式)系統也把資料快取起來進行運算操作。


為了能更好地說明這一觀點,讓我來介紹兩個最近的案例。通過它們來展現高效的壓縮表現形式的重要性。一個案例是移動計算領域的,另外一個則是來自於目前非常流行的分散式計算框架。


深度神經網路和智慧移動應用


史丹佛大學CVA(併發的極大系統整合架構)研究組的韓鬆(Song Han)在他最近的一次報告裡介紹了一個幫助在移動裝置上優化深度神經網路的研究。深度神經網路在最近取得了長足的進步,並在計算機視覺、語音識別和機器翻譯等領域取得了非常好的效果。同時移動計算平臺的流行也意味著很多移動應用也希望獲得這一能力(深度神經網路)。但挑戰是深度學習的模型一般都很大,從而很難成為移動應用(因為要被下載到移動裝置上,還要經常更新)。如果是採用基於雲的解決方案,則對於特定的應用和行業,網路延遲和隱私又會成為問題。


一種解決方案就是顯著地降低深度學習模型的大小。CVA的研究人員最近提出了一個由三個步驟組成的壓縮深度神經網路的通用模式:


  • 裁剪不重要的連線;

  • 量化網路並對權重進行強化;

  • 最後使用哈夫曼編碼進行編碼。

 640?wx_fmt=jpeg


圖1:壓縮神經網路尺寸的模式比較樣圖。本·駱易家授權使用


初期試驗的結果顯示他們的壓縮模式可把神經網路的大小減少35到50倍,而壓縮後的神經網路的準確度和最初的網路的準確度差不多。CVA的研究人員還為壓縮深度神經網路設計了配套的高能效的ASIC加速器,這也預示著為未來的智慧移動應用所特別設計的下一代軟硬體。


Succinct:在Apache Spark裡搜尋和點查詢壓縮過的資料


Succinct是一個“壓縮”的資料儲存方式。可以讓很多點查詢方法(搜尋、計數、求範圍、隨機查詢)直接對輸入資料的壓縮模式進行操作。Succinct使用的壓縮技術在實際應用中可以獲得和gzip差不多的壓縮率,同時不需要二級索引、資料掃描或解壓縮等技術來支援上述的操作。Succinct並不儲存資料檔案本身,僅僅是壓縮後的形式。通過讓使用者直接對壓縮過的資料直接進行操作,Succinct同時具有低延遲和第儲存空間兩大優點。

640?wx_fmt=jpeg

圖2:定量比較資料掃描、資料索引和Succinct。因為Succinct是用壓縮方式儲存資料,並直接對壓縮後的形式進行操作,它可以在記憶體裡存放並使用大的多的資料。


作為史丹佛AMPLab實驗室的一個研究專案,Succinct已經在2015年年底作為Apache Spark的一部分發布了。這意味著Spark的使用者可以利用Succinct來對檔案進行壓縮,並可以直接使用搜尋查詢(包括對壓縮的RDD進行正規表示式查詢)、計數和範圍查詢。另外,已經基於Succinct的檔案(非結構化)應用介面開發了新的抽象,這就可以把Spark作為文字或鍵值對型的儲存,並使用現有的DataFrame的API來做搜尋、計數、範圍查詢以及隨機查詢。


擁有了這些新的能力放大了Apache Spark的軟體棧,從而可以開發出很多有趣的資料應用。


初步和ElasticSearch的比較結果顯示了很大的希望。同時對使用者更重要的是Succinct是一個活躍的專案。Succinct團隊已經計劃在未來的版本中新增很多新的增強功能,包括Succinct Graphs(支援查詢壓縮的圖)、在壓縮的資料上支援SQL,以及對於資料預處理和壓縮的改進(目前是每核每小時壓縮4GB資料)。他們還正在進行一個研究性質的專案,叫做Succinct Encryption(Succinct加密,支援對壓縮和加密的資料的查詢)。


相關內容


  • 在Strata+Hadoop World大會聖荷西站的新興技術日上,卡努•古拉蒂(Kanu Gulati)《資料分析中硬體加速的機會》的報告。

  • 《大資料:高效地收集和處理》,安娜•吉爾伯特(Anna Gilbert)在Strata+Hadoop World大會上針對壓縮感測的演講。

  • 《做(幾乎)不可能的事》,泰德•唐寧(Ted Dunning)在Strata+Hadoop World大會上針對t-digest和近似演算法的演講。

  • 死硬資料科學家,Strata+Hadoop World 2015聖荷西大會的完整視訊剪輯。



640?wx_fmt=jpeg


本·羅瑞卡(Ben Lorica)

本·羅瑞卡是O'Reilly的首席資料科學家和關於資料方面的內容策略主管。在多個領域裡(包括直銷市場、消費者和市場研究、精準廣告、文字挖掘和金融工程),他曾經進行了商業智慧、資料探勘、機器學習和統計分析的工作。他曾效力於投資管理公司、網際網路創業企業和金融服務公司。


閱讀原文(read more ) 獲得更多資訊


相關文章