專利名稱:互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法
技術(shù)領(lǐng)域:
本發(fā)明設(shè)計(jì)屬于關(guān)聯(lián)規(guī)則挖掘領(lǐng)域,特別涉及一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性 挖掘方法。
技術(shù)背景隨著互聯(lián)網(wǎng)絡(luò)的日漸普及,bl0g也被越來越多的人使用。在數(shù)據(jù)迅速膨脹 的背景下,對(duì)熱點(diǎn)主題進(jìn)行關(guān)聯(lián)是梳理海量信息的一個(gè)必要和有效手段。所謂 熱點(diǎn)主題相關(guān)性挖掘的目的是將具有內(nèi)在關(guān)聯(lián)的熱點(diǎn)主題關(guān)鍵詞從海量的數(shù)據(jù) 中快速準(zhǔn)確的自動(dòng)提取出來,并在用戶檢索時(shí)推薦出來。例如系統(tǒng)以目前用 戶檢索的3萬多熱點(diǎn)關(guān)鍵詞作為待挖掘主題,在對(duì)用戶博客標(biāo)題作為數(shù)據(jù)源, 掃描分析得到結(jié)果文件后,當(dāng)用戶檢索劉德華時(shí),系統(tǒng)將會(huì)推薦墨攻,電影, 范冰冰,墨子等關(guān)鍵詞,從而提升整個(gè)系統(tǒng)的用戶滿意度。但是傳統(tǒng)的關(guān)聯(lián)規(guī) 則挖掘的一個(gè)先決條件就是結(jié)果必須是高頻繁詞,也就是說支持度要達(dá)到一定 閾值。但是,本發(fā)明更側(cè)重的是新的熱點(diǎn)主題關(guān)鍵詞的發(fā)現(xiàn)與關(guān)聯(lián),則傳統(tǒng)的 算法不能較好的挖掘出主題關(guān)鍵詞間的相關(guān)性。如果能對(duì)候選空間加以合理的 約束則能夠克服上述的問題。目前常用的互聯(lián)網(wǎng)熱點(diǎn)主題挖掘的技術(shù)和方法有1. 通過提取預(yù)設(shè)類別的熱門査詢記錄,當(dāng)用戶查詢相關(guān)類別主題時(shí),自動(dòng)提 示本類別已經(jīng)提取的熱門主題。該方法只是將非熱門與熱門進(jìn)行機(jī)械的關(guān)聯(lián), 沒有主題內(nèi)在的關(guān)聯(lián)性,某個(gè)類別的關(guān)聯(lián)主題都是一致的,用戶體驗(yàn)很差。2. 通過編輯將特性的人,物,事件,進(jìn)行關(guān)聯(lián)。這樣做,雖然語(yǔ)義上很準(zhǔn)確, 但是因?yàn)槭侨斯ぞ庉嫞阅軌蛱幚淼牧亢苄∏也荒芗皶r(shí)自動(dòng)發(fā)現(xiàn)網(wǎng)絡(luò)中的熱 點(diǎn)關(guān)聯(lián)。3. 利用經(jīng)典的apriori算法進(jìn)行計(jì)算,但是因?yàn)閍priori的局限性,對(duì)于新出 現(xiàn)的熱點(diǎn)主題算法效果不佳,將對(duì)大大降低用戶的體驗(yàn)。以上算法都不能滿足及時(shí),準(zhǔn)確,快速挖掘互聯(lián)網(wǎng)熱點(diǎn)主題關(guān)聯(lián)性。 發(fā)明內(nèi)容本發(fā)明目的在于提供一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,利用條件概率 來克服傳統(tǒng)算法對(duì)于不頻繁關(guān)鍵詞處理不當(dāng)?shù)膯栴},并實(shí)現(xiàn)了對(duì)辭典與數(shù)據(jù)源 的增量式處理。
本發(fā)明解決其技術(shù)問題采用的技術(shù)方案是,該方法的步驟如下1) 根據(jù)熱門査詢,提取熱點(diǎn)主題關(guān)鍵詞,組成熱點(diǎn)主題關(guān)鍵詞詞典;2) 掃描數(shù)據(jù)源,對(duì)每條記錄過濾熱點(diǎn)主題關(guān)鍵詞對(duì),更新在稀疏矩陣中對(duì)應(yīng) 的頻率,同時(shí)更新每個(gè)熱點(diǎn)主題關(guān)鍵詞的頻率;3) 采用公式<formula>formula see original document page 4</formula>來計(jì)算熱點(diǎn)主題 關(guān)鍵詞A與B的相關(guān)性得分;4) 將與每個(gè)熱點(diǎn)主題關(guān)鍵詞相關(guān)的熱點(diǎn)主題關(guān)鍵詞按照上述3)中的公式計(jì) 算得分并排序;5) 用戶査詢時(shí),按照得分降序?qū)⑴c該熱點(diǎn)主題關(guān)鍵詞相應(yīng)的熱點(diǎn)主題關(guān)鍵詞 作為結(jié)果反饋。2.步驟1)中,熱門查詢?yōu)橐欢〞r(shí)間段內(nèi)用戶的熱點(diǎn)查詢?cè)~,以此作為待分 析的熱點(diǎn)主題關(guān)鍵詞,并組成詞典。步驟2)中,稀疏矩陣為問題本身特性所決定,其橫縱坐標(biāo)均為熱點(diǎn)主題關(guān) 鍵詞的標(biāo)號(hào),其全局序即熱點(diǎn)主題關(guān)鍵詞之間的關(guān)系以<formula>formula see original document page 4</formula>來確 定,其中x,y分別為兩熱點(diǎn)主題關(guān)鍵詞中標(biāo)號(hào)大的一個(gè),小的一個(gè)。步驟2)中,掃描數(shù)據(jù)源時(shí),處理每條記錄,將其分詞后出現(xiàn)的熱點(diǎn)主題關(guān) 鍵詞成對(duì)更新矩陣中對(duì)應(yīng)的頻率,并更新相應(yīng)的熱點(diǎn)主題關(guān)鍵詞的頻率。直至 處理完整個(gè)數(shù)據(jù)源。步驟3)中,當(dāng)所有數(shù)據(jù)處理完畢,遍歷該稀疏矩陣,并按照步驟3)中公式 計(jì)算相對(duì)得分,針對(duì)矩陣每列或每行以此得分進(jìn)行排序,得出結(jié)果集。 本發(fā)明具有的有益效果是能夠準(zhǔn)確快速地挖掘出熱點(diǎn)主題之間的相關(guān)性,克服了現(xiàn)有算法性能不高, 特別對(duì)于新增的熱點(diǎn)主題關(guān)鍵詞處理效果差的問題,能夠更好的滿足互聯(lián)網(wǎng)中大 規(guī)模熱點(diǎn)主題推薦的性能要求。
圖1是系統(tǒng)整體框架圖。圖2是系統(tǒng)處理流程圖。圖3是稀疏矩陣的表示圖。圖4是增量處理的示意圖。
具體實(shí)施方式
圖1給出互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘的系統(tǒng)框架圖,首先根據(jù)熱門査詢, 提取熱點(diǎn)主題關(guān)鍵詞,組成熱點(diǎn)主題關(guān)鍵詞詞典;然后掃描數(shù)據(jù)源,對(duì)每條記
錄過濾熱點(diǎn)主題關(guān)鍵詞對(duì),更新在稀疏矩陣中對(duì)應(yīng)的頻率,同時(shí)更新每個(gè)熱點(diǎn) 主題關(guān)鍵詞的頻率;通過計(jì)算熱點(diǎn)主題關(guān)鍵詞間的相關(guān)性得分,根據(jù)得分排序; 用戶査詢時(shí),按照得分降序?qū)⑴c該熱點(diǎn)主題關(guān)鍵詞相應(yīng)的熱點(diǎn)主題關(guān)鍵詞作為結(jié)果反饋。具體實(shí)施流程如圖2所示,其中重要的步驟為1. 加載原始熱點(diǎn)主題關(guān)鍵詞詞典。詞典的內(nèi)容應(yīng)該為大多數(shù)用戶所關(guān)心的熱點(diǎn)主題關(guān)鍵詞。加載原始熱點(diǎn)主題關(guān)鍵詞詞典文件,利用Set數(shù)據(jù)結(jié)構(gòu)來保證關(guān) 鍵詞的唯一性,最后根據(jù)該結(jié)構(gòu)中最終的順序來確定每個(gè)熱點(diǎn)主題關(guān)鍵詞的 order,同時(shí)以該order為下標(biāo)建立熱點(diǎn)主題關(guān)鍵詞數(shù)組,同時(shí)建立以熱點(diǎn)主題關(guān) 鍵詞為key, order為value的map數(shù)據(jù)結(jié)構(gòu)。利用這兩個(gè)數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)string, order的雙向快速査詢。2. 初始化矩陣,該矩陣的橫縱坐標(biāo)分別都是熱點(diǎn)主題關(guān)鍵詞的編號(hào),注意由 于問題的屬性決定了該矩陣為稀疏矩陣,故采用hash的形式存放,例如:hashMap 等實(shí)現(xiàn)。按照?qǐng)D3方式存放,主要是因?yàn)檫@樣分布可以保證hashcode分布的均 勻,提高HashMap的性能并且很自然的實(shí)現(xiàn)了增量式的處理,并且很容易實(shí)現(xiàn) 分布式的方案。其中關(guān)鍵是為一個(gè)二元的索引結(jié)構(gòu)設(shè)計(jì)hash code,經(jīng)過測(cè)試比 較,選擇hash code生成方法如果二元索引的x坐標(biāo)和y坐標(biāo),分別為x和y, 那么它的hashcode為Value = ((x-l) * (x )) / 2 + y;就有這樣圖3這樣的hashcode 分布圖。3. 掃描數(shù)據(jù)源,加載需要掃描的數(shù)據(jù),并提取每個(gè)邏輯的文檔,利用熱點(diǎn)主 題關(guān)鍵詞詞典過濾不感興趣的主題關(guān)鍵詞。形成doc(i):(wl,w2,w3,...)。其中 每個(gè)w為該文檔過濾后的熱點(diǎn)主題關(guān)鍵詞。分詞后將熱點(diǎn)主題關(guān)鍵詞掃描計(jì)算 次序并且提交到上述矩陣。例如掃描的一條記錄為(劉德華出席上海墨攻首 映式),則系統(tǒng)按照上述公式計(jì)算出"劉德華"與"墨攻"的hashcode (次序),將增 加相應(yīng)的出現(xiàn)頻率也就是它們的聯(lián)合概率。同時(shí),記錄每個(gè)熱點(diǎn)主題關(guān)鍵詞出 現(xiàn)的概率即更新P(A)。例如某文檔含有主題關(guān)鍵詞為aababbced。提取主題關(guān) 鍵詞對(duì)為ab, ab, ab, ac, be, ae, be, ce, ad, bd, cd, ed。將熱點(diǎn)主題關(guān)鍵詞的詞頻更 新至詞典即(a, 3), (b,3), (c, 1), (e, 1), (d, 1)。將熱點(diǎn)主題關(guān)鍵詞對(duì)更新至矩陣 即(ab, 3), (ac, 1), (be, 1), (ae, 1), (be, 1), (ce, 1), (ad, 1), (bd, 1), (cd, 1), (ed, 1)。該過 程直至數(shù)據(jù)源掃描完畢。4. 掃描熱點(diǎn)主題關(guān)鍵詞詞典,提取每個(gè)熱點(diǎn)主題關(guān)鍵詞的相關(guān)熱點(diǎn)主題關(guān)鍵詞,按照相關(guān)度排序并保存(假設(shè)提取按照列提取)。具體流程如下對(duì)于每個(gè)
關(guān)鍵詞通過步驟一提及的map,找到其對(duì)應(yīng)的下標(biāo)作為y坐標(biāo),x坐標(biāo)從0到熱 點(diǎn)主題關(guān)鍵詞詞典關(guān)鍵詞個(gè)數(shù)遍歷,然后針對(duì)每一對(duì)(x, y)在矩陣中查找,將提 取到的所有熱點(diǎn)相關(guān)關(guān)鍵詞計(jì)算得分SCORE(B) = min(P(B|A), P(A|B》,并且 根據(jù)其score排序,然后保存結(jié)果。數(shù)據(jù)源增量build流程,如圖2所示1. 該熱點(diǎn)主題關(guān)鍵詞詞典為之前分析數(shù)據(jù)后回寫的詞典,每個(gè)項(xiàng)目包括熱點(diǎn) 主題關(guān)鍵詞和它在之前數(shù)據(jù)源中的詞頻。按照加載順序來確定每個(gè)熱點(diǎn)主題關(guān)鍵詞的order,同時(shí)以該order為下標(biāo)建立熱點(diǎn)主題關(guān)鍵詞數(shù)組,同時(shí)建立以熱 點(diǎn)主題關(guān)鍵詞為key, order為value的map數(shù)據(jù)結(jié)構(gòu)。利用這兩個(gè)數(shù)據(jù)結(jié)構(gòu)實(shí) 現(xiàn)string, order的雙向快速查詢。2. 初始化矩陣,加載前次處理回寫后的矩陣數(shù)據(jù),每個(gè)項(xiàng)目包括一維坐標(biāo)和 該熱點(diǎn)主題關(guān)鍵詞對(duì)出現(xiàn)的頻率。加載進(jìn)實(shí)現(xiàn)的稀疏矩陣數(shù)據(jù)結(jié)構(gòu)(現(xiàn)用 hashmap實(shí)現(xiàn),以 一 維坐標(biāo)為key, score為value)。3. 掃描數(shù)據(jù)源,加載需要掃描的數(shù)據(jù),并提取每個(gè)邏輯的文檔,利用熱點(diǎn)主 題關(guān)鍵詞詞典過濾不感興趣的熱點(diǎn)主題關(guān)鍵詞。形成doc(i):(wl, w2,w3,...)。 其中每個(gè)w為該文檔過濾后的熱點(diǎn)主題關(guān)鍵詞。分詞后將熱點(diǎn)主題關(guān)鍵詞掃描 計(jì)算次序并且提交到上述矩陣。4. 掃描熱點(diǎn)主題關(guān)鍵詞詞典,提取每個(gè)熱點(diǎn)主題關(guān)鍵詞的相關(guān)熱點(diǎn)主題關(guān)鍵 詞,按照相關(guān)度排序并保存(假設(shè)提取按照列提取)。熱點(diǎn)主題關(guān)鍵詞詞典增量build流程,如圖2所示1. 加載結(jié)果熱點(diǎn)主題關(guān)鍵詞詞典,并且加載新增熱點(diǎn)主題關(guān)鍵詞詞典文件, 利用Set數(shù)據(jù)結(jié)構(gòu)來保證熱點(diǎn)主題關(guān)鍵詞的唯一性,初始化order為步驟一加載 的熱點(diǎn)主題關(guān)鍵詞詞典末尾(新增詞典應(yīng)追加在原始詞典后),最后根據(jù)該結(jié)構(gòu) 中最終的順序加上初始o(jì)rder作為該新增熱點(diǎn)主題關(guān)鍵詞的最終order,建立以 熱點(diǎn)主題關(guān)鍵詞為key, order為value的map數(shù)據(jù)結(jié)構(gòu)。2. 初始化矩陣,加載前次處理回寫后的矩陣數(shù)據(jù),每個(gè)項(xiàng)目包括一維坐標(biāo)和 該熱點(diǎn)主題關(guān)鍵詞對(duì)出現(xiàn)的頻率。加載進(jìn)實(shí)現(xiàn)的稀疏矩陣數(shù)據(jù)結(jié)構(gòu)(現(xiàn)用 hashmap實(shí)現(xiàn),以 一 維坐標(biāo)為key, score為value)。3. 掃描數(shù)據(jù)源,加載原始數(shù)據(jù)源,并提取每個(gè)邏輯的文檔,處理熱點(diǎn)主題關(guān) 鍵詞的條件為兩個(gè)熱點(diǎn)主題關(guān)鍵詞中至少有一個(gè)為新增熱點(diǎn)主題關(guān)鍵詞(即 圖4的I,II兩個(gè)部分)。對(duì)這樣的熱點(diǎn)主題關(guān)鍵詞掃描更新矩陣數(shù)據(jù)。并對(duì)新增 熱點(diǎn)主題關(guān)鍵詞進(jìn)行詞頻更新。在處理完原始數(shù)據(jù)源后,將新增的熱點(diǎn)主題關(guān)
鍵詞詞典添加至己有的熱點(diǎn)主題關(guān)鍵詞詞典后面。4.掃描熱點(diǎn)主題關(guān)鍵詞詞典,提取每個(gè)熱點(diǎn)主題關(guān)鍵詞的相關(guān)熱點(diǎn)主題關(guān)鍵 詞,按照相關(guān)度排序并保存(假設(shè)提取按照列提取)。數(shù)據(jù)與熱點(diǎn)主題關(guān)鍵詞詞典同時(shí)增量build流程,如圖2所示1. 加載結(jié)果熱點(diǎn)主題關(guān)鍵詞詞典,并且加載新增熱點(diǎn)主題詞典文件,利用 Set數(shù)據(jù)結(jié)構(gòu)來保證熱點(diǎn)主題關(guān)鍵詞的唯一性,初始化order為步驟一加載的熱 點(diǎn)主題關(guān)鍵詞詞典末尾(新增詞典應(yīng)追加在原始詞典后),最后根據(jù)該結(jié)構(gòu)中最 終的順序加上初始o(jì)rder作為該新增熱點(diǎn)主題關(guān)鍵詞的最終order,建立以關(guān)鍵 詞為key, order為value的map數(shù)據(jù)結(jié)構(gòu)。2. 初始化矩陣,加載前次處理回寫后的矩陣數(shù)據(jù),每個(gè)項(xiàng)目包括一維坐標(biāo)和 該熱點(diǎn)主題關(guān)鍵詞對(duì)出現(xiàn)的頻率。加載進(jìn)實(shí)現(xiàn)的稀疏矩陣數(shù)據(jù)結(jié)構(gòu)(現(xiàn)用 hashmap實(shí)現(xiàn),以 一 維坐標(biāo)為key, score為value )。3. 掃描數(shù)據(jù)源,加載原始數(shù)據(jù)源,并提取每個(gè)邏輯的文檔,處理熱點(diǎn)主題關(guān) 鍵詞的條件為兩個(gè)熱點(diǎn)主題關(guān)鍵詞中至少有一個(gè)為新增熱點(diǎn)主題關(guān)鍵詞(即 圖4的I,II兩個(gè)部分)。對(duì)這樣的熱點(diǎn)主題關(guān)鍵詞掃描更新矩陣數(shù)據(jù)。并對(duì)新增 熱點(diǎn)主題關(guān)鍵詞進(jìn)行詞頻更新。在處理完原始數(shù)據(jù)源后,將新增的熱點(diǎn)主題關(guān) 鍵詞詞典添加至已有熱點(diǎn)主題關(guān)鍵詞詞典后面。4. 掃描新數(shù)據(jù)源,加載需要掃描的數(shù)據(jù),并提取每個(gè)邏輯的文檔,利用新的 結(jié)果辭典過濾不感興趣的熱點(diǎn)主題關(guān)鍵詞。分詞后將熱點(diǎn)主題關(guān)鍵詞掃描計(jì)算 次序并且提交到上述矩陣。5. 掃描熱點(diǎn)主題詞典詞典,提取每個(gè)熱點(diǎn)主題關(guān)鍵詞的相關(guān)熱點(diǎn)主題關(guān)鍵 詞,按照相關(guān)度排序并保存(假設(shè)提取按照列提取)。
權(quán)利要求
1.一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,其特征在于該方法的步驟如下1)根據(jù)熱門查詢,提取熱點(diǎn)主題關(guān)鍵詞,組成熱點(diǎn)主題關(guān)鍵詞詞典;2)掃描數(shù)據(jù)源,對(duì)每條記錄過濾熱點(diǎn)主題關(guān)鍵詞對(duì),更新在稀疏矩陣中對(duì)應(yīng)的頻率,同時(shí)更新每個(gè)熱點(diǎn)主題關(guān)鍵詞的頻率;3)采用公式SCORE(B|A)=min(P(A,B)/P(A),P(A,B)/P(B))來計(jì)算熱點(diǎn)主題關(guān)鍵詞A與B的相關(guān)性得分;4)將與每個(gè)熱點(diǎn)主題關(guān)鍵詞相關(guān)的熱點(diǎn)主題關(guān)鍵詞按照上述3)中的公式計(jì)算得分并排序;5)用戶查詢時(shí),按照得分降序?qū)⑴c該熱點(diǎn)主題關(guān)鍵詞相應(yīng)的熱點(diǎn)主題關(guān)鍵詞作為結(jié)果反饋。
2. 根據(jù)權(quán)利要求l所述的一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,其特征在 于歩驟l)中,熱門査詢?yōu)橐欢〞r(shí)間段內(nèi)用戶的熱點(diǎn)査詢?cè)~,以此作為待分析 的熱點(diǎn)主題關(guān)鍵詞,并組成詞典。
3. 根據(jù)權(quán)利要求1所述的一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,其特征在 于歩驟2)中,稀疏矩陣為問題本身特性所決定,其橫縱坐標(biāo)均為熱點(diǎn)主題關(guān) 鍵詞的標(biāo)號(hào),其全局序即熱點(diǎn)主題關(guān)鍵詞之間的關(guān)系以((x-l) * (x )) / 2 + y來確 定,其中x,y分別為兩熱點(diǎn)主題關(guān)鍵詞中標(biāo)號(hào)大的一個(gè),小的一個(gè)。
4. 根據(jù)權(quán)利要求1所述的一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,其特征在 于歩驟2)中,掃描數(shù)據(jù)源時(shí),處理每條記錄,將其分詞后出現(xiàn)的熱點(diǎn)主題關(guān) 鍵詞成對(duì)更新矩陣中對(duì)應(yīng)的頻率,并更新相應(yīng)的熱點(diǎn)主題關(guān)鍵詞的頻率。直至 處理完整個(gè)數(shù)據(jù)源。
5. 根據(jù)權(quán)利要求1所述的一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘方法,其特征在 于步驟3)屮,當(dāng)所有數(shù)據(jù)處理完畢,遍歷該稀疏矩陣,并按照步驟3)中公式 計(jì)算相對(duì)得分,針對(duì)矩陣每列或每行以此得分進(jìn)行排序,得出結(jié)果集。
全文摘要
本發(fā)明公開了一種互聯(lián)網(wǎng)熱點(diǎn)主題相關(guān)性挖掘的方法。本發(fā)明是通過搜索引擎查詢?nèi)罩咎崛狳c(diǎn)主題關(guān)鍵詞,并對(duì)熱點(diǎn)主題關(guān)鍵詞間的相關(guān)程度進(jìn)行建模分析。采用有效的哈希方法來構(gòu)造稀疏矩陣,增加了算法的執(zhí)行效率。本發(fā)明可以對(duì)新增的熱點(diǎn)主題關(guān)鍵詞和數(shù)據(jù)進(jìn)行增量處理,并且便于實(shí)現(xiàn)分布式處理。算法僅對(duì)數(shù)據(jù)源進(jìn)行一次性掃描更新相應(yīng)的稀疏矩陣區(qū)域,最終進(jìn)行排序得到熱點(diǎn)主題關(guān)鍵詞之間的相關(guān)程度的序。本發(fā)明能夠準(zhǔn)確快速地挖掘出熱點(diǎn)主題之間的相關(guān)性,克服了現(xiàn)有算法性能不高,特別對(duì)于新增的熱點(diǎn)主題關(guān)鍵詞處理效果差的問題,能夠更好的滿足互聯(lián)網(wǎng)中大規(guī)模熱點(diǎn)主題推薦的性能要求。
文檔編號(hào)G06F17/30GK101158957SQ20071015618
公開日2008年4月9日 申請(qǐng)日期2007年10月23日 優(yōu)先權(quán)日2007年10月23日
發(fā)明者壽黎但, 源 汪, 胡天磊, 剛 陳, 珂 陳 申請(qǐng)人:浙江大學(xué)