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