專利名稱:一種基于復雜網(wǎng)絡的壓縮空間高效搜索方法
技術領域:
本發(fā)明涉及社會網(wǎng)絡分析以及圖論等領域,特別是涉及一種基于復雜網(wǎng)絡的壓縮空間高 效搜索方法。
背景技術:
隨著越來越多的顧客開始在線購物,傳統(tǒng)的目標營銷方法已經(jīng)不適用了。最好的營銷方 法是讓顧客自己來進行商品的推薦和營銷。社會學的研究結(jié)果表明,彼此之間經(jīng)常交互的用 戶之間往往比較相似。彼此聯(lián)系的用戶之間很可能很相似,而相似的用戶傾向于購買同樣的 產(chǎn)品。目前社會網(wǎng)絡網(wǎng)站十分流行,例如FaceBook, Myspace, Twitter等社交網(wǎng)站的廣泛流 行,使得在線目標營銷擁有大量的數(shù)據(jù)資源。由于利用用戶之間的口口相傳,使得通過虛擬 社會網(wǎng)絡進行目標營銷策略更加高效和快捷。
通過社會網(wǎng)絡進行目標營銷,傳統(tǒng)的方法是通過比較不同用戶對同一組商品的評價來計 算用戶的相似度矩陣,利用這種方法獲得的相似度矩陣非常稀疏,絕大部分用廣之間沒有任 何關聯(lián)關系。為了解決這個問題,研究者又提出了一種方法,即利用信任關系來進行社會網(wǎng) 絡的擴展,但由于在線網(wǎng)絡上的信任關系是領域無關的,當某個用戶將另一個用戶加到信任 列表或朋友列表中時,并沒有指定所信任的領域,而不同用戶的偏好和個人興趣差異較大, 因此單單利用信任關系進行擴展會非常的不精確。為了解決相似度矩陣的稀疏問題,以及提
供更精確的目標營銷,本發(fā)明提出了一種利用評價網(wǎng)絡來降低相似度矩陣稀疏度的方法,將 評分相似度和評價相似度整合起來計算節(jié)點之間相互的影響力作用。由于評價關系是領域明 確的,因此目標營銷的準確度高。
根據(jù)對47個市場的26, 486名Internet用戶的全球尼爾森調(diào)査顯示,78%的用戶認為其 他用戶的推薦是最可靠的一種廣告形式。82%閱讀過評價的用戶表明他們購買商品的決策直接 受到這些評價的影響。因此利用用戶評價關系來分析用戶之間的影響力關系是十分準確的。 一方面用戶的評價在顧客進行購買商品決策時起到了非常重要的作用,另一方面評價關系能 夠很好地反映顧客的個人偏好和興趣。
對于尋找一個網(wǎng)絡中的核心節(jié)點,通常的方法有利用節(jié)點度數(shù)、最短距離以及貪心算法 等來尋找一個復雜網(wǎng)絡中的最大覆蓋,使得盡可能多的節(jié)點被激活。
本發(fā)明的目的在于克服上述技術的缺陷,而提供一種基于復雜網(wǎng)絡的壓縮空間高效搜索方 法,針對在復雜網(wǎng)絡中,不同的參數(shù)反映網(wǎng)絡不同方面的特性,而網(wǎng)絡覆蓋最大化是NP難問 題,不同的參數(shù)度量方法只能考察某一方面的特性,因此本發(fā)明提出一種啟發(fā)信息壓縮空間 搜索算法,可以最大可能地找出一組較優(yōu)解。
本發(fā)明的目的是通過以下技術方案來實現(xiàn)的。這種基于復雜網(wǎng)絡的壓縮空間高效搜索方 法,包括以下歩驟-
(1) 通過網(wǎng)絡爬蟲從每個用戶在商品在線評論網(wǎng)站Epinions. com的個人主頁上進行抓 取信任關系,用戶被看作是圖中的節(jié)點,信任關系被看作是一條有向邊,從信任別人的用戶 指向被信任的用戶;
(2) 當兩個用戶同時對兩個或兩個以上的相同商品進行評分后,計算這兩個用戶的商品 評分相似度,在計算兩個用戶的商品評分相似度時,將每個用戶對共同評價的商品的評分看 成是一個一維向量,然后利用向量之間的距離來計算兩個用戶彼此之間的相似度,計算公式 如下<formula>formula see original document page 5</formula>
其中,說mp(J,5)表示用戶v4和用戶B之間的商品評分相似度,P代表商品,W代表 兩個用戶共同評價的商品的數(shù)量,cC^代表兩個向量的最大可能距離;
(3)當一個用戶D經(jīng)常閱讀用戶C寫的評論并進行評分的話,那么可以將用戶D對用 戶C的評分看作是一個一維向量,設定用戶C對自己所寫的評論的評分都是最高分,我們?nèi)?然利用向量之間的距離來計算兩個用戶彼此之間的評論評分相似度。計算公式如下-<formula>formula see original document page 5</formula>
其中,S^,(C,":i表示用戶C和用戶Z)之間的評論評分相似度,r代表評論,々代表 用戶C在某一個具體的領域所寫的文章的數(shù)量,《n代表兩個向量之間的最大可能距離;
(4)選定某一特定的領域,然后抓取出在該領域?qū)戇^評論和評價過該領域評論的用戶列 表,選取前面N個節(jié)點,然后抓取這N個節(jié)點彼此之間的信任關系、商品評分關系和評論評 價關系,即將這N個節(jié)點兩兩彼此之間的關系都挖掘出來;
(5) 根據(jù)商品評分相似度和評論評價相似度對信任網(wǎng)絡進行擴展,形成一個包含多種啟 發(fā)信息的復雜有向網(wǎng)絡圖,用戶被看作是有向圖中的節(jié)點,商品評分關系或評論評價關系看 作是有向圖中的邊,商品評分相似度或評論評價相似度的大小作為有向邊上的權重;
(6) 根據(jù)社會網(wǎng)絡分析的幾種不同參數(shù)對整個有向網(wǎng)絡中的節(jié)點進行排序,包從三種算
法排序結(jié)果中選擇前M個候選節(jié)點,M的取值為想要確定的最終核心用戶的數(shù)量,總共選取3
XM個候選節(jié)點,如果上述三種情況選取的節(jié)點數(shù)目未到達3XM,那么繼續(xù)從二種算法的第
M+l個節(jié)點繼續(xù)添加,使得候選節(jié)點的數(shù)目到達3XM;
(7)在候選的3XM個節(jié)點中選取M個節(jié)點最為核心用戶,共有C^M種組合,得出一個在
3XM個節(jié)點中挖掘M個核心節(jié)點的最優(yōu)解,也就是全局解空間的一個較優(yōu)解。
本發(fā)明的有益效果通過貪心、爬山、入度排序等的預先處理,該算法在全局范圍中選取 如下啟發(fā)信息將經(jīng)過上述三種算法選擇出的三個有序最優(yōu)結(jié)點集合并成一個混沌的候選結(jié) 點集,并補充加入上述三種算法的次優(yōu)結(jié)點集,構成一個在有效時間內(nèi)可以進行完全枚舉的 候選結(jié)點全集。即,將一個巨大、松散、帶有極大冗余信息的原解空間,壓縮成了一個可以 被計算機處理的、集中的、帶有高啟發(fā)信息的另一個解空間??梢哉f是進行了一次全局意義 上的分支定界。接下來的全枚舉,解決到了上述三種一般算法難以解決的問題即充分利用 了候選結(jié)點之間的交互信息,從而避免陷入局部最優(yōu)。
圖1為本發(fā)明中用戶社會網(wǎng)絡關系示意圖;
具體實施例方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面結(jié)合附圖及具體實施例對本發(fā)明作 進一步地詳細描述
本發(fā)明所述的基于復雜網(wǎng)絡的壓縮空間高效搜索方法,步驟如下
(1) Epinions.com是一個商品在線評論網(wǎng)站,用戶在網(wǎng)站上提交對商品的評論(review) 并對該商品進行打分(score),其他的用戶閱讀這些評論和打分,并對此進行反饋評價(Rate), 同時Epinions. com還可以讓用戶指定自己的信任網(wǎng)絡(Web of Trust)。當某個用戶閱讀了另 一個用戶所寫的大量商品評論并覺得很有幫助的話,他可以將該用戶添加到自己的信任網(wǎng)絡 中。以往很多研究者往往只針對上述的一種關系構建網(wǎng)絡,例如有的研究者僅僅研究信任關 系,有的研究者僅僅關注商品評分相似度關系,各個單獨的關系僅僅從一個側(cè)面反映兩個用 戶之間的聯(lián)系,所包含的信息不全面。本發(fā)明構建了一個包含多種關系的在線社會網(wǎng)絡,將 信任關系、商品評分相似度和評論反饋相似度等多種關系進行融合,從而生成一個包含大量 啟發(fā)信息的復雜社會網(wǎng)絡。
(2) 信任關系可以通過網(wǎng)絡爬蟲從每個用戶在Epinions. com的個人主頁上進行抓取。 用戶被看作是圖中的節(jié)點,信任關系被看作是一條有向邊,從信任別人的用戶指向被信任的 用戶。
(3)當兩個用戶同時對兩個或兩個以上的相同商品進行評分后,就可以計算這兩個用戶 的商品評分相似度。在計算兩個用戶的商品評分相似度時,將每個用戶對共同評價的商品的 評分看成是一個一維向量,然后利用向量之間的距離來計算兩個用戶彼此之間的相似度。計 算公式如下<formula>formula see original document page 7</formula>其中,S/WpOiS)表示用戶J和用戶^之間的商品評分相似度,P代表"product"(商 品),"代表兩個用戶共同評價的商品的數(shù)量,XL代表兩個向量的最大可能距離,當一
個用戶對所有共同評價的商品都打分為最高分,而另一個用戶對所有共同評價的商品都 打分為最低分的時候,那么兩個向量之間的距離達到最大。
步驟(3)中將多種關系包括商品評分關系、評論評價關系和信任關系整合到同一個復雜 網(wǎng)絡中,從而有效地降低了用戶相似度矩陣的稀疏度,能夠為確定用戶之間彼此的影響 力提供更加準確的信息。
(4)當-'個用戶0經(jīng)常閱逮用戶C寫的評論并進行評分的話,那么可以將用戶"對用戶C 的評分看作是一個一維向量,因為商品的評論反映了用戶的興趣和個性偏好,因此我們設定 用戶C對自己所寫的評論的評分都是最高分(5分)。我們?nèi)匀焕孟蛄恐g的距離來計算兩個 用戶彼此之間的評論評分相似度。計算公式如下-<formula>formula see original document page 8</formula>其中,&'"!,.(<^,")表示用戶€:和用戶/)之間的評論評分相似度,r代表"review"(評 論),^代表用戶C在某一個具體的領域所寫的文章的數(shù)量。c/l^代表兩個向量之間的最 大可能距離,當用戶C對用戶D所寫的評論的打分都是最低分的時候,兩個向量之間 的距離最大。
(5) 選定某一特定的領域,例如"書籍",然后抓取出在書籍領域?qū)戇^評論和評價過書籍 領域評論的用戶列表,選取前面30782個節(jié)點,然后抓取這30782個節(jié)點彼此之間的信任關 系、商品評分關系和評論評價關系。即將這30782個節(jié)點兩兩彼此之間的關系都挖掘出來。
(6) 根據(jù)商品評分相似度和評論評價相似度對信任網(wǎng)絡進行擴展,形成一個包含多種啟 發(fā)信息的復雜有向網(wǎng)絡圖。用戶被看作是有向圖中的節(jié)點,商品評分關系或評論評價關系看 作是有向圖中的邊,商品評分相似度或評論評價相似度的大小作為有向邊上的權重。
(7) 根據(jù)社會網(wǎng)絡分析的幾種不同參數(shù)對整個有向網(wǎng)絡中的節(jié)點進行排序,包括使用普 通貪心算法、爬山算法、高入度啟發(fā)信息算法。從每種算法排序結(jié)果中選擇前M個候選節(jié)點, M的取值為想要確定的最終核心用戶的數(shù)量,總共可以選取3XM個候選節(jié)點。滿足如下條 件之一的結(jié)點將會被選取為候選節(jié)點
根據(jù)高入度啟發(fā)信息算法排序的前M個結(jié)點; 根據(jù)普通貪心算法排序的前M個結(jié)點; 根據(jù)爬山算法排序的前M個結(jié)點;
如果上述三種情況選取的節(jié)點數(shù)目末到達3XM (不同算法排序的候選節(jié)點會有重復,只 是排序不同),那么繼續(xù)從三種算法的第M+1個節(jié)點繼續(xù)添加,使得候選節(jié)點的數(shù)目到達3X M。
(8)在候選的3XM個節(jié)點中選取M個節(jié)點最為核心用戶,共有C^M種組合,我們對各 種組合進行全枚舉搜索,從而得出一個在3XM個節(jié)點中挖掘M個核心節(jié)點的最優(yōu)解,也就是 全局解空間的一個較優(yōu)解。由于利用初步的啟發(fā)信息進行候選節(jié)點的篩選,選出了3XM個候 選結(jié)點,大幅度地壓縮了解空間。在3XM個候選節(jié)點中采用全枚舉搜索,可以充分地考慮這 3XM個點之間的交互信息,從而可以避免陷入爬山算法的局部最優(yōu)。 一個結(jié)點本身含有四種信息,用AWeOAc^)來表示,
其中,a為一個結(jié)點可以單獨激活周圍結(jié)點的數(shù)量;b為一個結(jié)點對周圍結(jié)點的有效影響 力總和。bs咖(mJn(P,w[i][j])),其中sum是求和,min是取較小值,i是我們討論當前結(jié) 點,J-1...30782, w[i][j]為i(當前結(jié)點)對j的影響力,P為激活閾值。
c為一個結(jié)點的入度總和的數(shù)量
d為結(jié)點之間的合作信息。即單獨個節(jié)點無法將周圍節(jié)點激活,但是兩個節(jié)點聯(lián)合在 一起則可以將兩個節(jié)點激活。
普通貪心算法只利用了所有結(jié)點的a, b信息;爬山算法只考慮到了所有結(jié)點的b信息和 初步的d信息,而入度排序只用到了所有結(jié)點的c信息,本發(fā)明構造的候選節(jié)點中進行全枚舉 的算法利用了一些"精英結(jié)點"的a,b,c,d全部信息,因而可以獲得最好的結(jié)果。 具體方法如下
(1) 假設一個社會網(wǎng)絡中有N個用戶,現(xiàn)有M個樣品商品要贈送給顧客試用,候選用戶的數(shù) 量是3XM個。然后利用上述提到的幾種方法選取候選節(jié)點集C。
(2) 利用普通貪心算法,選取M個候選節(jié)點,統(tǒng)計每個結(jié)點能"單獨"激活結(jié)點的數(shù)量,即 統(tǒng)計每個結(jié)點的"有效權重總和",即假定w[i] [j]是結(jié)點i對j的影響力,那么第i個結(jié)點 的"有效權重總和"=sum(min(P,W[i]U])),其中戶l..N其排序規(guī)則為先比較單獨激活 結(jié)點數(shù)量,按遞減排(即選取前M個);在相同的情況下,按照有效權重總和遞減排(即選取 前M個)。
(3) 利用爬山貪心算法,選取M個候選節(jié)點,其核心算法是搜索的一種簡化,即存在一個評 價函數(shù)f(),用來評價所有的候選解,選取最優(yōu)的侯選解來進行擴展。其步驟
(a) 初始化解空間,轉(zhuǎn)(b)
(b) 求出當前每個點的f值,轉(zhuǎn)(c)
(c) 選取最大的f值并將其加入隊列q;如果隊列Q滿,則轉(zhuǎn)(d),否則轉(zhuǎn)(b)
(d) 完成爬山過程,計算可激活數(shù)。
f()的定義則是交互情況下的"有效權重總和",即減去了被激活的結(jié)點之間的關聯(lián)權重。
(4) 利用社會網(wǎng)絡中節(jié)點的入度排序,選擇M個候選節(jié)點。
(5) 如果節(jié)點重復,不夠3XM個節(jié)點的話,那么按照普通貪心算法的第(2)個規(guī)則選取前若 干個結(jié)點,使得侯選結(jié)點總數(shù)達到3XM。
(6) 在3XM個節(jié)點中進行全枚舉搜索,然后得出3XM個節(jié)點組合中的最優(yōu)解,做為整個網(wǎng) 絡中的一個較優(yōu)解。
上述實施例用來解釋說明本發(fā)明,而不是對本發(fā)明進行限制,在本發(fā)明的精神和權利要 求的保護范圍內(nèi),對本發(fā)明作出的任何修改和改變,都落入本發(fā)明的保護范圍。
權利要求
1. 一種基于復雜網(wǎng)絡的壓縮空間高效搜索方法,其特征在于包括以下步驟(1)通過網(wǎng)絡爬蟲從每個用戶在商品在線評論網(wǎng)站Epinions.com的個人主頁上進行抓取信任關系,用戶被看作是圖中的節(jié)點,信任關系被看作是一條有向邊,從信任別人的用戶指向被信任的用戶;(2)當兩個用戶同時對兩個或兩個以上的相同商品進行評分后,計算這兩個用戶的商品評分相似度,在計算兩個用戶的商品評分相似度時,將每個用戶對共同評價的商品的評分看成是一個一維向量,然后利用向量之間的距離來計算兩個用戶彼此之間的相似度,計算公式如下其中,Simp(A,B)表示用戶A和用戶B之間的商品評分相似度,p代表商品,n代表兩個用戶共同評價的商品的數(shù)量,代表兩個向量的最大可能距離;(3)當一個用戶D經(jīng)常閱讀用戶C寫的評論并進行評分的話,那么可以將用戶D對用戶C的評分看作是一個一維向量,設定用戶C對自己所寫的評論的評分都是最高分,我們?nèi)匀焕孟蛄恐g的距離來計算兩個用戶彼此之間的評論評分相似度。計算公式如下其中,Simr(C,D)表示用戶C和用戶D之間的評論評分相似度,r代表評論,k代表用戶C在某一個具體的領域所寫的文章的數(shù)量,代表兩個向量之間的最大可能距離;(4)選定某一特定的領域,然后抓取出在該領域?qū)戇^評論和評價過該領域評論的用戶列表,選取前面N個節(jié)點,然后抓取這N個節(jié)點彼此之間的信任關系、商品評分關系和評論評價關系,即將這N個節(jié)點兩兩彼此之間的關系都挖掘出來;(5)根據(jù)商品評分相似度和評論評價相似度對信任網(wǎng)絡進行擴展,形成一個包含多種啟發(fā)信息的復雜有向網(wǎng)絡圖,用戶被看作是有向圖中的節(jié)點,商品評分關系或評論評價關系看作是有向圖中的邊,商品評分相似度或評論評價相似度的大小作為有向邊上的權重;(6)根據(jù)社會網(wǎng)絡分析的幾種不同參數(shù)對整個有向網(wǎng)絡中的節(jié)點進行排序,包從三種算法排序結(jié)果中選擇前M個候選節(jié)點,M的取值為想要確定的最終核心用戶的數(shù)量,總共選取3×M個候選節(jié)點,如果上述三種情況選取的節(jié)點數(shù)目未到達3×M,那么繼續(xù)從三種算法的第M+1個節(jié)點繼續(xù)添加,使得候選節(jié)點的數(shù)目到達3×M;(7)在候選的3×M個節(jié)點中選取M個節(jié)點最為核心用戶,共有種組合,得出一個在3×M個節(jié)點中挖掘M個核心節(jié)點的最優(yōu)解,也就是全局解空間的一個較優(yōu)解。
2. 根據(jù)權利要求1所述的基于復雜網(wǎng)絡的壓縮空間高效搜索方法,其特征在于在3 XM個候選節(jié)點中對各種組合采用全枚舉搜索。
3. 根據(jù)權利要求1所述的基于復雜網(wǎng)絡的壓縮空間高效搜索方法,其特征在于根據(jù) 社會網(wǎng)絡分析的幾種不同參數(shù)對整個有向網(wǎng)絡中的節(jié)點進行排序,包括使用普通貪心算法、 爬山算法、高入度啟發(fā)信息算法。從每種算法排序結(jié)果中選擇前M個候選節(jié)點,M的取值為 想要確定的最終核心用戶的數(shù)量,總共可以選取3XM個候選節(jié)點。滿足如下條件之一的結(jié) 點將會被選取為候選節(jié)點根據(jù)高入度啟發(fā)信息算法排序的前M個結(jié)點; 根據(jù)普通貪心算法排序的前M個結(jié)點; 根據(jù)爬山算法排序的前M個結(jié)點;如果上述三種情況選取的節(jié)點數(shù)目未到達3XM,那么繼續(xù)從三種算法的第M+l個節(jié)點繼 續(xù)添加,使得候選節(jié)點的數(shù)目到達3XM。
全文摘要
本發(fā)明涉及一種基于復雜網(wǎng)絡的壓縮空間高效搜索方法,目的是在復雜網(wǎng)絡中挖掘出影響力較大的核心節(jié)點作為初始活躍節(jié)點,然后根據(jù)網(wǎng)絡有向邊上的影響力權重繼續(xù)激活網(wǎng)絡中的其他節(jié)點,從而使得盡可能多的節(jié)點被激活。這個問題可以轉(zhuǎn)化為圖論中的網(wǎng)絡覆蓋最大化問題,在數(shù)學上已經(jīng)被證明是NP難問題。針對在復雜網(wǎng)絡中,不同的參數(shù)度量方法只能考察復雜網(wǎng)絡某一方面的特性,因此本發(fā)明提出了一種基于啟發(fā)信息的壓縮空間搜索算法,通過普通貪心算法、爬山算法、高入度啟發(fā)信息算法的預先處理,在全局范圍中選出三個有序最優(yōu)結(jié)點集合并成一個混沌的候選結(jié)點集,并補充加入上述三種算法的次優(yōu)結(jié)點集,構成一個在有效時間內(nèi)可以進行完全枚舉的候選結(jié)點全集。本發(fā)明的搜索算法將一個巨大、松散、帶有極大冗余信息的原解空間,壓縮成一個計算機可處理的、集中的、帶有高啟發(fā)信息的另一個解空間,從而保證最大可能地找出一組較優(yōu)解。
文檔編號G06F17/30GK101388024SQ20081012136
公開日2009年3月18日 申請日期2008年10月9日 優(yōu)先權日2008年10月9日
發(fā)明者吳朝暉, 宇 張, 陳華鈞 申請人:浙江大學