摘要:人類利用形象思維獲取視覺符號中所蘊含的信息并發(fā)現(xiàn)規(guī)律,進而獲得科學發(fā)現(xiàn)。文章介紹科學可視化、信息可視化和數(shù)據(jù)可視化的內(nèi)涵,闡述大數(shù)據(jù)可視化分析方法。
關鍵詞:大數(shù)據(jù);可視化分析;并行計算
0 引 言
人類的創(chuàng)造性不僅取決于邏輯思維,還與形象思維密切相關。人類利用形象思維將數(shù)據(jù)映射為形象視覺符號,從中發(fā)現(xiàn)規(guī)律,進而獲得科學發(fā)現(xiàn)。期間,可視化關鍵技術對重大科學發(fā)現(xiàn)起到重要作用。在大數(shù)據(jù)時代,大數(shù)據(jù)可視化分析的研究與發(fā)展將為科學新發(fā)現(xiàn)創(chuàng)造新的手段和條件。
數(shù)據(jù)可視化于20世紀50年代出現(xiàn),典型例子是利用計算機創(chuàng)造出了圖形圖表。1987年,布魯斯·麥考梅克等撰寫的《Visualization inScientific Computing》促進了可視化技術的發(fā)展,將科學計算中的可視化稱之為科學可視化。20世紀90年代初期,出現(xiàn)了信息可視化。目前將科學可視化與信息可視化都歸為數(shù)據(jù)可視化。
2 科學可視化
2.1 問題的提出
傳統(tǒng)的科學可視化技術已成功應用于各學科領域,但如果將其直接應用于大數(shù)據(jù),將面臨實用性和有效性問題,這說明需要對科學可視化技術重新審視與深入研究。
2.2 分布式并行可視化算法
可擴展性是構(gòu)造分布式并行算法的一項重要指標。傳統(tǒng)的科學可視化算法應用在小規(guī)模的計算機集群中,最多可以包括幾百個計算節(jié)點,而實際應用是要在數(shù)千甚至上萬個計算節(jié)點上運行。隨著數(shù)據(jù)規(guī)模的逐漸增大,算法的效率逐漸成為數(shù)據(jù)分析流程的瓶頸,設計新的分布并行可視化算法已經(jīng)成為一個研究熱點。
2.2.1 并行圖像合成算法
傳統(tǒng)的并行圖像合成算法主要包括前分割算法、中間分割算法和后分割算法3種類型,前分割算法主要分為如下3步驟:
(I)將數(shù)據(jù)分割并分配到每個計算節(jié)點上;
(2)每個計算節(jié)點獨立繪制分配到的數(shù)據(jù),在這一步,節(jié)點之間不需要數(shù)據(jù)交換:
(3)將計算節(jié)點各自繪制的圖形匯總,合成最終的完整圖形。
從上述步驟中可以看出,由于節(jié)點之間可能需要大量的數(shù)據(jù)交換,尤其是步驟(3)可能成為算法的瓶頸。解決這個問題的關鍵是減少計算節(jié)點之間的通信開銷,可以通過對數(shù)據(jù)進行劃分并在各計算節(jié)點間進行分配來實現(xiàn)。劃分和分配方案需要與數(shù)據(jù)的訪問一致,原則是計算節(jié)點只使用駐留本計算節(jié)點的數(shù)據(jù)進行跟蹤,從而減少數(shù)據(jù)交換。
2.2.2 并行顆粒跟蹤算法的研究
傳統(tǒng)的科學可視化研究對象主要集中在三維標量場數(shù)據(jù)。在科學大數(shù)據(jù)中,經(jīng)常使用三維流場數(shù)據(jù),其原因如下所述。
將二維的流場可視化方法直接應用在三維流的結(jié)構(gòu)不可能都成功,每個顆粒雖然可以單獨跟蹤,但是可能出現(xiàn)在空間中的任何一個位置,這就需要計算節(jié)點之間通過通信交換顆粒。同時,當大量的顆粒在空間移動時,每個計算節(jié)點可能處理不同數(shù)量的顆粒,從而造成計算量嚴重失衡。解決這些問題的關鍵是減少計算節(jié)點之間的通信開銷,其基本思路同并行圖像合成算法。
2.2.3重要信息的提取與顯示技術
科學大數(shù)據(jù)可視化的另一個重要研究方向是如何從數(shù)據(jù)中快速有效地提取重要信息,并且用這些重要信息來指導可視化的生成。從可視化的角度來看,一方面需要可視化設計表達數(shù)據(jù)中特定信息的定義,通過人機交互工具,由用戶來調(diào)整參數(shù),觀察和挖掘數(shù)據(jù)中的重要信息;另一方面需要根據(jù)用戶的反饋信息調(diào)整可視化,以更好地突顯重要信息,淡化非重要信息,方便用戶對重要信息及其背景的觀測。整個信息的提取過程是個典型的交互式可視分析過程?;谶@一思想的兩個技術是流場可視化的層次流線束技術和用于標量數(shù)據(jù)的基于距離場的可視化技術。
2.2.4原位可視化
傳統(tǒng)的科學可視化采用科學計算后進行處理的模式。隨著計算機系統(tǒng)計算速度的提高,I/O速度與計算速度之間的差距增大。隨著計算規(guī)模越來越大,而相應生成的數(shù)據(jù)規(guī)模也越來越大,現(xiàn)有的存儲系統(tǒng)無法把所有的計算數(shù)據(jù)都保存下來。解決上述問題的常用方法是采用空間或者時間上的采樣方法,最后只保存部分數(shù)據(jù),造成結(jié)果數(shù)據(jù)的丟失,不能保證高精度數(shù)值模擬。
原位可視化的基本思想是:
(1)將可視化與科學模擬集成在一起。在科學模擬的過程中,每個時間片的結(jié)果生成之后,可以立刻調(diào)用可視化模塊,直接與科學模擬程序集成。為了減少數(shù)據(jù)的冗余,可視化程序與科學模擬程序共享數(shù)據(jù)結(jié)構(gòu)。
(2)由于數(shù)據(jù)的分割和分配優(yōu)先滿足科學模擬的需求,可視化程序的工作分配有可能是不均衡的,需要重現(xiàn)可視化的工作量在各個計算節(jié)點上分配算法,減少數(shù)據(jù)傳輸。
(3)可視化程序的開銷不能太高,要保持集成系統(tǒng)的高效能,必須提高可視化程序的效率,其可擴展性必須與科學模擬一致,可以應用上萬個、上10萬個或更多的計算節(jié)點。
3 信息可視化
自18世紀后期數(shù)據(jù)圖形學誕生以來,抽象信息的視覺表達手段一直被用來揭示數(shù)據(jù)及其他隱匿模式的奧秘。20世紀90年代期間出現(xiàn)的圖形化界面則使得人們能夠直接與可視化信息進行交互,從而推動了信息可視化研究。信息可視化通過人類的視覺能力,來理解抽象信息的意思,從而加強人類的認知活動,達到能夠駕馭日益增多的數(shù)據(jù)的能力。
信息可視化是跨學科領域的大規(guī)模非數(shù)值型信息資源的視覺展現(xiàn),能夠幫助人們理解和分析數(shù)據(jù)。信息可視化中的交互方法能夠?qū)崿F(xiàn)用戶與數(shù)據(jù)的快速交互,更好地驗證假設和發(fā)現(xiàn)內(nèi)在聯(lián)系。信息可視化技術提供了理解高維度、多層次、時空、動態(tài)、關系等復雜數(shù)據(jù)的手-段,與科學可視化相比,信息可視化更側(cè)重于抽象數(shù)據(jù)集,如對非結(jié)構(gòu)化文本或者高維空間中不具有固有的二維或三維幾何結(jié)構(gòu)的點的視覺展現(xiàn)。信息可視化適用于大規(guī)模非數(shù)字型信息資源的可視化表達。
信息可視化與科學可視化的不同之處是,信息可視化所要可視化的數(shù)據(jù)并不是某些數(shù)學模型的結(jié)果或者是大型數(shù)據(jù)集,而是具有自身因有結(jié)構(gòu)的抽象數(shù)據(jù)。
科學可視化主要處理具有地理結(jié)構(gòu)的數(shù)據(jù),信息可視化主要處理像樹、圖形等抽象式的數(shù)據(jù)結(jié)構(gòu),可視化分析則主要挖掘數(shù)據(jù)背景的問題與原因。更進一步說,科學可視化技術是指空間數(shù)據(jù)的可視化技術,而信息可視化技術則是指非空間數(shù)據(jù)的可視化技術。
4 數(shù)據(jù)可視化
4.1 概念
數(shù)據(jù)可視化技術是指運用計算機圖形學和圖像處理技術,將數(shù)據(jù)轉(zhuǎn)換為圖形或圖像在屏幕上顯示出來,并利用數(shù)據(jù)分析和開發(fā)工具發(fā)現(xiàn)其中未知信息的交互處理的理論、方法和技術。
數(shù)據(jù)可視化不僅包括科學計算數(shù)據(jù)的可視化,而且包括工程數(shù)據(jù)和測量數(shù)據(jù)的可視化。數(shù)據(jù)可視化是對大型數(shù)據(jù)庫或數(shù)據(jù)倉庫中的數(shù)據(jù)的可視化,它是可視化技術在非空間數(shù)據(jù)領域的應用,不再局限于通過關系數(shù)據(jù)表來觀察和分析數(shù)據(jù)信息,還能以更直觀的方式看到數(shù)據(jù)及其結(jié)構(gòu)關系。
4.2 數(shù)據(jù)可視化技術的特點
數(shù)據(jù)可視化技術能夠分析大量復雜和多維的數(shù)據(jù),提供像人眼一樣的直覺的、交互的和反應靈敏的可視化環(huán)境。數(shù)據(jù)可視化技術的特點如下所述。
(1)交互性。用戶可以方便地以交互的方式管理和開發(fā)數(shù)據(jù)。 (2)多維性。對象或事件的數(shù)據(jù)具有多維變量或?qū)傩?,而?shù)據(jù)可以按其每一維的值分類、排序、組合和顯示。
(3)可視性。數(shù)據(jù)可以用圖像、曲線、二維圖形、三維體和動畫來顯示,用戶可對其模式和相互關系進行可視化分析。
數(shù)據(jù)可視化已經(jīng)出現(xiàn)了許多方法,主要有基于幾何技術、面向像素技術、圖標技術、層次技術、圖像技術和分布式技術等。
4.3 數(shù)據(jù)可視化技術的相關概念
(1)數(shù)據(jù)空間:是由n維屬性和m個元素組成的數(shù)據(jù)集所構(gòu)成的多維信息空間。
(2)數(shù)據(jù)開發(fā):指利用一定的算法和工具對數(shù)據(jù)進行定量的推演和計算。
(3)數(shù)據(jù)分析:指對多維數(shù)據(jù)進行切片、分塊、旋轉(zhuǎn)等動作剖析數(shù)據(jù),從而能多角度多側(cè)面觀察數(shù)據(jù)。
5 大數(shù)據(jù)可視化分析
5.1 概念
大數(shù)據(jù)可視化分析需要應用有效的數(shù)據(jù)管理方法。這也是創(chuàng)建混合環(huán)境的需要。在大數(shù)據(jù)環(huán)境下,人們利用各種技術分析數(shù)據(jù),用形象直觀的方式展示結(jié)果,這樣能夠快速發(fā)現(xiàn)數(shù)據(jù)中蘊含的規(guī)律特征。
可視化分析關注人類感知與用戶交互的問題。大數(shù)據(jù)來自不同領域的模擬與觀察實測。大數(shù)據(jù)可視分析通常應用高性能計算機群、處理數(shù)據(jù)存儲與管理的高性能數(shù)據(jù)庫組件及云端服務器和提供人機交互界面的桌面計算機。
5.2 大數(shù)據(jù)可視化分析方法
5.2.1 原位交互分析技術
在進行可視化分析時,將在內(nèi)存中的數(shù)據(jù)盡可能多地進行分析稱之為原位交互分析。對于超過PB量級以上的數(shù)據(jù),將數(shù)據(jù)存儲于磁盤進行分析的后處理方式已不適合。與此相反,可視分析則在數(shù)據(jù)仍在內(nèi)存中時就會做盡可能多的分析。這種方式能極大地減少I/O的開銷,并且可實現(xiàn)數(shù)據(jù)使用與磁盤讀取比例的最大化。然而應用原位交互分析也會出現(xiàn)下述問題:①由于人機交互減少,進而容易造成整體工作流中斷;②硬件執(zhí)行單元不能高效地共享處理器,導致整體工作流中斷。
5.2.2數(shù)據(jù)存儲技術
大數(shù)據(jù)是云計算的延伸,云服務及其應用的出現(xiàn)影響了大數(shù)據(jù)存儲。流行的Apache Hadoop架構(gòu)已經(jīng)支持在公有云端存儲EB量級數(shù)據(jù)的應用。許多互聯(lián)網(wǎng)公司都已經(jīng)開發(fā)出了基于Hadoop的EB量級的超大規(guī)模數(shù)據(jù)應用。一個基于云端的解決方案可能滿足不了EB量級數(shù)處理。一個主要的疑慮是每千兆字節(jié)的云存儲成本仍然顯著高于私有集群中的硬盤存儲成本。另一個問題是基于云的數(shù)據(jù)庫的訪問延時和輸出始終受限于云端通信網(wǎng)絡的帶寬。不是所有的云系統(tǒng)都支持分布式數(shù)據(jù)庫的ACID標準。對于Hadoop軟件的應用,這些需求必須在應用軟件層實現(xiàn)。
5.2.3 可視化分析算法
大數(shù)據(jù)的可視化算法不僅要考慮數(shù)據(jù)規(guī)模,而且要考慮視覺感知的高效算法。需要引入創(chuàng)新的視覺表現(xiàn)方法和用戶交互手段。更重要的是用戶的偏好必須與自動學習算法有機結(jié)合起來,這樣可視化的輸出具有高度適應性。可視化算法應擁有巨大的控制參數(shù)搜索空間,減少數(shù)據(jù)分析與探索的成本及降低難度,可以組織數(shù)據(jù)并且減少搜索空間。
5.2.4不確定性的量化
許多數(shù)據(jù)分析任務中引入數(shù)據(jù)亞采樣來應對實時性的要求,由此也帶來了更大的不確定性。數(shù)據(jù)中不確定性的來源對于決策和風險分析十分重要。隨著數(shù)據(jù)規(guī)模不斷增大,直接處理整個數(shù)據(jù)集的能力也受到了極大的限制。不確定性量化已經(jīng)成為科學與工程領域的重要問題之一。不確定性的量化對未來的可視分析工具極端重要,新的可視化技術將提供一個不確定性的直觀視圖來幫助用戶了解風險,從而幫助用戶選擇正確的參數(shù),減少產(chǎn)生誤導性結(jié)果。不確定性的量化將成為可視化分析任務的核心部分。
5.2.5并行計算
并行處理可以有效地減少可視計算所占用的時間,從而實現(xiàn)數(shù)據(jù)分析的實時交互。多核的計算體系結(jié)構(gòu)的每個核所占有的內(nèi)存也將減少,在系統(tǒng)內(nèi)移動數(shù)據(jù)的代價也將提高。為了發(fā)掘并行計算的潛力,許多可視化分析算法需要完全地重新設計。在單個核心內(nèi)存容量的限制之下,不僅需要有更大規(guī)模的并行,也需要設計新的數(shù)據(jù)模型,需要設計出既考慮數(shù)據(jù)大小又考慮視覺感知的高效算法,需要引入創(chuàng)新的視覺表現(xiàn)方法和用戶交互手段。
5.2.7領域資源庫、框架以及工具
由于缺少低廉的領域資源庫、框架和工具,基于高性能計算的可視化分析應用的快速研發(fā)受到了嚴重阻礙。如用戶界面、數(shù)據(jù)庫等領域?qū)τ诳梢暦治鱿到y(tǒng)的開發(fā)至關重要。在絕大部分的高性能計算平臺上,即使是最基本的軟件開發(fā)工具電很少見。目前為高性能計算平臺開發(fā)定制這樣的軟件,還是個耗時耗力的做法。
5.2.8用戶界面與交互設計
由于傳統(tǒng)的可視化分析算法的設汁通常沒有考慮可擴展性,所以許多算法的計算過于復雜或者不能輸出易理解的簡明結(jié)果;加之數(shù)據(jù)規(guī)模不斷地增長,以人為中心的用戶界面與交互設計面臨多層次性和高復雜性的困難;同時時算機自動處理系統(tǒng)對于需要人參與判斷的分析過程的性能不高,現(xiàn)有的技術不能更充分發(fā)揮人的認知能力。利用人機交互可以化解上述問題。為此,在大數(shù)據(jù)的可視化分析中,用戶界面與交互設計成為研究的熱點,主要應考慮下述問題:用戶驅(qū)動的數(shù)據(jù)簡化、可擴展性與多級層次、異構(gòu)數(shù)據(jù)融合、交互查詢中的數(shù)據(jù)概要與分流、表示證據(jù)和不確定性、時變特征分析、設計與工程開發(fā)等一系列問題。
6 結(jié)語
原位交互分析技術、數(shù)據(jù)存儲技術、可視分析算法和用戶界面與交互設計等多種技術的運用,使得人們可以通過交互可視界面來對大數(shù)據(jù)進行分析、推理和決策,這種將數(shù)據(jù)通過可視化變成圖形的方法能更好地激發(fā)人的形象思維與想象力。