• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    多編碼樹GPU并行軸心子圖匹配

    2022-02-26 06:58:12江世杰曹宇聰李傳文
    計(jì)算機(jī)應(yīng)用 2022年1期
    關(guān)鍵詞:子圖軸心特征值

    汪 洋,江世杰,曹宇聰,李傳文

    (東北大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,沈陽(yáng) 110169)

    0 引言

    近年來(lái),隨著對(duì)圖的重要性的認(rèn)識(shí)逐漸增加,如何有效地對(duì)圖數(shù)據(jù)進(jìn)行管理成為了人們的研究重點(diǎn)。由于目前圖搜索[1-3]、子圖匹配等常見的圖操作仍存在可擴(kuò)展性和效率等方面的問(wèn)題,對(duì)這些操作的研究正在受到越來(lái)越多的關(guān)注。軸心子圖同構(gòu)作為一種特殊的子圖同構(gòu)問(wèn)題,也日益引起廣大研究者的興趣。對(duì)于一個(gè)給定的查詢圖,以查詢圖中的一個(gè)節(jié)點(diǎn)為軸心,軸心子圖同構(gòu)需要找到數(shù)據(jù)圖中與軸心匹配的節(jié)點(diǎn)。所謂與軸心匹配的節(jié)點(diǎn)是指數(shù)據(jù)圖中至少存在一個(gè)與查詢圖匹配的子圖,子圖中包含該節(jié)點(diǎn)。例如圖1(a)為軸心子圖同構(gòu)的查詢圖Q,其軸心為u1;在圖1(b)的數(shù)據(jù)圖G中,v1是軸心u1的有效匹配,因?yàn)樗嬖谟谝粋€(gè)查詢結(jié)果圖中,并且位置與u1對(duì)應(yīng)。

    軸心子圖同構(gòu)的應(yīng)用非常廣泛,如蛋白質(zhì)交互網(wǎng)絡(luò)功能預(yù)測(cè)、頻繁子圖挖掘、鄰居子圖挖掘等[4-6]。Abdelhamid 等[7]提出了軸心子圖同構(gòu)算法——智能軸心子圖同構(gòu)(Smart Pivoted Sugraph Isomorphism,Smart PSI),利用機(jī)器學(xué)習(xí)預(yù)測(cè)候選節(jié)點(diǎn)是不是有效節(jié)點(diǎn),從而分別利用樂(lè)觀和悲觀方法對(duì)該節(jié)點(diǎn)進(jìn)行驗(yàn)證。在預(yù)測(cè)正確的情況下,可以根據(jù)相應(yīng)算法快速求解,但是在預(yù)測(cè)錯(cuò)誤的情況下,利用相反算法進(jìn)行驗(yàn)證會(huì)浪費(fèi)大量的計(jì)算資源和內(nèi)存消耗,從而降低算法的執(zhí)行效率。其他軸心子圖同構(gòu)算法大多先進(jìn)行子圖同構(gòu)搜索,然后從子圖同構(gòu)結(jié)果中找到軸心節(jié)點(diǎn)。

    根據(jù)算法的主要執(zhí)行環(huán)境,子圖同構(gòu)算法可分為基于CPU 和基于GPU 兩類。

    基于CPU 的子圖同構(gòu)算法 Shang 等[8]提出了快速子圖同構(gòu)(Quick Subgraph Isomorphism,QuickSI),首先用快速子圖同構(gòu)序列(Quick subgraph Isomorphism Sequence,QISequence)來(lái)限制搜索空間,以及通過(guò)在數(shù)據(jù)庫(kù)中出現(xiàn)的特征頻數(shù)來(lái)確定序列順序,然后用Swift index 減少過(guò)濾階段的開 銷。Han 等[9]提出渦 輪增壓同構(gòu)(Turbo-charged Isomorphism,TurboISO),利用查詢圖的查詢順序來(lái)提高子圖同構(gòu)算法的執(zhí)行效率,同時(shí)提出鄰居等價(jià)類以減少候選節(jié)點(diǎn)的數(shù)量,減少無(wú)用的開銷。Zhang 等[10]提出了基于索引的圖匹配方 法(Distance Index based subGraph mAtching,GADDI),通過(guò)在單個(gè)大圖中引入頻繁子結(jié)構(gòu)進(jìn)而提出一種距離度量方法,通過(guò)相鄰判別子結(jié)構(gòu)(Neighboring Discriminating Substructure,NDS)距離將一對(duì)鄰居節(jié)點(diǎn)的局部圖結(jié)構(gòu)捕獲,產(chǎn)生強(qiáng)大的剪枝能力。算法的執(zhí)行方式[11-12]各有不同,而這些都是通過(guò)將候選節(jié)點(diǎn)進(jìn)行過(guò)濾[13]來(lái)提高算法的執(zhí)行效率。

    基于GPU 的子圖同構(gòu)算法 隨著GPU 的高速發(fā)展,研究者開始嘗試將CPU 上的串行計(jì)算轉(zhuǎn)化為GPU 上的并行計(jì)算。利用GPU 的多核并行處理能力,可以顯著加快子圖同構(gòu)算法,因此許多研究人員提出了多種在GPU 上執(zhí)行的子圖同構(gòu)算法[14-15]。例如,Bonnici 等[16]提出GRASS,通過(guò)GPU并行過(guò)濾掉當(dāng)前查詢節(jié)點(diǎn)不滿足的候選節(jié)點(diǎn),從而減小生成的搜索空間樹的尺寸。Tran 等[17]提出的GPU 友好子圖匹配(GPU-friendly Subgraph Matching,GpSM),通過(guò)生成樹和訪問(wèn)順序并行過(guò)濾查詢節(jié)點(diǎn)的候選集,然后基于非樹結(jié)構(gòu)和約簡(jiǎn)低連接點(diǎn)進(jìn)一步精煉候選節(jié)點(diǎn),從而提高算法執(zhí)行效率。GPU 友好子 圖同構(gòu)(GPU-friendly Subgraph Isomorphism,GSI)[18]基于與GpSM 相似的 過(guò)濾和 連接框 架,但不同 于GpSM 基于邊的連接方式,GSI 采用了一種基于頂點(diǎn)的連接方式。

    Smart PSI 雖然針對(duì)軸心子圖同構(gòu)進(jìn)行了優(yōu)化,但該方法是一種傳統(tǒng)的基于CPU 的方法,難以有效利用GPU 等新硬件的大規(guī)模并行處理能力。為了利用GPU 的高并發(fā)能力,本文設(shè)計(jì)了一種適用于GPU 的編碼過(guò)濾方式,可以并行地對(duì)候選節(jié)點(diǎn)進(jìn)行過(guò)濾。根據(jù)查詢圖節(jié)點(diǎn)的訪問(wèn)順序,該方法將下一個(gè)查詢圖節(jié)點(diǎn)的候選節(jié)點(diǎn)鎖定在與上一個(gè)查詢圖節(jié)點(diǎn)匹配的數(shù)據(jù)圖節(jié)點(diǎn)的鄰居范圍內(nèi),達(dá)到二次過(guò)濾的效果。

    在過(guò)濾過(guò)程中考慮節(jié)點(diǎn)的特征越多,過(guò)濾的效果越好;然而選用過(guò)多的節(jié)點(diǎn)特征會(huì)增加過(guò)濾過(guò)程的計(jì)算量,影響總體執(zhí)行效率。因此不同的過(guò)濾算法會(huì)在選用節(jié)點(diǎn)特征時(shí)進(jìn)行一定的權(quán)衡。為了在不占用過(guò)多計(jì)算資源的同時(shí)包含更多的特征,本文提出了一種基于多編碼樹的過(guò)濾方法,對(duì)每個(gè)節(jié)點(diǎn)進(jìn)行壓縮編碼。首先將節(jié)點(diǎn)的標(biāo)簽、度和鄰居結(jié)構(gòu)融入多棵不同的編碼樹中;然后計(jì)算每個(gè)編碼樹的特征向量并保存。在查詢圖中僅需要比較查詢圖節(jié)點(diǎn)與數(shù)據(jù)圖節(jié)點(diǎn)的特征向量編碼,即可將數(shù)據(jù)圖中的無(wú)效節(jié)點(diǎn)進(jìn)行大規(guī)模的過(guò)濾,極大縮小了候選節(jié)點(diǎn)生成的搜索空間樹的尺寸,提高了算法的執(zhí)行效率。本文提出的編碼方式還充分考慮了GPU的特點(diǎn),從而使GPU 在利用編碼進(jìn)行過(guò)濾時(shí)可以充分地進(jìn)行并行操作。實(shí)驗(yàn)結(jié)果表明,本文方法的執(zhí)行時(shí)間明顯少于目前最先進(jìn)的基于GPU 的子圖同構(gòu)算法。

    本文的主要工作如下:

    1)提出了一種標(biāo)簽樹結(jié)構(gòu)。利用二進(jìn)制數(shù)表示圖標(biāo)簽種類,根據(jù)各位上的數(shù)值不同,生成不同類型的標(biāo)簽樹,從而盡可能多地展現(xiàn)出每個(gè)節(jié)點(diǎn)的鄰居節(jié)點(diǎn)的結(jié)構(gòu)特征以及鄰居節(jié)點(diǎn)標(biāo)簽的組合情況。

    2)提出了一種新穎的節(jié)點(diǎn)編碼方式。將節(jié)點(diǎn)盡可能多的特征組合起來(lái),利用節(jié)點(diǎn)的鄰接矩陣的特征值來(lái)表示其鄰居節(jié)點(diǎn)的結(jié)構(gòu)和標(biāo)簽特征,然后將節(jié)點(diǎn)的標(biāo)簽、度以及特征值組合起來(lái)生成編碼,將復(fù)雜的結(jié)構(gòu)比較轉(zhuǎn)化為簡(jiǎn)單的數(shù)值比較。

    3)提出了一種新的軸心子圖同構(gòu)搜索算法。利用GPU并行過(guò)濾當(dāng)前的查詢圖節(jié)點(diǎn)的候選節(jié)點(diǎn),同時(shí)驗(yàn)證當(dāng)前節(jié)點(diǎn)的鄰居節(jié)點(diǎn)在已匹配序列中的位置是否是其所匹配的節(jié)點(diǎn)的鄰居在已匹配序列中的位置的子集,將過(guò)濾與驗(yàn)證相結(jié)合。

    1 預(yù)備知識(shí)

    定義1子圖同構(gòu)。給定一個(gè)查詢圖Q={VQ,EQ,LQ}和數(shù)據(jù)圖G={VG,EG,LG},其中VQ、VG是頂點(diǎn)的集合,EQ、EG是邊的集合,LQ、LG是將頂點(diǎn)映射到相應(yīng)標(biāo)簽的標(biāo)簽函數(shù)。子圖同構(gòu)即存在一個(gè)單射函數(shù)f:VQ→VG,對(duì)于查詢圖Q中?u,v∈VQ且(u,v)∈EQ,有f(u),f(v)∈VG,(f(u),f(v))∈EG,LQ(u)=LG(f(u))且LQ(v)=LG(f(v))。

    定義2軸心子圖同構(gòu)。給定一個(gè)查詢圖Q={VQ,EQ,LQ},軸心up∈VQ以及數(shù)據(jù)圖G={VG,EG,LG},軸心vp∈VG,存在一個(gè)單射函數(shù)f:VQ→VG,軸心子圖同構(gòu)需要滿足如下三個(gè)條件:1)?u,v∈VQ有f(u),f(v)∈VG,LQ(u)=LG(f(u)) 且LQ(v)=LG(f(v));2)?(u,v)∈EQ,有(f(u),f(v))∈EG;3)vp=f(up)。

    軸心子圖同構(gòu)問(wèn)題類似于子圖同構(gòu)問(wèn)題,但是軸心子圖同構(gòu)問(wèn)題不需要在數(shù)據(jù)圖中找到所有與查詢圖匹配的子圖,而只需要在數(shù)據(jù)圖中找到所有與查詢圖軸心匹配的節(jié)點(diǎn),每一節(jié)點(diǎn)至少存在于一個(gè)與查詢圖子圖同構(gòu)的子圖中。與子圖同構(gòu)相比,軸心子圖同構(gòu)只需要少量的計(jì)算和內(nèi)存。如圖1 所示,軸心子圖同構(gòu)的結(jié)果為{v1},不包括v5,這是因?yàn)関1存在子圖(v1,v2,v3,v4)與查詢圖匹配,而v5不存在與查詢圖匹配的子圖。

    定義3誘導(dǎo)子圖。一個(gè)誘導(dǎo)子圖g是圖G的節(jié)點(diǎn)的子集以及這些節(jié)點(diǎn)子集在G中形成的邊。

    定理1[19]給定樹T有n個(gè)頂點(diǎn)和樹T′有m個(gè)頂點(diǎn)(n≥m),它們的鄰接矩陣分別記為A和B。對(duì)于矩陣A,其特征值為λ1≥λ2≥…λn。對(duì)于矩 陣B,其特征值為α1≥α2≥…αm。如果T′是T的一個(gè)誘導(dǎo)子樹,則λn-m+i≤αi≤λi(i=1,2,…,m)。

    定理1 是樹與其誘導(dǎo)子樹的鄰接矩陣特征值之間的關(guān)系。本文中,將圖轉(zhuǎn)化為樹,利用定理1 驗(yàn)證子圖。但是需要注意的是,定理1 只是一個(gè)必要條件而不是一個(gè)充分必要條件,對(duì)于滿足上述特征值條件的圖S和圖G,無(wú)法得到圖G是圖S的一個(gè)誘導(dǎo)子圖或者是子圖,但是可以得到滿足上述條件的圖一定包含了圖S的所有子圖。因此可以利用此條件進(jìn)行過(guò)濾,依據(jù)查詢圖節(jié)點(diǎn)鄰居結(jié)構(gòu),對(duì)數(shù)據(jù)圖中每個(gè)節(jié)點(diǎn)鄰居結(jié)構(gòu)不滿足上述條件的節(jié)點(diǎn)進(jìn)行剪枝。

    2 總體結(jié)構(gòu)

    本文提出了一種基于GPU 的軸心子圖同構(gòu)算法,由編碼過(guò)濾、二次過(guò)濾和驗(yàn)證兩階段構(gòu)成。

    2.1 編碼過(guò)濾

    過(guò)濾階段著重研究如何將節(jié)點(diǎn)的鄰居結(jié)構(gòu)以及節(jié)點(diǎn)的鄰居標(biāo)簽應(yīng)用到編碼中,從而過(guò)濾掉更多候選節(jié)點(diǎn)。對(duì)于查詢圖節(jié)點(diǎn)的候選節(jié)點(diǎn)來(lái)說(shuō),除了其本身的特征滿足查詢節(jié)點(diǎn)特征外,其鄰居節(jié)點(diǎn)的特征也要滿足查詢節(jié)點(diǎn)的鄰居特征。鄰居結(jié)構(gòu)是鄰居特征的重要因素,本文利用鄰接矩陣來(lái)表示。由于定理1 只適用于樹結(jié)構(gòu),因此本文將圖節(jié)點(diǎn)的鄰居結(jié)構(gòu)轉(zhuǎn)化為樹結(jié)構(gòu)。如果查詢圖節(jié)點(diǎn)的鄰居結(jié)構(gòu)不是其候選節(jié)點(diǎn)鄰居結(jié)構(gòu)的子結(jié)構(gòu),那么通過(guò)定理1 可以過(guò)濾掉該候選節(jié)點(diǎn)。

    本文通過(guò)標(biāo)簽編碼樹的方式將鄰居節(jié)點(diǎn)標(biāo)簽應(yīng)用到鄰居結(jié)構(gòu)上,以增強(qiáng)過(guò)濾能力。事實(shí)上,每個(gè)節(jié)點(diǎn)都可以根據(jù)其鄰居結(jié)構(gòu)生成一棵無(wú)標(biāo)簽樹。然而鄰居節(jié)點(diǎn)的標(biāo)簽可能不同,僅生成無(wú)標(biāo)簽樹無(wú)法進(jìn)行有效的比較。因此本文根據(jù)標(biāo)簽類型對(duì)樹進(jìn)行切割,將同一類標(biāo)簽的節(jié)點(diǎn)放到一棵樹中。

    定理2對(duì)于樹T′和T,按照將相同標(biāo)簽的節(jié)點(diǎn)放入同種標(biāo)簽樹中的規(guī)則將其切割成n個(gè)子樹,得到子樹序列和ST={t1,t2,…,ti,…,tn},如 果序列中的所有ti′都是ti的誘導(dǎo)子樹,那么T′一定是T的一個(gè)誘導(dǎo)子樹。

    證明 由于標(biāo)簽加入,若序列中的所有都是ti的誘導(dǎo)子樹,那么去掉標(biāo)簽后所有依舊是ti的誘導(dǎo)子樹,則T′必然是T的誘導(dǎo)子樹。

    標(biāo)簽樹將原本的無(wú)標(biāo)簽樹按照同標(biāo)簽組合原則進(jìn)行分割,加強(qiáng)了過(guò)濾條件,使其不僅需要滿足結(jié)構(gòu)特征也要滿足標(biāo)簽特征。由于對(duì)于每個(gè)節(jié)點(diǎn)的切割規(guī)則是相同的,所以每個(gè)節(jié)點(diǎn)所產(chǎn)生樹的數(shù)目相同,在比較時(shí)通過(guò)對(duì)應(yīng)的標(biāo)簽樹的特征值進(jìn)行比較,即可過(guò)濾掉不滿足的節(jié)點(diǎn)。

    2.2 過(guò)濾和驗(yàn)證

    二次過(guò)濾和驗(yàn)證是利用過(guò)濾與驗(yàn)證框架,將編碼過(guò)濾后得到的每個(gè)查詢圖節(jié)點(diǎn)的候選集再次過(guò)濾。這次過(guò)濾是依據(jù)軸心子圖同構(gòu)的第二個(gè)條件,即如果兩個(gè)查詢圖節(jié)點(diǎn)之間存在邊,那么它們?cè)跀?shù)據(jù)圖中的候選節(jié)點(diǎn)之間也必定存在邊,否則該節(jié)點(diǎn)即可被過(guò)濾掉。

    對(duì)于兩個(gè)候選節(jié)點(diǎn)之間是否存在邊這一條件,可以利用訪問(wèn)順序解決,而不需要驗(yàn)證邊的存在:給定查詢圖,從查詢圖的軸心節(jié)點(diǎn)開始,依次訪問(wèn)軸心節(jié)點(diǎn)的鄰居,那么在數(shù)據(jù)圖中就會(huì)依次訪問(wèn)軸心候選節(jié)點(diǎn)的鄰居,無(wú)需訪問(wèn)非鄰居節(jié)點(diǎn)。

    最后,需要驗(yàn)證得到的子圖是否和查詢圖符合子圖同構(gòu)的條件。總體的過(guò)濾和驗(yàn)證過(guò)程將在第4 章詳細(xì)介紹。

    3 多編碼樹過(guò)濾

    盡可能多地過(guò)濾掉查詢圖節(jié)點(diǎn)的候選節(jié)點(diǎn)是提高算法的執(zhí)行效率的有效途徑。對(duì)于無(wú)向圖而言,節(jié)點(diǎn)的標(biāo)簽和度是現(xiàn)有的許多編碼方式[20]都會(huì)利用的特征。但是對(duì)于大圖而言,這種編碼方式的過(guò)濾能力并不顯著。因此將節(jié)點(diǎn)的鄰居結(jié)構(gòu)組合到編碼中引起了很多人的研究興趣,然而如何在編碼鄰居結(jié)構(gòu)的同時(shí)保持編碼結(jié)果的簡(jiǎn)潔高效始終是一個(gè)難點(diǎn)問(wèn)題。本文利用節(jié)點(diǎn)的鄰居結(jié)構(gòu)特征,將鄰居節(jié)點(diǎn)的標(biāo)簽融入多編碼樹的特征值中,將復(fù)雜的結(jié)構(gòu)特征比較轉(zhuǎn)化為數(shù)值之間的比較,從而簡(jiǎn)化了鄰居結(jié)構(gòu)編碼,縮短了過(guò)濾過(guò)程的執(zhí)行時(shí)間。

    編碼分為兩個(gè)部分,首先根據(jù)節(jié)點(diǎn)鄰居的結(jié)構(gòu)特征,對(duì)節(jié)點(diǎn)周圍的鄰居生成一棵固定層數(shù)的樹;其次是結(jié)合節(jié)點(diǎn)鄰居的標(biāo)簽,將節(jié)點(diǎn)的一棵樹分割成多棵樹。3.1 節(jié)和3.2 節(jié)將詳細(xì)介紹這兩部分內(nèi)容?;谶@兩部分的實(shí)現(xiàn),本文方法將數(shù)據(jù)圖的節(jié)點(diǎn)與查詢圖的節(jié)點(diǎn)進(jìn)行編碼,得到查詢圖每個(gè)節(jié)點(diǎn)的候選節(jié)點(diǎn)。

    算法1 生成n層無(wú)標(biāo)簽樹。

    3.1 鄰居結(jié)構(gòu)特征

    對(duì)于圖的每個(gè)節(jié)點(diǎn),可根據(jù)其鄰居節(jié)點(diǎn)的結(jié)構(gòu)生成一棵固定層數(shù)的樹,節(jié)點(diǎn)本身作為根節(jié)點(diǎn)。算法1 展示了圖G中頂點(diǎn)v構(gòu)造成n層樹的步驟,以當(dāng)前節(jié)點(diǎn)為根,采用廣度優(yōu)先遍歷將其鄰居節(jié)點(diǎn)插入到樹中,生成n層樹。首先需要將當(dāng)前節(jié)點(diǎn)的鄰居節(jié)點(diǎn)插入到樹中作為根的孩子,并標(biāo)記為已訪問(wèn)(4)行~5)行)。之后對(duì)當(dāng)前節(jié)點(diǎn)的每個(gè)鄰居節(jié)點(diǎn)各自執(zhí)行search 函數(shù)(6)行)生成多棵當(dāng)前節(jié)點(diǎn)的子樹,search 函數(shù)是一個(gè)遞歸函數(shù),作用是將當(dāng)前節(jié)點(diǎn)的未被訪問(wèn)過(guò)的鄰居節(jié)點(diǎn)作為孩子插入樹中(9)行~19)行),直到樹的層數(shù)達(dá)到設(shè)定值(10)行)。

    以圖2 為例,圖中對(duì)于圖1 中給定查詢圖Q和數(shù)據(jù)圖G,分別以u(píng)1和v1、v5為根節(jié)點(diǎn)生成一個(gè)2層的樹結(jié)構(gòu)。通過(guò)驗(yàn)證查詢圖節(jié)點(diǎn)生成的n層樹是否是數(shù)據(jù)圖節(jié)點(diǎn)生成的n層樹的子樹,來(lái)過(guò)濾掉不滿足的節(jié)點(diǎn)。因此本文可以利用鄰接矩陣表示n層樹結(jié)構(gòu),對(duì)于n階矩陣存在n個(gè)特征值,GCoding(Graph Coding)[19]中對(duì)前2、3個(gè),n個(gè)最大特征值進(jìn)行了實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明選擇前2 個(gè)最大特征值性能更優(yōu)。因此本文也選取鄰接矩陣的前2個(gè)最大特征值,即利用2個(gè)簡(jiǎn)單的數(shù)值來(lái)表示復(fù)雜的鄰居結(jié)構(gòu)。

    圖2 查詢節(jié)點(diǎn)u1和數(shù)據(jù)節(jié)點(diǎn)v1、v5生成的2層樹結(jié)構(gòu)Fig.2 Two-level tree structures generated by query node u1 and data nodes v1,v5

    3.2 鄰居標(biāo)簽特征

    如果將給定圖中的每個(gè)頂點(diǎn)都根據(jù)算法1 生成一棵樹,將過(guò)濾掉數(shù)據(jù)圖中與查詢圖節(jié)點(diǎn)鄰居結(jié)構(gòu)不一致的節(jié)點(diǎn)。然而這種做法只考慮了鄰居結(jié)構(gòu)問(wèn)題,而沒(méi)有充分利用鄰居的標(biāo)簽信息。想要高效地過(guò)濾節(jié)點(diǎn)必須盡可能多地考慮節(jié)點(diǎn)以及節(jié)點(diǎn)鄰居的標(biāo)簽特征。

    上述問(wèn)題帶來(lái)以下兩個(gè)挑戰(zhàn):

    1)每個(gè)節(jié)點(diǎn)的鄰居標(biāo)簽各不相同,將節(jié)點(diǎn)標(biāo)簽所有的可能情況排列組合,標(biāo)簽樹的總量必將過(guò)于龐大而難以實(shí)用。

    2)如果對(duì)于每個(gè)頂點(diǎn)所生成的樹根據(jù)標(biāo)簽的類型進(jìn)行分割,將每種標(biāo)簽的鄰居節(jié)點(diǎn)組合生成一棵樹,這樣生成的標(biāo)簽樹內(nèi)容單一且數(shù)量不確定。這是因?yàn)槊總€(gè)頂點(diǎn)周圍的鄰居標(biāo)簽有幾類就會(huì)生成幾棵樹,并且對(duì)于數(shù)據(jù)圖標(biāo)簽種類較多的情況生成樹的數(shù)量會(huì)更多,難以編碼。

    面對(duì)以上挑戰(zhàn),本文提出了一種多標(biāo)簽的編碼樹方式:用二進(jìn)制數(shù)來(lái)表示標(biāo)簽,如果圖中共有n種標(biāo)簽,則可以設(shè)置不超過(guò)n個(gè)標(biāo)簽桶,將每種標(biāo)簽按一定形式(哈希、等分等)歸入一個(gè)標(biāo)簽桶中,每個(gè)標(biāo)簽桶按順序從1 開始編號(hào)。然后將標(biāo)簽桶序號(hào)二進(jìn)制形式第i位為1 的所有標(biāo)簽桶歸為第i組,共有組。同一個(gè)標(biāo)簽桶組的所有標(biāo)簽類型的鄰居節(jié)點(diǎn)將被用來(lái)生成同一棵樹。

    例如,在一個(gè)包含30 種標(biāo)簽的圖中,最多可以生成30 個(gè)標(biāo)簽桶,進(jìn)而產(chǎn)生=5 個(gè)標(biāo)簽桶組,每個(gè)標(biāo)簽桶組生成一棵樹,最終每個(gè)節(jié)點(diǎn)可生成5 棵樹。除此之外,本文還生成1 棵由算法1 所生成的不考慮鄰居節(jié)點(diǎn)標(biāo)簽的樹。

    然而,對(duì)于給定的n種標(biāo)簽,也可以生成少于n個(gè)標(biāo)簽桶。具體生成多少標(biāo)簽桶將參照實(shí)驗(yàn)結(jié)果進(jìn)行討論。表1給出了30 個(gè)標(biāo)簽哈希到3 個(gè)標(biāo)簽桶中生成2 棵樹的情況,其中桶ID 由1~3 表示,每個(gè)桶ID 由兩位二進(jìn)制數(shù)表示,根據(jù)每個(gè)節(jié)點(diǎn)標(biāo)簽所在的桶ID 的各個(gè)位置上是否為1 分成相應(yīng)的標(biāo)簽桶組,兩位二進(jìn)制數(shù)可以分成兩個(gè)標(biāo)簽桶組(只考慮各個(gè)位置為1 的情況),因此可以生成2 棵樹。

    表1 30個(gè)標(biāo)簽哈希到標(biāo)簽桶中生成2棵樹Tab.1 Thirty labels hashing into label buckets to generate 2 trees

    雖然編碼節(jié)點(diǎn)本身在生成樹的時(shí)候不考慮節(jié)點(diǎn)標(biāo)簽,但由于節(jié)點(diǎn)本身的標(biāo)簽和度會(huì)單獨(dú)進(jìn)行編碼,因此這樣做并不會(huì)影響過(guò)濾效果。在進(jìn)行比較操作時(shí),只需對(duì)同類型的樹得到的特征值相互比較,因此可以實(shí)現(xiàn)較高的過(guò)濾效率。采用這種方式對(duì)樹進(jìn)行切割,包含了所有標(biāo)簽的可能情況,并且每一棵樹都能覆蓋到圖中一半的標(biāo)簽,增強(qiáng)了過(guò)濾效果。

    算法2 生成同類標(biāo)簽樹。

    算法2 描述了標(biāo)簽樹的生成過(guò)程:以當(dāng)前節(jié)點(diǎn)為根,采用深度優(yōu)先遍歷的方式將其鄰居節(jié)點(diǎn)插入到滿足條件的多棵標(biāo)簽樹中,從而生成多個(gè)n層標(biāo)簽樹。依據(jù)算法1 生成一棵無(wú)標(biāo)簽樹,然后保持根節(jié)點(diǎn)不變生成多棵標(biāo)簽樹(1)行~3)行),之后遞歸遍歷無(wú)標(biāo)簽樹(4)行),根據(jù)flag確定節(jié)點(diǎn)屬于哪棵標(biāo)簽樹(11)行~14)行)。通過(guò)findAncestors 函數(shù)找到與目前節(jié)點(diǎn)相連的父節(jié)點(diǎn),如果父節(jié)點(diǎn)不存在,則繼續(xù)向上查找直到根節(jié)點(diǎn)。

    圖3 給出了本文方法的一個(gè)示例。根據(jù)圖1 中標(biāo)簽類型,將各種標(biāo)簽哈希到相應(yīng)的桶中,并根據(jù)相應(yīng)的桶ID 來(lái)確定標(biāo)簽樹。由圖3 可見,軸心u1和候選節(jié)點(diǎn)v1具有相近的鄰居結(jié)構(gòu),而與v5的鄰居結(jié)構(gòu)差異則較大。圖節(jié)點(diǎn)的每棵樹都要轉(zhuǎn)化為鄰接矩陣并求其特征值,選擇前兩個(gè)最大的特征值作為特征進(jìn)行編碼。本文方法將頂點(diǎn)的標(biāo)簽、度以及頂點(diǎn)鄰居生成的標(biāo)簽樹的特征值組合起來(lái)表示為Tcoding={label,degree,seq={a1,a2,b1,b2,…}}。編碼可 以采用脫機(jī)處理的方式進(jìn)行預(yù)計(jì)算。

    圖3 查詢節(jié)點(diǎn)u1和數(shù)據(jù)節(jié)點(diǎn)v1,v5生成的標(biāo)簽樹Fig.3 Label trees generated by query node u1 and data nodes v1,v5

    對(duì)于查詢圖中的每一個(gè)節(jié)點(diǎn)的多標(biāo)簽樹,在過(guò)濾過(guò)程中將其前兩個(gè)最大特征值與數(shù)據(jù)圖中節(jié)點(diǎn)的多標(biāo)簽樹特征值進(jìn)行比較。當(dāng)數(shù)據(jù)圖中的節(jié)點(diǎn)的頂點(diǎn)編碼與查詢圖的節(jié)點(diǎn)的頂點(diǎn)編碼符合如下條件才可以被存入查詢圖節(jié)點(diǎn)的候選集:1)節(jié)點(diǎn)標(biāo)簽必須相同;2)查詢圖節(jié)點(diǎn)的度必須小于等于數(shù)據(jù)圖節(jié)點(diǎn)的度;3)查詢圖節(jié)點(diǎn)生成的每棵標(biāo)簽樹對(duì)應(yīng)的特征值必須小于等于數(shù)據(jù)圖節(jié)點(diǎn)生成的每棵標(biāo)簽樹對(duì)應(yīng)的特征值。

    算法3 編碼過(guò)濾。

    算法3 給出了編碼過(guò)濾的過(guò)程。首先初始化查詢圖節(jié)點(diǎn)的候選集(1)行~3)行);其次按照查詢圖節(jié)點(diǎn)訪問(wèn)順序依次訪問(wèn),每個(gè)查詢圖節(jié)點(diǎn)與數(shù)據(jù)圖節(jié)點(diǎn)并行比較編碼,將符合條件的數(shù)據(jù)圖節(jié)點(diǎn)存入候選集(4)行~10)行)。GPU 中的并行處理方式是以線程束為單位,每個(gè)線程束包含的32 個(gè)線程內(nèi)部以并行方式同時(shí)處理一個(gè)查詢圖節(jié)點(diǎn)與32 個(gè)數(shù)據(jù)圖節(jié)點(diǎn)之間的比較操作,過(guò)濾掉不滿足的數(shù)據(jù)圖節(jié)點(diǎn),并將過(guò)濾結(jié)果合并存儲(chǔ)。這種高效的編碼過(guò)濾過(guò)程很大程度上減少了過(guò)濾所需的時(shí)間。圖4 給出了查詢圖Q和數(shù)據(jù)圖G每個(gè)節(jié)點(diǎn)的編碼,依據(jù)上述條件進(jìn)行比較可以得到過(guò)濾后的每個(gè)查詢圖節(jié)點(diǎn)的候選集分別為u1={v1},u2={v2},u3={v3},u4={v2,v4}。

    圖4 查詢圖Q與數(shù)據(jù)圖G的節(jié)點(diǎn)編碼Fig.4 Node coding of query graph Q and data graph G

    4 二次過(guò)濾和驗(yàn)證

    4.1 過(guò)濾規(guī)則

    給定查詢圖Q和數(shù)據(jù)圖G以及查詢圖節(jié)點(diǎn)的訪問(wèn)順序,以查詢圖軸心為起始節(jié)點(diǎn),依次訪問(wèn)軸心的鄰居,數(shù)據(jù)圖中同樣以軸心候選節(jié)點(diǎn)為起始節(jié)點(diǎn),依次訪問(wèn)鄰居節(jié)點(diǎn),這樣就可以直接過(guò)濾掉與軸心候選節(jié)點(diǎn)之間不存在邊的候選節(jié)點(diǎn),同樣地,隨后每一層的節(jié)點(diǎn)都必須是上一層已匹配節(jié)點(diǎn)的鄰居。

    4.2 驗(yàn)證規(guī)則

    給定查詢圖Q和數(shù)據(jù)圖G,將已匹配的查詢圖節(jié)點(diǎn)ui以及其在數(shù)據(jù)圖中的匹配節(jié)點(diǎn)vi存入匹配序列seq={(u1,v1),(u2,v2),…,(ui,vi),…}。將當(dāng)前查詢圖節(jié)點(diǎn)的鄰居在匹配序列中的位置存入集合SQ中,并將其匹配的數(shù)據(jù)圖的節(jié)點(diǎn)的鄰居在匹配序列中的位置存入集合SG中,匹配過(guò)程中必須滿足SQ是SG的子集。

    每個(gè)查詢圖節(jié)點(diǎn)得到的候選集都可以生成一棵搜索空間樹,每一層都是查詢圖節(jié)點(diǎn)的候選集。遍歷搜索空間樹的過(guò)程中,本文方法將剪枝和驗(yàn)證過(guò)程相結(jié)合,分別從查詢圖軸心和其在數(shù)據(jù)圖中的候選節(jié)點(diǎn)開始,按照鄰居節(jié)點(diǎn)順序依次訪問(wèn)。對(duì)于每個(gè)查詢圖節(jié)點(diǎn)的候選集,根據(jù)過(guò)濾規(guī)則必須是當(dāng)前查詢圖節(jié)點(diǎn)的被訪問(wèn)過(guò)的父節(jié)點(diǎn)的鄰居。本文利用GPU 并行剪枝掉不滿足的節(jié)點(diǎn),同時(shí)根據(jù)驗(yàn)證規(guī)則對(duì)已匹配序列中當(dāng)前查詢節(jié)點(diǎn)鄰居的位置進(jìn)行驗(yàn)證。驗(yàn)證采用深度優(yōu)先遍歷的方式,直到所有查詢圖節(jié)點(diǎn)均被訪問(wèn)過(guò),如果得到一個(gè)查詢圖的有效匹配,則軸心的這個(gè)候選節(jié)點(diǎn)就是軸心子圖同構(gòu)的解之一。將軸心的候選節(jié)點(diǎn)依次驗(yàn)證,最終得到軸心的所有匹配。圖5 給出了單個(gè)軸心候選節(jié)點(diǎn)的驗(yàn)證過(guò)程。對(duì)于單個(gè)軸心候選節(jié)點(diǎn),依據(jù)過(guò)濾規(guī)則將下一層中所有不是其鄰居的候選節(jié)點(diǎn)過(guò)濾掉,再在這一層中選擇剩余候選節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn)繼續(xù)往下一層進(jìn)行過(guò)濾,其中每一層都進(jìn)行了并行剪枝,并對(duì)剪枝后的候選節(jié)點(diǎn)進(jìn)行驗(yàn)證。如果某一層的一個(gè)節(jié)點(diǎn)不滿足驗(yàn)證規(guī)則,轉(zhuǎn)而尋找該層的下一個(gè)節(jié)點(diǎn)繼續(xù)進(jìn)行驗(yàn)證,直至最后一層,仍然有滿足驗(yàn)證規(guī)則的節(jié)點(diǎn),則得到了一個(gè)有效的子圖匹配。如果某一層的所有節(jié)點(diǎn)都無(wú)法滿足驗(yàn)證規(guī)則,那么無(wú)法得到查詢圖的有效匹配,則此軸心候選節(jié)點(diǎn)為無(wú)效節(jié)點(diǎn)。

    圖5 單個(gè)軸心候選節(jié)點(diǎn)的驗(yàn)證過(guò)程Fig.5 Validation process of one pivoted candidate node

    5 實(shí)驗(yàn)結(jié)果

    本章通過(guò)實(shí)驗(yàn)對(duì)本文提出的算法進(jìn)行性能分析。由于目前唯一的針對(duì)軸心子圖同構(gòu)進(jìn)行了優(yōu)化的Smart PSI 是一種傳統(tǒng)的基于CPU 的方法,難以有效利用GPU 等新硬件的大規(guī)模并行處理能力。實(shí)驗(yàn)中將目前最先進(jìn)的基于GPU 的子圖同構(gòu)算法GpSM 與本文算法進(jìn)行比較。

    本文選用了兩個(gè)有著不同的結(jié)構(gòu)和尺寸的真實(shí)數(shù)據(jù)集,其中Human 數(shù)據(jù)集[21]包含4 674 個(gè)節(jié)點(diǎn)、86 282 個(gè)邊以及44種節(jié)點(diǎn)標(biāo)簽,Hprd 數(shù)據(jù)集[21]包含9 460 個(gè)節(jié)點(diǎn)、34 998 個(gè)邊以及307 種節(jié)點(diǎn)標(biāo)簽。顯然Human 數(shù)據(jù)集是一個(gè)稠密數(shù)據(jù)集,每個(gè)節(jié)點(diǎn)連接約19 條邊;而Hprd 數(shù)據(jù)集是一個(gè)稀疏數(shù)據(jù)集,每個(gè)節(jié)點(diǎn)連接約4 條邊。在實(shí)驗(yàn)測(cè)試中使用的都是無(wú)向圖,且這兩個(gè)數(shù)據(jù)集均沒(méi)有邊標(biāo)簽。

    本文在數(shù)據(jù)圖中隨機(jī)選擇一系列連通子圖作為查詢圖,并且隨機(jī)選擇其中的一個(gè)節(jié)點(diǎn)為軸心。由于Human 數(shù)據(jù)集是稠密數(shù)據(jù)集,本文將查詢圖的尺寸指定為4、8、12、16、20個(gè)節(jié)點(diǎn),對(duì)于Hprd 數(shù)據(jù)集,指定查詢圖的尺寸為8、16、24、32個(gè)節(jié)點(diǎn)。

    所有代碼都由C++實(shí)現(xiàn),運(yùn)行在CUDA Toolkit 10.6、NVIDIA GeForce 940MX GPU 上。

    5.1 k的影響

    圖6 給出了在Human 數(shù)據(jù)集中不同棵樹的過(guò)濾能力的實(shí)驗(yàn)結(jié)果。Human 有44 種標(biāo)簽,最多能夠生成6 棵標(biāo)簽樹,每棵標(biāo)簽樹都是在生成2 層樹的前提下執(zhí)行的。無(wú)論查詢圖的尺寸大小,在6 棵樹的情況下所能過(guò)濾的候選節(jié)點(diǎn)更多。這是因?yàn)? 棵標(biāo)簽樹可以包含數(shù)據(jù)圖中的所有標(biāo)簽種類,產(chǎn)生更多的過(guò)濾條件。而只有1 棵樹則過(guò)于單調(diào),只考慮節(jié)點(diǎn)鄰居結(jié)構(gòu)沒(méi)有考慮節(jié)點(diǎn)鄰居標(biāo)簽信息。其他的樹均沒(méi)有充分利用節(jié)點(diǎn)鄰居標(biāo)簽和結(jié)構(gòu),因此得到的過(guò)濾效果比6 棵樹較差。

    圖6 不同棵樹在Human數(shù)據(jù)集上對(duì)于候選節(jié)點(diǎn)的過(guò)濾能力Fig.6 Filtering ability to candidate nodes with different tree numbers on Human dataset

    5.2 和GpSM比較

    本文通過(guò)實(shí)驗(yàn)來(lái)比較軸心子圖同構(gòu)算法與GpSM 算法的性能,對(duì)于不同的查詢圖尺寸和不同的數(shù)據(jù)圖尺寸(Human 和Hprd 數(shù)據(jù)集中固定查詢圖尺寸分別為12、16)分別給出了兩個(gè)算法的實(shí)驗(yàn)結(jié)果。

    本文將性能比較分為三個(gè)方面,分別為過(guò)濾能力、過(guò)濾時(shí)間以及整個(gè)算法執(zhí)行時(shí)間。圖7(a)給出了在查詢圖尺寸為4、8、12、16、20 的情況下在Human 數(shù)據(jù)集中的候選節(jié)點(diǎn)的個(gè)數(shù)。軸心子圖同構(gòu)算法的過(guò)濾效果隨著查詢圖尺寸增加趨于穩(wěn)定,與GpSM 保持著較小的差距。其中12-tree 是前文中提到的在6-tree 上所做的擴(kuò)展,其性能有較小的提升。圖7(b)給出了在數(shù)據(jù)圖尺寸為1 000、2 000、3 000、4 000、5 000的情況下在Human 數(shù)據(jù)集中的候選節(jié)點(diǎn)的個(gè)數(shù)。隨著數(shù)據(jù)集尺寸的增大,軸心子圖同構(gòu)算法的過(guò)濾效果依然趨于穩(wěn)定,沒(méi)有增大與GpSM 算法過(guò)濾效果的差距。

    圖7 Human數(shù)據(jù)集上過(guò)濾后的候選節(jié)點(diǎn)Fig.7 Filtered candidate nodes on Human dataset

    圖8(a)給出了在查詢圖尺寸為4、8、12、16、20 的情況下在Human 數(shù)據(jù)集上的過(guò)濾時(shí)間。圖8(b)給出了在查詢圖尺寸為8、16、24、32 的情況下在Hprd 數(shù)據(jù)集上的過(guò)濾時(shí)間。隨著查詢圖尺寸的增大,軸心子圖同構(gòu)算法的過(guò)濾時(shí)間幾乎沒(méi)有增長(zhǎng),而GpSM 算法的過(guò)濾時(shí)間大幅增加。這是因?yàn)檩S心子圖同構(gòu)算法中的過(guò)濾階段是通過(guò)GPU 并行處理每一個(gè)查詢節(jié)點(diǎn),并且過(guò)濾使用的編碼是簡(jiǎn)單的數(shù)值比較,所以過(guò)濾的時(shí)間消耗相對(duì)較少,并且不會(huì)有太大的變化。而GpSM 算法是通過(guò)構(gòu)建查詢圖的最小生成樹,隨著查詢圖尺寸的增加,構(gòu)建的最小生成樹便隨著增大,且時(shí)間消耗也會(huì)隨之增加。同樣的,12-tree 是6-tree 的擴(kuò)展,其過(guò)濾時(shí)間和6-tree 的過(guò)濾時(shí)間相差無(wú)幾。圖8(c)展現(xiàn)了數(shù)據(jù)圖尺寸為1 000、2 000、3 000、4 000、5 000 的情況下在Human 數(shù)據(jù)集上軸心子圖同構(gòu)算法的過(guò)濾時(shí)間。圖8(d)展現(xiàn)了數(shù)據(jù)圖尺寸為2 000、4 000、6 000、8 000、10 000 的情況下在Hprd 數(shù)據(jù)集上軸心子圖同構(gòu)算法的過(guò)濾時(shí)間。隨著數(shù)據(jù)集尺寸的增大,軸心子圖同構(gòu)算法的過(guò)濾時(shí)間只有小幅的增長(zhǎng),而GpSM 算法的過(guò)濾時(shí)間有著相對(duì)大幅的增加。數(shù)據(jù)集的尺寸大小會(huì)影響查詢圖中每個(gè)節(jié)點(diǎn)過(guò)濾所需的時(shí)間,并且當(dāng)數(shù)據(jù)集的尺寸逐漸增大時(shí),GpSM 通過(guò)最小生成樹的訪問(wèn)順序過(guò)濾后得到的候選集尺寸增大,從而影響過(guò)濾時(shí)間。

    圖8 不同數(shù)據(jù)集上算法的過(guò)濾時(shí)間Fig.8 Filtering time of algorithms on different datasets

    圖9(a)給出了在查詢圖尺寸為4、8、12、16、20 的情況下在Human 數(shù)據(jù)集上的整個(gè)算法執(zhí)行時(shí)間。圖9(b)給出了在查詢圖尺寸為8、16、24、32 的情況下,在Hprd 數(shù)據(jù)集上的整個(gè)算法執(zhí)行時(shí)間。隨著查詢圖尺寸的增加,GpSM 算法執(zhí)行時(shí)間呈線性增長(zhǎng),而軸心子圖同構(gòu)算法的執(zhí)行時(shí)間是先相對(duì)平穩(wěn)再趨于線性增長(zhǎng),但總體時(shí)間要少于GpSM 算法。這是因?yàn)榕c軸心子圖同構(gòu)算法相比,GpSM 算法的過(guò)濾和連接都要低效,連接過(guò)程需要將邊的候選節(jié)點(diǎn)選出并存入哈希表中,而這是非常耗時(shí)的。圖9(c)給出了數(shù)據(jù)圖尺寸為1 000、2 000、3 000、4 000、5 000 的情況下在Human 數(shù)據(jù)集上軸心子圖同構(gòu)算法執(zhí)行的總時(shí)間。圖9(d)給出了數(shù)據(jù)圖尺寸為2 000、4 000、6 000、8 000、10 000 的情況下在Hprd 數(shù)據(jù)集上軸心子圖同構(gòu)算法執(zhí)行的總時(shí)間。隨著數(shù)據(jù)集尺寸的增加,算法耗時(shí)都趨于線性增長(zhǎng)。這是因?yàn)閿?shù)據(jù)集尺寸的增加會(huì)增大GpSM 算法過(guò)濾后得到的候選集尺寸,間接增大了連接階段的邊的候選集的尺寸,使得邊的候選集存入哈希表的時(shí)間也會(huì)相應(yīng)增加,影響了算法的執(zhí)行時(shí)間。

    圖9 不同數(shù)據(jù)集上的算法執(zhí)行總時(shí)間Fig.9 Total execution time of algorithms on different datasets

    6 結(jié)語(yǔ)

    本文提出了一種新穎的多編碼樹過(guò)濾方式,將鄰居結(jié)構(gòu)和鄰居節(jié)點(diǎn)標(biāo)簽轉(zhuǎn)化為多個(gè)包含標(biāo)簽信息的編碼樹,用特征值表示標(biāo)簽樹的結(jié)構(gòu),結(jié)合節(jié)點(diǎn)特征以及不同標(biāo)簽樹的特征值得到每個(gè)節(jié)點(diǎn)的編碼;通過(guò)GPU 并行比較每個(gè)查詢節(jié)點(diǎn)與數(shù)據(jù)節(jié)點(diǎn)的編碼進(jìn)行過(guò)濾,減小了軸心子圖同構(gòu)算法生成的搜索空間樹的規(guī)模。在此基礎(chǔ)上,本文提出了軸心子圖同構(gòu)算法,結(jié)合過(guò)濾和驗(yàn)證方式,并行處理每個(gè)查詢節(jié)點(diǎn)由多編碼樹過(guò)濾后的候選節(jié)點(diǎn),驗(yàn)證子圖是否是查詢圖的有效匹配,最終得到軸心的所有有效匹配節(jié)點(diǎn)。實(shí)驗(yàn)結(jié)果表明本文算法在過(guò)濾效果上相對(duì)穩(wěn)定且與GpSM 有著較小的差距,在過(guò)濾時(shí)間和算法總體時(shí)間上要優(yōu)于當(dāng)前最先進(jìn)的基于GPU的GpSM 算法。

    猜你喜歡
    子圖軸心特征值
    一類帶強(qiáng)制位勢(shì)的p-Laplace特征值問(wèn)題
    單圈圖關(guān)聯(lián)矩陣的特征值
    鋼結(jié)構(gòu)軸心受壓構(gòu)件穩(wěn)定性分析
    臨界完全圖Ramsey數(shù)
    CFRP和角鋼復(fù)合加固混凝土矩形柱軸心受壓承載力
    基于頻繁子圖挖掘的數(shù)據(jù)服務(wù)Mashup推薦
    以門靜脈-腸系膜上靜脈為軸心的腹腔鏡胰十二指腸切除術(shù)16例報(bào)道
    基于商奇異值分解的一類二次特征值反問(wèn)題
    關(guān)于兩個(gè)M-矩陣Hadamard積的特征值的新估計(jì)
    不含2K1+K2和C4作為導(dǎo)出子圖的圖的色數(shù)
    国产激情欧美一区二区| 又粗又爽又猛毛片免费看| 中国美女看黄片| 精品久久久久久,| 久久久久免费精品人妻一区二区| 日本 欧美在线| 欧美三级亚洲精品| 中文字幕人妻熟人妻熟丝袜美 | 在线看三级毛片| 国产精品女同一区二区软件 | 欧美成人a在线观看| 久久久久久久久大av| 日韩免费av在线播放| 老司机深夜福利视频在线观看| 丰满人妻熟妇乱又伦精品不卡| 18禁黄网站禁片午夜丰满| 亚洲最大成人手机在线| 国产精品久久视频播放| 亚洲五月天丁香| 午夜福利免费观看在线| 18禁黄网站禁片免费观看直播| 悠悠久久av| 精品不卡国产一区二区三区| 国产亚洲精品一区二区www| 亚洲人成网站在线播| 欧美成狂野欧美在线观看| a级毛片a级免费在线| 午夜福利在线在线| 老司机在亚洲福利影院| 精品99又大又爽又粗少妇毛片 | 久久精品91蜜桃| 久久性视频一级片| 在线免费观看的www视频| 黄色女人牲交| 国内少妇人妻偷人精品xxx网站| 黄色日韩在线| 无限看片的www在线观看| 真人做人爱边吃奶动态| 欧美最黄视频在线播放免费| 丁香六月欧美| 欧美另类亚洲清纯唯美| 一级作爱视频免费观看| 欧美成人一区二区免费高清观看| 日本免费a在线| 在线观看美女被高潮喷水网站 | 91久久精品电影网| 精品福利观看| 午夜福利在线观看免费完整高清在 | 岛国在线观看网站| 国产激情欧美一区二区| 成人永久免费在线观看视频| www.熟女人妻精品国产| 国产日本99.免费观看| 一个人免费在线观看电影| 国产一区二区三区在线臀色熟女| 最近最新中文字幕大全免费视频| 久久香蕉国产精品| 琪琪午夜伦伦电影理论片6080| 极品教师在线免费播放| 国产一区二区亚洲精品在线观看| 18禁在线播放成人免费| 90打野战视频偷拍视频| av欧美777| 18禁国产床啪视频网站| 热99在线观看视频| 久久精品国产清高在天天线| 久久人人精品亚洲av| 一级a爱片免费观看的视频| 亚洲自拍偷在线| 熟女电影av网| 久久精品人妻少妇| av天堂在线播放| 亚洲成人中文字幕在线播放| 每晚都被弄得嗷嗷叫到高潮| 亚洲精品色激情综合| 国产一区二区三区视频了| 麻豆成人av在线观看| 国内少妇人妻偷人精品xxx网站| 村上凉子中文字幕在线| 色噜噜av男人的天堂激情| 国产精品一区二区三区四区久久| 国产亚洲欧美在线一区二区| 国产精品女同一区二区软件 | 蜜桃久久精品国产亚洲av| 亚洲第一电影网av| 亚洲av成人精品一区久久| 蜜桃亚洲精品一区二区三区| 亚洲成a人片在线一区二区| 成人亚洲精品av一区二区| 性欧美人与动物交配| 午夜精品在线福利| 国产成人影院久久av| 美女黄网站色视频| 日本与韩国留学比较| 国内揄拍国产精品人妻在线| 黄色女人牲交| 美女黄网站色视频| 久久久久久国产a免费观看| 欧美一区二区国产精品久久精品| 丰满乱子伦码专区| 午夜亚洲福利在线播放| 69av精品久久久久久| 别揉我奶头~嗯~啊~动态视频| 亚洲成人久久爱视频| 欧美3d第一页| 日韩欧美在线二视频| 精品久久久久久成人av| 久久精品国产99精品国产亚洲性色| 老司机午夜十八禁免费视频| 老司机午夜福利在线观看视频| 成人18禁在线播放| 99久久综合精品五月天人人| 身体一侧抽搐| 一进一出抽搐gif免费好疼| av天堂在线播放| 日本精品一区二区三区蜜桃| 国产精品久久久久久人妻精品电影| 高清毛片免费观看视频网站| 欧美中文日本在线观看视频| 一级毛片女人18水好多| 免费无遮挡裸体视频| 女人高潮潮喷娇喘18禁视频| 男女床上黄色一级片免费看| 亚洲av熟女| 操出白浆在线播放| 日本在线视频免费播放| 香蕉久久夜色| 人妻夜夜爽99麻豆av| 国产精品久久久久久精品电影| 国产亚洲欧美在线一区二区| 给我免费播放毛片高清在线观看| 欧美中文综合在线视频| 免费一级毛片在线播放高清视频| 亚洲色图av天堂| 国产一区二区三区视频了| 日韩欧美一区二区三区在线观看| 国内毛片毛片毛片毛片毛片| 午夜激情福利司机影院| 少妇高潮的动态图| 国产精品影院久久| 法律面前人人平等表现在哪些方面| 99久久久亚洲精品蜜臀av| 久久亚洲精品不卡| 精品免费久久久久久久清纯| 亚洲第一欧美日韩一区二区三区| 日韩欧美在线乱码| 国产精品99久久久久久久久| 亚洲av成人精品一区久久| 搞女人的毛片| 午夜福利在线观看免费完整高清在 | 淫秽高清视频在线观看| 桃红色精品国产亚洲av| 亚洲人成网站在线播| 亚洲一区二区三区不卡视频| 国产精品综合久久久久久久免费| 丰满人妻一区二区三区视频av | 成人18禁在线播放| 国内精品一区二区在线观看| 婷婷精品国产亚洲av在线| 岛国视频午夜一区免费看| 国产亚洲av嫩草精品影院| 成人一区二区视频在线观看| 一a级毛片在线观看| 给我免费播放毛片高清在线观看| 欧美日韩瑟瑟在线播放| 国产成人福利小说| 亚洲国产精品久久男人天堂| 91字幕亚洲| 性色av乱码一区二区三区2| 日本在线视频免费播放| 老熟妇仑乱视频hdxx| 欧美一区二区亚洲| 亚洲人成网站高清观看| 日韩欧美精品v在线| www.www免费av| 国产av麻豆久久久久久久| 亚洲成人中文字幕在线播放| 亚洲成人久久爱视频| 国内精品一区二区在线观看| 国产精品日韩av在线免费观看| 蜜桃亚洲精品一区二区三区| 亚洲专区中文字幕在线| 高清毛片免费观看视频网站| 老司机深夜福利视频在线观看| 国产精品久久久久久精品电影| 女警被强在线播放| 亚洲中文字幕日韩| 免费大片18禁| 99热这里只有是精品50| 最新中文字幕久久久久| 国产成人av教育| 亚洲色图av天堂| 国产一区二区激情短视频| 狂野欧美激情性xxxx| 中文亚洲av片在线观看爽| 久久久久久久午夜电影| 午夜久久久久精精品| 精品人妻1区二区| 男女视频在线观看网站免费| 欧美一级a爱片免费观看看| 人人妻人人澡欧美一区二区| 亚洲最大成人手机在线| 国产精品99久久99久久久不卡| 一二三四社区在线视频社区8| 性欧美人与动物交配| 久久精品91蜜桃| 亚洲性夜色夜夜综合| www国产在线视频色| 夜夜看夜夜爽夜夜摸| 国产精品女同一区二区软件 | 欧美中文综合在线视频| 午夜影院日韩av| 国产成人影院久久av| 亚洲一区二区三区不卡视频| 成年女人永久免费观看视频| 亚洲天堂国产精品一区在线| 精品人妻1区二区| 高清毛片免费观看视频网站| 老熟妇乱子伦视频在线观看| 露出奶头的视频| 法律面前人人平等表现在哪些方面| 日韩人妻高清精品专区| 日韩高清综合在线| 国产精品乱码一区二三区的特点| 亚洲av美国av| 欧美另类亚洲清纯唯美| 亚洲精品亚洲一区二区| 久久九九热精品免费| 成人高潮视频无遮挡免费网站| 99精品欧美一区二区三区四区| 成人鲁丝片一二三区免费| 亚洲中文字幕一区二区三区有码在线看| 天美传媒精品一区二区| 国产欧美日韩一区二区精品| 又黄又爽又免费观看的视频| 久久久精品欧美日韩精品| 久久国产精品人妻蜜桃| 色噜噜av男人的天堂激情| 亚洲人与动物交配视频| 一区二区三区激情视频| 91久久精品国产一区二区成人 | 国产不卡一卡二| 一进一出抽搐动态| 麻豆久久精品国产亚洲av| а√天堂www在线а√下载| 人妻丰满熟妇av一区二区三区| 美女免费视频网站| 国产中年淑女户外野战色| 国产精品久久久久久久电影 | 一级黄色大片毛片| 69人妻影院| 欧美最黄视频在线播放免费| 88av欧美| 中文在线观看免费www的网站| 少妇人妻一区二区三区视频| 97超级碰碰碰精品色视频在线观看| 亚洲精品在线美女| 欧美xxxx黑人xx丫x性爽| netflix在线观看网站| 国产私拍福利视频在线观看| 99热这里只有精品一区| 亚洲av成人不卡在线观看播放网| 欧美成人一区二区免费高清观看| 少妇高潮的动态图| 在线观看美女被高潮喷水网站 | 亚洲国产精品合色在线| 观看美女的网站| 国产色婷婷99| 国产91精品成人一区二区三区| 色视频www国产| 一区二区三区高清视频在线| 久久久色成人| 欧美区成人在线视频| av在线天堂中文字幕| 两个人看的免费小视频| 日韩欧美一区二区三区在线观看| 国产精品久久电影中文字幕| 精品久久久久久,| 精品一区二区三区视频在线 | 狂野欧美白嫩少妇大欣赏| 变态另类成人亚洲欧美熟女| 最近最新中文字幕大全免费视频| 又黄又粗又硬又大视频| 露出奶头的视频| 国产色婷婷99| www.999成人在线观看| 亚洲男人的天堂狠狠| 久久久久亚洲av毛片大全| 给我免费播放毛片高清在线观看| 一级黄色大片毛片| 一区二区三区免费毛片| 亚洲av五月六月丁香网| 欧美在线一区亚洲| 欧美激情久久久久久爽电影| 欧美成人性av电影在线观看| 国产精品亚洲美女久久久| 欧美一区二区国产精品久久精品| av专区在线播放| 91麻豆精品激情在线观看国产| 午夜福利成人在线免费观看| 欧美av亚洲av综合av国产av| 国产单亲对白刺激| 亚洲国产精品999在线| 国产淫片久久久久久久久 | 亚洲精品亚洲一区二区| 亚洲人与动物交配视频| 好男人电影高清在线观看| 禁无遮挡网站| 国产一级毛片七仙女欲春2| 嫩草影院入口| 亚洲色图av天堂| 男女之事视频高清在线观看| 久久精品国产亚洲av涩爱 | 老司机午夜福利在线观看视频| 国产精品久久久久久亚洲av鲁大| 久99久视频精品免费| 日本黄大片高清| 桃红色精品国产亚洲av| 精品国产亚洲在线| 亚洲五月婷婷丁香| 欧美最新免费一区二区三区 | 禁无遮挡网站| 国产一级毛片七仙女欲春2| 99riav亚洲国产免费| 手机成人av网站| 欧美一区二区亚洲| 18+在线观看网站| 老汉色av国产亚洲站长工具| 真实男女啪啪啪动态图| 久久精品国产清高在天天线| 最新美女视频免费是黄的| 国产免费av片在线观看野外av| 久久草成人影院| 午夜福利在线在线| 色视频www国产| 国产av在哪里看| 免费在线观看亚洲国产| 久久人人精品亚洲av| 亚洲人成电影免费在线| 又粗又爽又猛毛片免费看| 麻豆成人午夜福利视频| 12—13女人毛片做爰片一| 日本一二三区视频观看| 国产一级毛片七仙女欲春2| 久久性视频一级片| 亚洲中文字幕日韩| 精品欧美国产一区二区三| 国产亚洲精品久久久久久毛片| 18美女黄网站色大片免费观看| 国产精品99久久99久久久不卡| 免费人成视频x8x8入口观看| 国产探花极品一区二区| 丝袜美腿在线中文| 手机成人av网站| 69av精品久久久久久| 亚洲欧美日韩东京热| 噜噜噜噜噜久久久久久91| 亚洲国产欧美网| 中文字幕熟女人妻在线| 啦啦啦观看免费观看视频高清| 十八禁网站免费在线| 国内精品久久久久精免费| 亚洲18禁久久av| 国产精品永久免费网站| 精品乱码久久久久久99久播| 真实男女啪啪啪动态图| 国产国拍精品亚洲av在线观看 | 宅男免费午夜| 欧美一级毛片孕妇| 婷婷精品国产亚洲av在线| 免费在线观看成人毛片| 亚洲中文字幕日韩| 亚洲国产色片| 手机成人av网站| 老鸭窝网址在线观看| 18+在线观看网站| 最近视频中文字幕2019在线8| 日日夜夜操网爽| 亚洲精品国产精品久久久不卡| 国产欧美日韩精品一区二区| 九九热线精品视视频播放| 欧美高清成人免费视频www| 色综合站精品国产| 成人永久免费在线观看视频| 欧美zozozo另类| 岛国在线观看网站| 一边摸一边抽搐一进一小说| 夜夜看夜夜爽夜夜摸| 欧美乱妇无乱码| 久久国产精品影院| 91在线精品国自产拍蜜月 | 久9热在线精品视频| 一进一出抽搐gif免费好疼| bbb黄色大片| 精品人妻偷拍中文字幕| 真人一进一出gif抽搐免费| 不卡一级毛片| 1024手机看黄色片| 大型黄色视频在线免费观看| 国产成人av教育| av中文乱码字幕在线| 国产视频内射| 美女大奶头视频| 一卡2卡三卡四卡精品乱码亚洲| 国产一区在线观看成人免费| 欧美国产日韩亚洲一区| 国产高清视频在线观看网站| 国产又黄又爽又无遮挡在线| 有码 亚洲区| 久久久久国产精品人妻aⅴ院| 免费人成视频x8x8入口观看| 夜夜看夜夜爽夜夜摸| 国产欧美日韩一区二区精品| 午夜福利在线在线| 色综合欧美亚洲国产小说| 国产主播在线观看一区二区| 国产色爽女视频免费观看| 长腿黑丝高跟| 久久久精品大字幕| 成年女人永久免费观看视频| 国产亚洲精品av在线| 18禁美女被吸乳视频| 成年版毛片免费区| 国产成人影院久久av| 人妻夜夜爽99麻豆av| 热99re8久久精品国产| 色在线成人网| 精品99又大又爽又粗少妇毛片 | eeuss影院久久| 成人18禁在线播放| 久久久久久久久久黄片| 成人欧美大片| 亚洲av日韩精品久久久久久密| 亚洲国产欧美网| а√天堂www在线а√下载| 黄色日韩在线| 给我免费播放毛片高清在线观看| 老熟妇仑乱视频hdxx| 99久久精品国产亚洲精品| 五月伊人婷婷丁香| 成年免费大片在线观看| 亚洲真实伦在线观看| 国产麻豆成人av免费视频| 国产三级中文精品| 在线观看日韩欧美| 国产野战对白在线观看| 国产色爽女视频免费观看| 亚洲av成人av| 一本综合久久免费| 嫩草影院入口| 日韩欧美 国产精品| 一级黄片播放器| 男人舔奶头视频| 国产精品久久久久久久久免 | 美女高潮喷水抽搐中文字幕| 色综合婷婷激情| 亚洲七黄色美女视频| 国产精品一区二区三区四区免费观看 | 免费av观看视频| 国产精品精品国产色婷婷| 免费av观看视频| 欧美激情在线99| 日本黄色视频三级网站网址| 免费在线观看亚洲国产| 国产精品av视频在线免费观看| 淫妇啪啪啪对白视频| 成年女人永久免费观看视频| www日本在线高清视频| 夜夜爽天天搞| 动漫黄色视频在线观看| 99精品久久久久人妻精品| 无遮挡黄片免费观看| 色av中文字幕| 免费在线观看影片大全网站| 国产单亲对白刺激| 亚洲,欧美精品.| 麻豆一二三区av精品| 午夜福利免费观看在线| 欧美乱色亚洲激情| 黄片大片在线免费观看| 91久久精品电影网| 精品午夜福利视频在线观看一区| 91麻豆精品激情在线观看国产| 99久久精品一区二区三区| 国产精品爽爽va在线观看网站| 欧美+日韩+精品| 18禁美女被吸乳视频| 夜夜看夜夜爽夜夜摸| 亚洲人成伊人成综合网2020| 久久精品国产亚洲av香蕉五月| 99热精品在线国产| 国产高清有码在线观看视频| 亚洲av二区三区四区| 男人和女人高潮做爰伦理| 精品福利观看| 操出白浆在线播放| 国产精品香港三级国产av潘金莲| 久久人妻av系列| 国产精品免费一区二区三区在线| 美女被艹到高潮喷水动态| 叶爱在线成人免费视频播放| 网址你懂的国产日韩在线| 亚洲五月婷婷丁香| 国产野战对白在线观看| 观看免费一级毛片| 偷拍熟女少妇极品色| 国产免费男女视频| 成年人黄色毛片网站| 亚洲美女黄片视频| 黑人欧美特级aaaaaa片| 日韩欧美免费精品| 国产老妇女一区| 国内精品久久久久久久电影| www.色视频.com| 高潮久久久久久久久久久不卡| 国产亚洲欧美在线一区二区| 国产乱人伦免费视频| 成人性生交大片免费视频hd| 男女下面进入的视频免费午夜| 国产高清三级在线| 欧美日韩乱码在线| 欧美日韩黄片免| 国产视频内射| 97超视频在线观看视频| 18+在线观看网站| 18美女黄网站色大片免费观看| 久久精品人妻少妇| 丰满人妻熟妇乱又伦精品不卡| 欧美一区二区国产精品久久精品| 一个人看的www免费观看视频| tocl精华| 嫩草影视91久久| 婷婷丁香在线五月| 美女黄网站色视频| 又黄又粗又硬又大视频| 亚洲av免费高清在线观看| 亚洲国产精品999在线| 国产成人av激情在线播放| 一夜夜www| 国产免费一级a男人的天堂| 成人鲁丝片一二三区免费| 岛国视频午夜一区免费看| 久久精品国产亚洲av涩爱 | 级片在线观看| 国产精品一区二区三区四区久久| 99久久精品一区二区三区| 超碰av人人做人人爽久久 | 波多野结衣高清作品| 一级毛片女人18水好多| 欧美性猛交╳xxx乱大交人| 黄色日韩在线| 精品欧美国产一区二区三| av天堂在线播放| 一卡2卡三卡四卡精品乱码亚洲| 久久精品国产清高在天天线| 精品国内亚洲2022精品成人| 最近视频中文字幕2019在线8| 亚洲国产精品合色在线| 给我免费播放毛片高清在线观看| 国产乱人视频| 欧美丝袜亚洲另类 | 成人欧美大片| 欧美一区二区亚洲| 成人国产综合亚洲| 91久久精品国产一区二区成人 | 噜噜噜噜噜久久久久久91| 欧美精品啪啪一区二区三区| 一个人观看的视频www高清免费观看| 又紧又爽又黄一区二区| 99久久无色码亚洲精品果冻| 久久精品91蜜桃| 在线看三级毛片| 国内揄拍国产精品人妻在线| 国产精品一区二区免费欧美| 成人特级av手机在线观看| 内射极品少妇av片p| 最近最新免费中文字幕在线| 一区二区三区激情视频| 亚洲人成电影免费在线| 国产三级在线视频| 99久久综合精品五月天人人| www.色视频.com| 国产精品电影一区二区三区| 听说在线观看完整版免费高清| 国产精品国产高清国产av| a在线观看视频网站| ponron亚洲| 免费看日本二区| 久久久久久久久大av| 国产精品电影一区二区三区| 国内毛片毛片毛片毛片毛片| 国产精品98久久久久久宅男小说| 久久久色成人| 午夜影院日韩av| 欧美国产日韩亚洲一区| АⅤ资源中文在线天堂| 在线国产一区二区在线| 亚洲av熟女| 动漫黄色视频在线观看| 老司机午夜十八禁免费视频| avwww免费| 午夜激情福利司机影院| 18禁黄网站禁片免费观看直播| 国产综合懂色| 丰满乱子伦码专区| 国产毛片a区久久久久| 亚洲最大成人手机在线| 免费看a级黄色片| 欧美国产日韩亚洲一区| 成年女人永久免费观看视频| 日本熟妇午夜| 男人的好看免费观看在线视频| 99国产极品粉嫩在线观看| 久久草成人影院| 国产高清视频在线观看网站|