專利名稱:在數(shù)據(jù)處理系統(tǒng)中使用連續(xù)最優(yōu)化對類屬數(shù)據(jù)集排序的制作方法
技術(shù)領(lǐng)域:
一般而言,本發(fā)明涉及數(shù)據(jù)發(fā)掘(data exploration)和分析技術(shù),特別是涉及用于這種數(shù)據(jù)發(fā)掘和分析技術(shù)的對類屬數(shù)據(jù)(categorical data)進行排序和可視化的系統(tǒng)和方法。
背景技術(shù):
可視表示在傳遞和解釋來自大量數(shù)據(jù)的信息方面變得越來越重要。這是因為已經(jīng)知道人類的視覺在識別有意義的圖案和空間關(guān)系方面特別地好。好的、有效的可視表示能以一種最大限度地利用我們的視覺技能的方式展現(xiàn)信息,從而揭示隱藏在數(shù)據(jù)中的有意義的趨勢和異常。在實際數(shù)據(jù)集中的大量數(shù)據(jù)屬性是類屬性的。一個類屬值傳遞一個對象的類別。通常既沒有一個自然順序也沒有距離與類屬值關(guān)聯(lián)。例如,考慮一個代表事件時間序列的數(shù)據(jù)集,它具有諸如宿主名、事件名、事件嚴重性等屬性。盡管我們能可論證地定義事件嚴重性的一個有意義的順序,但沒有自然的方式定義宿主名和事件名的距離和順序。在構(gòu)建可視化方面,盡管對于通過直接利用其內(nèi)在幾何特性來可視化數(shù)值數(shù)據(jù)已進行過相當?shù)难芯?,但在可視化和提取類屬?shù)據(jù)結(jié)構(gòu)方面的工作卻少得多。顯然,屬性值缺少順序增加了額外的復(fù)雜性。這是因為有按指數(shù)增加的許多方式能使類屬值完全地排序。然而,所有這些順序未必能產(chǎn)生同樣有效的可視化。Ma和Hellerstein鑒別了該問題并表示排序算法的質(zhì)量對于有效地可視化類屬數(shù)據(jù)是至關(guān)重要的,見歐洲專利申請No.00309231.9號;S.Ma和J.L. Hellerstein,“對類屬數(shù)據(jù)排序以改進可視化”,IEEE信息可視化研討會文集;1999;以及S.Ma和J.L. Hellerstein,“事件瀏覽器用于事件管理的事件數(shù)據(jù)發(fā)掘性分析”,DSOM 1999,它們公開的內(nèi)容在這里被納入作為參考。
為說明對類屬值排序的重要性,我們考慮Ma和Hellerstein在上文引用的公開內(nèi)容中使用過的相同數(shù)據(jù)集。該數(shù)據(jù)集包含10,000個以上的事件,它們是由160個宿主在三天時間內(nèi)產(chǎn)生的,具有20個事件類型。圖1顯示該數(shù)據(jù)集的散布圖,其中x軸和y軸分別代表事件的時間和宿主名(例如一個計算設(shè)備網(wǎng)絡(luò)中的主機標識符(id))。在這幅圖中,因為宿主名是類屬的,它們必須以某種方式映射到幾何坐標上(在y軸上)。在圖1中宿主名的順序是宿主名的隨機排列??上У氖牵驗檫@種隨機排序方案,圖1的散布圖所產(chǎn)生的結(jié)果不是特別有揭示性的。這樣,顯然需要某種較好的排序或映射,以提供數(shù)據(jù)集的更高質(zhì)量可視化。
Ma和Hellerstein在上文引用的公開內(nèi)容中要解決的一個關(guān)鍵問題是如何找出能造成有效可視化的映射,這也是本發(fā)明的一個焦點。顯然,在構(gòu)建這種映射背后的指導(dǎo)原則是利用幾何近似來捕獲對象間的關(guān)系。就是說,我們想讓類似的、有關(guān)聯(lián)的對象彼此靠近放置。
大量的研究努力和商業(yè)產(chǎn)品已把可視化技術(shù)應(yīng)用于類屬數(shù)據(jù)集,例如,M.O.Word,“Xmdv Tool用于可視化多元數(shù)據(jù)的多方法集成”,可視化大會文集(Los Alamitos,CA,USA)IEEE計算機學(xué)會出版社,第326-336頁,1994年10月;來自IBM公司的鉆石軟件;以及由序列號09/359,874標識的美國專利申請,1999年7月27日提交,標題為“用于事件管理的數(shù)據(jù)發(fā)掘分析系統(tǒng)和方法”,它們公開的內(nèi)容在這里被納入作為參考。這些努力可被分類為四類。
一種簡單的途徑是根據(jù)一個輔助的數(shù)值屬性對類屬值排序或按字母順序?qū)@些類屬值排序。在我們的上一個例子中,我們可按宿主名在數(shù)據(jù)集中第一次出現(xiàn)的時間對宿主名排序。這一途徑是基于假定由系統(tǒng)產(chǎn)生的事件的順序中存在某種因果關(guān)系。然而,這一途徑與可視任務(wù)無關(guān),因此,通常不能提供最好的可視化質(zhì)量。隨著數(shù)據(jù)集的大小和復(fù)雜性的增長,這一途徑的性能會變差。
第二類主要是集中于基于集群的途徑,例如參見V.Ganti等的“CACTUS使用概要對類屬數(shù)據(jù)集群”,第五屆關(guān)于知識發(fā)現(xiàn)和數(shù)據(jù)挖掘的ACM SIGKDD國際會議文集,ACM出版社,第73-83頁,1999年8月;D.Gibson等的“集群類屬數(shù)據(jù)基于動態(tài)系統(tǒng)的一個途徑”,第24屆關(guān)于甚大數(shù)據(jù)庫VLDB的國際會議文集,311-322頁,1998年8月;S.Guha等的“Rock一種用于類屬屬性的穩(wěn)建集群算法”,第15屆數(shù)據(jù)工程國際會議文集,1999;以及S.Ma和J.L. Hellerstein的“對類屬數(shù)據(jù)排序以改進可視化”,IEEE信息可視化研討會文集,1999,它們公開的內(nèi)容在這里被納入作為參考。
集群是深入了解數(shù)據(jù)集的一種自然方式。然而,為了可視化的目的,有三個問題影響它的價值。第一,盡管能在幾何空間中標識集群,但集群描述仍是無序的,而且需要一些附加的非平凡的方法對集群排序和可視化和對每個集群內(nèi)的元素排序和可視化。第二,大多數(shù)集群算法偏好某些通常是很結(jié)構(gòu)化的集群形狀(例如上文引用的CACTUS途徑中的矩形區(qū))并且總是趨向于把數(shù)據(jù)分區(qū)到這種形狀的集群中,盡管在該數(shù)據(jù)集中可能根本沒有集群趨勢。特別是,CACTUS途徑顯示,上文引用的Gibson途徑不能發(fā)現(xiàn)若干自然的集群類別,例如在某些屬性子集上有重疊投影的集群。我們感到,對于數(shù)據(jù)的集群結(jié)構(gòu)做任何假定都會達不到使用集群算法提取結(jié)構(gòu)的總體目的。本發(fā)明的目標是在不對數(shù)據(jù)作任何預(yù)先假定的情況下揭示其順序的技術(shù)。為此,本發(fā)明使用一個最優(yōu)化框架來使這一問題公式化。
與這第二類算法有關(guān),在上述由序列號No.09/359,874標識的美國專利申請中提議的這第三個途徑是基于層次排序。該途徑提供迭代組合最靠近的點對(針對某種相似性函數(shù))并用單點代替該對。這樣,使這些點構(gòu)成嵌套式排序子集的嚴格層次結(jié)構(gòu)。任何兩個子集之間最短路徑的長度對應(yīng)于它們的相似程度。全局排序的構(gòu)成簡化為以自底向上方式遞歸地局部排序子集對。以這一途徑,嚴格的層次樹不能反映出使這些點能關(guān)聯(lián)起來的多種不同方式,而且隨著數(shù)據(jù)集的大小和復(fù)雜性的增長,這種情況會變得更加嚴重。其次,層次排序在性質(zhì)上是確定性的(一旦這些點被分組到一起,便沒有機會重新評估這種分組,因而也沒有機會重新評估這種排序)。
第四種途徑是使用投影方法,如多維標度(MDS)或在C.Faloutsos等的“FastMap對傳統(tǒng)的和多媒體的數(shù)據(jù)集進行編索引、數(shù)據(jù)挖掘和可視化的快速算法”中提議的算法,關(guān)于數(shù)據(jù)管理的1995 ACM SIGMOD國際會議(San Jose,California,USA)文集,163-174頁,1995年5月,所公開的內(nèi)容在這里被納入作為參考。存在一個基本的限制與這些技術(shù)的目標相關(guān)聯(lián)。MDS產(chǎn)生數(shù)據(jù)的一個低維可視表示,它盡可能令人信服地保留原始數(shù)據(jù)點之間的距離(針對相似性函數(shù))。問題在于為了可視發(fā)掘的目的,人們通常事先不知道在尋找什么而且也沒有好的相似性函數(shù)。所以,針對特定相似性函數(shù)保留距離不應(yīng)是它本身的目標,相反,該順序應(yīng)與合理的相似性函數(shù)一致。就是說,如果點u比w更與v相似,則按此順序u應(yīng)被映射到更接近于v而不是更接近于w;然而,保留實際相似性比值不應(yīng)是目的。換言之,應(yīng)該更希望其順序是保留拓撲的而不是保留距離的(針對某特定相似性函數(shù)測量的距離)。再有,對于大的數(shù)據(jù)集,MDS過于昂貴,而且不允許增量式地把新點映射到已有投影上(一旦增加一個新點,基本上要重新計算整個映射)。
發(fā)明內(nèi)容
本發(fā)明提供對類屬屬性排序的技術(shù),從而使數(shù)據(jù)更好地可視化。在本發(fā)明的第一方面,基于計算機的對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值進行排序的技術(shù)包含如下步驟/操作第一,得到要排序的類屬值。如果給定這些類屬值,則對這些類屬值排序的任務(wù)被公式化為連續(xù)最優(yōu)化排序問題。一旦該任務(wù)被公式化為連續(xù)最優(yōu)化排序問題,則能計算出該連續(xù)最優(yōu)化排序問題的至少一個連續(xù)的(優(yōu)選地,優(yōu)化的)排序解。該技術(shù)還可包括把計算出的連續(xù)排序解從一個連續(xù)空間映射到一個離散空間。至少是計算出的連續(xù)排序解中的一部分可被用于一個數(shù)據(jù)可視化系統(tǒng)(即可以顯示給用戶)。
在一個實施例中,使類屬值排序任務(wù)成為連續(xù)最優(yōu)化排序問題的步驟/操作可包含基于一個或多個屬性的類屬值計算一個相似性矩陣。相似性矩陣可基于一個或多個多重集操作。這一個或多個多重集操作可包含計算兩類相似性量度,第一類是在來自同一屬性的兩個類屬值之間計算出的相似性量度,第二類是在來自不同屬性的兩個類屬值之間計算出的相似性量度。再有,使類屬值排序任務(wù)成為連續(xù)最優(yōu)化排序問題的步驟/操作可進一步包含由相似性矩陣計算拉普拉斯(Laplace)矩陣。然后,計算該連續(xù)最優(yōu)化排序問題的至少一個連續(xù)排序結(jié)果的步驟/操作包含找出該拉普拉斯矩陣的最小正本征值,然后從拉普拉斯矩陣的最小正本征值得到相應(yīng)的最優(yōu)化本征矢量。然后,能根據(jù)與最優(yōu)化本征矢量關(guān)聯(lián)的相應(yīng)值對這些類屬值排序。
在本發(fā)明的第二方面,提供了用于對涉及多重屬性的類屬值進行排序的技術(shù)。根據(jù)這種技術(shù),在使類屬值排序任務(wù)成為連續(xù)最優(yōu)化排序問題之前,涉及多重屬性的類屬值被映射到一個對象集,從而使上述的“成為”和“計算”步驟/操作是結(jié)合該對象集進行。
在本發(fā)明的第三方面,對與一個數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值進行排序的多級框架技術(shù)包含如下步驟/操作第一,得到要排序的類屬值。如果給定這些類屬值,則這些類屬值被模擬為一個原始圖形結(jié)構(gòu),其各頂點為要排序的類屬值,邊緣的權(quán)重為被連接頂點的相似性。然后,由一個或多個較粗略的圖形結(jié)構(gòu)的層次序列近似該原始圖形結(jié)構(gòu),這里具有相似局部結(jié)構(gòu)的頂點被合并成較粗略的圖形結(jié)構(gòu)中的一個頂點。最粗略的圖形結(jié)構(gòu)被按照連續(xù)最優(yōu)化排序操作進行排序。最粗略的圖形結(jié)構(gòu)的排序結(jié)被傳播回到原始圖形結(jié)構(gòu),于是至少是與原始圖形結(jié)構(gòu)關(guān)聯(lián)的被傳播的排序結(jié)果的一部分可被用于一個數(shù)據(jù)可視化系統(tǒng)。
由下文中結(jié)合附圖對本發(fā)明實施例的詳細描述,本發(fā)明的這些和其他目的、特點和優(yōu)點將變得顯然。
圖1顯示一個散布圖,這里y軸代表宿主id(標識符),x軸代表時間,而且宿主id是隨機賦予的;圖2A是一個通用可視化系統(tǒng)的方框圖;圖2B是使用根據(jù)本發(fā)明的排序機制作為數(shù)據(jù)預(yù)處理一部分的系統(tǒng)的方框圖;圖2C是使用根據(jù)本發(fā)明的排序機制作為數(shù)據(jù)管理一部分的系統(tǒng)的方框圖;圖2D是使用根據(jù)本發(fā)明的排序機制作為一個觀察器的一部分的系統(tǒng)的方框圖;圖3A是流程圖,顯示根據(jù)本發(fā)明一個實施例進行排序的頻譜算法;圖3B顯示一個散布圖,這里y軸代表宿主id(標識符),x軸代表時間,而且宿主id是按照根據(jù)本發(fā)明一個實施例進行排序的頻譜算法賦予的。
圖4是流程圖,顯示根據(jù)本發(fā)明一個實施例進行排序的處置多重屬性的頻譜算法;圖5是流程圖,顯示根據(jù)本發(fā)明一個實施例進行排序的處置大數(shù)據(jù)集的多級頻譜算法;圖6顯示根據(jù)本發(fā)明一個實施例進行排序的多級頻譜算法的結(jié)果舉例;以及圖7顯示根據(jù)本發(fā)明使用一個或多個排序算法的硬件實現(xiàn)示例。
具體實施例方式
本發(fā)明提供對類屬屬性排序從而使數(shù)據(jù)更好地可視化的技術(shù)。為此,如下文中舉例解釋的那樣,本發(fā)明可被認為是聚焦于如下三個問題。
(1)如何研發(fā)快速而有效的算法。對類屬數(shù)據(jù)排序的問題可被公式化為一個組合最優(yōu)化問題,它是一個NP-難題。這意味著其最優(yōu)化結(jié)果不可能在多項式時間(polynomial time)內(nèi)得到。結(jié)果,大多數(shù)研究努力依靠僅能給出近最優(yōu)化結(jié)果的組合試探法。例如,先前Ma和Hellerstein把此排序問題歸結(jié)為一個哈密爾頓路徑問題,并使用貪婪試探去尋找對哈密爾頓路徑的近似,它又定義一個排序。然而,試探算法或者可能是效率太低或者不能提供最好的結(jié)果(通常在算法的運行時間和由算法發(fā)現(xiàn)的近似結(jié)果的接近程度二者之間有一個折衷)。其他研究努力提出一些局部改進技術(shù),如上文引用的Gibson工作中的動態(tài)系統(tǒng)途徑,強迫定向放置等。盡管這些研究策略通常設(shè)法在相對較少的圖形中捕獲許多有意義的連接和圖案,但對這些策略沒有適當?shù)睦碚摾斫狻3淦淞恳膊贿^是對一些特定案例有一些理論分析,但尚未發(fā)展出一般理論。眾所周知,關(guān)于排序的質(zhì)量和使算法收斂所需的時間是很難說出理由的。所有這些使得難于得到對近似程度的保證。根據(jù)本發(fā)明,我們以根本上不同的方式表達此排序問題,它允許避免難于操作的組合公式化。
(2)如何對具有多重類屬屬性的數(shù)據(jù)排序。在實際生活中的數(shù)據(jù)往往有多重類屬屬性。例如,一個系統(tǒng)事件至少有兩個類屬屬性事件類型和宿主名??梢暬夹g(shù),如3維散布圖和平行坐標圖,使我們能發(fā)掘多維數(shù)據(jù)。顯然,使用這些技術(shù)有效地可視化更多維則需要對相應(yīng)的類屬屬性排序。
(3)如何按比例放大排序算法以處置大量數(shù)據(jù)。當今,把大量數(shù)據(jù)存儲在數(shù)據(jù)庫中并非不尋常的事件。這提供了寶貴的機會去發(fā)現(xiàn)信息。然而,處置大量數(shù)據(jù)提出一個巨大的挑戰(zhàn),即要開發(fā)出與數(shù)據(jù)成線性比例的有效算法。當在分析大量數(shù)據(jù)時,為小量數(shù)據(jù)設(shè)計的算法會崩潰。
本發(fā)明提供一種對類屬數(shù)據(jù)排序的新途徑,它解決這三個問題以及其他問題。
為得到一個高效率的而又有效力的算法,我們開發(fā)了一個不同的途徑,從而避免了先前公式化時的組合復(fù)雜性。本發(fā)明的一個關(guān)鍵思想是把排序問題公式化為一個連續(xù)最優(yōu)化問題。這樣,本發(fā)明的排序算法可包含三個步驟(a)把離散排序問題變換為連續(xù)最優(yōu)化問題;(b)求解該連續(xù)最優(yōu)化問題;以及(c)把最優(yōu)化連續(xù)解映射為最接近的離散解。為實現(xiàn)(a),我們放松相應(yīng)的離散公式化中的離散性約束。就是說,我們的目標不是找出最佳排序,而是在于找出把原始類屬值映射到實數(shù)的最佳連續(xù)映射。步驟(b)求解(a)中得到的連續(xù)最佳化問題。
在下面的實施例中,我們將說明我們公式化的連續(xù)最優(yōu)化有一個特殊的結(jié)構(gòu),這使它成為可追蹤的,盡管原始的離散問題是NP-難題。這使我們能開發(fā)出給出最優(yōu)化解的頻譜算法。例如,我們的算法使用關(guān)于從數(shù)據(jù)的圖形表示中導(dǎo)出的某些矩陣的頻譜(代數(shù)的)信息。我們的算法使W.E.Donath等的“基于連接矩陣本征矢量的對圖形分區(qū)算法和計算機邏輯”(IBM技術(shù)公開報告15(1972),No.3,938-944頁)以及M.Fiedler的“圖形的代數(shù)連接性”(捷克斯洛代克數(shù)學(xué)雜志23(1973),No.98,298-305頁)中發(fā)展的對圖形分區(qū)問題的代數(shù)工具通用化,從而能用于解決排序問題。上述文章公開的內(nèi)容在這里被納入作為參考。最后,在我們得到連續(xù)解之后,步驟(c)把連續(xù)值映射到離散空間。我們應(yīng)該指出,即使對于連續(xù)問題的解是最佳的,把它映射到最靠近的離散點并不一定給出最佳的離散解(雖然它提供了一個好的近似)。然而,我們應(yīng)該指出,構(gòu)造一個數(shù)據(jù)集的順序的問題根本上不同于構(gòu)造分區(qū)松馳提供了有其自己理由的有價值的可視化;因此,把連續(xù)解映射回離散空間并不是強制性的。
現(xiàn)在我們討論如何使上述算法通用化以處理多重屬性?,F(xiàn)實生活中的數(shù)據(jù)往往有多重屬性。已發(fā)展了許多可視化技術(shù)用于發(fā)掘多重屬性值之間的關(guān)系。例如,3維散布圖允許畫出三維。平行圖使用一系列平行軸,每個軸代表單個屬性域。連接相繼軸上值的直線段表明該數(shù)據(jù)集有至少一個條目含有這兩個值(作為相應(yīng)屬性之值)。排序問題包含以能改善可視化的方式把屬性值映射到軸線上(通常,其目的是使邊緣交叉數(shù)減至最少)。請注意,由于有兩個或更多個類屬屬性需要同時排序,因此不僅每個屬性的順序要它自己滿意,而且該順序還必須彼此滿意,這一事實使這里的情況復(fù)雜化。不去獨立地對每個屬性域排序,本發(fā)明代之以創(chuàng)建“異質(zhì)”線性排序,它代表所有屬性域的值到單一線上的值的映射。這有利地解決了保持所有排序彼此同步的問題。為得到一個特定屬性域的值的映射,本發(fā)明取此異質(zhì)映射的相應(yīng)條目(此異質(zhì)映射分解成若干同質(zhì)映射)。
盡管頻譜算法一般能產(chǎn)生高質(zhì)量的排序,但它可能比其他方法更昂貴。對于稀疏矩陣,Lancoz迭代在預(yù)期的O(n1.4)時間內(nèi)解決對稱本征值問題。在實踐中,對特別大的數(shù)據(jù)集它可能是慢的。再有,來自實際大數(shù)據(jù)集的圖形通常是高度超定的,即它可能包含多個具有幾乎完全相同的相鄰結(jié)構(gòu)的頂點。為了按比例增大我們的算法以對付大數(shù)據(jù)量,我們?yōu)閳D形分區(qū)問題開發(fā)了多級排序框架。其總體思想是以一系列較小的、較粗略的圖形近似原始圖形。通過把具有相似相鄰結(jié)構(gòu)的所有頂點瓦解成單個多重頂點,形成下一級較粗略的圖形。最粗略的圖形被排序。然后,造成的排序通過內(nèi)插穿過中間圖形序列傳播回到原始圖形(并在我們對排序去粗時細化此排序)。為此,我們線性減小圖形大小,從而得到更大的時間節(jié)省。
總之,我們的發(fā)明提供對類屬數(shù)據(jù)的排序技術(shù),它包含下列中的一個或多個(1)解決排序問題的有效的頻譜算法;(2)處理多重類屬屬性的新技術(shù);以及(3)使算法擴大到很大數(shù)據(jù)的通用層次解決方案。
我們應(yīng)該指出,本發(fā)明的另一個吸引人的特點是由于數(shù)值分析發(fā)現(xiàn)本征矢量以求生存,所以易于得到大量軟件供這一目的使用,例如來自IBM公司的ESSL軟件庫。
詳細描述的下一部分提供對本發(fā)明實施例的解釋。首先,利用可視化系統(tǒng)描述排序問題,然后詳細描述實現(xiàn)本發(fā)明的算法示例。
圖2A描繪一個通用的可視化系統(tǒng),例如上文引用的以序列號No.09/359,874標識的題為“用于事件管理的對數(shù)據(jù)進行發(fā)掘分析的系統(tǒng)和方法”的美國專利(1999年7月27日提交)中描述的系統(tǒng),該申請公開的內(nèi)容在這里被納入作為參考,它的實施例也稱作“EventBrowser(事件瀏覽器)”。該可視化系統(tǒng)有三個主要構(gòu)件數(shù)據(jù)源210,數(shù)據(jù)管理模塊220和觀察器230。該數(shù)據(jù)源存儲要被可視化的數(shù)據(jù)。數(shù)據(jù)管理模塊提供基本數(shù)據(jù)查詢操作,維護存儲器內(nèi)數(shù)據(jù),并提供各觀察器當中的對應(yīng)性。觀察器提供使用預(yù)先定義的途徑對數(shù)據(jù)可視化的機制,如可視化技術(shù)(如散布圖)、概括技術(shù)等。觀察器還負責與終端用戶交互作用。
圖2B、2C和2D顯示三個可視化系統(tǒng),其中可以以不同方式利用本發(fā)明的排序技術(shù)。就是說,為了產(chǎn)生不同的好處,可在可視化系統(tǒng)的不同位置實現(xiàn)利用本發(fā)明方法的排序算法或引擎,這將在下文中詳細解釋。
圖2B顯示一個本發(fā)明的排序機制或排序引擎240,它可用作可視化系統(tǒng)的數(shù)據(jù)預(yù)處理階段的一部分。就是說,在被數(shù)據(jù)管理模塊220和觀察器230使用之前,存儲在數(shù)據(jù)源210中的數(shù)據(jù)受到排序引擎的操作。這一系統(tǒng)的一個好處在于該排序機制對可視化系統(tǒng)是透明的,所以現(xiàn)有的可視化系統(tǒng)無需改變便能使用該排序機制。這一實現(xiàn)很適于其數(shù)據(jù)得到很好理解且比較穩(wěn)定的那些應(yīng)用。就是說,分析數(shù)據(jù)的過程被固定,所以每次可產(chǎn)生相似的報告并使用相同的排序算法。
在圖2C顯示的系統(tǒng)中,本發(fā)明的排序引擎(算法)240被作為可視化系統(tǒng)數(shù)據(jù)管理模塊220的一部分納入。這一實現(xiàn)為使用排序算法增加了更大的靈活性,因為能為多個觀察器支持多個排序算法,于是排序能在“閑暇中”完成。
在圖2D顯示的系統(tǒng)中,排序引擎240是作為觀察器230的一部分而實現(xiàn)的。這一實現(xiàn)不要對數(shù)據(jù)管理模塊220做任何改變。此外,這一系統(tǒng)使其能夠通過簡單地創(chuàng)建特殊觀察器容易修改排序算法以滿足用戶(或應(yīng)用)的特殊需要。
總之,圖2B、2C和2D顯示三種不同的方式以可視化系統(tǒng)實現(xiàn)本發(fā)明的排序機制。應(yīng)該理解,選擇使用哪種系統(tǒng)實現(xiàn)很大程度上取決于應(yīng)用。
現(xiàn)在我們轉(zhuǎn)到詳細描述本發(fā)明的排序算法。首先,我們在形式上陳述該問題,并展現(xiàn)排序的基本頻譜算法。然后,我們討論如何處置多重類屬屬性。最后,我們發(fā)展處置大量數(shù)據(jù)的多級解決方案。
首先我們引入一些符號。令{O1,O2,...On}代表要排序的幾個對象。令S(i,j)代表對象Oi和Oj的相似性。排序問題包含找出{1,...,n}的一個排列π,使∑ijS(i,j)(π(i)-π(j))2達到極小。
顯然,這一最優(yōu)化函數(shù)鼓勵把相似的對象放在靠近的位置。就是說,如果兩個對象相似,即S(i,j)大,則這兩個對象應(yīng)放在靠近的位置,即(π(i)-π(j))2小。我們應(yīng)該指出,上述公式化是離散最優(yōu)化問題,而且是一個NP-難題。這意味著不大可能在多項式時間內(nèi)得到最優(yōu)化解。這樣,本發(fā)明通過找出實放置{x1,...,xn}使在規(guī)一化約束∑i x(i)2=1下∑ij s(i,j)(x(i)-x(j))2達到極小,以此來把這一離散最優(yōu)化問題轉(zhuǎn)換成連續(xù)最優(yōu)化問題。
這里xi是一個實數(shù),是對象Oi的放置位置。一旦我們得到最佳放置矢量X={x1,...,xn},我們便能用相應(yīng)的x坐標對對象排序。請注意,目標函數(shù)可重寫為在XTX=1的條件下使XTLX極小化,這里L=D-S。應(yīng)該理解,XT代表最佳放置矢量X的轉(zhuǎn)置,而L代表拉普拉斯矩陣。矩陣D是其元素dii=∑js(i,j)的n×n對角矩陣,S是n×n相似性矩陣。應(yīng)該理解,s(i,j)代表相似性矩陣S的第i行、第j列處的元素。已經(jīng)表明,這一連續(xù)放置問題的解是與最小正本征值關(guān)聯(lián)的拉普拉斯矩陣本征矢量,參見例如K.M.Hall的“r維二次放置算法”,管理科學(xué)17(1970),No.3,219-229頁。所公開的內(nèi)容在這里被納入作為參考。
利用上述背景說明,我們描述根據(jù)本發(fā)明一個實施例的排序頻譜算法示例。該算法概括于圖3A中。應(yīng)該理解,原始對象數(shù)據(jù)用作該算法的輸入。這一原始數(shù)據(jù)可以是一個數(shù)據(jù)集,如上文中描述的一個數(shù)據(jù)值,例如含有在三天內(nèi)由160個宿主產(chǎn)生的有20個事件類型的超過10000個事件的數(shù)據(jù)集,這里的宿主名是要被排序或映射的對象。
首先,在步驟310,該離散排序問題被轉(zhuǎn)換為一個連續(xù)最優(yōu)化問題。就是說,步驟310通過計算相似性矩陣S和拉普拉斯矩陣L把該問題公式化為一個連續(xù)最優(yōu)化問題。下面將描述計算相似性矩陣S的方法示例。拉普拉斯矩陣L可根據(jù)上文描述的關(guān)系L=D-S計算出來,其中D被定義為n×n對角矩陣,其元素dii=∑js(i,j),這樣D可從S計算出來。
接下來,步驟320求解該連續(xù)最優(yōu)化問題。這是通過找出L的最小正本征值再得到相應(yīng)的最優(yōu)本征矢量X來完成的。應(yīng)該理解,能以本領(lǐng)域技術(shù)人員公知的任何傳統(tǒng)方式得到相應(yīng)的最優(yōu)本征矢量。然后,步驟330以與最優(yōu)本征矢量X關(guān)聯(lián)的相應(yīng)x值對對象排序。就是說,對象的新順序是{Oi1,Oi2,...,Oin},這里xi1≤xi2≤...≤xin。這樣,結(jié)果被映射為原始對象的順序。
圖3B顯示把上述排序算法應(yīng)用于圖1散布圖中可視化的同一數(shù)據(jù)集所得到的結(jié)果。我們的目標仍是把宿主安排在y軸上。x軸是時間。圖中坐標(x,y)處的點代表由第y個宿主在時間x產(chǎn)生的一個事件。盡管圖1和圖3B代表同樣的數(shù)據(jù)集,但每個圖使用不同的宿主順序。圖1中的宿主順序是隨機賦予的;而圖3B中的宿主順序是根據(jù)圖3A中描述的排序算法確定的。顯然,圖3B提供關(guān)于數(shù)據(jù)的更多信息。例如,圖3B中的排序顯示宿主分布圖案(例如,在散布圖頂部云狀分組所描繪的那樣)和宿主的不同行為,從而提供事件數(shù)據(jù)的更高質(zhì)量可視化。
我們現(xiàn)在說明如何根據(jù)本發(fā)明的一個實施例對多重類屬屬性排序。這里,本發(fā)明創(chuàng)建所有屬性值到單一對象集的一對一映射。例如,假定我們有兩個屬性A和B。A有兩個值a1和a2。B有兩個值b1和b2?,F(xiàn)在,我們能把a1映射到o1,a2映射o2,b1映射到o3,b2映射到o4,這里{o1,o2,o3,o4}是一個對象集。這樣,我們把多重屬性值排序問題簡化為單一對象集排序問題。在該對象集由圖3A上下文中描述的頻譜算法排序之后,對象的排序被映射到相應(yīng)屬性值的排序。假定我們在上例中找到的最優(yōu)排序是{o3,o2,o4,o1}。于是屬性A和B的值被排序為{a2,a1},因為o2在o1的前面;類似地,有{b1,b2}。圖4詳細說明這一過程。如圖所示,步驟410使每個屬性的值映射到對象并為每對對象計算相似性量度。在步驟420,該方法運行排序頻譜算法(圖3A)并得到排序后的對象集。步驟430把結(jié)果映射回到每個屬性。
根據(jù)本發(fā)明,要排序的對象對應(yīng)于一個或多個類屬屬性值。為使用前述算法,我們需要定義任何兩個類屬屬性值的相似性量度。前述Ma和Hellerstain的工作討論了如何基于其時間信息對事件數(shù)據(jù)測量類屬值的相似性。本發(fā)明發(fā)展了一個基于多重集操作的相似性量度。例如,假定我們的數(shù)據(jù)有k個屬性A1,...,Ak,它們的域是D1,...,Dk。顯然,我們需要定義兩類相似性量度 (1)屬性內(nèi)的相似性; (2)屬性間的相似性。前者度量來自同一屬性的兩個類屬值之間的相似性;后者度量來自兩個不同屬性的兩個值之間的相似性。為得到屬性間的相似性,令ψxi={d∈D|di=x}]]>為一個數(shù)據(jù)集,它的第i個屬性有值x。屬性間相似性S(υi,νj)(這里υ∈Di和ν∈Dj)能由S(υi,vj)=|ψuiIψvj|12(|ψui|+|ψvj|)]]>計算出來。類似地,為得到屬性內(nèi)相似性,令θxi={(dj)j≠i|di=x,d∈D}.]]>屬性內(nèi)相似性S(υi,νj)可由S(υi,vi)=|θuIθv|12(|θui|+|θvj|)]]>定義,這里υi和νj是來自第i個屬性的兩個值。
我們現(xiàn)在討論如何根據(jù)本發(fā)明的多級框架示例處置大量數(shù)據(jù)。為說明我們的排序用多級頻譜算法,我們把數(shù)據(jù)模擬為稀疏異質(zhì)圖,以其頂點為要排序的類屬值。邊緣的權(quán)重代表相連頂點的相似性(如果相連頂點屬于同一屬性域,則為屬性內(nèi)相似性;否則為屬性間相似性)。本發(fā)明以多級策略對大的原始圖排序。就是說,我們以一系列較小的、較粗略的圖形近似該原始圖形。在較粗略的圖形中,有相似局部結(jié)構(gòu)的一組頂點被合并成一個頂點。然后,最粗略的圖形被排序,并且通過內(nèi)插將該順序經(jīng)由這一系列中間圖形傳回原始圖,其傳回方式是保留粗略圖的排序。這樣做要求把本發(fā)明的基本算法擴展到頂點加權(quán)圖,其中的一個頂點可代表原始圖中的一組頂點。
例如,假定一個較粗略圖的第i個頂點代表原始圖的wi個頂點。把該算法擴展到多層頂點圖的自然方式是把wi′納入該最優(yōu)化問題的約束條件。修改后的最優(yōu)化問題能被表述如下在約束條件WXTWX=1之下使XTLX極小,這里W是具有元素wi2的對角矩陣,wi是由G中的多重頂點i代表的原始圖中頂點個數(shù)。與原始的公式化相比較,上述最優(yōu)化把約束條件改為Σi(wixi)2=1.]]>可以顯示出,上述最優(yōu)化問題的最優(yōu)解是L′的第一非零本征矢量,這里L′=W-1L。
把原始的上文引用的K.M.Hall算法應(yīng)用于實際數(shù)據(jù)集時產(chǎn)生的一個問題是原始的K.M.Hall算法產(chǎn)生的排序遭受強烈的點叢集的影響,特別是在原點周圍。這是因為在此結(jié)構(gòu)中的本征矢量通常由于規(guī)一化約束的限制只有少數(shù)大的分量。這迫使坐標的其余值接近于零,這而導(dǎo)致可視空間的高群集區(qū)。結(jié)果,選擇對應(yīng)于最小非零本征值的本征矢量不是必定會產(chǎn)生好的可視化。這樣,本發(fā)明提供一個修正,它通過在選擇本征矢量時加上兩個結(jié)構(gòu)性約束來避免這種退化。第一個約束要求選定的本征矢量的所有元素大于一個由用戶定義的閾值,例如0.05,它是數(shù)據(jù)集大小的函數(shù)。第二個約束要求選定的本征矢量的任何兩個元素之差大于一個由用戶定義的閾值,例如0.1。這兩個約束基本上堅持了放置矢量要有信息理論意義,即必須有高的最小熵(min-entropy)。
圖5顯示根據(jù)本發(fā)明一個實施例的多級排序算法的流程圖。如圖所示,該算法包含四個步驟。
在步驟510,該算法構(gòu)成要被排序的類屬值的異質(zhì)圖Go。該異質(zhì)圖的節(jié)點代表類屬值。邊代表兩個連接節(jié)點的相似性量度。
在步驟520,該算法通過把Gi的一組頂點聚結(jié)到較粗略的圖Gi+1中一個新的節(jié)點(稱作多重頂點),它的權(quán)重是它代表的原始節(jié)點數(shù),從而創(chuàng)建圖G0,G1,...,Gk(從原始圖G0開始)的一個層次結(jié)構(gòu)。然后Gi+1作為使圖粗化的另一迭代步驟的輸入圖形。當?shù)玫阶銐蛐〉膱D形時,例如當達到100個節(jié)點或更少節(jié)點的圖形大小時,這一粗化階段便完成了。
在步驟530,該算法使用用于上述多層頂點的頻譜算法(圖3A)對該層次結(jié)構(gòu)(上文中用Gk表示)中的最小(最粗略)圖形進行排序。
在步驟540,該算法通過一系列中間圖形把Gk的排序傳回或內(nèi)插回到G0,從而在算法進行過程中對排序細化。
有若干理由說明為何上述多級算法工作得好。首先,粗化階段隱藏了圖形的所有不重要的、冗余的細節(jié),只保留關(guān)于數(shù)據(jù)的最重要的連接性信息。這允許找出好的初始順序,它能作為傳回原始圖的結(jié)果被迭代式地細化。第二個理由是這一多級途徑顯著地加速了計算,因為該順序是在比原始圖形小得多的圖形上計算的。這使該算法可按比例地應(yīng)用于很大的數(shù)據(jù)量。事實上,對最粗圖形排序所需時間變?yōu)橹皇且粋€小的考慮,這樣,實現(xiàn)這一途徑的系統(tǒng)有能力使用甚至很昂貴的(但很有效的)排序算法。最后,多級細化(在最后的去粗階段)改善了初始排序的質(zhì)量。本質(zhì)上,本發(fā)明的頻譜算法采取對圖形的全局觀察并快速找出一個好的初始排序,然后,在它被投射回原始圖形時,這一排序被局部細化。這樣,這一途徑通過使用不同粒度級別的圖形組合了全局和局部技術(shù)二者的力量。
在下面的描述中,我們進一步描述上述算法的步驟520和540如何操作。對每一步有多種選擇。我們只討論它們中的一些。實際選擇能由應(yīng)用最好地確定。如果有了這里給出的技術(shù),本領(lǐng)域技術(shù)人員將會理解其他實現(xiàn)。
在粗化階段,具有高相似相鄰結(jié)構(gòu)的頂點子集被迭代地合并到下一級較粗圖形的多重頂點中。這一粗化方案是由這樣的事實啟發(fā)出來的實際數(shù)據(jù)集是高度超定的,其中多個項點可能有幾乎相同的連接性。根據(jù)經(jīng)驗,在每一輪粗化過程中,頂點個數(shù)以因子1/3減少。這一比例清楚表明初始時在數(shù)據(jù)中有多么大的冗余。兩頂點相鄰性結(jié)構(gòu)的相似性可作為它們的規(guī)一化相鄰性矢量之間(即該圖相似性矩陣相應(yīng)行之間)的歐幾里德距離來度量。在每次粗化過程中,其成對的相似性大于某一閾值的一組頂點被組合到一個多重頂點中。多重頂點的權(quán)重被設(shè)定為它包含的頂點的權(quán)重之和。原始圖形各頂點的權(quán)重被設(shè)為1。連接兩個多重頂點A和B的邊緣的權(quán)重被設(shè)為全部從A中某一項點到B中某一頂點的邊緣的權(quán)重之和(請注意,所造成的較粗圖形的權(quán)重已被重新規(guī)一化)。這保證較粗圖形的連接性是從較細圖形的連接性繼承下來的。結(jié)果,最粗的圖形保留著原始圖形的許多重要的連接性特性。尋找要合并在一起的頂點子集的一種樸素的途徑是計算該序列中每個圖形的相似性矩陣。顯然,這一途徑在計算上是昂貴的(只計算初始圖形的相似性矩陣要占用O(n2)時間)。本發(fā)明使用隨機化算法計算子集,該算法近似一個圖形的被高度連接的分量。在匹配理論、計算機影像等領(lǐng)域已知若干個這種隨機化算法。在一個實現(xiàn)示例中,我們使用在圖形分區(qū)中由Karypis等實現(xiàn)的重小集團匹配(heavy cliquematching)算法的變體,見G.Karypis等的“多級超圖形分區(qū)在VLSI域中的應(yīng)用”,技術(shù)報告,明尼蘇達大學(xué),計算機科學(xué)系,1997,短文見第34屆設(shè)計自動化大會,其公開內(nèi)容在這里被納入作為參考。
一旦由上述頻譜算法構(gòu)成最粗圖形中節(jié)點的順序,該順序經(jīng)由該中間圖形序列傳回原始圖形。通常,下一級較細圖形的順序要尊重較粗圖形的順序。由于較粗圖形的頂點恰是下一級較細圖形的多重頂點,向回投射一級只是簡化為對每個多重頂點內(nèi)的頂點排序。如果一個多重頂點是大的,一個頻譜算法能用于對這一多重頂點的相應(yīng)節(jié)點排序。然而,這一排序得在該圖形其余部分的前后關(guān)系中構(gòu)建。我們發(fā)現(xiàn),把頻譜算法的遞歸應(yīng)用與局部細化試探法組合起來可達到最好的結(jié)果。一個示例途徑是使用眾所周知的Rayleigh商數(shù)迭代。
圖6通過一個示例顯示多級算法。在此例中,我們需對7個對象(A、B、C、D、E、F、G)排序。原始圖繪Go在圖中左手側(cè)。一個節(jié)點代表要排序的一個對象。邊緣代表兩上相連節(jié)點之間的相似性。如前文討論的那樣,有相似局部結(jié)構(gòu)的節(jié)點在粗圖(例如圖形G1)中被合并成一個多重頂點。例如,{A,B,C}和{D,E,F(xiàn)}分別被合并成多重頂點H和G。然后,我們通過頻譜算法與局部試探法對最粗圖排序。在這種情況下,我們得到順序{G,J,H}。最后,我們需要通過擴展每個多重頂點將這一結(jié)果傳播回去。對于我們的例子,我們需要進一步對與H關(guān)聯(lián)的{A,B,C}和與G關(guān)聯(lián)的{D,E,F(xiàn)}排序。這可通過應(yīng)用本發(fā)明的頻譜算法來完成。最后結(jié)果是{G,F(xiàn),D,E,A,B,C}。
應(yīng)該理解,對進行上述發(fā)明的排序過程中的粗化和細化所使用的方法進行實際選擇取決于應(yīng)用。這樣,給出這里的技術(shù),本領(lǐng)域技術(shù)人員將實現(xiàn)各種依賴于應(yīng)用的具體實現(xiàn)。
現(xiàn)在參考圖7,圖中顯示用于實現(xiàn)本發(fā)明的一個或多個排序算法的計算機系統(tǒng)示例。該計算機系統(tǒng)處理器702在操作上與存儲器704及I/O設(shè)備706耦合。應(yīng)該理解,這里使用的術(shù)語“處理器”是要包括任何處理設(shè)備,如包括CPU(中央處理單元)和/或其他處理電路的處理設(shè)備。這里使用的術(shù)語“存儲器”包括與處理器或CPU相關(guān)的存儲器,例如RAM、ROM、固定存儲器設(shè)備(例如硬盤)、可拆卸存儲器設(shè)備(例如軟盤)、閃速存儲器等。此外,這里使用的術(shù)語“輸入/輸出設(shè)備”或“I/O設(shè)備”是要包括例如一個或多個用于向處理單元輸入數(shù)據(jù)的輸入設(shè)備(如鍵盤、鼠標器等)和/或一個或多個與該處理單元和/或終端用戶圖形用戶接口關(guān)聯(lián)的輸出設(shè)備(如CRT顯示器、打印機等)用于展現(xiàn)結(jié)果。例如,顯示器可以是終端用戶觀察根據(jù)本發(fā)明的排序算法產(chǎn)生的可視化結(jié)果的地方。還應(yīng)該理解,“處理器”可指不只一個處理設(shè)備,而且與一個處理設(shè)備關(guān)聯(lián)的各種部件可由其他處理設(shè)備共享。
相應(yīng)地,包括用于實現(xiàn)這里所述本發(fā)明方法的指令或代碼的軟件構(gòu)件(例如一個或多個程序)可存儲在相關(guān)聯(lián)的一個或多個存儲設(shè)備中(例如ROM,固定或可卸存儲器)作為一個制造部件,當準備利用時被部分地或全部地加載(例如加載到ROM中)并由處理器執(zhí)行。這樣,應(yīng)該理解,圖7中所示硬件實現(xiàn)可以優(yōu)選地用于實現(xiàn)排序列擎240(這里可利用一個或多個本發(fā)明的排序算法)以及圖2A至2D中顯示的可視化系統(tǒng)的構(gòu)件。
雖然這里已參考附圖描述了本發(fā)明的實施示例,但應(yīng)該理解,本發(fā)明不限于那些精確的實施例,本領(lǐng)域技術(shù)人員可實現(xiàn)對它們的各種其他改變和修改而不脫離本發(fā)明的范圍和精神。
權(quán)利要求
1.一種在數(shù)據(jù)處理系統(tǒng)中對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值進行排序的基于計算機的方法,該方法包含如下步驟得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;使與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值的排序任務(wù)成為連續(xù)最優(yōu)化排序問題;對此連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解;以及使計算出的連續(xù)排序解的至少一部分可用于一個數(shù)據(jù)可視化系統(tǒng)。
2.權(quán)利要求1的方法,進一步包含把計算出的連續(xù)排序解從連續(xù)空間映射到離散空間的步驟。
3.權(quán)利要求1的方法,其中使對類屬值排序的任務(wù)成為連續(xù)最優(yōu)化排序問題的步驟包含基于一個或多個屬性的類屬值計算一個相似性矩陣的步驟。
4.權(quán)利要求3的方法,其中相似性矩陣是基于一個或多個多重集操作。
5.權(quán)利要求4的方法,其中一個或多個多重集操作包含計算兩類相似性量度,第一類是在來自同一屬性的兩個類屬值之間計算出的相似性量度,第二類是在來自不同屬性的兩個類屬值之間計算出的相似性度量。
6.權(quán)利要求3的方法,其中使對類屬值排序的任務(wù)成為連續(xù)最優(yōu)化排序問題的步驟進一步包含由此相似性矩陣計算拉普拉斯矩陣的步驟。
7.權(quán)利要求6的方法,其中對連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解的步驟包含找出該拉普拉斯矩陣最小正本征值的步驟。
8.權(quán)利要求7的方法,其中對連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解的步驟進一步包含從該拉普拉斯矩陣的最小正本征值得到相應(yīng)的最優(yōu)本征矢量的步驟。
9.權(quán)利要求8的方法,進一步包含如下步驟在使該解可用于數(shù)據(jù)可視化系統(tǒng)之前,根據(jù)與最優(yōu)本征矢量關(guān)聯(lián)的相應(yīng)值對類屬值排序。
10.權(quán)利要求1的方法,其中類屬值與多個屬性關(guān)聯(lián),進一步包含如下步驟在使類屬值的排序任務(wù)成為連續(xù)最優(yōu)化排序問題之前,把涉及多個屬性的類屬值映射到一個對象集,從而使“成為”和“計算”步驟對該對象集進行。
11.權(quán)利要求1的方法,其中“得到”、“成為”和“計算”步驟是與數(shù)據(jù)可視化系統(tǒng)的預(yù)處理操作關(guān)聯(lián)在一起實現(xiàn)的。
12.權(quán)利要求1的方法,其中“得到”、“成為”和“計算”步驟是與數(shù)據(jù)可視化系統(tǒng)的數(shù)據(jù)管理模塊關(guān)聯(lián)在一起實現(xiàn)的。
13.權(quán)利要求1的方法,其中“得到”、“成為”和“計算”步驟是與數(shù)據(jù)可視化系統(tǒng)的數(shù)據(jù)觀察器模塊關(guān)聯(lián)在一起實現(xiàn)的。
14.一種在數(shù)據(jù)處理系統(tǒng)中對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值進行排序的基于計算機的方法,該方法包含如下步驟得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;將類屬值模擬為一個原始圖形結(jié)構(gòu),其各頂點為要排序的類屬值,邊緣的權(quán)重代表被連接的頂點的相似性;由一個或多個較粗略的圖形結(jié)構(gòu)的層次序列近似該原始圖形結(jié)構(gòu),其中具有相似局部結(jié)構(gòu)的頂點被合并成較粗略的圖形結(jié)構(gòu)中的一個頂點;按照連續(xù)最優(yōu)化排序操作對最粗略的圖形結(jié)構(gòu)排序;將最粗略圖形結(jié)構(gòu)的排序傳播回到原始圖形結(jié)構(gòu);以及使被傳播的與原始圖形結(jié)構(gòu)關(guān)聯(lián)的排序中的至少一部分可被用于一個數(shù)據(jù)可視化系統(tǒng)。
15.用于對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值進行排序的數(shù)據(jù)處理裝置,該裝置包含至少一個處理器,其操作為(i)得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;(ii)使與該數(shù)據(jù)關(guān)聯(lián)的一個或多個屬性的類屬值的排序任務(wù)成為連續(xù)最優(yōu)化排序問題;(iii)對些連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解;以及(iv)使計算出的連續(xù)排序解的至少一部分可用于一個數(shù)據(jù)可視化系統(tǒng)。
16.權(quán)利要求15的裝置,其中該處理器進一步操作為把計算出的連續(xù)排序解從連續(xù)空間映射到離散空間。
17.權(quán)利要求15的裝置,其中使對類屬值排序的任務(wù)成為連續(xù)最優(yōu)化排序問題包含基于一個或多個屬性的類屬值計算一個相似性矩陣。
18.權(quán)利要求17的裝置,其中相似性矩陣是基于一個或多個多重集操作。
19.權(quán)利要求18的裝置,其中一個或多個多重集操作包含計算兩類相似性量度,第一類是在來自同一屬性的兩個類屬值之間計算出的相似性量度,第二類是在來自不同屬性的兩個類屬值之間計算出的相似性量度。
20.權(quán)利要求17的裝置,其中使對類屬值排序的任務(wù)成為連續(xù)最優(yōu)化排序問題進一步包含由此相似性矩陣計算拉普拉斯矩陣。
21.權(quán)利要求20的裝置,其中對連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解包含找出該拉普拉斯矩陣的最小正本征值。
22.權(quán)利要求21的裝置,其中對連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解進一步包含從該拉普拉斯矩陣的最小正本征值得到相應(yīng)的最優(yōu)本征矢量。
23.權(quán)利要求22的裝置,其中該處理器進一步操作,以在使該解可用于數(shù)據(jù)可視化系統(tǒng)之前,根據(jù)與最優(yōu)本征矢量關(guān)聯(lián)的相應(yīng)值對類屬數(shù)據(jù)排序。
24.權(quán)利要求15的裝置,其中類屬值與多個屬性關(guān)聯(lián),其中該處理器進一步操作,以在使類屬值的排序任務(wù)成為連續(xù)最優(yōu)化排序問題之前,把涉及多個屬性的類屬值映射到一個對象集,從而使“成為”和“計算”步驟對該對象集進行。
25.權(quán)利要求15的裝置,其中該處理器與數(shù)據(jù)可視化系統(tǒng)的預(yù)處理操作相關(guān)聯(lián)地進行“得到”、“成為”和“計算”步驟。
26.權(quán)利要求15的裝置,其中該處理器與數(shù)據(jù)可視化系統(tǒng)的數(shù)據(jù)管理模塊相關(guān)聯(lián)地進行“得到”、“成為”和“計算”步驟。
27.權(quán)利要求15的裝置,其中該處理器與數(shù)據(jù)可視化系統(tǒng)的數(shù)據(jù)觀察器模塊相關(guān)聯(lián)地進行“得到”、“成為”和“計算”步驟。
28.用于對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值排序的數(shù)據(jù)處理裝置,該裝置包含至少一個處理器,其操作為(i)得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;(ii)將類屬值模擬為一個原始圖形結(jié)構(gòu),其各頂點為要排序的類屬值,邊緣的權(quán)重代表被連接頂點的相似性;(iii)由一個或多個較粗略的圖形結(jié)構(gòu)的層次序列近似該原始圖形結(jié)構(gòu),其中具有相似局部結(jié)構(gòu)的頂點被合并成較粗略的圖形結(jié)構(gòu)中的一個頂點;(iv)按照連續(xù)最優(yōu)化排序操作對最粗略的圖形結(jié)構(gòu)排序;(v)將最粗略圖形結(jié)構(gòu)的排序傳播回到原始圖形結(jié)構(gòu);以及(vi)使被傳播的與原始圖形結(jié)構(gòu)關(guān)聯(lián)的排序中的至少一部分可被用于一個數(shù)據(jù)可視化系統(tǒng)。
29.一種用于對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值排序的計算機程序,當該程序被執(zhí)行時實現(xiàn)下列步驟得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;使與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值的排序任務(wù)成為連續(xù)最優(yōu)化排序問題;對此連續(xù)最優(yōu)化排序問題計算出至少一個連續(xù)排序解;以及使計算出的連續(xù)排序解的至少一部分可用于一個數(shù)據(jù)可視化系統(tǒng)。
30.一種用于對與數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值排序的計算機程序,當該程序被執(zhí)行時實現(xiàn)下列步驟得到與該數(shù)據(jù)集關(guān)聯(lián)的一個或多個屬性的類屬值;將類屬值模擬為一個原始圖形結(jié)構(gòu),其各頂點為要排序的類屬值,邊緣的權(quán)重代表被連接的頂點的相似性;由一個或多個較粗略的圖形結(jié)構(gòu)的層次序列近似該原始圖形結(jié)構(gòu),其中具有相似局部結(jié)構(gòu)的頂點被合并成較粗略的圖形結(jié)構(gòu)中的一個頂點;按照連續(xù)最優(yōu)化排序操作對最粗略的圖形結(jié)構(gòu)排序;將最粗略圖形結(jié)構(gòu)的排序傳播回到原始圖形結(jié)構(gòu);以及使被傳播的與原始圖形結(jié)構(gòu)關(guān)聯(lián)的排序中的至少一部分可被用于一個數(shù)據(jù)可視化系統(tǒng)。
全文摘要
提供了用于使類屬屬性排序從而能更好地可視化的技術(shù)。根據(jù)本發(fā)明的一個實施例,一個排序算法包含如下步驟(a)使離散排序問題變換為連續(xù)最優(yōu)化問題;(b)求解該連續(xù)最優(yōu)化問題;以及(c)把最優(yōu)連續(xù)解映射為最接近的離散解。
文檔編號G06F19/00GK1659546SQ02806851
公開日2005年8月24日 申請日期2002年3月11日 優(yōu)先權(quán)日2001年3月19日
發(fā)明者A·貝格爾茲莫, C-S·佩爾格, 馬勝, J·赫勒斯坦 申請人:國際商業(yè)機器公司