摘要:在簡化數(shù)據(jù)量和降低大數(shù)據(jù)應用的復雜性中,大數(shù)據(jù)分析發(fā)揮著關(guān)鍵的作用??梢暬瞧渲幸粋€重要的途徑,它能夠幫助大數(shù)據(jù)獲得完整的數(shù)據(jù)視圖并挖掘數(shù)據(jù)的價值。大數(shù)據(jù)分析和可視化應該無縫連接,這樣才能在大數(shù)據(jù)應用中發(fā)揮最大的功效。這篇文章將介紹一些常規(guī)的數(shù)據(jù)可視化方法以及在大數(shù)據(jù)應用領(lǐng)域突破常規(guī)的可視化手段,也會討論大數(shù)據(jù)可視化帶來的挑戰(zhàn),同時介紹大數(shù)據(jù)可視化領(lǐng)域新的方法、應用程序以及其技術(shù)的進步。
一、引言數(shù)據(jù)可視化是將數(shù)據(jù)以不同形式展現(xiàn)在不同系統(tǒng)中,其中包括屬性和變量的單位信息[1]
?;诳梢暬l(fā)現(xiàn)數(shù)據(jù)的方法允許用戶使用不同的數(shù)據(jù)源,來創(chuàng)建自定義分析。先進的分析集成了許多方法,為了支持交互式動畫在臺式電腦、筆記本電腦或平板電腦、智能手機等移動設(shè)備上創(chuàng)建圖形桌面[2]。根據(jù)調(diào)查,表1[3]
顯示了數(shù)據(jù)可視化的好處。
表1.數(shù)據(jù)可視化工具的好處
對于可視化有以下幾點建議[4]
大數(shù)據(jù)是大容量、高速度并且數(shù)據(jù)之間差異很大的數(shù)據(jù)集,因此需要新的處理方法來優(yōu)化決策的流程。大數(shù)據(jù)的挑戰(zhàn)在于數(shù)據(jù)采集、存儲、分析、共享、搜索和可視化[5]
1、“所有數(shù)據(jù)都必須可視化”:不要過分依賴可視化,一些數(shù)據(jù)不需要可視化方法來表達它的消息。
2、“只有好的數(shù)據(jù)才應該做可視化”:簡便的可視化可以便于找到錯誤就像數(shù)據(jù)有助于發(fā)現(xiàn)有趣的趨勢一樣。
3、“可視化總是能做出正確的決定”:可視化并不能代替批判性思維。
4、“可視化將意味著準確性”:數(shù)據(jù)可視化并不著重于顯示一個準確的圖像,而是它可以表達出不同的效果。
可視化方法可通過創(chuàng)建表格、圖標、圖像等直觀地表示數(shù)據(jù)。大數(shù)據(jù)可視化并不是傳統(tǒng)的小數(shù)據(jù)集。一些傳統(tǒng)的大數(shù)據(jù)可視化工具的延伸雖然已經(jīng)被開發(fā)出來,但這些遠遠不夠。在大規(guī)模數(shù)據(jù)可視化中, 許多研究人員用特征提取和幾何建模在實際數(shù)據(jù)呈現(xiàn)之前大大減少數(shù)據(jù)大小。當我們在進行可視化大數(shù)據(jù)時,選擇合適的數(shù)據(jù)也是非常重要的[5]。
本文的目的是通過介紹傳統(tǒng)可視化方法及其在處理大數(shù)據(jù)時的擴展方法,來展現(xiàn)大數(shù)據(jù)可視化的前沿技術(shù)。同時討論大數(shù)據(jù)可視化的挑戰(zhàn),并其取得的進步。
在研究過程中,筆者首先尋找了近幾年通過大學圖書館系統(tǒng)發(fā)表的數(shù)據(jù)可視化相關(guān)論文。此階段筆者主要總結(jié)了傳統(tǒng)的數(shù)據(jù)可視化方法和該領(lǐng)域的新進展。隨后筆者搜索了相關(guān)大數(shù)據(jù)可視化的論文,因為大數(shù)據(jù)是一個較新的領(lǐng)域,所以大多數(shù)的論文是在過去三年里發(fā)表的。同時筆者發(fā)現(xiàn)大多數(shù)傳統(tǒng)的數(shù)據(jù)可視化方法并不適用于大數(shù)據(jù),用一些從傳統(tǒng)的可視化中發(fā)展而來的方法來處理大數(shù)據(jù)也是遠遠不夠的。筆者著重關(guān)注大數(shù)據(jù)可視化的新方法、技術(shù)的進步和大數(shù)據(jù)可視化的工具開發(fā)以及隨之而來的挑戰(zhàn)。
二、常規(guī)數(shù)據(jù)可視化方法許多傳統(tǒng)的數(shù)據(jù)可視化方法經(jīng)常被使用,比如表格、直方圖、散點圖、折線圖、柱狀圖、餅圖、面積圖、流程圖、泡沫圖表等以及圖表的多個數(shù)據(jù)系列或組合像時間線、維恩圖、數(shù)據(jù)流圖、實體關(guān)系圖等。此外,一些數(shù)據(jù)可視化方法經(jīng)常被使用,卻不像前面那些使用的廣泛,它們是平行坐標式、樹狀圖、錐形樹圖和語義網(wǎng)絡(luò)等
平行坐標被用于繪制多維度個體數(shù)據(jù)。平行坐標在顯示多維數(shù)據(jù)時是非常有用的。圖1就是平行坐標;樹狀圖則是一種有效的可視化層次結(jié)構(gòu)方法。每個子矩形的面積代表一個測量,而它的顏色常被用來代表另一個測量的數(shù)據(jù)。圖2顯示了一個選擇流媒體音樂和視頻的樹狀圖,是在一個社交網(wǎng)絡(luò)社區(qū)獲得的數(shù)據(jù);錐形樹圖是另一種顯示分層數(shù)據(jù)的方法,如三維空間中的組織體,它的樹枝是錐生長的形式;語義網(wǎng)絡(luò)是一個表示不同概念之間的邏輯關(guān)系的圖形。它生成有向圖,組合節(jié)點或頂點,邊或弧,并在每個邊上做標記[1]。
圖1:平行坐標
圖2:用樹圖跟蹤查看社交網(wǎng)絡(luò)流媒體服務(wù)的選擇
可視化并非僅僅是靜態(tài)形式,而應當是互動的。交互式可視化可以通過縮放等方法進行細節(jié)概述。它有如下的步驟[1]:
1、選擇:交互式根據(jù)用戶的興趣選擇數(shù)據(jù)實體或完整的數(shù)據(jù)集,以及它的子集。
2、鏈接:在多個視圖找到有用的信息,如圖3所示。
3、過濾:幫助用戶調(diào)節(jié)顯示的信息量,減少信息數(shù)量并且專注于用戶感興趣的信息。
重排或再映射:空間布局是最重要的視覺映射,重排信息的空間布局對產(chǎn)生不同的見解非常有效。
圖3:直方圖(上)和地理圖(底部)的數(shù)據(jù)集之間的互動和連接
新的數(shù)據(jù)庫技術(shù)和前沿的網(wǎng)絡(luò)可視化方法可能是減少成本的重要因素,也有助于完善科研的進程。隨著網(wǎng)絡(luò)時代的到來,數(shù)據(jù)時時都在更新,大大減小了可視化的時效性。這些“低端”可視化通常用于商業(yè)分析和政府數(shù)據(jù)的開放,但它們對科研沒有太大的幫助。許多科學家使用的可視化工具都不允許連接這些網(wǎng)絡(luò)工具[8]。
三、大數(shù)據(jù)可視化面臨的挑戰(zhàn)拓展性和動態(tài)分析是可視化的兩個最主要的挑戰(zhàn)。根據(jù)數(shù)據(jù)量的大小,表2顯示了靜態(tài)數(shù)據(jù)和動態(tài)數(shù)據(jù)的研究現(xiàn)狀。對大型動態(tài)數(shù)據(jù),原本A問題的答案和B問題的答案也許在同時應對AB兩個問題時就不適用了。
表2:可視化分析的研究現(xiàn)狀和挑戰(zhàn)
基于可視化的方法迎接了四個“V”的挑戰(zhàn),并將它們轉(zhuǎn)化成以下的機遇[2]。
體量(Volume):使用數(shù)據(jù)量很大的數(shù)據(jù)集開發(fā),并從大數(shù)據(jù)中獲得意義。
多源(Variety):開發(fā)過程中需要盡可能多的數(shù)據(jù)源。
高速(Velocity):企業(yè)不用再分批處理數(shù)據(jù),而是可以實時處理全部數(shù)據(jù)。
質(zhì)量(Value):不僅為用戶創(chuàng)建有吸引力的信息圖和熱點圖,還能通過大數(shù)據(jù)獲取意見,創(chuàng)造商業(yè)價值。
大數(shù)據(jù)可視化的多樣性和異構(gòu)性(結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化)是一個大問題。高速是大數(shù)據(jù)分析的要素。在大數(shù)據(jù)中,設(shè)計一個新的可視化工具并具有高效的索引并非易事。云計算和先進的圖形用戶界面更有助于發(fā)展大數(shù)據(jù)的擴展性[3]。
可視化系統(tǒng)必須與非結(jié)構(gòu)化的數(shù)據(jù)形式(如圖表、表格、文本、樹狀圖還有其他的元數(shù)據(jù)等)相抗衡,而大數(shù)據(jù)通常是以非結(jié)構(gòu)化形式出現(xiàn)的。由于寬帶限制和能源需求,可視化應該更貼近數(shù)據(jù),并有效地提取有意義的信息??梢暬浖栽坏姆绞竭\行。由于大數(shù)據(jù)的容量問題,大規(guī)模并行化成為可視化過程的一個挑戰(zhàn)。而并行可視化算法的難點則是如何將一個問題分解為多個可同時運行的獨立的任務(wù)[10]。
高效的數(shù)據(jù)可視化是大數(shù)據(jù)時代發(fā)展進程中關(guān)鍵的一部分。大數(shù)據(jù)的復雜性和高維度催生了幾種不同的降維方法。然而,他們可能并不總是那么適用。高維可視化越有效,識別出潛在的模式、相關(guān)性或離群值的概率越高[11]。
大數(shù)據(jù)可視化還有以下幾點問題[12]:
視覺噪聲:在數(shù)據(jù)集中,大多數(shù)對象之間具有很強的相關(guān)性。用戶無法把他們分離作為獨立的對象來顯示。
信息丟失:減少可視數(shù)據(jù)集的方法是可行的,但是這會導致信息的丟失。
大型圖像感知:數(shù)據(jù)可視化不僅受限于設(shè)備的長寬比和分辨率,也受限于現(xiàn)實世界的感受。
高速圖像變換:用戶雖然能觀察數(shù)據(jù),卻不能對數(shù)據(jù)強度變化做出反應。
高性能要求:在靜態(tài)可視化幾乎沒有這個要求,因為可視化速度較低,性能的要求也不高。
可感知的交互的擴展性也是大數(shù)據(jù)可視化面臨的挑戰(zhàn)??梢暬總€數(shù)據(jù)點都可能導致過度繪制而降低用戶的辨識能力,通過抽樣或過濾數(shù)據(jù)可以刪去離群值。查詢大規(guī)模數(shù)據(jù)庫的數(shù)據(jù)可能導致高延遲,降低交互速率[13]。
在大數(shù)據(jù)的應用程序中,大規(guī)模數(shù)據(jù)和高維度數(shù)據(jù)會使進行數(shù)據(jù)可視化變得困難。當前大多數(shù)大數(shù)據(jù)可視化工具在擴展性、功能和響應時間上表現(xiàn)非常糟糕。可視化分析過程中,不確定性是有效的考慮不確定性的可視化過程巨大挑戰(zhàn)[5]。
可視化和大數(shù)據(jù)面臨許多的挑戰(zhàn),下面是一些可能的解決方法[14]:
1. 滿足高速需要:一是改善硬件,可以嘗試增加內(nèi)存和提高并行處理的能力。二是許多機器會用到的,將數(shù)據(jù)存儲好并使用網(wǎng)格計算方法。
2. 了解數(shù)據(jù):請合適的專業(yè)領(lǐng)域人士解讀數(shù)據(jù)。
3. 訪問數(shù)據(jù)質(zhì)量:通過數(shù)據(jù)治理或信息管理確保干凈的數(shù)據(jù)十分必要。
4. 顯示有意義的結(jié)果:將數(shù)據(jù)聚集起來到一個更高層的視圖,在這里小型數(shù)據(jù)組和數(shù)據(jù)可以被有效地可視化。
5. 處理離群值:將數(shù)據(jù)中的離群值剔除或為離群值創(chuàng)建一個單獨的圖表。
四、大數(shù)據(jù)可視化的一些進展在大數(shù)據(jù)時代,可視化操作究竟是如何進行的呢?首先可視化會為用戶提供一個總的概覽,再通過縮放和篩選,為人們提供其所需的更深入的細節(jié)信息[15]??梢暬倪^程在幫助人們利用大數(shù)據(jù)獲取較為完整的客戶信息時起到了關(guān)鍵性作用。而錯綜的關(guān)系是眾多大數(shù)據(jù)場景中的重要一環(huán),社交網(wǎng)絡(luò)或許就是最顯著的例子,想要通過文本或表格的形式理解其中的大數(shù)據(jù)信息是非常困難的;相反,可視化卻能夠?qū)⑦@些網(wǎng)絡(luò)的趨勢和固有模式展現(xiàn)地更為清晰[7]。在形象體現(xiàn)社交網(wǎng)絡(luò)用戶之間的關(guān)系時,通常使用的是基于云計算的可視化方法。通過相關(guān)性模型來描繪社交網(wǎng)絡(luò)中用戶節(jié)點的層次關(guān)系,這種方法能夠直觀地展示用戶的社會關(guān)系。此外,它還能借助利用云技術(shù)的海杜普軟件平臺(Hadoop)將可視化過程并行化,從而加快社交網(wǎng)絡(luò)的大數(shù)據(jù)收集[16]。
大數(shù)據(jù)可視化可以通過多種方法來實現(xiàn),比如多角度展示數(shù)據(jù)、聚焦大量數(shù)據(jù)中的動態(tài)變化,以及篩選信息(包括動態(tài)問詢篩選,星圖展示,和緊密耦合)等等[12]。以下一些可視化方法是按照不同的數(shù)據(jù)類型(大規(guī)模體數(shù)據(jù)、變化數(shù)據(jù)和動態(tài)數(shù)據(jù))來進行分析和分類的[12]:
樹狀圖式:基于分層數(shù)據(jù)的空間填充可視化方法。
圓形填充式:樹狀圖式的直接替代。它使用圓形作為原始形狀,并能從更高級的分層結(jié)構(gòu)中引入更多的圓形。
旭日型:在樹狀圖可視化基礎(chǔ)上轉(zhuǎn)換到極坐標系統(tǒng)。其中的可變參量由寬和高變成半徑和弧長。
平行坐標式:通過可視化分析,將不同帝鄉(xiāng)的多重數(shù)據(jù)因素拓展開來。
蒸汽圖式:堆疊區(qū)域圖的一種,數(shù)據(jù)圍繞一條中軸線展開,并伴隨流動及有機形態(tài)。
循環(huán)網(wǎng)絡(luò)圖式:數(shù)據(jù)圍繞一個圓形排列,并按照它們自身的相關(guān)性比率由曲線相互連接。通常用不同的線寬或色彩飽和度測量數(shù)據(jù)對象的相關(guān)性。
表格3和表格4 [12]
表格3:可視化工具概覽
表格4:可視化工具的區(qū)分
傳統(tǒng)的數(shù)據(jù)可視化工具不足以被用來處理大數(shù)據(jù)。以下列舉了幾種將交互式大數(shù)據(jù)可視化的方法。首先,利用一個由可擴展的直觀數(shù)據(jù)摘要群組成的設(shè)計空間可以將多種類型的變化數(shù)據(jù)可視化,這些直觀的數(shù)據(jù)摘要通過數(shù)據(jù)簡化(如聚合或抽樣)的方法得出。被應用于特定區(qū)間的交互查詢方法(比如關(guān)聯(lián)和更新技術(shù))因此通過結(jié)合多元數(shù)據(jù)塊和并行查詢而被開發(fā)出來。而更先進的方法被運用在一個基于瀏覽器的視覺分析系統(tǒng)——imMens上,來處理數(shù)據(jù)以及對GPU(圖像處理器)進行渲染[13]。
很多大數(shù)據(jù)可視化工具都是在Hadoop的平臺上運行的。該平臺里的常用模塊有:Hadoop Common, HDFS(Hadoop Distributed File System),Hadoop YARN和Hadoop MapReduce。這些模塊能夠高效地分析大數(shù)據(jù)信息,但是卻缺乏足夠的可視化過程。下面將介紹一些具備可視化功能并實現(xiàn)交互式數(shù)據(jù)可視化的軟件[3]:
Pentaho:一款支持商業(yè)智能(BI)功能的軟件,如分析、控制面板、企業(yè)級報表以及數(shù)據(jù)挖掘;
Flare:實現(xiàn)在Adobe視頻播放器中運行的數(shù)據(jù)可視化;
JasperReports:擁有能夠從大數(shù)據(jù)庫中生成報告的全新軟件層;
Dygraphs:快速彈性的開放源Java描述語言圖表集合,能發(fā)現(xiàn)并處理不透明數(shù)據(jù)。
Datameer Analytics Solution and Cloudera:同時使用Datameer和Cloudera兩個軟件能使我們在Hadoop平臺時更快捷、更容易。
Platfora:將Hadoop中的原始大數(shù)據(jù)轉(zhuǎn)換成交互式數(shù)據(jù)處理引擎。Platfora還有把內(nèi)存數(shù)據(jù)引擎模塊化的功能。
ManyEyes:IBM公司開發(fā)的可視化工具。它可供用戶上傳數(shù)據(jù)并實現(xiàn)交互式可視化的公共網(wǎng)站。
Tableau:一款商業(yè)智能(BI)軟件,支持交互式和直觀數(shù)據(jù)分析,內(nèi)置內(nèi)存數(shù)據(jù)引擎來加速可視化處理。
Tableau系列軟件在處理大規(guī)模數(shù)據(jù)集時主要是依靠以下三種產(chǎn)品:Tableau Desktop,Tableau Sever和Tableau Pubilc。此外,Tableau還能內(nèi)嵌入Hadoop的基礎(chǔ)設(shè)備之中,利用Hive(基于Hadoop的一個數(shù)據(jù)倉庫工具)將查詢結(jié)構(gòu)化并為內(nèi)存分析緩存信息。通過緩存信息,Hadoop集群延遲的可能性會大大減小。因此,Tableau軟件為用戶與大數(shù)據(jù)應用提供了一個交互互動機制[5]。
大數(shù)據(jù)分析工具可以輕而易舉地處理ZB(十萬億億字節(jié))和PB(千萬億字節(jié))數(shù)據(jù),但它們往往不能將這些數(shù)據(jù)可視化。如今,主要大數(shù)據(jù)處理工具有Hadoop,High Performance Computing and Communications,Storm,Apache Drill,RapidMiner和 Pentaho BI。數(shù)據(jù)可視化工具有NodeBox,R,Weka,Gephi,Google Chart API,F(xiàn)lot,D3,and http://Visual.ly等等。一種在RHadoop基礎(chǔ)上形成的大數(shù)據(jù)可視化算法分析整合模型已經(jīng)被提出,用來處理ZB和PB數(shù)據(jù)并以可視化的方式為我們提供較高價值的分析結(jié)果。它還與ZB和PB數(shù)據(jù)并行算法的設(shè)計相切合[17]。
交互式可視化集群分析是我們用來探尋集群模式最直接的方法。其中最具有挑戰(zhàn)性的一點是可視化多維數(shù)據(jù),以便用戶交互式分析數(shù)據(jù)和認識集群結(jié)構(gòu)。如今我們已經(jīng)開發(fā)出優(yōu)化的星型坐標可視化模型,來有效分析大數(shù)據(jù)交互集群,它與其他多維可視化方法(如平行坐標和散點圖矩陣)相比,極可能是最具備擴展性的大數(shù)據(jù)可視化技術(shù)[18]:
l 平行坐標和散點圖矩陣通常被用來分析十個維度以內(nèi)的數(shù)據(jù),而星型坐標則可以處理數(shù)十個維度。
l 在基于密度代表的幫助下,星型坐標式可視化自身得以擴展。
l 基于星型坐標的集群可視化并非是用于計算數(shù)據(jù)記錄中的兩兩距離;而是利用潛在映射模型的性能部分地保持這個位置關(guān)系。這一點在處理大數(shù)據(jù)上十分有用。
將大數(shù)據(jù)源直接可視化既不可能也不有效,因此通過分析數(shù)據(jù)減少大數(shù)據(jù)的量和降低其復雜程度就顯得十分重要。所以將可視化和分析相互整合才能使效能最大化。IBM公司開發(fā)的RAVE軟件已經(jīng)能夠?qū)⒖梢暬\用到商業(yè)分析領(lǐng)域去分析并解決問題。RAVE和可拓展的可視化性能讓我們能夠利用有效的可視化更好地理解大數(shù)據(jù)[7]。同時,其他的一些IBM產(chǎn)品,例如IBM InfoSphere BigInsights 和IBM SPSS Analytic Catalyst,也同RAVE一起,利用交互可視化豐富用戶對大數(shù)據(jù)的洞察。例如InfoSphere BigInsights能夠幫助分析并發(fā)現(xiàn)隱藏在大數(shù)據(jù)中的商業(yè)信息,SPSS Analytic Catalyst使得大數(shù)據(jù)的準備工作自動化,加之選取合適的分析過程,最后通過交互式可視化呈現(xiàn)最終結(jié)果[7]。
在沉浸式VR(虛擬現(xiàn)實)平臺上進行科學數(shù)據(jù)可視化當下還在研究階段,其中包括軟件和便宜的商品硬件也在研究階段。這些具備潛在價值和創(chuàng)新力的多維數(shù)據(jù)可視化工具無疑為合作式數(shù)據(jù)可視化提供了便利。沉浸式可視化與傳統(tǒng)的“桌面式”可視化相比具備明顯的優(yōu)勢,因為它可以更好地展現(xiàn)數(shù)據(jù)景觀結(jié)構(gòu)并進行更直觀的數(shù)據(jù)分析。它還應是我們探索更高維度、更抽象大數(shù)據(jù)的基點之一。人類固有的認知模式(或者說是視覺認知)技能能夠通過使用與沉浸式VR相關(guān)的新型數(shù)據(jù)實現(xiàn)最大化[11]。
表格5是對以上大數(shù)據(jù)可視化軟件的SWOT分析總結(jié),其中的競爭優(yōu)勢(Strengths)和機遇(Opportunities)是積極因素;競爭劣勢(Weaknesses)和威脅(Threats)是消極因素。
表格5:對現(xiàn)今大數(shù)據(jù)可視化軟件的SWOT分析
五、結(jié)論
可視化既可以是靜態(tài)的,也可以是動態(tài)的。交互式可視化通常引領(lǐng)著新的發(fā)現(xiàn),并且比靜態(tài)數(shù)據(jù)工具能夠更好的進行工作。所以交互式可視化為大數(shù)據(jù)帶來了無限前景。在可視化工具和網(wǎng)絡(luò)(或者說是Web瀏覽器工具)之間互動的關(guān)聯(lián)和更新技術(shù)助推了整個科學進程?;赪eb的可視化使我們可以及時獲取動態(tài)數(shù)據(jù)并實現(xiàn)實時可視化。
一些傳統(tǒng)的大數(shù)據(jù)可視化工具的延伸并不具備實際應用性。針對不同的大數(shù)據(jù)應用,我們應該開發(fā)出更多新的方法。本文介紹了一些最新的大數(shù)據(jù)可視化方法并對這些軟件進行了SWOT分析,以幫助我們能夠再此基礎(chǔ)上創(chuàng)新。大數(shù)據(jù)分析和可視化,二者的整合也讓大數(shù)據(jù)應用更好地為人們所用。此外能夠有效幫助大數(shù)據(jù)可視化過程的沉浸式VR,也是我們處理高維度和抽象信息時強有力的新方法。