專利名稱:基于搜索交互信息和用戶搜索意圖的詞義提取方法
技術領域:
本發明屬于信息檢索和詞義排歧技術領域,尤其涉及一種基于搜索交互信息和用戶搜索意圖的詞義提取方法。
背景技術:
近幾年,信息檢索和詞義排歧技術各自的研究和應用非常普遍,但將信息檢索和詞意排歧技術相結合的研究和應用則較少。從1998年Google成立開始,信息檢索逐漸成為一項主流的技術,最初,信息檢索提供人工編輯的目錄式檢索,典型公司為雅虎。但隨著互聯網信息的爆炸,人工編輯已不能滿足用戶的需要,此后,機器自動處理的方式日益成為主流。現今,各類搜索服務已經各具規模,搜索服務可分為水平型和垂直型。水平型用來提供綜合服務,在中國,水平型搜索服務的典型代表是百度、谷歌等;垂直型用來對特定領域提供相應服務,在中國,典型垂直型搜索服務的代表是酷訊等。與水平型搜索服務相比,垂直型搜索服務更加貼近用戶的特定需求,但還只是面向某個特定的群體或具有某種特點的領域或是特定的應用,還不能做到針對每一個用戶個體。就詞義排歧技術而言,傳統的方法大多是基于統計學習的方法,用機器自動找出規律,不用人工干預,這種方法稱為無導的方法,該方法在特定領域效果不錯,但在通用領域效果一般。另外,全部用人工標注處理的詞義排歧方法也被使用,這種方法稱為全導的方法。還有一種半導的方法,即采用人工標注處理很少的一部分,再用機器處理其他的大部分。上述詞義排歧的各類方法中,人工標注處理的人力和物力成本很大且目前的詞義排歧沒有通過用戶的點擊情況來劃分詞義個數的方法。面對當前的情況,不少公司也在起步做個性化搜索服務,但不少還停留在概念和操作性不強的理論上。現有技術中有各類詞義提取方法,但現有的方法大多是在靜態文本中進行分析, 或是對靜態文本進行人工標注后進行處理,前者通常需要限制文本領域,在一般的領域里的效果不好;后者中人工標注成本很大。
發明內容
針對現有技術存在的問題,本發明將信息檢索與詞義排歧技術相結合,提出了一種基于搜索交互信息和用戶搜索意圖的詞義提取方法,該方法通過對所有用戶過往歷史交互信息進行分析,并根據分析結果對單個用戶提供個性化搜索結果。為解決上述技術問題,本發明采用如下的技術方案
基于搜索交互信息和用戶搜索意圖的詞義提取方法,依次包括以下步驟 步驟一,記錄每個用戶的歷史交互信息,所述的歷史交互信息包括查詢關鍵字、查詢時間和對應點擊;步驟二,根據步驟一所得的歷史交互信息,取所有用戶查詢頻率排名前Kl位的查詢關鍵字構建查詢關鍵字向量,查詢關鍵字向量中的每一項對應一特定關鍵字,其中,Kl可根據實驗表現設置;
步驟三,根據步驟一所得的歷史交互信息,取每個用戶自身查詢頻率前K2位的查詢關鍵字查詢后的對應點擊結果構建對應點擊向量,并在步驟二所構建的查詢關鍵字向量中將每個用戶自身查詢頻率前K2位的查詢關鍵字所對應的項設置為1,其他設置為0,其中,K2 可根據實驗表現設置;
步驟四,對任意單個高頻查詢關鍵字的點擊情況進行統計處理,即統計各用戶對任意單個高頻查詢關鍵字的點擊結果中互斥的集合,該互斥的集合的數量極為該查詢關鍵字的義項數量,每個集合中對應的網絡資源即為該集合所代表的義項中所對應的資源,所述的高頻查詢關鍵字為所有用戶查詢頻率排名前Kl位的查詢關鍵字和每個用戶自身查詢頻率前K2位的查詢關鍵字;
步驟五,根據步驟二和步驟三所得的查詢關鍵字向量和對應點擊向量中各項的值對用戶聚類;
步驟六,根據步驟五所得的聚類結果,計算同類用戶對各查詢關鍵字對應義項的偏好排名。上述步驟五中的聚類采用K-means聚類方法。上述步驟六中的排名的計算是根據聚類在一起的各用戶對各搜索關鍵字點擊結果的頻率進行。與現有技術相比,本發明具有以下優點和有益效果
1、本發明在詞義排歧方面,避免了人工標注導致的成本問題,同時,這種方法又避免了無導方法效果差或是受領域限制的問題;
2、詞語義項的確定取之于使用搜索引擎服務的用戶,又用于對他們服務,更符合他們的搜索需求;
3、在詞義選取方面更好的體現了用戶的認知過程;
4、得到的義項分類更能體現用戶搜索使用目的。
圖1為本發明方法的流程圖2為用戶甲對查詢關鍵字“蘋果”的點擊情況; 圖3為用戶乙對查詢關鍵字“蘋果”的點擊情況; 圖4為用戶丙對查詢關鍵字“蘋果”的點擊情況; 圖5為用戶1對查詢關鍵字“蘋果”的點擊情況; 圖6為用戶2對查詢關鍵字“蘋果”的點擊情況; 圖7為用戶3對查詢關鍵字“蘋果”的點擊情況; 圖8為用戶4對查詢關鍵字“蘋果”的點擊情況; 圖9為用戶5對查詢關鍵字“蘋果”的點擊情況; 圖10為用戶6對查詢關鍵字“蘋果”的點擊情況; 圖11為返回給用戶X的點擊結果;圖12為返回給用戶Y的點擊結果。
具體實施例方式
為了避免數據稀疏的問題,本發明方法在處理查詢關鍵字時僅取用高頻查詢關鍵字, 即只取所有用戶查詢排名頻率排名前Kl名的查詢關鍵字進行處理;同樣的,不同用戶對各查詢關鍵字的使用頻率有高有低,為避免偶然性因素,僅取每個用戶自身查詢頻率排名前 K2位的查詢關鍵字進行處理。圖1所示為本發明方法的流程圖,本發明方法的步驟具體如下
步驟一,記錄每個用戶的歷史交互信息,所述的歷史交互信息包括查詢關鍵字、查詢時間、對應點擊,其中,查詢關鍵字用來構建查詢關鍵字向量,對應點擊用來構建對應點擊向量,查詢時間用來鎖定用戶某一階段的特點,每隔一定時間,重新構建關鍵字向量和對應點擊向量。步驟二,根據步驟一所得的歷史交互信息,取所有用戶查詢頻率排名前Kl位的查詢關鍵字構建查詢關鍵字向量,查詢關鍵字向量中的每一項對應一特定關鍵字,其中,Kl可根據最終詞義排岐的效果和搜索服務的表現設置,Ki為一個變動的值,其值的變動影響最終詞義排岐的效果和搜索服務的表現,同時,最終詞義排歧的效果和搜索服務的表現反過來影響其值的設定。步驟三,根據步驟一所得的歷史交互信息,取每個用戶自身查詢頻率前K2位的查詢關鍵字查詢后的對應點擊結果構建對應點擊向量,向量化的結果以關鍵字為標志符,不同用戶的相同關鍵字所對應的點擊向量可相互比較其相似度進行用戶聚類;并在步驟二所構建的查詢關鍵字向量中將每個用戶自身查詢頻率前K2位的查詢關鍵字所對應的項設置為1,其他設置為0,K2可通過實驗的表現調整設置其值。步驟四,對任意單個高頻查詢關鍵字的點擊情況進行統計處理,即統計各用戶對任意單個高頻查詢關鍵字的點擊結果中互斥的集合,該互斥的集合的數量極為該查詢關鍵字的義項數量,每個集合中對應的網絡資源即為該集合所代表的義項中所對應的資源,所述的高頻查詢關鍵字為所有用戶查詢頻率排名前Kl位的查詢關鍵字和每個用戶自身查詢頻率前K2位的查詢關鍵字;
本步驟的進行以下面三個假設為前提
(1)在一次搜索中,用戶在輸入某個詞時,只使用這個詞的唯一一個義項;
(2)用戶只點擊與此義項相關的結果中他感興趣的條目;
(3)短期內(某閾值時間內)用戶的各方面情況保持穩定,而超過這一閾值時間后用戶的情況,很可能發生變化。用戶狀態相對穩定的這一閾值時間要根據大量長期的實驗得出, 也要隨時間變化而調整。步驟五,根據步驟二和步驟三所得的查詢關鍵字向量和對應點擊向量中各項的值對用戶聚類,聚類過程采用K-means方法。K-means方法為本領域內處理聚類的一種較成熟的方法,當然采用本領域內的其它聚類方法也是可行的。步驟六,根據步驟五所得的聚類結果,計算同類用戶對各查詢關鍵字對應義項的偏好排名;排名將根據聚類在一起的各用戶對各查詢關鍵字點擊結果的頻率進行評定。此排名將為各查詢關鍵字的相應義項對應的網頁為用戶提供個性化搜索提供依據。下面將結合附圖和具體實施例來進一步說明本發明方法。
圖2、為根據用戶歷史交互信息的建模圖,即簡單表明了本發明方法中的步驟一 四。假設用戶甲、乙、丙均輸入查詢關鍵字“蘋果”,且每個用戶均只取搜索結果的前9項進行點擊,甲、乙、丙的點擊情況分別如圖2、圖3、圖4所示。從圖2、可以直觀看出,關鍵詞“蘋果”這個詞有三個義項,甲、乙、丙分別選擇點擊“蘋果”的三個不同義項,從而說明甲、 乙、丙在“蘋果”這個詞的詞義的理解上沒有分歧。不過上述點擊結果屬于理想狀態,一般情況下的點擊結果并不理想。不同用戶存在點擊的重疊,但在大量用戶的歷史交互數據的記錄中,還是可以找出統計規律。從直觀上來看,用戶對搜索結果的點擊,實際上是對一個義項標注的過程,不過,用戶標注的結果會漏掉他不感興趣的條目。鑒于此,本發明作如下假設每次某用戶一次查詢點擊信息一般情況下主要是關鍵詞的某個義項對應的網頁的子集,并且,對應關鍵詞各個義項的鏈接集之間基本無交集且并集為所有查詢結果。基于上述兩點假設,可以通過對每一用戶對關鍵詞某一義項的查詢向量進行分類處理,得到最滿足以上兩點的集合組,其個數就是該關鍵詞所對應的義項數。圖5 10為用戶廣6的聚類圖。在輸入查詢關鍵字“蘋果”后,假設每個用戶均只取搜索結果的前9項進行點擊,6個用戶點擊結果的一種理想情況如圖5 10所示。從圖中可以直觀看到,用戶1和4具有相似的點擊結果,用戶2和5具有相似的點擊結果,用戶3和 6具有相似的點擊結果。那么,在具有大量用戶的這類點擊信息時,如果某些用戶這種點擊一致性不僅表現在“蘋果”這個詞上,還表現在其他詞上,那么,就可以基于統計的特點把這樣的用戶歸為一類。這樣一來,用戶1和4就可以歸為一類,用戶2和5可以歸為一類,用戶3和6可以歸為一類。根據用戶的聚類結果,計算同類用戶對各查詢關鍵字對應義項的偏好排名,此排名將為各查詢關鍵字相應義項對應的網頁為用戶提供個性化搜索提供依據。下面將簡單說明一下本發明在個性化搜索中的應用。在輸入大量相同查詢關鍵字的用戶群中,若用戶 Γ6對大量的相同查詢關鍵字的點擊情況如圖5 10所示,則說明用戶1和4、2和5、3和6 是類似背景的人,即同一類用戶。在這種情況下,假設用戶X與用戶1和2是同一類用戶, 用戶X輸入一個查詢關鍵字A,則按照用戶1和2對查詢關鍵字A相應義項對應的點擊結果作為搜索結果返給用戶X,如圖11所示;同樣的道理,假設用戶Y與用戶2和5是同一類用戶,用戶Y輸入一個查詢關鍵字B,則按照用戶2和5對查詢關鍵字B相應義項對應的點擊結果作為搜索結果返給用戶Y。
權利要求
1.基于搜索交互信息和用戶搜索意圖的詞義提取方法,其特征在于,依次包括以下步驟步驟一,記錄每個用戶的歷史交互信息,所述的歷史交互信息包括查詢關鍵字、查詢時間和對應點擊;步驟二,根據步驟一所得的歷史交互信息,取所有用戶查詢頻率排名前Kl位的查詢關鍵字構建查詢關鍵字向量,查詢關鍵字向量中的每一項對應一特定關鍵字,其中,Kl可根據實驗表現設置;步驟三,根據步驟一所得的歷史交互信息,取每個用戶自身查詢頻率前K2位的查詢關鍵字查詢后的對應點擊結果構建對應點擊向量,并在步驟二所構建的查詢關鍵字向量中將每個用戶自身查詢頻率前K2位的查詢關鍵字所對應的項設置為1,其他設置為0,其中,K2 可根據實驗表現設置;步驟四,對任意單個高頻查詢關鍵字的點擊情況進行統計處理,即統計各用戶對任意單個高頻查詢關鍵字的點擊結果中互斥的集合,該互斥的集合的數量極為該查詢關鍵字的義項數量,每個集合中對應的網絡資源即為該集合所代表的義項中所對應的資源,所述的高頻查詢關鍵字為所有用戶查詢頻率排名前Kl位的查詢關鍵字和每個用戶自身查詢頻率前K2位的查詢關鍵字;步驟五,根據步驟二和步驟三所得的查詢關鍵字向量和對應點擊向量中各項的值對用戶聚類;步驟六,根據步驟五所得的聚類結果,計算同類用戶對各查詢關鍵字對應義項的偏好排名。
2.根據權利要求1所述的基于搜索交互信息和用戶搜索意圖的詞義提取方法,其特征在于所述的步驟五中的聚類采用K-means聚類方法。
3.根據權利要求1或2所述的基于搜索交互信息和用戶搜索意圖的詞義提取方法,其特征在于所述的步驟六中排名的計算是根據聚類在一起的各用戶對各搜索關鍵字點擊結果的頻率進行。
全文摘要
本發明公開了一種基于搜索交互信息和用戶搜索意圖的詞義提取方法,依次包括步驟記錄每個用戶的歷史交互信息;取所有用戶查詢頻率排名前K1位的查詢關鍵字構建查詢關鍵字向量;取每個用戶自身查詢頻率前K2位的查詢關鍵字查詢后的對應點擊結果構建對應點擊向量,并在查詢關鍵字向量中將每個用戶自身查詢頻率前K2位的查詢關鍵字所對應的項設置為1,其他設置為0;提取任意單個高頻查詢關鍵字的義項個數;對用戶聚類;計算同類用戶對各查詢關鍵字對應義項的偏好排名。本發明方法避免了人工標注導致的成本問題,同時,又避免了無導方法效果差或是受領域限制的問題;根據本發明方法得到的分析結果可以對單個用戶提供個性化的搜索服務。
文檔編號G06F17/27GK102339322SQ20111035465
公開日2012年2月1日 申請日期2011年11月10日 優先權日2011年11月10日
發明者呂晨, 姬東鴻, 孫程, 滕沖 申請人:武漢大學