999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種改進的鄰接關系可查詢壓縮算法

2015-06-27 08:26:03高圣巍
計算機工程 2015年1期

高圣巍,彭 超

(華東師范大學軟件學院,上海200062)

一種改進的鄰接關系可查詢壓縮算法

高圣巍,彭 超

(華東師范大學軟件學院,上海200062)

目前多數數據壓縮算法不能直接在壓縮結果上進行數據查詢,大數據的線性化壓縮算法雖然可直接在壓縮后的數據上進行鄰接關系查詢,但壓縮率較低。針對該問題,對線性化壓縮的實現原理進行研究,分析MPk線性化算法在不同社會網絡樣本下的壓縮效率,發現線性化壓縮結果中存在冗余信息,并針對該情況設計改進算法,刪去原有數據結構中的冗余部分,進一步提高壓縮率。實驗結果證明,改進算法的時間復雜度與原算法相同,壓縮率平均提升23%。

線性化壓縮算法;大數據;社會網絡;啟發式算法;Eulerian數據結構

1 概述

近些年來,由于在生物、天文、經濟和社會網絡等諸多領域的應用,超大規模復雜圖的相關研究受到廣泛重視。這當中社會網絡尤為突出,其能幫助人們發現潛在問題,做出決策,管理人際關系、組織機構乃至國家社會。社會網絡通常被建模為超大圖,成員對應圖的節點,而成員間的關系則為圖的邊。這些關系可以是友誼、血緣、貿易或沖突等,是研究的重點對象。因此,在分析社會網絡時,查詢鄰居節點是最頻繁也最重要的工作之一[1]。

社會網絡一般都由上百萬的節點和邊組成,存儲社會網絡需要很大的空間。問題也隨之而來:如何壓縮網絡數據以節省空間?好的算法會利用社會網絡的一些特性來獲得高壓縮率,比如節點通常會以簇的形式出現在社會網絡中。在以往,人們在查詢社會網絡時,都會將其圖數據解壓縮。如果查詢操作能直接在壓縮數據上進行,將可以大量節省解壓縮的時間。本文利用線性化壓縮的特性,提出一種改進的線性化壓縮算法。該算法不需要解壓即可查詢,通過計算節點間的關聯度,調整節點在壓縮結果中的排放位置,從而提高線性化壓縮的壓縮率。

2 相關研究

在大規模復雜網絡數據的壓縮方面,國內外已經有一些相關研究工作。例如:文獻[2]將壓縮問題轉化為在有向圖中尋找最小生成樹的過程;文獻[3]通過廣度優先遍歷的方法壓縮圖,并優化了壓縮圖的編碼方式;文獻[4]介紹了幾種常用無損數據壓縮算法。

針對海量社會網絡數據,要獲得高壓縮率,首先,圖中頂點出現的順序十分重要,文獻[5]說明了節點的排列對壓縮實際帶來的影響。其次,設計良好的數據結構來存儲數據十分重要。文獻[6-7]中總結了一些壓縮社會圖的方法,主要有記錄鄰接表、記錄間距、引用壓縮和差量壓縮,并且設計了通用的圖壓縮框架。在后續的工作中,Paolo Boldi采用Task Decomposition技術[8],將壓縮框架擴展為在多核架構上運行,提高壓縮速度。文獻[9]分析了社會網絡不同于普通圖的特性,提出通過找出具有相似鄰居的節點進行壓縮的方法。這些壓縮方法都有著較好的壓縮率,但在社會網絡上做查詢操作前,都要先將壓縮的圖解壓。

文獻[10]提出了一種“線性化”技術,這種技術將社會網絡中的節點表示成一個序列,序列中的每個節點僅存儲序列中相鄰節點的鄰居關系,雖然這樣壓縮率與其他壓縮算法稍有降低,但這種技術使得查詢可以直接在壓縮后的結果上進行。尋找這樣一種序列基本上被認為是NP完全的問題,因此一般來說不存在有效的多項式時間算法,文獻[11]對此作了闡述。

本文對線性化壓縮的實現原理進行研究,分析線性化方法在不同社會網絡樣本下的壓縮效率,發現線性化壓縮結果中存在的冗余信息,并針對該情況提出一種改進算法。

3 MPK線性化算法

一個社會網絡可以用一個有向圖G(V,E)表示,其中,V表示圖中點的集合;E表示圖中邊的集合,即E∈V×V,本文假定網絡是簡單的(即沒有自環),源節點到目的節點最多只有一條邊。有向圖的邊用e=(u,v)表示,其中,u為源節點;v為目的節點,且(u,v)≠(v,u)。圖1是一個有向圖示例。

圖1 有向圖G

