專利名稱:一種可個性化定制的網(wǎng)頁過濾方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及網(wǎng)頁過濾技術(shù)。
背景技術(shù):
隨著互聯(lián)網(wǎng)(the Internet)的飛速發(fā)展,它己經(jīng)逐漸成為人們生活 中一個重要的部分,人們對于互聯(lián)網(wǎng)的依賴也越來越強,同時對于網(wǎng)頁 過濾的需求也越來越大。 一方面,由于互聯(lián)網(wǎng)的開放性, 一些不良信息 也在互聯(lián)網(wǎng)上傳播,如色情、毒品、暴力等。這些不良信息對于人們特 別是青少年的身心健康有著很大的影響,危害社會的穩(wěn)定。另一方面, 由于信息爆炸和互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)上的信息量正以幾何方式增 加,但對于特定的互聯(lián)網(wǎng)使用者來說,絕大部分信息都是無用的甚至是 垃圾信息。因此如何在這么多信息中保留自己感興趣的而把無關(guān)的信息 過濾掉,逐漸成為一項迫切的需求。近年來,由于其廣泛的需求和巨大 的實用市場,網(wǎng)頁過濾技術(shù)已經(jīng)成為一項研究熱點。
網(wǎng)頁過濾可以看成是一個二元分類問題,它的基本需求在于l).針 對用戶的個性化需求提供不同的過濾服務(wù),2).準(zhǔn)確把握網(wǎng)頁的語義實 施過濾。目前的大多數(shù)技術(shù)針對色情網(wǎng)頁的檢測與過濾
早期的原始網(wǎng)頁過濾技術(shù)有以下幾種互聯(lián)網(wǎng)內(nèi)容選擇平臺 (Platform for Internet Content Selection, PICS),該方法允許網(wǎng) 頁發(fā)布者主動在網(wǎng)頁內(nèi)容中嵌入對網(wǎng)頁內(nèi)容描述的標(biāo)簽,從而在客戶端 瀏覽時按要求過濾特定內(nèi)容的頁面。PICS完全依賴于網(wǎng)頁發(fā)布者的自覺 性,實際應(yīng)用很少。URL攔截方法檢査用戶瀏覽的每個網(wǎng)頁的URL,如 果它屬于一個預(yù)定義的URL黑名單,則過濾該網(wǎng)頁。URL攔截在初期小 規(guī)模的互聯(lián)網(wǎng)上有著較好的效果,但它對URL黑名單的更新和維護需求 已不可能適應(yīng)目前互聯(lián)網(wǎng)的規(guī)模和發(fā)展速度。之后人們開始使用簡單關(guān) 鍵字計數(shù)的方法來檢測網(wǎng)頁,當(dāng)網(wǎng)頁中包含的"關(guān)鍵字"數(shù)量超過某一閾值時,則認為它需要被過濾。簡單關(guān)鍵字計數(shù)方法在一定程度上實現(xiàn) 了網(wǎng)頁的語義判斷,但僅基于關(guān)鍵字數(shù)量無法準(zhǔn)確分析,以色情網(wǎng)頁過 濾為例,如果目標(biāo)網(wǎng)頁的內(nèi)容是反對網(wǎng)絡(luò)色情或性教育,其關(guān)鍵字出現(xiàn) 次數(shù)很可能超過閾值而被誤過濾掉。
針對原始技術(shù)的不足之處,現(xiàn)在過濾技術(shù)的重點在于對網(wǎng)頁的內(nèi)容 分析。有學(xué)者提出了基于人工神經(jīng)網(wǎng)絡(luò)的網(wǎng)頁過濾方法。此方構(gòu)造兩類
人工神經(jīng)網(wǎng)絡(luò)之一KS0M或Fuzzy ART,并把提取的網(wǎng)頁特征(包括55 個網(wǎng)頁關(guān)鍵字計數(shù)和一些全頁面統(tǒng)計量)輸入到神經(jīng)網(wǎng)絡(luò)中,根據(jù)輸出 結(jié)果判斷網(wǎng)頁性質(zhì)。針對傳統(tǒng)關(guān)鍵字列表容易誤過濾的事實,有方法認 為關(guān)鍵字之間不是孤立的,而是將關(guān)鍵字分為顯式、隱式和邏輯三類, 有害網(wǎng)頁的性質(zhì)可以從這三類關(guān)鍵字互相影響共同作用體現(xiàn)出來。此方 法使用類細胞神經(jīng)網(wǎng)絡(luò)(CNN-Like)來描述關(guān)鍵字之間的相互關(guān)系,并 以此過濾有害網(wǎng)頁。以上這類方法在色情網(wǎng)頁過濾方面取得了較好的效 果,但它們的應(yīng)用仍受到關(guān)鍵字列表的限制。首先,構(gòu)建關(guān)鍵字列表需 要對需過濾的領(lǐng)域有很多的先驗知識,不容易應(yīng)用到別的領(lǐng)域;其次, 色情網(wǎng)頁中存在著區(qū)分性很強的關(guān)鍵字,而某些領(lǐng)域并不能保證存在這 些符合要求的關(guān)鍵字,因此無法使用這類技術(shù)。因此,基于關(guān)鍵字的過 濾方法普遍無法滿足個性化過濾的需求。
另一種基于文本分類的方法可以實現(xiàn)多種類的網(wǎng)頁過濾。對于一個 需要分類的網(wǎng)頁,計算它和訓(xùn)練網(wǎng)頁庫中所有網(wǎng)頁之間的余弦相似度, 將所有相似度值中的前慮計算平均值,如果該數(shù)值大于預(yù)定義的閾值則 過濾它。這種方法假設(shè)訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁可以準(zhǔn)確描述用戶興趣類
(需要過濾的網(wǎng)頁類)的分布特征,但實際此訓(xùn)練庫是難于構(gòu)造的。由 于訓(xùn)練庫的要求規(guī)模很大,在過濾每一個網(wǎng)頁時需要計算目標(biāo)網(wǎng)頁和庫 中所有網(wǎng)頁的相似度,其時間復(fù)雜度可能無法滿足實時過濾的需求。此 外,此方法中的過濾閾值是領(lǐng)域相關(guān)的,因此在實現(xiàn)個性化時需要根據(jù) 具體過濾測試結(jié)果仔細調(diào)整該閾值,這是對該方法實際應(yīng)用的另一限 制。
雖然經(jīng)過了大量的研究,網(wǎng)頁過濾技術(shù)仍不能滿足實際的需求。其 中重要的難點, 一是如何在個性化定制的情況下實現(xiàn)準(zhǔn)確的網(wǎng)頁識別,二是如何解決訓(xùn)練網(wǎng)頁庫的構(gòu)建,三是如何滿足實時過濾的分類時間要 求。
發(fā)明內(nèi)容
為了避免傳統(tǒng)方法難于個性化定制、分類時間不能滿足實時性要求 等缺點,本發(fā)明目的在于提供一種快速、魯棒、可個性化定制的網(wǎng)頁過 濾方法。
為實現(xiàn)上述目的,本發(fā)明提供的可個性化定制的網(wǎng)頁過濾方法,包 括步驟如下
(1) .用戶通過提供網(wǎng)頁實例表達個性化過濾需求;
(2) .用戶實例網(wǎng)頁和訓(xùn)練網(wǎng)頁庫特征提??;
(3) .基于半監(jiān)督學(xué)習(xí)的用戶興趣類屬性挖掘;
(4) .用戶興趣類的特征提取和特征選擇;
(5) .基于貝葉斯分類器的個性化網(wǎng)頁過濾;
(6) .半監(jiān)督學(xué)習(xí)過程可使用加速計算和增量計算。
步驟1:系統(tǒng)使用web爬蟲自動從互聯(lián)網(wǎng)上爬取大量網(wǎng)頁構(gòu)建無標(biāo) 簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提取;
步驟2:系統(tǒng)從用戶獲取用以表達對過濾系統(tǒng)的個性化需求的網(wǎng)頁 實例,并對用戶個性化實例網(wǎng)頁做預(yù)處理和特征提??;
步驟3:基于用戶個性化實例網(wǎng)頁和無標(biāo)簽訓(xùn)練網(wǎng)頁庫特征,利用
半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性;
步驟4:提取用戶興趣類詞匯表概率特征,并進行特征選擇;
步驟5:基于特征選擇之后的用戶興趣類詞匯表特征構(gòu)造貝葉斯分
類器,實現(xiàn)對目標(biāo)網(wǎng)頁的個性化過濾。
根據(jù)本發(fā)明的實施例,步驟1所述系統(tǒng)使用web爬蟲自動從互聯(lián)網(wǎng)
上爬取大量網(wǎng)頁構(gòu)建無標(biāo)簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提取,包括步
驟
步驟ll:使用web爬蟲技術(shù)從互聯(lián)網(wǎng)上自動的爬取大量的網(wǎng)頁作為
過濾系統(tǒng)的無標(biāo)簽訓(xùn)練網(wǎng)頁庫"此大型無標(biāo)簽訓(xùn)練網(wǎng)頁庫是對實際互 聯(lián)網(wǎng)網(wǎng)頁分布的近似描述;步驟12:對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁進行預(yù)處理首先使用網(wǎng)頁 解析器對網(wǎng)頁源文件進行解析,提取網(wǎng)頁中的文本;對網(wǎng)頁文本中的中 文進行中文分詞處理,得到以詞為單位的網(wǎng)頁文本;在網(wǎng)頁中刪除停詞 禾口罕用詞;
步驟13:對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁提取特征;在經(jīng)過預(yù)處理的 網(wǎng)頁文本中,統(tǒng)計詞匯表中的每一個詞在每一個網(wǎng)頁中出現(xiàn)的次數(shù);詞 匯表是網(wǎng)頁中可能出現(xiàn)的非停詞和非罕用的所有詞匯的集合;在特征提
取之后,每個網(wǎng)頁表示為如下詞袋(bag-of-word)向量
A二", t2,…,U
其中,A是網(wǎng)頁i的詞袋向量表示,。是詞匯表中第j'個詞匯在網(wǎng) 頁i中出現(xiàn)的次數(shù),仏是詞匯表中詞匯的數(shù)量。
根據(jù)本發(fā)明的實施例,歩驟2所述系統(tǒng)從用戶獲取用以表達對過濾 系統(tǒng)的個性化需求的用戶個性化實例網(wǎng)頁,并對用戶個性化實例網(wǎng)頁做
預(yù)處理和特征提取,包括步驟
步驟21:系統(tǒng)從用戶獲取用以表達對過濾系統(tǒng)的個性化需求的用戶 個性化實例網(wǎng)頁,該集合記作丄;用戶個性化實例網(wǎng)頁集合是用戶自己 從實際的互聯(lián)網(wǎng)中提取的若干網(wǎng)頁,當(dāng)中需要包含兩類網(wǎng)頁, 一類是用 戶希望被過濾的網(wǎng)頁,另一類是用戶希望正常瀏覽的網(wǎng)頁;用戶個性化 實例網(wǎng)頁里的樣本由用戶根據(jù)自己的需求自行確定,以此達到對過濾系 統(tǒng)的個性化定制;
步驟22:用戶個性化實例網(wǎng)頁的預(yù)處理和特征提取。 根據(jù)本發(fā)明的實施例,步驟3所述基于用戶個性化實例網(wǎng)頁和無標(biāo) 簽訓(xùn)練網(wǎng)頁庫特征,利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性包括步 驟
步驟31:將用戶個性化實例網(wǎng)頁集合丄和無標(biāo)簽訓(xùn)練網(wǎng)頁庫"組成 一個新的集合"+M,其中Z中的網(wǎng)頁具有用戶標(biāo)記的標(biāo)簽J^ {+1, -1},
+ 1表示需要過濾的網(wǎng)頁,-1表示不需要過濾正常瀏覽的網(wǎng)頁;
步驟32:基于圖的半監(jiān)督學(xué)習(xí)方法的過程是建立一個圖,其中圖
頂點是Z+"所有中的所有網(wǎng)頁的數(shù)據(jù)點,圖邊是數(shù)據(jù)點之間的相似度; 步驟33:在建立的圖上執(zhí)行標(biāo)簽傳遞算法,直到算法收斂,所有頂點都分配了標(biāo)簽/ehl, -1};
對于標(biāo)簽傳遞算法,有如下加速計算增量計算方法標(biāo)簽傳遞算法 的直接計算公式是-
兒
其中尸w和&是標(biāo)簽傳遞矩陣的分塊子矩陣,K是用戶個性化實例 網(wǎng)頁的標(biāo)簽,則A是標(biāo)簽傳遞算法分配標(biāo)簽的直接計算結(jié)果;
用戶個性化實例的數(shù)量仏和訓(xùn)練網(wǎng)頁庫中網(wǎng)頁的數(shù)量仏相比很小, 即有"= + 《 ,因此直接執(zhí)行標(biāo)簽傳遞算法和按上式計算的時間復(fù) 雜度是如果實際需要在同一訓(xùn)練網(wǎng)頁庫上計算多個個性化的網(wǎng) 頁過濾器,則按照以下方式計算A:
其中項只需在訓(xùn)練網(wǎng)頁庫建立之后計算一次;當(dāng)有新的用 戶需要實現(xiàn)個性化過濾或需要改進之前創(chuàng)建的過濾器時,只有YL項變 化,在這種情況下,創(chuàng)建或改進個性化網(wǎng)頁過濾器時的時間復(fù)雜度是。
根據(jù)本發(fā)明的實施例,步驟4所述提取用戶興趣類詞匯表概率特征 尸(rk),并進行特征選擇,包括步驟
步驟4i:將分配了標(biāo)簽的集合a+"按標(biāo)簽分成兩個子集x和z,
其中J+是具有標(biāo)簽+l的網(wǎng)頁,X-是具有標(biāo)簽-l的網(wǎng)頁;
步驟42:在集合X和Z上,對詞匯表中所有詞匯統(tǒng)計以下用戶興趣 類詞匯表概率特征/>(-110、尸(+l")為
£<formula>formula see original document page 10</formula>
其中&和A—分別是J+和J—中出現(xiàn)詞匯t的網(wǎng)頁數(shù);f是一個防止 O分母的小常數(shù);尸(-lU)、尸(+lU)整體記作尸(7k),即其中r的取值范 圍是{ + 1, -1};
步驟43:對用戶興趣類詞匯表概率特征P(rU)進行選擇將所得 的用戶興趣類詞匯表概率特征概率值列表按尸(+lU)值進行降 序排序或者按尸(-1 I t)值進行升序排序,只保留列表中頂端/7"個詞匯的概率值和列表底端/^,個詞匯的概率值,其它概率值統(tǒng)一設(shè)置為O. 5;
和/^,的取值根據(jù)具體詞匯表的大小而定, 一般l取為詞匯表大小的
10%, 7^取為詞匯表大小的30%。
根據(jù)本發(fā)明的實施例,所述基于特征選擇之后的用戶興趣類詞匯表 特征構(gòu)造貝葉斯分類器,實現(xiàn)對目標(biāo)網(wǎng)頁的個性化過濾是
對于一個新來的網(wǎng)頁A由條件全概率公式得
其中r的取值范圍是(+l, -1}, t是網(wǎng)頁中的某一個詞匯;設(shè)概率 值尸(fl t7)滿足
尸(7|/)=尸昨,力
則尸(r^)的計算公式可化為
P(+1W二Z尸(+1,U) P(-llx)-Z尸(-llr)尸Wx)
fe工
其中,t)是經(jīng)特征選擇之后的用戶興趣類詞匯表概率特征,
尸Uk)是歸一化后的詞匯t在網(wǎng)頁X中出現(xiàn)的頻率,計算公式為
詞匯f在網(wǎng)頁;c中出現(xiàn)的頻率 "1 ^ =網(wǎng)頁x中所有詞匯出現(xiàn)的總頻率
最后比較計算出的尸(+lk)和尸(-ll力,如果尸(+lk)〉尸(-lk), 則目標(biāo)網(wǎng)頁義被標(biāo)記為+1且被過濾;反之則不過濾。
本發(fā)明的主要特點在于1)使用實例驅(qū)動的策略獲得用戶興趣。 由于不同的互聯(lián)網(wǎng)用戶對于網(wǎng)絡(luò)有著不同的興趣和要求,他們需要過濾 的網(wǎng)頁種類也不相同。采用實例驅(qū)動的策略,用戶可以更容易的表達自
己的興趣,也避免了基于關(guān)鍵字的過濾技術(shù)難于個性化的局限;2)使 用半監(jiān)督學(xué)習(xí)挖掘用戶興趣類。本發(fā)明方法建立一個獨立的大型網(wǎng)頁訓(xùn) 練集作為用戶提供的少量實例的補充,使用基于圖的半監(jiān)督學(xué)習(xí)方法在 訓(xùn)練集上建立用戶興趣類的精確描述;3)建立貝葉斯分類器進行最終 的網(wǎng)頁性質(zhì)判斷,使得分類速度達到實時過濾的要求;4)提出了半監(jiān) 督學(xué)習(xí)過程的快速計算和增量計算方法,在某些情況下可以實現(xiàn)訓(xùn)練過 程的加速。本發(fā)明提出了一種新型的網(wǎng)頁過濾技術(shù),客服了傳統(tǒng)網(wǎng)頁過濾方法難于個性化定制、識別過程耗時長、虛警率高的缺點,具有廣闊 的應(yīng)用前景。
圖1是本發(fā)明方案的整體框架。
圖2是本發(fā)明創(chuàng)建無標(biāo)簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提取的框圖。
圖3是本發(fā)明用戶個性化實例網(wǎng)頁的預(yù)處理和特征提取的框圖。 圖4是本發(fā)明利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性的框圖。 圖5是本發(fā)明提取用戶興趣類詞匯表概率特征和特征選擇的框圖。 圖6是本發(fā)明基于貝葉斯分類器的目標(biāo)網(wǎng)頁個性化過濾流程圖。
具體實施例方式
下面結(jié)合附圖詳細說明本發(fā)明技術(shù)方案中所涉及的各個細節(jié)問題。 應(yīng)指出的是,所描述的實施例僅旨在便于對本發(fā)明的理解,而對其不起 任何限定作用。
本發(fā)明實施例方案系統(tǒng)的整體框架見附圖1,由個性化定制單元1、
網(wǎng)頁瀏覽單元2兩部分組成。個性化定制單元l包括輸入模塊ll、第
一、第二網(wǎng)頁預(yù)處理和特征提取模塊12和15、互聯(lián)網(wǎng)13、無標(biāo)簽訓(xùn)練 網(wǎng)頁庫14、監(jiān)督學(xué)習(xí)模塊16、特征提取和特征選擇模塊17;網(wǎng)頁瀏覽 單元2包括目標(biāo)網(wǎng)頁21、第三網(wǎng)頁預(yù)處理和特征提取模塊22、貝葉 斯分類器23。
系統(tǒng)事先從互聯(lián)網(wǎng)13自動抓取建立無標(biāo)簽訓(xùn)練網(wǎng)頁庫14并由第二 網(wǎng)頁信息預(yù)處理和特征提取模塊15的進行網(wǎng)頁信息預(yù)處理和特征提取 操作;接下來用戶向輸入模塊ll提供用戶個性化實例網(wǎng)頁;然后輸入 模塊11經(jīng)過第一網(wǎng)頁預(yù)處理和特征提取模塊12提取的用戶個性化實例 網(wǎng)頁和經(jīng)第二網(wǎng)頁信息預(yù)處理和特征提取模塊15的無標(biāo)簽訓(xùn)練網(wǎng)頁庫 一起進行半監(jiān)督學(xué)習(xí)模塊16,在此基礎(chǔ)上特征提取和特征選擇模塊17 進行特征提取和特征選擇以創(chuàng)建貝葉斯分類器23;最后使用建立的貝葉斯分類器23在用戶瀏覽單元2瀏覽過程中實時的執(zhí)行過濾。每一個被
請求的目標(biāo)網(wǎng)頁21在經(jīng)過第三網(wǎng)頁預(yù)處理和特征提取模塊22之后進入 貝葉斯分類器23中分類,系統(tǒng)根據(jù)分類結(jié)果決定目標(biāo)網(wǎng)頁是否被過濾。
個性化定制單元1在可以任何計算機上進行,例如過濾系統(tǒng)包括個 性化定制單元1和網(wǎng)頁瀏覽單元2的整體的提供者可以架設(shè)服務(wù)器收集 用戶的個性化需求并訓(xùn)練出分類器,或者當(dāng)用戶計算機有足夠的計算資 源時可以在用戶各自的計算機上直接訓(xùn)練出分類器。訓(xùn)練出的分類器加 入到分類系統(tǒng)的客戶端,分類系統(tǒng)的客戶端是作為用戶瀏覽器軟件的一 部分或是以插件的形式存在,并在用戶瀏覽網(wǎng)頁瀏覽單元2的過程中實 時地對用戶請求的網(wǎng)頁分類并進行過濾。
下面詳細給出該發(fā)明技術(shù)方案中所涉及的各個細節(jié)問題的說明。
(1) 獲取用戶個性化實例網(wǎng)頁
用戶向輸入模塊11提供的用戶個性化實例網(wǎng)頁集合包含兩部分, 一部分是希望被過濾的網(wǎng)頁實例, 一部分是希望正常瀏覽的網(wǎng)頁實例。 用戶實例集合記為厶如l^, i二 1,…,仏},仏為用戶實例的數(shù)量,
包括歷+個正(需要過濾)樣本(力=+1, J. = 1,…,~)和— /7/+ 個負(正常瀏覽)樣本(力=-1,i = /7/++1,…,"》。
(2) 網(wǎng)頁樣本的預(yù)處理和信息抽取
系統(tǒng)中所有的原始網(wǎng)頁都需要首先進行網(wǎng)頁信息預(yù)處理和特征提
取操作,用以變成系統(tǒng)可以處理的操作,具體是輸入單元ll輸入的
所有用戶個性化實例網(wǎng)頁需經(jīng)過第一網(wǎng)頁預(yù)處理和特征提取模塊12操
作;步驟12:對無標(biāo)簽訓(xùn)練網(wǎng)頁庫14中(用戶網(wǎng)頁庫的創(chuàng)建詳見(3) 節(jié))的網(wǎng)頁樣本需經(jīng)第二網(wǎng)頁信息預(yù)處理和特征提取模塊15操作;過 濾過程中用戶請求的目標(biāo)網(wǎng)頁21需經(jīng)第三網(wǎng)頁預(yù)處理和特征提取模塊
22操作。
如圖2創(chuàng)建無標(biāo)簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提取的框圖所示
使用第二網(wǎng)頁預(yù)處理和特征提取模塊15的第二網(wǎng)頁解析器 15-l(Webpage parser)解析網(wǎng)頁源文件,提出網(wǎng)頁中的文本。對網(wǎng)頁文 本中的中文進行中文分詞處理,得到以詞為單位的網(wǎng)頁文本。在網(wǎng)頁中 刪除停詞(Stop-words)和罕用詞。步驟13:由第二網(wǎng)頁預(yù)處理和特征提取模塊15中的第二統(tǒng)計模塊15-2對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁提取特
征,在經(jīng)過預(yù)處理的網(wǎng)頁文本中,統(tǒng)計詞匯表(vocabulary)中的每一個 詞在每一個網(wǎng)頁中出現(xiàn)的次數(shù)。詞匯表是網(wǎng)頁中可能出現(xiàn)的非停詞和非 罕用的所有詞匯的集合。在特征提取之后,每個網(wǎng)頁表示為如下詞袋 (bag-of-word) 向量
A二("…,。 其中,A是網(wǎng)頁i的詞袋(bag-ofiord)向量表示,仁是詞匯表中第j' 個詞匯在網(wǎng)頁i中出現(xiàn)的次數(shù),仏是詞匯表中詞匯的數(shù)量。
如圖3用戶個性化網(wǎng)頁實例的預(yù)處理和特征提取的框圖所示使用 第一網(wǎng)頁預(yù)處理和特征提取模塊12的第一網(wǎng)頁解析器12-1解析網(wǎng)頁源 文件,提出網(wǎng)頁中的文本。對網(wǎng)頁文本中的中文進行中文分詞處理,得 到以詞為單位的網(wǎng)頁文本。在網(wǎng)頁中刪除停詞和罕用詞。由第一網(wǎng)頁預(yù) 處理和特征提取模塊12中的第一統(tǒng)計模塊12-2對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中 的網(wǎng)頁提取特征,在經(jīng)過預(yù)處理的網(wǎng)頁文本中,統(tǒng)計詞匯表中的每一個 詞在每一個網(wǎng)頁中出現(xiàn)的次數(shù)。在特征提取之后,每個網(wǎng)頁表示為如下 詞袋(bag-of-word)向量
"尸",t2,…, ) 其中,",是網(wǎng)頁J'的詞袋(bag-of-word)向量表示,^是詞匯表中第J 個詞匯在網(wǎng)頁_/中出現(xiàn)的次數(shù),仏是詞匯表中詞匯的數(shù)量。
如圖6基于貝葉斯分類器的目標(biāo)網(wǎng)頁個性化過濾流程圖所示對于 目標(biāo)網(wǎng)頁21,使用第三網(wǎng)頁預(yù)處理和特征提取模塊22的第三網(wǎng)頁解析 器22-l解析網(wǎng)頁源文件,提出網(wǎng)頁中的文本。對網(wǎng)頁文本中的中文進 行中文分詞處理,得到以詞為單位的網(wǎng)頁文本。在網(wǎng)頁中刪除停詞和罕 用詞。由第一網(wǎng)頁預(yù)處理和特征提取模塊22中的第一統(tǒng)計模塊22-2對 無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁提取特征,在經(jīng)過預(yù)處理的網(wǎng)頁文本中,統(tǒng) 計詞匯表中的每一個詞在每一個網(wǎng)頁中出現(xiàn)的次數(shù)。在特征提取之后, 目標(biāo)網(wǎng)頁表示為如下詞袋(bag-of-word)向量
t,…,、)
其中,"是目標(biāo)網(wǎng)頁的詞袋(bag-of-word)向量表示,。是詞匯表中第 J個詞匯在網(wǎng)頁i中出現(xiàn)的次數(shù),仏是詞匯表中詞匯的數(shù)量。(3)半監(jiān)督學(xué)習(xí)擴展用戶實例
由于用戶只能提供較少的個性化實例,因此算法使用模塊16的半 監(jiān)督學(xué)習(xí)方法從用戶實例網(wǎng)頁中獲得用戶興趣類的精確描述。
建立一個大型的無標(biāo)簽訓(xùn)練網(wǎng)頁庫U。步驟11:利用網(wǎng)絡(luò)爬蟲技術(shù),
在Internet上爬去大量的實際網(wǎng)頁作為訓(xùn)練網(wǎng)頁庫。建立的大型網(wǎng)頁 訓(xùn)練庫是實際Internet網(wǎng)頁分布的近似描述。
如圖4是利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性的框圖所示 將用戶個性化實例網(wǎng)頁16 — 1集合Z和無標(biāo)簽訓(xùn)練網(wǎng)頁庫V 16 — 2 組成一個新的集合16 — 3為Z+仏如前,Z中的網(wǎng)頁具有用戶標(biāo)記的標(biāo) 簽/£{+1, -1}, +1表示需要過濾的網(wǎng)頁,-1表示不需要過濾可以正常 瀏覽的網(wǎng)頁。算法在丄+"上進行基于圖的半監(jiān)督學(xué)習(xí)方法。建立一個圖, 圖的頂點是^+^/所有中的所有數(shù)據(jù)點(網(wǎng)頁),圖的邊是數(shù)據(jù)點之間的 相似度。網(wǎng)頁相似度使用二元的余弦相似度度量
其中仏和/7,分別表示網(wǎng)頁i和J中出現(xiàn)的詞匯個數(shù)(同一網(wǎng)頁中出 現(xiàn)同一詞匯多次的算作一次),仏M表示同時出現(xiàn)在網(wǎng)頁i和J中的詞 匯個數(shù)。則^是圖中頂點J',J'之間邊的權(quán)值。為了減少學(xué)習(xí)過程中標(biāo) 簽傳遞的復(fù)雜度和避免網(wǎng)頁訓(xùn)練庫高度不平衡(在網(wǎng)頁訓(xùn)練庫中和實際
的網(wǎng)頁分布中,通常正樣本的數(shù)量遠小于負樣本的數(shù)量),相似度圖16-4 是MN連接圖而不是簡單的全連通圖,ANN連接圖的定義是頂點i和 J之間連接一條邊當(dāng)且僅當(dāng)i是J'的h近鄰節(jié)點或7是i的h近鄰節(jié)點。
接下來在建立的圖上執(zhí)行標(biāo)簽傳遞算法16-5(Label propagation algorithm),將標(biāo)簽從用戶實例向訓(xùn)練網(wǎng)頁庫上傳播定義;7X/7的傳 播概率矩陣,
其中/7是集合A+〃的大小。則d標(biāo)簽從節(jié)點i向j'的傳播概率。 在標(biāo)簽傳遞過程中使用的是網(wǎng)頁節(jié)點的軟標(biāo)簽/。/是一個"X2的矩陣, 其中/n和/,2分別是節(jié)點i被分配標(biāo)簽+l和-1的概率。標(biāo)簽傳遞算法的運行過程是 步驟i. 初始化/為隨機值;
步驟ii."夾固"用戶實例樣本的標(biāo)簽對于每一個用戶實例樣本 i,如果是正樣本,設(shè)力產(chǎn)l,《2=0;如果是負樣本,則設(shè)/f0, /,2=1;
步驟iii.傳遞標(biāo)簽尸/; 步驟iv.轉(zhuǎn)到步驟ii,直到/收斂。
可以證明標(biāo)簽傳遞算法中/收斂到一個固定值。不失一般性,假設(shè)
丄U〃所有的網(wǎng)頁樣本記為如下順序7= (A,…,Xw, X /+1,…,X丄 則/和P可以按照其標(biāo)記/未標(biāo)記分割成如下子矩陣形式
p 一A丄 乙U
一、 —
則上面的迭代算法的結(jié)果是
其中K是所有用戶實例樣本按照算法步驟ii "夾固"的軟標(biāo)簽矩陣。
標(biāo)簽傳遞算法最小化了定義在圖上的如下quadratic能量函數(shù)
£(/)4l> )2
經(jīng)過標(biāo)簽傳遞16-5算法之后,所有Z+〃集合16-4上的網(wǎng)頁都已經(jīng)
分配了標(biāo)簽,即得所有頂點都分配了標(biāo)簽的圖16-6。 (4)用戶興趣類的特征提取和特征選擇
如圖5是提取用戶興趣類詞匯表概率特征和特征選擇的框圖所示 在進行半監(jiān)督學(xué)習(xí)之后,特征提取和特征選擇模塊17在已確定了 標(biāo)簽的訓(xùn)練集17-1上提取用戶興趣類詞匯表概率特征并進行特征選擇 操作。用戶興趣類詞匯表概率尸(Wt)是詞匯表中詞匯t出現(xiàn)在正/負樣 本類中的概率。將在分割模塊17-2中將丄+"按標(biāo)簽分成兩個子集義單 元17-3和Z單元17-4,其中J+是具有標(biāo)簽+l的網(wǎng)頁,J-是具有標(biāo)簽-1的網(wǎng)頁。在概率特征模塊17-5中對統(tǒng)計詞匯表中所有詞匯統(tǒng)計以下:
<formula>formula see original document page 17</formula>
其中八+和心分別為義和中出現(xiàn)詞匯t的網(wǎng)頁數(shù)。f是一個防止
o分母的小常數(shù)。尸(-ik)、尸(+屮)整體記作尸(rk),即其中r的取值范
圍是{+1, -1};
在估計P(Yit)的值時,在特征選擇模塊17-6執(zhí)行一步選擇操作
將計算所得的尸(rk)概率值列表按尸(+ik)值進行降序排序(或者按
尸(-llt)值進行升序排序)。只保留列表中頂端/7"個詞匯的概率值和列
表底端/7。,,個詞匯的概率值,其它概率值統(tǒng)一設(shè)置為0.5。因為在最后的 分類過程中,如果尸(+l I t)=I t) =0. 5,則詞匯t對尸(+l I x)和尸(-11 x) 的貢獻相同,在實際計算是就可以忽略詞匯t,減少了分類的時間復(fù)雜 度,以適應(yīng)實時過濾的需求。同時考察特征選擇的過程,在選擇之后保 留的詞匯具有較大的尸(+llt)或尸(-ik)值,即這些詞匯是針對用戶興 趣類區(qū)分性較強的詞匯,可以使得分類結(jié)果更加準(zhǔn)確。"w禾卩/^的取值 根據(jù)具體詞匯表的大小而定, 一般""可取為詞匯表大小的10%, ^可取 為詞匯表大小的30%。
(5)目標(biāo)網(wǎng)頁21性質(zhì)判斷
如圖6是基于貝葉斯分類器的目標(biāo)網(wǎng)頁個性化過濾流程圖所示 對于一個用戶新瀏覽的目標(biāo)網(wǎng)頁21,記做x,經(jīng)預(yù)處理22-l和特 征提取22-2操作之后在模塊23-2中分別計算尸(+l k)和lx),使 用貝葉斯分類器23-3對其進行分類。由條件全概率公式得
其中t是網(wǎng)頁中的某一個詞匯,f的取值范圍是(+l, -1},設(shè)概率
尸昨)=尸昨,力
即得<formula>formula see original document page 18</formula>其中,尸(t^)為歸一化后的詞匯《-在網(wǎng)頁X中出現(xiàn)的頻率 p 詞匯^在網(wǎng)頁X中出現(xiàn)的頻率 (1 X)—網(wǎng)頁X中所有詞匯出現(xiàn)的總頻率
t)是在特征提取和特征選擇模塊17中得到經(jīng)選擇的用戶興趣
類詞匯表概率特征(圖6中23-l)。
最后比較計算出的P(+llx)和P(-llx),如果P(+llx) >P(-lix), 則目標(biāo)網(wǎng)頁x被標(biāo)記為+1且被過濾23--5;反之則不過濾(正常瀏覽23 —4)。
(6)半監(jiān)督學(xué)習(xí)過程的加速計算和增量計算
雖然本算法中分類過濾目標(biāo)網(wǎng)頁的過程時間復(fù)雜度很低,但半監(jiān)督 學(xué)習(xí)的過程時間復(fù)雜度較高,并且半監(jiān)督學(xué)習(xí)過程需要維護一個大型的 訓(xùn)練網(wǎng)頁庫,因此如果用戶的計算機沒有足夠的計算資源時,訓(xùn)練過程 并不適合在最終用戶的系統(tǒng)上進行。本發(fā)明中描述的訓(xùn)練過程可以在由 過濾系統(tǒng)提供者的服務(wù)器系統(tǒng)上集中進行,并以Web Service或類似的 方式向最終用戶提供個性化接口。并且,在這種集中服務(wù)的情況下,可 以實現(xiàn)半監(jiān)督學(xué)習(xí)過程的快速計算和增量計算。
如圖4所示利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性的框圖中的 標(biāo)簽傳遞算法16-5,直接執(zhí)行標(biāo)簽傳遞算法的時間復(fù)雜度是0(/73)。另 一方面,(4)節(jié)中所述的基于圖的半監(jiān)督學(xué)習(xí)中的標(biāo)簽傳遞算法,有直 接計算公式如下
—(3)
用戶個性化實例的數(shù)量仏和訓(xùn)練網(wǎng)頁庫中網(wǎng)頁的數(shù)量仏相比很小, 可以忽略,即有"=",+ 《 。在使用式(3)計算時,計算幾=(/-尸J—1
項的時間需求是"0(/73),計算^^&和/^AK的時間都是0(/72),
因此按式(3)計算的時間復(fù)雜度是00/)。但是如果實際需要在同一訓(xùn)練
網(wǎng)頁庫上計算多個個性化的網(wǎng)頁過濾器,則可以按照一下方式計算<formula>formula see original document page 18</formula> (4)其中(/-/?!?項只需在訓(xùn)練網(wǎng)頁庫建立之后計算一次。(尸wK)是一個 仏X2的矩陣,計算時間是0(從X77;)。當(dāng)有新的用戶需要實現(xiàn)個性化過 濾或需要改進之前創(chuàng)建的過濾器時,只有K項變化,因此在這種情況下, 每次創(chuàng)建或改進個性化網(wǎng)頁過濾器時的時間復(fù)雜度是WW) "0(/72)。
以上所述,僅為本發(fā)明中的具體實施方式
,但本發(fā)明的保護范圍并 不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可理 解想到的變換或替換,都應(yīng)涵蓋在本發(fā)明的包含范圍之內(nèi),因此,本發(fā) 明的保護范圍應(yīng)該以權(quán)利要求書的保護范圍為準(zhǔn)。
權(quán)利要求
1、一種可個性化定制的網(wǎng)頁過濾方法,其特征在于,包括步驟步驟1系統(tǒng)使用web爬蟲自動從互聯(lián)網(wǎng)上爬取大量網(wǎng)頁構(gòu)建無標(biāo)簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提??;步驟2系統(tǒng)從用戶獲取用以表達對過濾系統(tǒng)的個性化需求的網(wǎng)頁實例,并對用戶個性化實例網(wǎng)頁做預(yù)處理和特征提??;步驟3基于用戶個性化實例網(wǎng)頁和無標(biāo)簽訓(xùn)練網(wǎng)頁庫特征,利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性;步驟4提取用戶興趣類詞匯表概率特征,并進行特征選擇;步驟5基于特征選擇之后的用戶興趣類詞匯表特征構(gòu)造貝葉斯分類器,實現(xiàn)對目標(biāo)網(wǎng)頁的個性化過濾。
2、 按照權(quán)利要求l所述的可個性化定制的網(wǎng)頁過濾方法,其特征在于,步驟l所述系統(tǒng)使用web爬蟲自動從互聯(lián)網(wǎng)上爬取大量網(wǎng)頁構(gòu)建 無標(biāo)簽訓(xùn)練網(wǎng)頁庫并做預(yù)處理和特征提取,包括步驟步驟11:使用web爬蟲技術(shù)從互聯(lián)網(wǎng)上自動的爬取大量的網(wǎng)頁作為過濾系統(tǒng)的無標(biāo)簽訓(xùn)練網(wǎng)頁庫"此大型無標(biāo)簽訓(xùn)練網(wǎng)頁庫是對實際互聯(lián)網(wǎng)網(wǎng)頁分布的近似描述;步驟12:對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁進行預(yù)處理首先使用網(wǎng)頁 解析器對網(wǎng)頁源文件進行解析,提取網(wǎng)頁中的文本;對網(wǎng)頁文本中的中 文進行中文分詞處理,得到以詞為單位的網(wǎng)頁文本;在網(wǎng)頁中刪除停詞禾口罕用詞;步驟13:對無標(biāo)簽訓(xùn)練網(wǎng)頁庫中的網(wǎng)頁提取特征;在經(jīng)過預(yù)處理的 網(wǎng)頁文本中,統(tǒng)計詞匯表中的每一個詞在每一個網(wǎng)頁中出現(xiàn)的次數(shù);詞 匯表是網(wǎng)頁中可能出現(xiàn)的非停詞和非罕用的所有詞匯的集合;在特征提 取之后,每個網(wǎng)頁表示為如下詞袋(bag-of-word)向量<formula>formula see original document page 2</formula>其中,",是網(wǎng)頁i的詞袋向量表示,。是詞匯表中第J'個詞匯在網(wǎng) 頁J'中出現(xiàn)的次數(shù),仏是詞匯表中詞匯的數(shù)量。
3、 按照權(quán)利要求l所述的可個性化定制的網(wǎng)頁過濾方法,其特征在于,步驟2所述系統(tǒng)從用戶獲取用以表達對過濾系統(tǒng)的個性化需求的 用戶個性化實例網(wǎng)頁,并對用戶個性化實例網(wǎng)頁做預(yù)處理和特征提取, 包括步驟步驟21:系統(tǒng)從用戶獲取用以表達對過濾系統(tǒng)的個性化需求的用戶 個性化實例網(wǎng)頁,該集合記作^;用戶個性化實例網(wǎng)頁集合是用戶自己 從實際的互聯(lián)網(wǎng)中提取的若千網(wǎng)頁,當(dāng)中需要包含兩類網(wǎng)頁, 一類是用戶希望被過濾的網(wǎng)頁,另一類是用戶希望正常瀏覽的網(wǎng)頁;用戶個性化實例網(wǎng)頁里的樣本由用戶根據(jù)自己的需求自行確定,以此達到對過濾系統(tǒng)的個性化定制;步驟22:用戶個性化實例網(wǎng)頁的預(yù)處理和特征提取。
4、按照權(quán)利要求1所述的可個性化定制的網(wǎng)頁過濾方法,其特征 在于,步驟3所述基于用戶個性化實例網(wǎng)頁和無標(biāo)簽訓(xùn)練網(wǎng)頁庫特征, 利用半監(jiān)督學(xué)習(xí)的方法挖掘用戶興趣類屬性包括步驟步驟31:將用戶個性化實例網(wǎng)頁集合Z和無標(biāo)簽訓(xùn)練網(wǎng)頁庫"組成一個新的集合U+0,其中丄中的網(wǎng)頁具有用戶標(biāo)記的標(biāo)簽ye {+1, -1},+ 1表示需要過濾的網(wǎng)頁,-1表示不需要過濾正常瀏覽的網(wǎng)頁;步驟32:基于圖的半監(jiān)督學(xué)習(xí)方法的過程是建立一個圖,其中圖頂點是Z+V所有中的所有網(wǎng)頁的數(shù)據(jù)點,圖邊是數(shù)據(jù)點之間的相似度; 步驟33:在建立的圖上執(zhí)行標(biāo)簽傳遞算法,直到算法收斂,所有頂點都分配了標(biāo)簽;^{+1, -1};對于標(biāo)簽傳遞算法,有如下加速計算增量計算方法標(biāo)簽傳遞算法 的直接計算公式是其中尸w和/^是標(biāo)簽傳遞矩陣的分塊子矩陣,K是用戶個性化實例網(wǎng)頁的標(biāo)簽,則A是標(biāo)簽傳遞算法分配標(biāo)簽的直接計算結(jié)果;用戶個性化實例的數(shù)量仏和訓(xùn)練網(wǎng)頁庫中網(wǎng)頁的數(shù)量巧相比很小, 即有^",' + 《 ,因此直接執(zhí)行標(biāo)簽傳遞算法和按上式計算的時間復(fù)雜度是如果實際需要在同一訓(xùn)練網(wǎng)頁庫上計算多個個性化的網(wǎng) 頁過濾器,則按照以下方式計算/w/'u=(/-:)一'(i^)其中(/-'項只需在訓(xùn)練網(wǎng)頁庫建立之后計算一次;當(dāng)有新的用 戶需要實現(xiàn)個性化過濾或需要改進之前創(chuàng)建的過濾器時,只有YL項變 化,在這種情況下,創(chuàng)建或改進個性化網(wǎng)頁過濾器時的時間復(fù)雜度是WW)。
5、按照權(quán)利要求1所述的可個性化定制的網(wǎng)頁過濾方法,其特征 在于,步驟4所述提取用戶興趣類詞匯表概率特征尸(i1。,并進行特征選擇,包括步驟步驟41:將分配了標(biāo)簽的集合a+。按標(biāo)簽分成兩個子集義和工,其中J+是具有標(biāo)簽+l的網(wǎng)頁,Z是具有標(biāo)簽-l的網(wǎng)頁;步驟42:在集合Z和Z上,對詞匯表中所有詞匯統(tǒng)計以下用戶興趣 類詞匯表概率特征P(-110、尸(+lU)為<formula>formula see original document page 4</formula>其中八+和/^分別是X+和J—中出現(xiàn)詞匯t的網(wǎng)頁數(shù);e是一個防止 0分母的小常數(shù);P(-1U)、 A+lk)整體記作尸(Kk),即其中r的取值范 圍是{+1, -1};步驟43:對用戶興趣類詞匯表概率特征戶("t)進行選擇將所得的用戶興趣類詞匯表概率特征概率值列表按尸(+lU)值進行降 序排序或者按尸(-1 I t)值進行升序排序,只保留列表中頂端l個詞匯的 概率值和列表底端^個詞匯的概率值,其它概率值統(tǒng)一設(shè)置為O. 5; /7££ 和^的取值根據(jù)具體詞匯表的大小而定, 一般/7"取為詞匯表大小的 10%, T^取為詞匯表大小的30%。
6、按照權(quán)利要求1所述的可個性化定制的網(wǎng)頁過濾方法,其特征 在于,基于特征選擇之后的用戶興趣類詞匯表特征構(gòu)造貝葉斯分類器, 實現(xiàn)對目標(biāo)網(wǎng)頁的個性化過濾是對于一個新來的網(wǎng)頁X,由條件全概率公式得其中F的取值范圍是(+l, -1}, t是網(wǎng)頁中的某一個詞匯;設(shè)概率<formula>formula see original document page 5</formula>則尸(ri義)的計算公式可化為<formula>formula see original document page 5</formula>其中,尸(W t)是經(jīng)特征選擇之后的用戶興趣類詞匯表概率特征, 尸"l,)是歸一化后的詞匯t在網(wǎng)頁X中出現(xiàn)的頻率,計算公式為詞匯f在網(wǎng)頁x中出現(xiàn)的頻率 "1 "=網(wǎng)頁x中所有詞匯出現(xiàn)的總頻率最后比較計算出的尸(+llx)和尸(-llx),如果A+lk) >尸(-ll義), 則目標(biāo)網(wǎng)頁x被標(biāo)記為+ l且被過濾;反之則不過濾。
全文摘要
本發(fā)明一種可個性化定制的網(wǎng)頁過濾方法,包括步驟用戶實例網(wǎng)頁和訓(xùn)練網(wǎng)頁庫特征提??;基于半監(jiān)督學(xué)習(xí)的用戶興趣類屬性挖掘;用戶興趣類的特征提取和特征選擇;基于貝葉斯分類器的個性化網(wǎng)頁過濾。本發(fā)明提出了一種新型的實例驅(qū)動的網(wǎng)頁過濾框架,用戶的過濾需求通過網(wǎng)頁實例來表達,用戶實例可以是任何類型或者多類型復(fù)合的網(wǎng)頁,并借助半監(jiān)督學(xué)習(xí)構(gòu)造出符合用戶個性化需求的網(wǎng)頁過濾器,克服了傳統(tǒng)網(wǎng)頁過濾方法僅限于過濾單一或有限類型網(wǎng)頁,難以實現(xiàn)個性化定制的缺點。本發(fā)明并具有高精確度、魯棒性和運行速度的優(yōu)點,具有很好的應(yīng)用前景。
文檔編號G06F17/30GK101470731SQ20071030422
公開日2009年7月1日 申請日期2007年12月26日 優(yōu)先權(quán)日2007年12月26日
發(fā)明者偶 吳, 朱明亮, 璽 李, 胡衛(wèi)明 申請人:中國科學(xué)院自動化研究所