新一代行業(yè)知識全文檢索方法
【專利摘要】一種新一代行業(yè)知識全文檢索方法,1,構(gòu)建分詞詞典:構(gòu)建分詞詞典,并將詞典信息存入數(shù)據(jù)庫;2,構(gòu)建全量索引:對已經(jīng)存在的全文文檔“也稱為知識點文檔”進行讀取、分詞和分析,建立索引文件;3,構(gòu)建增量索引:對新增的文檔進行處理,更新硬盤上的索引文件;4,構(gòu)建內(nèi)存索引,構(gòu)建內(nèi)存分詞詞典:將分詞詞典數(shù)據(jù)讀入內(nèi)存,構(gòu)建內(nèi)存分詞詞典數(shù)據(jù)結(jié)構(gòu);步驟5,全文檢索,標準化用戶問題,分詞,語義理解,語義擴展,獲取候選文檔,排序候選文檔其中,系統(tǒng)初始化的時候,構(gòu)建分詞詞典;構(gòu)建全量索引:讀取所有的知識點文檔,全量構(gòu)建硬盤索引文件“簡稱索引文件”;新增全文文檔的時候,構(gòu)建增量索引,這三個活動,獨立于全文檢索模塊,獨立運行。
【專利說明】新一代行業(yè)知識全文檢索方法
【技術(shù)領域】
[0001]本發(fā)明涉及全文檢索領域,尤其是行業(yè)知識的全文檢索領域,提出了一種新的行業(yè)知識全文檢索系統(tǒng)和方法。
【背景技術(shù)】
[0002]全文檢索是指計算機索引程序通過掃描文章中的每一個詞,對每一個詞建立一個索引,指明該詞在文章中出現(xiàn)的次數(shù)和位置,當用戶查詢時,檢索程序就根據(jù)事先建立的索引進行查找,并將查找的結(jié)果反饋給用戶的檢索方式。這個過程類似于通過字典中的檢索字表查字的過程。全文檢索是一種將文件中所有文本與檢索項匹配的文字資料檢索方法。全文檢索系統(tǒng)是按照全文檢索理論建立起來的用于提供全文檢索服務的軟件系統(tǒng)。全文檢索是將存儲于數(shù)據(jù)庫中整本書、整篇文章中的任意內(nèi)容信息查找出來的檢索。它可以根據(jù)需要獲得全文中有關章、節(jié)、段、句、詞等信息,也可以進行各種統(tǒng)計和分析。例如,它可以回答“《紅樓夢》一書中“林黛玉” 一共出現(xiàn)多少次? ”的問題。
[0003]傳統(tǒng)的全文檢索系統(tǒng)只是基于關鍵字、關鍵詞的匹配,缺乏英文、拼音、錯別字、同義詞、近義詞等多方位的語義識別和糾錯的能力。隨著客戶需求的智能要求越來越高,傳統(tǒng)的全文檢索系統(tǒng)越發(fā)顯得落后。
[0004]為了解決存在的問題,急需一種新的全文檢索系統(tǒng),它可以讓檢索更智能,具體表現(xiàn)為:可以實現(xiàn)最普遍的拼音、漢字、英文互相表達,比如用戶輸入“shengka”,系統(tǒng)可以理解出,用戶可能查詢的內(nèi)容是“聲卡”;可以實現(xiàn)錯別字糾錯,可以實現(xiàn)語義理解和語義擴充。如:用戶輸入“商務領航”、“上午領航”、“shangmilinghang”、“Shwlh”都可達到“商務領航”的搜索效果;用戶輸入“寬帶怎么辦理”、“怎么安裝寬帶”、“給俺弄個寬帶”、“我想開通寬帶”等等意思相近的甚至口語化的檢索形式,也能正確返回相關“寬帶辦理”的答案。
【發(fā)明內(nèi)容】
[0005]針對上述問題,本發(fā)明在傳統(tǒng)的基于關鍵字、詞匹配的全文檢索系統(tǒng)基礎上,增加了英文、拼音、錯別字、同義詞、近義詞等多方位的語義識別和糾錯功能,又增加了上下位、屬性識別等語義擴展能力。本發(fā)明是一款具有語義理解語義擴展功能的全文檢索系統(tǒng)。
[0006]技術(shù)方案:為了解決以上問題本發(fā)明提供了一種新一代行業(yè)知識全文檢索方法,其特征在于:包括以下步驟:
步驟1,構(gòu)建分詞詞典:構(gòu)建分詞詞典,并將詞典信息存入數(shù)據(jù)庫;
步驟2,構(gòu)建全量索引:對已經(jīng)存在的全文文檔“也稱為知識點文檔”進行讀取、分詞和分析,建立索引文件;
步驟3,構(gòu)建增量索引:對新增的文檔進行處理,更新硬盤上的索引文件;
步驟4,構(gòu)建內(nèi)存索引,包括:
步驟4-1,構(gòu)建內(nèi)存分詞詞典:將分詞詞典數(shù)據(jù)讀入內(nèi)存,構(gòu)建內(nèi)存分詞詞典數(shù)據(jù)結(jié)
構(gòu); 步驟4-2,構(gòu)建全量內(nèi)存索引:從硬盤上讀取索引文件,全量構(gòu)建內(nèi)存索引;
步驟4-3,構(gòu)建增量內(nèi)存索引:對新增的文檔進行處理,實現(xiàn)內(nèi)存索引增量更新;
步驟5,全文檢索,包括:
步驟5-1,標準化用戶問題:接受用戶咨詢的問題并進行標準化處理“也稱規(guī)范化 處理”,去掉冗余詞、去掉不影響語義信息的沒用的標點符號,識錯糾錯、別稱標準化; 步驟5-2,分詞:對標準化后的問題進行分詞;
步驟5-3,語義理解:對分詞結(jié)果進行處理,提取出問題中出現(xiàn)的分詞的所屬詞類或 者標準詞,獲取分詞語義信息;
步驟5-4,語義擴展:對分詞語義信息進行語義擴展,得到擴展后的語義信息,這些 語義擴展信息,使用一些詞或詞類表示;
步驟5-5,獲取候選文檔:利用語義擴展后得到的詞或者詞類“這些詞或詞類代表 擴展后的語義信”,根據(jù)內(nèi)存索引信息,搜索相應的全文文檔,作為候選文檔;
步驟5-6,排序候選文檔:對候選文檔進行多角度的評分排名,評分越高,排名越 靠前,排序后的候選文檔成為最終的全文檢索結(jié)果;
其中,系統(tǒng)初始化的時候,構(gòu)建分詞詞典;構(gòu)建全量索引:讀取所有的知識點文檔,全量構(gòu)建硬盤索引文件“簡稱索引文件”;新增全文文檔的時候,構(gòu)建增量索引。這三個活動,獨立于全文檢索模塊,獨立運行。
[0007]步驟I所述的構(gòu)建分詞詞典,主要是實現(xiàn)分詞詞典的構(gòu)建,構(gòu)建的分詞詞典是“二級分詞詞典”,其構(gòu)造方法如下:
步驟1-1,根據(jù)《通用分詞詞表》+《業(yè)務詞表》,構(gòu)成一級分詞;
其中,《通用分詞詞表》采用中科院計算所詞表作為通用分詞詞表,《業(yè)務詞表》包含了行業(yè)相關的專有名詞,可通過導入行業(yè)內(nèi)的業(yè)務名稱構(gòu)建;
步驟1-2,自動將一級分詞進行細分,構(gòu)成候選二級分詞;
步驟1-3,人工篩選候選二級分詞;
構(gòu)建后的二級分詞詞典格式如下:一級分詞二級分詞數(shù)組(用I分割)。
[0008]步驟2所述的構(gòu)建全量索引,主要功能是實現(xiàn)數(shù)據(jù)索引文件的全量構(gòu)建,其主要過程如下:
步驟2-1,讀取每一個知識點文檔,對知識點文檔進行分詞:分詞過程中將普通的分詞詞典和具有了語義關系的上下位詞典結(jié)合在一起,產(chǎn)生了多組分詞結(jié)果,并且根據(jù)每組結(jié)果中所包含的詞的個數(shù)以及詞的長度進行了排序,分詞的時候,按行讀取,然后在將每一行按照一些標點符號進行截取,得到小段的文字,依照分詞詞典和上下位詞類“所謂詞類就是具有同樣或者相近意思的一組詞的一個統(tǒng)稱”詞典進行分詞,對于到底是用詞類還是用詞來建立索引,做了以下的規(guī)定,
①如果一個詞有詞類并且只有一個詞類“并且不是冗余詞類”那么就用詞類名來建立索引;
②如果一個詞有詞類并且不止一個,則需要對這個詞的每一個詞類“不包含冗余詞類”建立索引;
③如果一個詞在詞典中,但是不存在詞類,就用這個詞的本事來建立索引;
④如果一個詞在詞典中,并且是冗余詞類,則不對其建立索引;步驟2-2,建立索引,對每個詞/詞類建立索引結(jié)構(gòu)。
[0009]所述的步驟2-2還包括以下步驟:
步驟2-2-1,建立索引文件:索引是一種用來從索引詞找到對應文檔的方法,英文文本中單詞直接用空白分隔進行分詞,中文文本采用中國科學院計算技術(shù)研究所的分詞工具ICTClass進行中文分詞,分詞后產(chǎn)生的詞作為索引詞直接進行詞級或詞類級的索引;
索引構(gòu)建中采用倒排文件“inverted file”方式建立,其處理過程是:依次處理每篇文檔記錄它包含的每個詞的出現(xiàn)位置,同時詞屬于詞類,這樣對每篇文檔中出現(xiàn)的每個詞可以產(chǎn)生一個三元組〈DocID(文檔 ID), TermID (詞 ID) |WordClassID (詞類 ID),Positions(多個位置信息)>,其中Positions代表索引詞TermID在DocID中出現(xiàn)的位置,
索引結(jié)構(gòu)包括:
〈ItemID I WordClassID (詞ID詞類ID),〈DocID (文檔的ID),〈詞在文檔中的起始位置和所在的行數(shù) < 索引對象>>>>
此結(jié)構(gòu)是一個三級索引的對象,從內(nèi)到外的介紹如下:
最內(nèi)層的索引對象:
int StartIndex;// 一條索引中詞或者詞類出現(xiàn)的起始位置 short int Length;//詞或者詞類的長度 第三層的結(jié)構(gòu):NkiInt2Ptr類型〈詞在文檔中的起始位置和所在行數(shù),〈索引對象〉 第二層的結(jié)構(gòu):NkiString2Ptr類型〈文檔的ID,第三層的結(jié)構(gòu)>
第一層的結(jié)構(gòu):NkiString2Ptr類型〈詞類/詞,第二層的結(jié)構(gòu)>
索引中每個字段的含義:
詞類/詞:是對文檔內(nèi)容進行分詞以后得到的;
文檔的ID:是文檔的唯一標識,因為一個詞類/詞可能出現(xiàn)在多個文檔中,此處用文檔名代替;
詞在文檔中的起始位置:由于一篇文檔中也可能有同一個詞的多次出現(xiàn),這個信息的記錄也是為后期的評分階段需要用的詞和詞之間的距離的計算;
詞在文檔中的行數(shù):根據(jù)知識點文檔的格式,第一行是知識點所在的業(yè)務,第二行是知識點的概括,第三行是知識點的具體內(nèi)容,根據(jù)這個索引結(jié)構(gòu)就可以建立起所有的要檢索的知識點文檔的索引;
步驟2-2-2,壓縮索 引文件:對于每一個順串文件需要以TermID(WordClassID)為序存儲了大量〈TermID, DocID, Freq, posl, pos2, pos3,…,pos freq> 結(jié)構(gòu),當 TermID相同時,以DocID為序遞增;在此結(jié)構(gòu)內(nèi)部,位置信息pos也按遞增排列;壓縮時,第一步要進行游程編碼,也就是把遞增整數(shù)序列變換為差分序列“原來相鄰整數(shù)之間的增量序列”;第二步,用某種編碼方法對小整數(shù)進行編碼,以實現(xiàn)壓縮;隨后對所有順串文件歸并,得到最終的倒排文件索引;最終倒排文件中每一項的編碼方法和產(chǎn)生順串文件時的編碼方法是一樣的,只是少了 TermID ;米用Delta Code編碼方法,把整數(shù)χ>=1編碼為l+ljogij的Gama Code表示’后接卩呢^^位^-^^^的二進制表示;當一個文檔集中出現(xiàn)的〈term,doc>對總數(shù)為f,將它除以不同索引詞的總數(shù)n,再除以文檔總數(shù)N,得到P = f/(N*n),它表示任何隨機選取的文檔包含任何隨機選取的索引詞的概率,一個索引詞在文檔中出現(xiàn)一次就需要在倒排文件索引中記錄一個DocID增量值,當?shù)古盼臋n中出現(xiàn)的f個〈term, doc>對是從文檔集所有可能的N*n個〈term, doc>對中隨機選取的,這個過程視為一個貝努利過程,有了這個假設,DocID增量為X的概率可以表示為文檔中連續(xù)x-1個非特定索引詞后接著出現(xiàn)一次某個特定索引詞的概率,即
【權(quán)利要求】
1.一種新一代行業(yè)知識全文檢索方法,其特征在于:包括以下步驟: 步驟1,構(gòu)建分詞詞典:構(gòu)建分詞詞典,并將詞典信息存入數(shù)據(jù)庫; 步驟2,構(gòu)建全量索引:對已經(jīng)存在的全文文檔“也稱為知識點文檔”進行讀取、分詞和分析,建立索引文件; 步驟3,構(gòu)建增量索引:對新增的文檔進行處理,更新硬盤上的索引文件; 步驟4,構(gòu)建內(nèi)存索引,包括: 步驟4-1,構(gòu)建內(nèi)存分詞詞典:將分詞詞典數(shù)據(jù)讀入內(nèi)存,構(gòu)建內(nèi)存分詞詞典數(shù)據(jù)結(jié)構(gòu); 步驟4-2,構(gòu)建全量內(nèi)存索引:從硬盤上讀取索引文件,全量構(gòu)建內(nèi)存索引; 步驟4-3,構(gòu)建增量內(nèi)存索引:對新增的文檔進行處理,實現(xiàn)內(nèi)存索引增量更新; 步驟5,全文檢索,包括: 步驟5-1,標準化用戶問題:接受用戶咨詢的問題并進行標準化處理“也稱規(guī)范化 處理”,去掉冗余詞、去掉不影響語義信息的沒用的標點符號,識錯糾錯、別稱標準化; 步驟5-2,分詞:對標準化后的問題進行分詞; 步驟5-3,語義理解:對分詞結(jié)果進行處理,提取出問題中出現(xiàn)的分詞的所屬詞類或 者標準詞,獲取分詞語義信息; 步驟5-4,語義擴展:對分詞語義信息進行語義擴展,得到擴展后的語義信息,這些 語義擴展信息,使用一些詞或詞類表示; 步驟5-5,獲取候選文檔:利用語義擴展后得到的詞或者詞類“這些詞或詞類代表 擴展后的語義信”,根據(jù)內(nèi)存索引信息,搜索相應的全文文檔,作為候選文檔; 步驟5-6,排序候選文檔:對候選文檔進行多角度的評分排名,評分越高,排名越 靠前,排序后的候選文檔成為最終的全文檢索結(jié)果; 其中,系統(tǒng)初始化的時候,構(gòu)建分詞詞典;構(gòu)建全量索引:讀取所有的知識點文檔,全量構(gòu)建硬盤索引文件“簡稱索引文件”;新增全文文檔的時候,構(gòu)建增量索引,這三個活動,獨立于全文檢索模塊,獨立運行。
2.根據(jù)權(quán)利要求1所述的新一代行業(yè)知識全文檢索方法,其特征在于:步驟I所述的構(gòu)建分詞詞典,主要是實現(xiàn)分詞詞典的構(gòu)建,構(gòu)建的分詞詞典是“二級分詞詞典”,其構(gòu)造方法如下: 步驟1-1,根據(jù)《通用分詞詞表》+《業(yè)務詞表》,構(gòu)成一級分詞; 其中,《通用分詞詞表》采用中科院計算所詞表作為通用分詞詞表,《業(yè)務詞表》包含了行業(yè)相關的專有名詞,可通過導入行業(yè)內(nèi)的業(yè)務名稱構(gòu)建; 步驟1-2,自動將一級分詞進行細分,構(gòu)成候選二級分詞; 步驟1-3,人工篩選候選二級分詞; 構(gòu)建后的二級分詞詞典格式如下:一級分詞二級分詞數(shù)組(用I分割)。
3.根據(jù)權(quán)利要求1所述的新一代行業(yè)知識全文檢索方法,其特征在于:步驟2所述的構(gòu)建全量索引,主要功能是實現(xiàn)數(shù)據(jù)索引文件的全量構(gòu)建,其主要過程如下: 步驟2-1,讀取每一個知識點文檔,對知識點文檔進行分詞:分詞過程中將普通的分詞詞典和具有了語義關系的上下位詞典結(jié)合在一起,產(chǎn)生了多組分詞結(jié)果,并且根據(jù)每組結(jié)果中所包含的詞的個數(shù)以及詞的長度 進行了排序,分詞的時候,按行讀取,然后在將每一行按照一些標點符號進行截取,得到小段的文字,依照分詞詞典和上下位詞類“所謂詞類就是具有同樣或者相近意思的一組詞的一個統(tǒng)稱”詞典進行分詞,對于到底是用詞類還是用詞來建立索引,做了以下的規(guī)定, ①如果一個詞有詞類并且只有一個詞類“并且不是冗余詞類”那么就用詞類名來建立索引; ②如果一個詞有詞類并且不止一個,則需要對這個詞的每一個詞類“不包含冗余詞類”建立索引; ③如果一個詞在詞典中,但是不存在詞類,就用這個詞的本事來建立索引; ④如果一個詞在詞典中,并且是冗余詞類,則不對其建立索引; 步驟2-2,建立索引,對每個詞/詞類建立索引結(jié)構(gòu)。
4.根據(jù)權(quán)利要求3所述的新一代行業(yè)知識全文檢索方法,其特征在于:所述的步驟2-2還包括以下步驟: 步驟2-2-1,建立索引文件:索引是一種用來從索引詞找到對應文檔的方法,英文文本中單詞直接用空白分 隔進行分詞,中文文本采用中國科學院計算技術(shù)研究所的分詞工具ICTClass進行中文分詞,分詞后產(chǎn)生的詞作為索引詞直接進行詞級或詞類級的索引; 索引構(gòu)建中采用倒排文件“inverted file”方式建立,其處理過程是:依次處理每篇文檔記錄它包含的每個詞的出現(xiàn)位置,同時詞屬于詞類,這樣對每篇文檔中出現(xiàn)的每個詞可以產(chǎn)生一個三元組〈DocID(文檔 ID), TermID (詞 ID) |WordClassID (詞類 ID),Positions(多個位置信息)>,其中Positions代表索引詞TermID在DocID中出現(xiàn)的位置, 索引結(jié)構(gòu)包括: 〈ItemID I WordClassID (詞ID詞類ID),〈DocID (文檔的ID), <詞在文檔中的起始位置和所在的行數(shù) < 索引對象>>>> 此結(jié)構(gòu)是一個三級索引的對象,從內(nèi)到外的介紹如下: 最內(nèi)層的索引對象:
int StartIndex;// 一條索引中詞或者詞類出現(xiàn)的起始位置 short int Length;//詞或者詞類的長度 第三層的結(jié)構(gòu):NkiInt2Ptr類型〈詞在文檔中的起始位置和所在行數(shù),〈索引對象〉 第二層的結(jié)構(gòu):NkiString2Ptr類型〈文檔的ID,第三層的結(jié)構(gòu)> 第一層的結(jié)構(gòu):NkiString2Ptr類型〈詞類/詞,第二層的結(jié)構(gòu)> 索引中每個字段的含義: 詞類/詞:是對文檔內(nèi)容進行分詞以后得到的; 文檔的ID:是文檔的唯一標識,因為一個詞類/詞可能出現(xiàn)在多個文檔中,此處用文檔名代替; 詞在文檔中的起始位置:由于一篇文檔中也可能有同一個詞的多次出現(xiàn),這個信息的記錄也是為后期的評分階段需要用的詞和詞之間的距離的計算; 詞在文檔中的行數(shù):根據(jù)知識點文檔的格式,第一行是知識點所在的業(yè)務,第二行是知識點的概括,第三行是知識點的具體內(nèi)容,根據(jù)這個索引結(jié)構(gòu)就可以建立起所有的要檢索的知識點文檔的索引; 步驟2-2-2,壓縮索引文件:對于每一個順串文件需要以TermID(WordClassID)為序存儲了大量〈TermID,DocID, Freq, posl, pos2, pos3,…,pos freq> 結(jié)構(gòu),當 TermID相同時,以DocID為序遞增;在此結(jié)構(gòu)內(nèi)部,位置信息pos也按遞增排列;壓縮時,第一步要進行游程編碼,也就是把遞增整數(shù)序列變換為差分序列“原來相鄰整數(shù)之間的增量序列”;第二步,用某種編碼方法對小整數(shù)進行編碼,以實現(xiàn)壓縮;隨后對所有順串文件歸并,得到最終的倒排文件索引;最終倒排文件中每一項的編碼方法和產(chǎn)生順串文件時的編碼方法是一樣的,只是少了 TermID ;米用Delta Code編碼方法,把整數(shù)χ>=1編碼為1口0明扣的Gama Code表示,后接自明扣位χ[] 的二進制表示;當一個文檔集中出現(xiàn)的〈term,doc>對總數(shù)為f,將它除以不同索引詞的總數(shù)η,再除以文檔總數(shù)N,得到P = f/(N*n),它表示任何隨機選取的文檔包含任何隨機選取的索引詞的概率,一個索引詞在文檔中出現(xiàn)一次就需要在倒排文件索引中記錄一個DocID增量值,當?shù)古盼臋n中出現(xiàn)的f個〈term, doc>對是從文檔集所有可能的N*n個〈term, doc>對中隨機選取的,這個過程視為一個貝努利過程,有了這個假設,DocID增量為X的概率可以表示為文檔中連續(xù)x-1個非特定索引詞后接著出現(xiàn)一次某個特定索引詞的概率,即;Prk]CUlOjCnl P,說明X符合幾何分布,這里隱含的條件是〈term,doc>對的出現(xiàn)是獨立同分布“貝奴利分布”的。
5.根據(jù)權(quán)利要求1所述的新一代行業(yè)知識全文檢索方法,其特征在于:步驟4所述的構(gòu)建內(nèi)存索引:完成增量內(nèi)存索引、全量內(nèi)存索引和內(nèi)存分詞詞典的構(gòu)建,主要過程包括: 步驟4-1,構(gòu)建內(nèi)存分詞詞典:將分詞詞典數(shù)據(jù)讀入內(nèi)存,構(gòu)建內(nèi)存分詞詞典數(shù)據(jù)結(jié)構(gòu); 步驟4-2,構(gòu)建全量內(nèi)存索引: 對Tokeni中的所有分詞Wi: 若Wi不為單字{` 若Wi有詞類Ci,則用Ci進行索引到文檔集合D=W1, d2,…}; 否則,用Wi進行索引;
} 否則,用Wi進行索引; 步驟4-3,構(gòu)建增量內(nèi)存索引; 步驟4-3-1,對增量文檔進行分詞; 步驟4-3-2,增量更新現(xiàn)有的分詞詞典內(nèi)存結(jié)構(gòu); 步驟4-3-3,增量更新現(xiàn)有的內(nèi)存索引。
6.根據(jù)權(quán)利要求1所述的新一代行業(yè)知識全文檢索方法,其特征在于:步驟5所述的全文檢索:全文檢索過程如下: 步驟5-1,標準化用戶問題:接受用戶咨詢的問題并進行標準化處理“也稱規(guī)范化處理”,去掉冗余詞、去掉不影響語義信息的沒用的標點符號,識錯糾錯、別稱標準化; 步驟5-2,分詞:對標準化后的問題進行分詞; 步驟5-2-1,對用戶query進行分詞; 步驟5-2-2,話務員輸入關鍵詞組,設為query ; 步驟5-2-3,對query根據(jù)一級、二級分詞分詞,得到多組分詞結(jié)果,稱為糾錯前分詞Segl ;步驟5-2-4,對糾錯前分詞進行糾錯處理,得到多組分詞結(jié)果,稱為糾錯后分詞Seg2,設為Seg=Segl U Seg2= {(W1, W2,…}},分詞結(jié)果按照分詞個數(shù)由少到多排序;糾錯過程: (1)首先用糾錯詞典糾錯; (2)然后用統(tǒng)計信息糾錯; 糾錯如提條件: (I)對query中的每個word,記未糾錯的word搜索歷史頻度T,糾錯后的keyword搜索歷史頻度T’, a)若T’?T,則用糾錯后進行檢索,且給出提示; b)否則,用糾錯前檢索; 步驟5-3,語義理解:對分詞結(jié)果進行處理,提取出問題中出現(xiàn)的分詞的所屬詞類或 者標準詞,獲取分詞語義信息; 步驟5-3-1,分詞結(jié)果詞類化,結(jié)果為Token=HW1 (C1)1W2 (C2),...}};使用詞類來表示分詞的含義,每一個分詞,可以存在多個含義,即可以屬于不同的詞類,Tokeni表示第I組分詞; 步驟5-3-2,咨詢歷史查詢 從咨詢歷史庫中,找到與query最相似的咨詢歷史query’,找到后,返回query’的檢索結(jié)果作為Topl文檔; 咨詢相似度定義如下:`
Sim (Tokeni (query) , Tokenj (query' ) ) = S i m ( {W I (Cl) , W 2 ( ' ),...},K,(Cl,),w2’(W2,),…})
=avg (sem_sim(Ci, Ci') + (1-a) *syn_sim (Wi, Wi')) (1)其中avg()是均值函數(shù);
(2)sem_sim(Ci, Ci') =1 (if ci U ci,! = Φ )
Oelse (Skyrusim^W/) =組成WjPW/中相同字符的個數(shù)/ WjPW/中互不相同的字符個數(shù); 步驟5-4,語義擴展:對分詞語義信息進行語義擴展,得到擴展后的語義信息,這些語義擴展信息,使用一些詞或詞類表示,對Tokeni進行同義詞擴展,擴展后的分詞記為ETokeni 步驟5-5,獲取候選文檔:利用語義擴展后得到的詞或者詞類“這些詞或詞類代表擴展后的語義信”,根據(jù)內(nèi)存索引信息,搜索相應的全文文檔,作為候選文檔; 步驟5-6,排序候選文檔:對候選文檔進行多角度的評分排名,評分越高,排名越 靠前,排序后的候選文檔成為最終的全文檢索結(jié)果; 對D中的所有文檔進行評分;評分考慮以下因素: (1)SegNum:query 分詞數(shù); (2)Segffordffgt:分詞自身權(quán)重“標題、業(yè)務、摘要中的詞權(quán)重高”; (3)Docffordffgt:分詞在文檔中的權(quán)重; (4)DocHits:被索引到文檔的點擊量; (5)DocTime:被索引到文檔的時間;(6)Hitffordffgts:在文檔中出現(xiàn)的query中詞的權(quán)重; (7)Missedffordffgts:在文檔中未出現(xiàn)的query中詞的權(quán)重; (8)WordSpan(W1, W2,…,d):query中多個分詞兩兩在文檔中的距離; 步驟5-6-1
Credit(d)=Hitffordffgts/( Hitffordffgts + Missedffordffgts)
Wordffgt(wi, d)=doc_word_wgt(wi, d)*Posiffgt(wi)
Doc_word_wgt (wi, d) = tf idf (wi, d)={ 2.0 (需調(diào)),if word出現(xiàn)在標題或業(yè)務中 Posiffgt (wi) = { 1.5 (需調(diào)),if word 出現(xiàn)在摘要中 { 1.0, else 步驟5-6-2
Credit (d) *= l/log2 (SegNum+1) 把Credit (d) Top_N (N待定)按時間排序; 步驟5-6-3 Credit (d) /= (WordSpan (wl***wn, d)+l)WordSpan(wl***wn, d) =Sum(l〈=i〈j〈=n 間隔字數(shù)的函數(shù)(wi,wj)) 步驟5-7,咨詢歷史保存
系統(tǒng)第一次 Topl 給出=Token1=W1 (C1)W2 (C2) -Wn(Cn) dk
用戶選擇:Token2= W1' (C/)W2’ (C2X (Cn,) d』
若 k ! = j,且(HistoryTopl (Token2) = Φ )或者(HistoryTopl (Token2) !=dk) 則提示用戶進行反饋,反饋實現(xiàn)如下: 步驟5-7-1,在j>2時,在話務員查看文檔后,關閉時,彈出反饋對話框,以確認用戶對查詢的結(jié)果是否滿意; 步驟5-7-2 ,若話務員選是,那么保存HistoryTopl (Token2) =dj,保存格式如下: <Query, Token2, doc_type (文檔類型),doc_id (文檔 ID) , doc_id_value (文檔 ID值)>。
7.根據(jù)權(quán)利要求6所述的新一代行業(yè)知識全文檢索方法,其特征在于:所述的全文檢索的檢索粒度,分別是“Service”、“Topic”、“Abstract”和“Mix”,其中Service (業(yè)務)代表了全文文檔業(yè)務分類信息;Topic (主題)代表了業(yè)務的一級知識點;Abstract (摘要)代表了最細粒度的知識點,是最精細的查詢,Mix (混合)代表了各個知識粒度都返回。
【文檔編號】G06F17/30GK103823799SQ201210461748
【公開日】2014年5月28日 申請日期:2012年11月16日 優(yōu)先權(quán)日:2012年11月16日
【發(fā)明者】王衛(wèi)民, 符建輝, 王石 申請人:鎮(zhèn)江諾尼基智能技術(shù)有限公司