周鵬程 何震瀛 荊一楠 王曉陽
摘? 要:大數(shù)據(jù)分析和應用得到了各個行業(yè)的關注,人們試圖從大量數(shù)據(jù)中發(fā)現(xiàn)蘊含的模式和規(guī)律,進而產(chǎn)生更多的價值,數(shù)據(jù)過濾作為數(shù)據(jù)分析過程中常用手段所起到的作用是無可替代的?;诜奖阌脩艨焖俸Y選數(shù)據(jù)并找到差異性的數(shù)據(jù)子集的實際需求[1],需要分析與挖掘數(shù)據(jù)項之間聯(lián)系,對數(shù)據(jù)過濾規(guī)則進行建模,以幫助用戶快速定位到差異性的數(shù)據(jù)子集。在本篇論文中創(chuàng)新性地提出一種查找差異數(shù)據(jù)子集的過濾規(guī)則建模方法。該方法的目的是解決如何在數(shù)據(jù)分析中應用數(shù)據(jù)過濾規(guī)則建立分析過濾模型,然后利用模型分析過濾得到差異性的數(shù)據(jù)子集,最后利用模型完成結(jié)果集的自動可視化。利用該建模方法建立的數(shù)據(jù)分析系統(tǒng)能在真實數(shù)據(jù)集中快速找到差異性數(shù)據(jù)子集,并且自動完成對結(jié)果子集的可視化展示,展現(xiàn)了建模方法的實用性和高效性。
關鍵詞:數(shù)據(jù)分析;差異性數(shù)據(jù);過濾模型
中圖分類號:TP18? ? ?文獻標識碼:A
A Filtering Rule Modeling Method for Finding Subset of Differential Data
ZHOU Pengcheng1,HE Zhenying2,JING Yinan2,WANG Xiaoyang2
(1.Software School,F(xiàn)udan University,Shanghai 201203,China;
2.Computer Science and Technology School,F(xiàn)udan University,Shanghai 201203,China)
Abstract:The analysis and application of big data have attracted the attention of various industries.People try to find the patterns and rules contained in a large amount of data so as to generate more values.Data filtering plays an irreplaceable role as a common approach in the process of data analysis.Based on the actual requirements of facilitating users to quickly filter data and find the differential data subsets,it is necessary to analyze and mine the connections between data items and conduct modeling of data filtering rules to help users quickly locate the differential data subsets.The purpose of this method is to solve the problem of how to apply data filtering rules in data analysis to establish an analytical filtering model,and then use the model to analyze and filter differential data subsets,and finally use the model to complete automatic visualization of result sets.The data analysis system established by this modeling method can quickly find out the differential data subsets in real data sets,and automatically complete the visualization of the result subsets,which shows the practicability and efficiency of the modeling method.
Keywords:data analysis;differential data;filtering model
1? ?引言(Introduction)
在數(shù)據(jù)無處不在的時代,用戶的決策越來越受到數(shù)據(jù)分析的驅(qū)動[2]。通常,對于數(shù)據(jù)分析結(jié)果的不同往往能顯著影響決策過程。選擇不當數(shù)據(jù),不管是有意的還是無意的,可能導致誤導用戶做出的不合適決策甚至導致錯誤的決策。差異化數(shù)據(jù)在數(shù)據(jù)分析中往往具有重要的分析意義,而非差異化的數(shù)據(jù)對于數(shù)據(jù)分析的貢獻就比較小,甚至會降低數(shù)據(jù)分析的質(zhì)量。所以提供用戶優(yōu)良的差異性數(shù)據(jù)過濾模型能引導用戶進行質(zhì)量更好的數(shù)據(jù)分析,從而提高用戶的決策質(zhì)量。
2? ?簡介(Brief introduction)
大數(shù)據(jù)的快速發(fā)展引起了國內(nèi)外的廣泛關注和重視,如何對大數(shù)據(jù)進行科學有效地分析處理是大數(shù)據(jù)領域最核心的問題[3]。分析方法的優(yōu)劣將決定分析結(jié)果的有效與否,將最終影響大數(shù)據(jù)分析成果的應用。根據(jù)國內(nèi)外的研究將數(shù)據(jù)分析劃分為描述性統(tǒng)計分析、探索性數(shù)據(jù)分析以及驗證性數(shù)據(jù)分析[4];其中,探索性數(shù)據(jù)分析側(cè)重于在數(shù)據(jù)之中發(fā)現(xiàn)新的特征,而驗證性數(shù)據(jù)分析則側(cè)重于已有假設的證實或證偽。本論文的研究方向?qū)儆谔剿餍詳?shù)據(jù)分析中的差異性數(shù)據(jù)查找方法。
2.1相關研究
在查找規(guī)律的方法中,粗糙集理論作為一種數(shù)據(jù)分析處理的理論引人注目[5]。粗糙集理論是處理不確定信息的一種方法??梢詮牟煌陚涞男畔⒅械贸霈F(xiàn)有的規(guī)律,并從中提取出一些規(guī)則,這些規(guī)則代表原始數(shù)據(jù)集的數(shù)據(jù)分布。一般的在某些情況下有些信息在某些情況下是無用的或者說是無效的,這時候我們假設在不影響最終決策分類結(jié)果的情況下,對此屬性進行約簡去掉無用的屬性并且對約簡后的數(shù)據(jù)進行規(guī)則提取,分析提取出的規(guī)則。在屬性簡約的CEBARKCC算法中采用了基于信息熵的方法,去除冗余屬性從而得到一個粗糙集,這個粗糙集是原始數(shù)據(jù)集的一個子集,相當于對原始數(shù)據(jù)集做一個抽樣[6]。本文的過濾規(guī)則建模方法也是受到這種做法的啟發(fā),與屬性簡約的理念不同的是,本方法主要采用一系列的方法(包括信息熵)對原始數(shù)據(jù)集的過濾,最終的目的是提取具有最大差異數(shù)據(jù)的子數(shù)據(jù)集,這個數(shù)據(jù)子集不是原始數(shù)據(jù)集的抽樣,而是原始數(shù)據(jù)集中具有最大差異性的數(shù)據(jù)的集合。
2.2? ?差異數(shù)據(jù)探索
數(shù)據(jù)分析的目的是把隱沒在一大批看來雜亂無章的數(shù)據(jù)中的信息集中、萃取和提煉出來,以找出所研究對象的內(nèi)在規(guī)律。數(shù)據(jù)分析是組織有目的地收集數(shù)據(jù)、分析數(shù)據(jù),使之成為信息的過程。不同領域不同類型的大數(shù)據(jù)往往需要特定的分析方法來對數(shù)據(jù)進行分析,此類數(shù)據(jù)分析要求分析者對該領域數(shù)據(jù)有較為深入的理解,這就意味著分析者需要擁有專業(yè)領域的知識背景。本論文提出的目的就在于希望通過建立差異化數(shù)據(jù)分析過濾模型協(xié)助分析者對差異化的數(shù)據(jù)進行快速的分析探索。即使是沒有分析經(jīng)驗的分析者,面對大數(shù)據(jù)時利用本論文提出的分析過濾模型都能使用適當?shù)姆椒ㄌ剿鞣治龀鰯?shù)據(jù)集中的差異化的數(shù)據(jù)。
在大數(shù)據(jù)探索式場景中,面對大量數(shù)據(jù)時分析者很難找出差異化的數(shù)據(jù)。為了使用戶能夠盡可能消除容易出錯的數(shù)據(jù)探索過程和煩瑣的過濾條件設置,直截了當?shù)氐玫讲町惢瘮?shù)據(jù)子集。毫無疑問的是我們需要一個標準化的流程來決定該如何進行數(shù)據(jù)的選擇。為了實現(xiàn)這個目標,本論文提出一種差異數(shù)據(jù)子集的過濾規(guī)則識別方法,目的是通過合理的利用算法和設定相關的規(guī)則解決如何在數(shù)據(jù)分析中應用數(shù)據(jù)過濾規(guī)則建立分析過濾模型,并利用模型分析過濾數(shù)據(jù),最后智能化的展示結(jié)果數(shù)據(jù)。
建立良好的數(shù)據(jù)過濾規(guī)則面臨以下的這些問題亟待解決:
(1)維度:考慮從什么維度進行分析過濾才能產(chǎn)生更好的差異化分析結(jié)果。
(2)可解釋性:過濾模型需要能分析出數(shù)據(jù)之間的潛在關聯(lián),產(chǎn)生能過濾出差異化數(shù)據(jù)的過濾條件。
(3)質(zhì)量:如何判定分析的質(zhì)量。
在接下來的章節(jié)中我們會詳細地討論如何利用我們的建模方法在來解決上述三個問題。
3 問題闡述及解決(Problem description and solution)
3.1? ?問題闡述
當用戶打開數(shù)據(jù)集時,面對著成百上千的原始數(shù)據(jù)往往不知道該如何分析哪些數(shù)據(jù)子集。如果用戶對原始數(shù)據(jù)沒有一定的了解,也就不會知道數(shù)據(jù)之間的聯(lián)系,更加不可能知道數(shù)據(jù)之間是否存在某種潛在聯(lián)系。因此需要考慮如何選取差異化的維度,使得數(shù)據(jù)的分析能產(chǎn)生足夠差異化的特征表現(xiàn)[7]。
選取了適合的維度以后,該如何分析選定維度中數(shù)據(jù)的相互聯(lián)系,如何定義在該維度數(shù)據(jù)下的差異化數(shù)據(jù),進而選定適合的過濾條件并通過過濾找到其中的差異化數(shù)據(jù)。這個問題我們在之后會詳細討論如何解決。
在常用的數(shù)據(jù)分析工具中常用可視化作為直觀地展示數(shù)據(jù)分析結(jié)果的手段,可視化同時作為評判數(shù)據(jù)分析結(jié)果的質(zhì)量。但是在常用的數(shù)據(jù)分析工具中需要用戶自己選擇如何對結(jié)果數(shù)據(jù)集可視化。有經(jīng)驗的分析師能憑借經(jīng)驗知道該如何選擇,對于新手來說那就要經(jīng)過多次的試錯才能達到理想的數(shù)據(jù)展示效果。如果能自動的判定用戶選定的數(shù)據(jù)該如何生成可視化圖表,就能大大的幫助到用戶檢驗數(shù)據(jù)分析的質(zhì)量。事實上,我們的差異化數(shù)據(jù)分析過濾模型面對著該如何采用智能化的方法為用戶可視化的問題,即如何使用可視化直觀的呈現(xiàn)用戶數(shù)據(jù)分析的結(jié)果。
3.2? ?解決方案
關于維度的選擇和差異化數(shù)據(jù)過濾條件,本論文基于傳統(tǒng)數(shù)據(jù)庫的表結(jié)構(gòu),從行和列兩個維度分析差異化數(shù)據(jù)。首先通過列數(shù)據(jù)的分析過濾,查找可能具有差異化信息的數(shù)據(jù)列,之后通過一系列的關于差異數(shù)據(jù)的信息計算算法,找到具有差異性特征的數(shù)據(jù)子集,最后通過可視化展示差異性數(shù)據(jù)查找的質(zhì)量。
總結(jié)來說就是在差異性數(shù)據(jù)過濾模型中有三個過濾規(guī)則:差異性數(shù)據(jù)列的過濾、差異數(shù)據(jù)范圍的過濾、結(jié)果可視化的過濾。使用過濾模型進行差異化數(shù)據(jù)查找流程如圖1所示。
圖1 差異化數(shù)據(jù)過濾模型過濾流程
Fig.1 The filtering process of differentiated data
filtering model
實踐證明通過以上過濾規(guī)則引導用戶進行差異性數(shù)據(jù)分析,能明顯提升用戶分析差異性數(shù)據(jù)的質(zhì)量。在接下來的章節(jié)4.1介紹數(shù)據(jù)列的過濾規(guī)則建模方法;4.2中介紹數(shù)據(jù)范圍的過濾規(guī)則建模方法;4.3中介紹結(jié)果數(shù)據(jù)可視化的過濾規(guī)則建模方法。
4? ? 建模方法(Modeling approach)
接著具體介紹一下如何根據(jù)數(shù)據(jù)集本身特征,以及用戶的真實需求產(chǎn)生適當?shù)臄?shù)據(jù)列差異性分析過濾。
4.1? ?差異數(shù)據(jù)列的過濾
數(shù)據(jù)集D里面有很多數(shù)據(jù)列等待差異性分析,對于沒有分析經(jīng)驗的普通用戶來說,并不知道哪些數(shù)據(jù)列具有差異性數(shù)據(jù)。而數(shù)據(jù)列的差異性分析過濾不僅能幫助用戶方便的分析數(shù)據(jù)列之間的聯(lián)系,更能幫助用戶挖掘數(shù)據(jù)列之間的潛在聯(lián)系,用戶通過分析過濾模型得到最有可能具有差異性數(shù)據(jù)子集的數(shù)據(jù)列。
4.1.1? ?對于指定關鍵列差異性分析的列過濾
當用戶指定關鍵列時,一般來說,用戶希望得到相關數(shù)據(jù)列對于關鍵列的差異性是否具有影響,并希望知道這些相關列對于關鍵列差異性的影響因子。因此,指定的關鍵列的差異性分析過濾核心思想就是在數(shù)據(jù)集D中計算相關列對于關鍵列所產(chǎn)生影響的影響因子,然后根據(jù)影響因子大小排序進行過濾。本部分過濾模型采用隨機森林的方法完成相關列的過濾。隨機森林[8]計算影響因子的核心思想就是計算每個特征列在隨機森林中的每顆CART樹(最小二乘回歸樹)上做了多大的貢獻,然后取個平均值,比較特征之間的貢獻大小。貢獻度通常用基尼指數(shù)(Gini index)或者袋外數(shù)據(jù)(OOB)錯誤率作為評價指標來衡量。本論文采用的是袋外數(shù)據(jù)(OOB)錯誤率作為評價指標來衡量貢獻度。方法的偽代碼如下Algorithm 1所示。
之所以可以用∑(err00B2-errOOB1)/Ntree這個表達式作為相應特征列影響因子的度量值是因為若給某個特征列隨機加入噪聲之后,袋外的準確率大幅度下降,則說明這個特征列對于關鍵列的分類結(jié)果影響很大,也就是說它對于關鍵列的差異性影響程度比較高。
4.1.2? ?無指定關鍵列的差異列過濾
當用戶沒有指定關鍵列的時候,很大程度上說明用戶不清楚在這個數(shù)據(jù)集里面的關鍵列是什么,或者用戶不清楚數(shù)據(jù)集里面有什么。那么此時過濾規(guī)則就需要分析出此數(shù)據(jù)集里面有哪些部分是“主要成分”,這些“主要成分”影響著數(shù)據(jù)的差異性,是影響數(shù)據(jù)集中數(shù)據(jù)特征分布的重要成分。因此,本論文面對這種情況時分析過濾模型采用PCA[7](Principal Component Analysis,主成分分析)來提取數(shù)據(jù)的主要特征列,這些特征列的影響因子也就是造成數(shù)據(jù)集中差異性數(shù)據(jù)分布的重要性指數(shù)。
PCA本身的核心思想就是將高維數(shù)據(jù)降維到低緯度空間里,并期望在所投影的維度上數(shù)據(jù)的方差最大。因此可以使用較少的數(shù)據(jù)維度,同時保留住較多的原數(shù)據(jù)點的特性。同時PCA可以壓縮數(shù)據(jù)空間提升整體算法效率,進一步的消除冗余數(shù)據(jù)和噪音數(shù)據(jù)。PCA作為一個非監(jiān)督學習的方法,僅僅需要以方差衡量信息量,不受數(shù)據(jù)集以外的因素影響。PCA各主成分之間正交,可消除原始數(shù)據(jù)成分間的相互影響的因素。而且PCA計算方法簡單,主要運算是特征值分解,易于實現(xiàn)。方法的偽代碼如下Algorithm 2所示。
根據(jù)PCA得到的數(shù)據(jù)的主成分(即特征向量)與它們的權(quán)值(即特征值)。根據(jù)權(quán)值的大小排序?qū)⒆畲蟮娜刑峁┙o用戶,即得到這些特征列對于數(shù)據(jù)差異性的影響因子的排行。
4.2? ?差異數(shù)據(jù)區(qū)間過濾
4.2.1? ?差異數(shù)據(jù)區(qū)間
本論文提出過差異性數(shù)據(jù)分析過濾模型會幫助用戶對差異性數(shù)據(jù)區(qū)間進行過濾,以便用戶對差異性的數(shù)據(jù)進行篩選與分析。如圖2所示,應用該模型的一個系統(tǒng)過濾分析示例,其中5月—10月為差異性數(shù)據(jù)區(qū)間,5月為其中的異常區(qū)間。
圖2 差異性數(shù)據(jù)范圍過濾示例
Fig.2 Example of differential data range filtering
因為此時選取一列數(shù)據(jù)進行過濾會對數(shù)據(jù)集產(chǎn)生一次數(shù)據(jù)的篩選,從而產(chǎn)生不同區(qū)間的數(shù)據(jù)子集??紤]到這種會影響到其余所有列的數(shù)據(jù)范圍。因此,本論文介紹的過濾規(guī)則首先通過剪切減少計算,然后通過并行計算提高差異性數(shù)據(jù)子集的尋找。
4.2.2? ?數(shù)據(jù)剪切
數(shù)據(jù)集中的數(shù)據(jù),絕大部分都是非差異化的數(shù)據(jù),差異化的數(shù)據(jù)只占有數(shù)據(jù)中的很小一部分。為了減少計算的開銷,通過剪切能及其有效地過濾掉非差異化的數(shù)據(jù)。本論文采用的是孤立森林對差異化數(shù)據(jù)區(qū)間進行過濾。孤立森林[9]是一個基于Ensemble的快速異常檢測方法,具有線性時間復雜度和高精準度。方法的偽代碼如下Algorithm 3所示。
看似要計算m列數(shù)據(jù),實則不然,在4.1節(jié)中我們已經(jīng)得到對數(shù)據(jù)差異性影響因子最大的幾個列。因此,我們在此處只需要計算這幾列的差異區(qū)間即可。
4.2.3? ?并行計算
在選擇哪個差異性數(shù)據(jù)區(qū)間作為數(shù)據(jù)集的過濾條件時,本論文采用相對熵,也就是K-L散度作為計算數(shù)據(jù)差異度的方法。假設有差異性區(qū)間分布P,特征數(shù)據(jù)列的分布Q。他們之間的差異性計算如下:
對于差異性區(qū)間P我們也會枚舉出P的數(shù)據(jù)子集與特征數(shù)據(jù)列計算K-L散度,考慮其中的計算量。本論文采用并行計算[10]加快差異度的計算。最終由差異性最大的區(qū)間作為數(shù)據(jù)集的過濾條件。
4.3? ?結(jié)果集可視化過濾
為了將差異化分析的結(jié)果數(shù)據(jù)集更加直觀地展示給用戶,我們采用可視化的形式將結(jié)果數(shù)據(jù)展示出來[11]。
4.3.1? ?結(jié)果集
在結(jié)果集D中的某一列X有許多差異性區(qū)間記做X1,X2,…,
Xn,某個差異性區(qū)間中可以得到一些基本的統(tǒng)計信息,以及通過計算得到的信息合稱為一個信息節(jié)點,記作V(Xn)[12,13]。其中V(Xn)包含的信息如下所示。
①區(qū)間Xn的基數(shù)值,d(xn)
②區(qū)間Xn的最值,max(xn)、min(xn)
③區(qū)間Xn的元組值,|xn|
④區(qū)間Xn的數(shù)據(jù)類型,評論型(LongStr)、數(shù)值型(Num)、分類型(Cat)、時序型(Tem)
⑤區(qū)間Xn分完箱后,每個箱數(shù)據(jù)xn'與其對應的CNT(x')
⑥區(qū)間Xn分完箱后,每個箱數(shù)據(jù)xn'與其對應的CNT(xn')的相關系數(shù),correlation (x,CNT(xn'))
⑦區(qū)間Xn推薦展示圖標類型,餅狀圖(Pie)、柱狀圖(Bar)、詞云圖(WordCloud)、折線圖(Line)、散點圖(Scatter)
Xn提前計算出可視化節(jié)點V(Xn)的目的是為了減少計算相對信息熵時的計算開銷,因為在計算相對信息熵的時候會反復使用信息節(jié)點中的特征信息和統(tǒng)計信息。
4.3.2? ?相對信息熵排序
本套建模方法采用一種方法對結(jié)果集可視化進行一定的過濾,按照結(jié)果集中的數(shù)據(jù)列維度展現(xiàn)每一列的差異性數(shù)據(jù)區(qū)間。我們稱之為“相對信息熵排序”。注意,這里的相對信息熵和相對熵不是一個概念,這里的相對信息熵是指每一個不同的可視化方式的信息熵相對于“標準”的可視化方式計算得到的信息熵值的比值[14,15]。相對信息熵越高,使用該可視化方式得到的可視化圖表越接近“標準的”可視化。
其中,該方法的核心思想就是:
(1)首先為每一種可視化方式規(guī)定一個“標準的”可視化。
(2)根據(jù)剪切規(guī)則過濾。
(3)計算結(jié)果集中的差異性區(qū)間在每一個可視化方式下的信息熵與“標準”可視化的比值。
(4)根據(jù)比值選取最優(yōu)的可視化方式。
4.3.2.1? ?剪切規(guī)則
當我們拿到已經(jīng)分箱的xn'數(shù)據(jù)時,根據(jù)xn'數(shù)據(jù)的類型,定義了一套規(guī)則如下。
(1)當xn'的數(shù)據(jù)類型為時序型:可視化圖表可為柱狀圖、折線圖。
(2)當xn'的數(shù)據(jù)類型為離散型或數(shù)值型:可視化圖表可為柱狀圖、餅狀圖、散點圖。
通過對數(shù)據(jù)類型的判斷,能直接過濾掉那些從理論上來講就不能很好的表現(xiàn)差異化數(shù)據(jù)的信息節(jié)點的可視化過程。這樣能大大地減少我們在可視化過程中的計算節(jié)點次數(shù)[16]。
4.3.2.2? ?相對信息熵
現(xiàn)在,我們正式地介紹一下如何采用相對信息熵排序的方法[17,18]選擇差異性區(qū)間Xn適合的可視化圖表。信息熵(Comentropy)記作C。
(1)柱狀圖
柱形圖是分析師最常用到的圖表之一,適用于各個場景。當xn'元素過多的時候能更好地展示數(shù)據(jù)的詳細情況以及利用柱子的高度差提高用戶對于數(shù)據(jù)差異的辨識度,展現(xiàn)數(shù)據(jù)的差異化程度。
(2)餅狀圖
餅狀圖可展示多組數(shù)據(jù),表現(xiàn)各組數(shù)據(jù)占總比情況。當差異性區(qū)間Xn的基數(shù)為1時,|d(Xn)|=1,餅狀圖沒有什么意義。設置信息熵為0。同理當Xn的最小值小于0的時候,餅狀圖無法展現(xiàn)負數(shù),信息熵也設置為0。設定一個標準的餅圖,餅圖元素的量不超過20,因此設置權(quán)重為1。當餅圖元素超過20,餅圖所包含的信息反而減少,因此,我們將權(quán)重設置。由于人的肉眼對于面積的感知不敏感。在餅狀圖中我們需要有區(qū)分度的CNT(xn')來凸顯各部分的占比,為此引入熵作為判定差異性數(shù)據(jù)標準[19]。
(3)折線圖
折線圖的優(yōu)勢可以反映同一事物在不同時間里的發(fā)展變化的情況,也就是能夠顯示數(shù)據(jù)的變化趨勢,反映事物的變化情況。
當數(shù)據(jù)CNT(xn')與x'符合某種分布(e.g.線性分布、指數(shù)分布、對數(shù)分布、低次冪分布)時,我們規(guī)定此信息節(jié)點v的信息熵C(V(Xn))為1。否則,信息熵為0。
(4)散點圖
散點圖通過坐標軸,表示兩個變量之間的關系。繪制它依賴大量數(shù)據(jù)點的分布。其優(yōu)勢是揭示數(shù)據(jù)間的關系,發(fā)覺變量與變量之間的關聯(lián)。
我們使用相關系數(shù)可作為散點圖類型的信息熵[20]。
當所有種類可視化圖表信息熵計算出來以后,算出的C(V(Xn))值越大,表示此信息節(jié)點采用該種類圖表可視化能更好的展現(xiàn)差異化的數(shù)據(jù)給用戶,即Xn的差異化數(shù)據(jù)所對應的節(jié)點V適合該種可視化圖表。特別的情況,當|d(Xn)|=1時,所有的C(V(Xn))=0,默認柱狀圖作為節(jié)點V的可視化圖表。
相對信息熵排序的偽代碼如下Algorithm 4所示。
5? ?相關實驗(Experiment)
5.1? ?性能實驗
(1)列分析運行時間
本套差異性數(shù)據(jù)分析過濾規(guī)則建模方法在數(shù)據(jù)列篩選環(huán)節(jié)采用兩種不同的篩選方法隨著數(shù)據(jù)列數(shù)量的增多,兩個方法顯示了一定的性能差異。“指定關鍵列”分析方法在相同規(guī)模下運行時間總是小于“無關鍵列”的分析方法。因此,本建模方法默認采用了性能表現(xiàn)更好的“關鍵列差異性分析的列過濾”的方法。
圖3 列分析的時間對比
Fig.3 Time comparison of column analysis
(2)數(shù)據(jù)分析運行時間
本套差異性數(shù)據(jù)分析過濾規(guī)則建模方法在差異數(shù)據(jù)篩選環(huán)節(jié)采用并行計算來減少計算差異數(shù)據(jù)的時間。通過并行和非并行兩種計算時間的對比。從中看出如果不采用并行計算,計算的開銷時間再交互式的系統(tǒng)中使不可被接受的。在相同數(shù)據(jù)規(guī)模的表現(xiàn)如圖4所示。
圖4 數(shù)據(jù)分析的時間對比
Fig.4 Time comparison of data analysis
(3)準確度
本套差異性數(shù)據(jù)分析過濾規(guī)則建模方法在分析差異性數(shù)據(jù)的時候采用異常值加信息熵,也就是K-L散度計算差異性數(shù)據(jù)。在選取異常值計算信息熵的過程中會有一些數(shù)據(jù)被拋棄,那么本套差異性數(shù)據(jù)分析過濾規(guī)則建模方法的差異性數(shù)據(jù)選取的準確度怎么樣呢?通過實際的數(shù)據(jù)集測試,我們選取了100個數(shù)據(jù)集進行測試。結(jié)果如圖5所示,可以看出準確度處于一個非常高的水平。有90%以上的數(shù)據(jù)集準確率都在90%及以上。
圖5 準確度
Fig.5 Accuracy
5.2? ?專家評判
本套差異性數(shù)據(jù)分析過濾規(guī)則經(jīng)過五位專業(yè)數(shù)據(jù)分析專家的評測,從準確度指標、多樣性和新穎性三個指標來評價本套差異性數(shù)據(jù)分析過濾規(guī)則建模方法(評價為五分制)。
(1)準確性
準確性評價數(shù)據(jù)分析過濾規(guī)則推選出來的數(shù)據(jù)以及分析出來的可視化圖表是否真正的表達出數(shù)據(jù)的差異性。如圖6所示,多數(shù)專家認為本數(shù)據(jù)分析過濾規(guī)則能準確地過濾差異化的數(shù)據(jù)給用戶的。
圖6 準確度評價
Fig.6 Accuracy assessment
(2)多樣性
多樣性衡量數(shù)據(jù)分析過濾規(guī)則面對不同的數(shù)據(jù)能否分析過濾出差異化的數(shù)據(jù)。如圖7所示,多數(shù)專家認為本數(shù)據(jù)分析過濾規(guī)則面對不同的數(shù)據(jù)能提供良好的差異化數(shù)據(jù)過濾推薦。
圖7 多樣性評價
Fig.7 Diversity assessment
(3)新穎性
新穎性度量差異化數(shù)據(jù)分析過濾規(guī)則相對于現(xiàn)存的一些基于相似度數(shù)據(jù)分析方法是否有改進。如圖8所示,專家一致認為本套數(shù)據(jù)分析過濾規(guī)則相對于現(xiàn)有的分析系統(tǒng)有較多的改進,能更加智能化的將差異化數(shù)據(jù)分析過濾并可視化提供給用戶。通過對差異化數(shù)據(jù)分析建立過濾規(guī)則模型為用戶提供一套完整差異化數(shù)據(jù)分析解決方案。
圖8 新穎性評價
Fig.8 Novelty assessment
通過上述幾項評測可以看出,本論文提出的這套尋找差異數(shù)據(jù)子集的過濾規(guī)則建模方法總體表現(xiàn)優(yōu)異,能很好地引導用戶查找到差異化數(shù)據(jù)子集。
6? ?結(jié)論(Conclusion)
我們已經(jīng)介紹了我們新穎的數(shù)據(jù)過濾規(guī)則建模方法。我們利用機器學習的算法,以及啟發(fā)式的規(guī)則作為基礎解決本文開頭提出的面臨的兩個挑戰(zhàn)性問題,并且結(jié)合自動化的可視化規(guī)則展現(xiàn)差異化數(shù)據(jù)過濾規(guī)則模型的分析過濾結(jié)果。在使用真實數(shù)據(jù)和用例進行的測試中展現(xiàn)了令人欣喜的結(jié)果。
未來將挑戰(zhàn)更大規(guī)模的數(shù)據(jù)分析過濾,并考慮加入深度學習的相關技術(shù)用于改進和完善數(shù)據(jù)分析過濾規(guī)則[21],比如通過深度學習的方法可以不預先訓練相關特征;網(wǎng)絡在對一組數(shù)據(jù)進行訓練時學習相關特征。
參考文獻(References)
[1] Richard Chow,Hongxia Jin,San Joseg,et al.Differential data analysis for recommender systems[C].RecSys '13 Proceedings of the 7th ACM conference on Recommender systems,2013:323-326.
[2] Quoc Viet Hung Nguyen,Kai Zheng,Matthias Weidlich,et al.
What-If Analysis with Conflicting Goals:Recommending Data Ranges for Exploration[C].ICDE,2018:89-100.
[3] Jiahao Wang,Peng Cai,Jinwei Guo,et al.Range Optimistic Concurrency Control for a Composite OLTP and Bulk Processing Workload[C].ICDE,2018:605-616.
[4] Li Guo,Wenyuan Xu,Hao Li,et al.Research and Implementation of Interactive Analysis and Mining Technology for Big Data[C].HCC,2018:359-364.
[5] Lindsay I Smith.A tutorial on Principal Components Analysis[J].International Journal of Remote Sensing,2002,51(2):1100-1127.
[6] Asma Hassani,Sonia Ayachi Ghannouchi.Analysis of Massive E-learning Processes:An Approach Based on Big Association Rules Mining[C].PDCAT,2018:188-199.
[7] Brett Walenz,Jun Yang.Perturbation analysis of database queries.Proceedings of the VLDB Endowment,2016,9(14):1635-1646.
[8] Leo Breiman.Random Forests[J].Machine Learning,2001,45(1):5-32.
[9] Fei Tony Liu,Kai Ming Ting,Zhi-Hua Zhou.Isolation-based Anomaly Detection[J].TKDD,2011,6(1):3:1-3;39.
[10] Xudong Zhang,Zhongwen Qian,Siqi Shen,et al.Streaming Massive Electric Power Data Analysis Based on Spark Streaming[C].DASFAA Workshops 2019:200-212.
[11] E.Wu,F(xiàn).Psallidas.Combining design and performance in a data visualization management system[C].CIDR,2017:111-132.
[12] T.Siddiqui,A.Kim,J.Lee,et al.Effortless data exploration with zenvisage:An expressive and interactive visual analytics system[J].PVLDB,2016,10(4):457-468.
[13] Xin Guo,Mingshu He.Research on Data Visualization in Different Scenarios[C].HCC,2018:232-243.
[14] M.Vartak,S.Madden,A.Parameswaran,et al.Seedb:automatically?generating query visualizations[J].PVLDB.2014,7(13):1581-1584.
[15] M.Vartak,S.Rahman,S.Madden,et al.SEEDB:efficient data-driven visualization recommendations to support visual analytics[J].PVLDB,2015,8(13):2182-2193.
[16] Kwan Hui Lim,Sachini Jayasekara.RAPID:Real-time Analytics Platform for Interactive Data Mining[C].ECML/PKDD,2018:649-653.
[17] Yuyu Luo,Xuedi Qin,Nan Tang,et al.DeepEye:Towards Automatic Data Visualization[C].ICDE,2018:101-112.
[18] Xuedi Qin,Yuyu Luo,Nan Tang,et al.DeepEye:An automatic big data visualization framework[C].SIGMOD Conference,2018:1733-1736.
[19] K.Wongsuphasawat,D.Moritz,A.Anand,et al.Voyager:Exploratory analysis via faceted browsing of visualization recommendations[J].IEEE Trans.Vis.Comput.Graph,2016,22(1):649-658.
[20] Satyanarayan,J.Heer.Lyra:An interactive visualization design environment [J].Comput.Graph.Forum,2014,33(3):351-360.
[21] S.Kandel,R.Parikh,A.Paepcke,et al.Profiler:integrated statistical analysis and visualization for data quality assessment[C].AVI,2012:547-554.
作者簡介:
周鵬程(1995-),男,碩士生.研究領域:數(shù)據(jù)分析.
何震瀛(1978-),男,博士,副教授.研究領域:海量數(shù)據(jù)管理,數(shù)據(jù)分析,面向機器學習的效率優(yōu)化.
荊一楠(1979-),男,博士,副教授.研究領域:大數(shù)據(jù)分析,時空數(shù)據(jù)管理,移動計算.
王曉陽(1964-),男,博士,教授.研究領域:時空移動數(shù)據(jù)分析,數(shù)據(jù)系統(tǒng)安全及私密,大數(shù)據(jù)并行式分析.