定義有向圖對應的無向圖,無向圖存在邊,當且僅當(u,v)∈E(G)或(v,u)∈E(G)。圖2是圖1中有向圖G對應的無向圖。

圖2 G對應的無向圖

定義有向圖對應的轉置圖GT,轉置圖存在邊(u,v)∈E(GT),當且僅當(v,u)∈E(G)。

對有向圖G的查詢分為2種:查詢節點u指向的所有鄰點{v|(u,v)∈G};查詢所有指向節點u的鄰點{v|(v,u)∈G}。為有效支持這2種查詢,多數壓縮算法需要存儲圖G和轉置圖GT。而線性化算法將圖G進行編碼,節省了大量的空間,同時支持在已編碼的結果上直接作查詢。下文將給出MPk的定義和用 MPk于存儲圖G的編碼的數據結構——Eulerian結構。

3.1 MPk線性化定義

定義1設S=(vi1,vi2,…,vim)是由圖G的節點組成的序列,如果G中所有的節點在S中至少出現一次,則稱S覆蓋了圖G,這里請注意S中前后相鄰出現的點不一定在G中存在鄰接邊。

定義2給定一個覆蓋圖G的序列S,dist(u,v)表示序列S中節點u和節點v最相近的距離。

定義3給定一個覆蓋圖G的序列S,如果對于圖G中所有的邊(u,v)∈E(G),在S中都有dist(u,v)≤k,則稱S是圖G的MPk階線性化序列。圖G中的節點允許在S中重復出現。

3.2 Eulerian數據結構

Eulerian數據結構用來保存對圖G的MP線性化序列L,它是一個數組,L的長度用|L|表示,設v(i)是出現在數組第i個位置的節點,v(i)保存2個信息:

(1)鄰居信息:對于MP1線性化序列,鄰居信息占2 bit,分別記錄有向邊(v(i),v(i+1))和(v(i+1),v(i))是否屬于E(G)。對于MPk線性化,每個元素需要一個2kbit的比特串保存鄰居信息,其中,第2j-1個和第2j個比特分別記錄有向邊(v(i),v(i+j))和(v(i+j),v(i))是否屬于E(G)。

(2)節點指針:同一節點在序列中允許重復出現。節點指針指向節點下一次出現的位置。節點最后一次出現時,節點指針指向它首次出現的位置。

圖G的MP1和MP1線性化序列的Eulerian表示如圖3和圖4所示。

圖3 圖G的MP1線性化序列的Eulerian表示

圖4 圖G的MP2線性化序列的Eulerian表示

4 MPk線性化的改進

4.1 Eulerian數據結構的存儲冗余

在稀疏圖中,節點的出入度都較小,在k比較大的情況下進行MPk壓縮,會導致Eulerian數據結構中的鄰居信息存儲著大量的不連續的0 bit(表示節點之間沒有邊相連)。假設圖G的MPk序列的某一段如下排列:a,u1,v1,u2,v2,…,uk/2,vk/2,其中,,則節點a的鄰居信息表示為:001100110011…(共2kbit)。如果變換節點出現的順序為a,u1,u2,…,uk/2,v1,v2,vk/2,同時保證序列仍然符合MPk的定義,則節點a的鄰居信息變為:0000…01111…1(0 bit與1 bit各k個),可以省去開始的k個0 bit,從第1個1 bit開始記錄鄰居信息。由于鄰居信息的長度不再固定為2k,因此需要增加lbk個比特記錄鄰居信息的比特串長度。通常lbk遠小于k,所以,整體壓縮率仍然是提高的。

改進的Eulerian數據結構除了保存圖G的節點外,還保存著一個二元組(NI,δN),其中,δN表示鄰居信息比特串的長度;NI表示鄰居信息。

4.2 改進的MPk線性化算法

本文通過算法調整序列中節點出現的順序。用數組L來記錄線性化序列中的節點,初始時L長度為0,此時隨機選擇一個節點加入到L。當向L加入新節點時,計算每個候選節點u與L中最后k個節點的關聯度,稱之為權值。設當前L的長度為|L|,權值C的計算方法如下:

最終,權值最大的節點優先加入數組L中。

結合上述的分析,本文對MPk算法進行了重新設計,并使用改進的Eulerian數據結構,稱為IMPk算法。算法描述如下:

輸入圖G,k

輸出G的線性化序列

4.3 MPk與IMPk的計算復雜度對比

在構造線性化序列時,IMPk算法與MPk算法的主要區別在于選擇新加入節點時的策略不同,MPk算法選擇與X集合有最多相連邊的節點優先加入序列,完成這個過程的步驟如下:

(1)找出X集合中節點的所有鄰居,最多有個鄰居;

(2)對于X集合的每個鄰居v,判斷v與X集合共有多少邊相連,復雜度為c1×K,其中,c1為判斷兩節點之間是否有邊的開銷。因此,MPk算法完成整個選擇的復雜度為:

而IMPk算法在上述第(2)步加入了權值計算,對于X集合的每個鄰居v,判斷其權值的復雜度為(c1+c2)×K,其中,c2表示計算v與X中節點的距離所花費的開銷,完成整個選擇的復雜度為:(c1+c2)×K×

由于X集合每次更新一個節點,根據其中節點順序可以快速計算到v的距離,c2的值比c1小很多。因此,IMPk算法計算復雜度與MPk算法復雜度基本相當。

4.4 MPk線性化的長度下界

設MPk線性化序列L的長度為|L|,L中的每個節點需要lb|L|個比特保存節點指針,2k個比特保存鄰居信息,整個序列需要保存。本文用圖G中每條有向邊,在壓縮結果中占用的bit數來衡量壓縮率,稱為BPE(Bits Per Edge),其值為:

本文給出改進MPk線性化序列長度的下界,設v∈V(G),L中每個節點鄰居信息占用2kbit,在最好情況下,只能記錄它的k個鄰居,所以,v在最終序列L中至少出現「deg(v)/k?次,deg(v)為節點v的度數。則L的長度至少為:

5 實驗與結果分析

本文使用C++實現了改進的算法,并用網站http://snap.stanford.edu/data中提供的社會網絡圖數據作為輸入,分別取k=10,k=15,k=20,k=30為參數進行實驗。實驗結果如表1和表2所示,表中數據為原 MPk算法與 IMPk算法運行結果的BPE值。

表1 MP10,MP15與IMP10,IMP15序列壓縮結果比較

表2 MP20,MP30與IMP20,IMP30序列壓縮結果比較

可以看出,改進后的IMPk算法之平均壓縮效率比原MPk算法平均高出大約23%。本文對實驗結果作進一步分析后發現,社會網絡的聚合度對壓縮效率有很大的影響。在這些社會網絡中,web-Standford圖中的節點都以簇的形式分布[12],簇內的節點連接緊密,而與其他簇連接較少,因此該網絡的壓縮效率最好,達到6.37 bits/edge,比原MPk算法效果提升38%。在email-EuAll圖中,各節點的鄰居分布比較隨機,使得算法在執行時,加入了許多隨機節點(即跳至外層while循環,選擇隨機節點)來保證序列符合MPk定義。最終,改進算法仍比原算法有2%的效率提升。

6 結束語

本文改進社會網絡的線性化壓縮算法,通過計算權值,優化最終序列中的節點順序和Eulerian數據結構。實驗結果證明,改進后的壓縮算法的壓縮率相比原算法平均提高了23%。下一步工作是深入分析社會網絡的聚合程度對算法的影響,改進算法以適應社會網絡的不同特征。

[1] 馬 帥,李 佳,劉旭東,等.大數據時代的圖搜索技術[J].信息通信技術,2013,(6):44-51.

[2] Adler M,Mitzenmacher M.Towards Compressing Web Graphs[C]//Proceedings of 2001 Data Compression Conference.Snowbird,USA:IEEE Press,2001:202-213.

[3] Apostolico A,DrovandiG.Graph Compression by BFS[J].Algorithms,2009,2(3):1031-1044.

[4] 鄭翠芳.幾種常用無損數據壓縮算法研究[J].計算機技術與發展,2011,21(9):73-76.

[5] Boldi P,Santini M,Vigna S.Permuting Web Graphs, Algorithms and Models for the Web-Graph[M].Berlin, Germany:Springer,2009:116-126.

[6] Boldi P,Vigna S.The WebGraph Framework I: Compression Techniques[C]//Proceedings of the 13th International Conference on World Wide Web.New York, USA:ACM Press,2004:595-602.

[7] Boldi P,Vigna S.The WebGraph Framework II:Codes for the World-wide Web[C]//Proceedings of 2004 Data Compression Conference.Snowbird,USA:IEEE Press, 2004:528.

[8] Boldi P,Rosa M,Santini M,et al.Layered Label Propagation:A Multiresolution Coordinate-free Ordering for Compressing Social Networks[C]//Proceedings of the 20th International Conference on World Wide Web. Hyderabad,India[s.n.],2011:587-596.

[9] Chierichetti F,Kumar R,Lattanzi S,et al.On Compressing Social Networks[C]//Proceedings of the 15th ACM SIGKDD InternationalConference on Knowledge Discovery and Data Mining.Paris,France: ACM Press,2009:219-228.

[10] Maserrat H,Pei J.Neighbor Query Friendly Compression of Social Networks[C]//Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.Washington D.C.,USA: [s.n.]:2010:533-542.

[11] Papadimitriou C H.The NP-completeness of the Bandwidth Minimization Problem[J].Computing,1976,16(3): 263-270.

[12] Easley D,Kleinberg J.Networks,Crowds,and Markets[M]. Cambridge,UK:Cambridge University Press,2010.

編輯 金胡考

An Improved Compression Algorithm Supporting Neighbor Query

GAO Shengwei,PENG Chao
(Software Engineering Institute,East China Normal University,Shanghai 200062,China)

Nowadays,most data compression algorithms do not support performing query directly on compressed data. Though the compression algorithm can perform query neighbor relations on compressed result,the compression ratio is relatively low.To solve the problem,this paper does some research on the principle of linearization compression algorithm.It analyzes the compression ratio of MPkalgorithm in different sample social network and finds the redundant information in compressed result.To eliminate these redundant information,it improves the original data structure, removes the unnecessary bits and improves the compression ratio.Experiments show that the proposed algorithm has same time complexity compared with primal algorithm,but the compression ratio can be increased by 23%in average.

linearization compression algorithm;big data;social network;heuristic algorithm;Eulerian data structure

1000-3428(2015)01-0061-04

A

TP312

10.3969/j.issn.1000-3428.2015.01.011

國家自然科學基金資助項目(91118008,61232006);國家“863”計劃基金資助重點項目(SQ2010AA0101016001);上海市教育委員會科研創新基金資助項目(44440590)。

高圣巍(1989-),男,碩士研究生,主研方向:移動路由算法;彭 超,副教授。

2014-01-20

2014-03-15 E-mail:51111500026@ecnu.cn

中文引用格式:高圣巍,彭 超.一種改進的鄰接關系可查詢壓縮算法[J].計算機工程,2015,41(1):61-64.

英文引用格式:Gao Shengwei,Peng Chao.An Improved Compression Algorithm Supporting Neighbor Query[J]. Computer Engineering,2015,41(1):61-64.

主站蜘蛛池模板: 亚欧成人无码AV在线播放| 色亚洲激情综合精品无码视频| 欧美不卡在线视频| 精品无码日韩国产不卡av| 黄色在线不卡| 亚洲第一中文字幕| 全午夜免费一级毛片| 亚洲精品国产综合99| 97在线视频免费观看| 国产综合亚洲欧洲区精品无码| 精品国产自| 国产亚洲第一页| 激情无码视频在线看| 国产偷倩视频| 真人免费一级毛片一区二区 | 国产欧美在线观看精品一区污| 国产自在线播放| 亚洲无码日韩一区| 在线免费亚洲无码视频| 欧美第一页在线| 扒开粉嫩的小缝隙喷白浆视频| 精品国产美女福到在线不卡f| 久久99精品久久久大学生| 四虎影视国产精品| 伊人久久综在合线亚洲2019| 怡春院欧美一区二区三区免费| 一级毛片在线免费看| 国产主播在线一区| 国产极品美女在线播放| 欧美性久久久久| 青青草原国产| 亚洲一区无码在线| 美女被操黄色视频网站| 国产精品午夜福利麻豆| 日本www在线视频| 亚洲视频一区在线| 中文字幕一区二区人妻电影| 欧美国产日韩一区二区三区精品影视| 国产综合精品日本亚洲777| 亚洲国产精品日韩欧美一区| 日韩一级二级三级| 免费在线a视频| 亚洲综合激情另类专区| 成年av福利永久免费观看| 东京热高清无码精品| 刘亦菲一区二区在线观看| 久久96热在精品国产高清| 国产毛片基地| 一本大道AV人久久综合| 国产网友愉拍精品视频| 国产成人精品亚洲77美色| 国产乱子伦一区二区=| 美美女高清毛片视频免费观看| 国产国产人在线成免费视频狼人色| 日韩麻豆小视频| 国产在线精品99一区不卡| 狠狠色婷婷丁香综合久久韩国| 在线高清亚洲精品二区| 不卡的在线视频免费观看| 国产欧美视频在线观看| 久久这里只有精品8| 天天爽免费视频| 青草91视频免费观看| 激情在线网| 欧美成人综合视频| 亚洲无线视频| 黄色网址手机国内免费在线观看| 久久久久人妻一区精品色奶水| 欧美一区二区三区欧美日韩亚洲 | 免费一级毛片| 成人在线天堂| 91九色国产在线| 久久亚洲日本不卡一区二区| 91九色最新地址| 色综合成人| 国产亚洲精品自在久久不卡| 精品欧美日韩国产日漫一区不卡| 91久久国产成人免费观看| 亚洲男人在线| 色噜噜在线观看| 91色综合综合热五月激情| 99精品一区二区免费视频|