TWI485570B - Information retrieval method and its system - Google Patents
Information retrieval method and its system Download PDFInfo
- Publication number
- TWI485570B TWI485570B TW099106912A TW99106912A TWI485570B TW I485570 B TWI485570 B TW I485570B TW 099106912 A TW099106912 A TW 099106912A TW 99106912 A TW99106912 A TW 99106912A TW I485570 B TWI485570 B TW I485570B
- Authority
- TW
- Taiwan
- Prior art keywords
- document
- word
- index data
- keyword
- text
- Prior art date
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本申請案係有關通信領域中的全文資料檢索技術,尤其有關一種資訊檢索方法和資訊檢索系統。
伴隨著網際網路搜索引擎技術的飛速普及以及網際網路搜索企業的快速發展,資訊檢索系統(也被稱為搜索引擎)已經成為越來越多的人使用網際網路時必不可少的工具。
人們在使用搜索引擎的時候,通常的使用場景是透過輸入查詢詞,然後從搜索引擎後端獲取需要的搜索結果。而組成搜索結果的三大要素為:標題、摘要和網址鏈結(業界俗稱TAU,為Title、Abstract、Url三個英文單詞的首字母縮寫)。而摘要(Abstract)在這三大要素中,就資訊量而言,其所含資訊量最大;從最終頁面顯示效果而言,其佔據最大篇幅;從最終用戶感受而言,其能夠在很大程度上決定搜索結果的正確與否,使用戶能夠根據摘要所提供的資訊而判斷搜索的結果是否為用戶所需要者。因此,一套高性能、可伸縮、易定制並且人機界面優秀的摘要產生系統,是每一個搜索引擎(亦即,資訊檢索系統)不可或缺的重要組成部分。
傳統的摘要產生方法是根據用戶所輸入的查詢詞即時檢索全文資料,並在全文資料的檢索結果的基礎上,透過計算詞頻、詞距以及其他參數,經由文本匹配和加權記分等演算法,而提取出與查詢詞最相匹配的文本段落作為摘要,然後將包含有標題、摘要和網址鏈結的檢索結果返回給檢索用戶端,以供最終展現。
由於利用傳統的搜索引擎進行資訊檢索時,需要在整個全文資料中進行匹配檢索,摘要的產生也是依據全文資料,因為全文資料通常資訊量大,所以會導致檢索時間較長、檢索效率較低。
本申請案實施例提供一種資訊檢索方法及其系統,用以解決現有資訊檢索技術中檢索效率低的問題。
本申請案所提供的資訊檢索方法,應用於每個文檔對應有正排索引資料的資訊檢索系統,其中,每個文檔的正排索引資料以該文檔中的各單詞做為索引,以記錄各單詞在該文檔中的位置,該方法包括以下步驟:接收查詢詞,透過分詞處理而獲得到該查詢詞中所包含的關鍵字;透過所述資訊檢索系統的倒排索引資料來查找與所述關鍵字匹配的文檔,及與所述文檔對應的正排索引資料;以及根據與所述文檔對應的正排索引資料而確定出所述文檔的摘要,將所述文檔的摘要及文檔的資訊作為檢索結果而進行輸出。
本申請案所提供的資訊檢索系統,包括儲存有該系統倒排索引資料和每個文檔對應的正排索引資料的儲存模組,其中,每個文檔的正排索引資料以該文檔中的各單詞做為索引,以記錄各單詞在該文檔中的位置,該系統還包括:輸入模組,用以接收輸入到該系統的查詢詞;檢索模組,用以對所述查詢詞進行分詞處理而獲得到其所包含的關鍵字,透過所述倒排索引資料來查找與所述關鍵字匹配的文檔,及與所述文檔對應的正排索引資料;根據與所述文檔對應的正排索引資料而確定出所述文檔的摘要;以及輸出模組,用以將所述文檔的摘要及文檔的資訊作為檢索結果而進行輸出。
本申請案的上述實施例,利用倒排索引資料進行資訊檢索,獲得到與查詢詞匹配的文檔後,利用文檔的正排索引資料而產生文檔的摘要,從而充分利用了文檔的正排索引資料比全文資料的資料量少但內容描述具有一定準確性的特點,與傳統資訊檢索系統透過全文檢索所獲得到的檢索結果相比,可提高進行查詢詞匹配檢索的效率,以及提高摘要產生的效率,同時還能在一定程度上確保檢索結果以及產生的摘要的準確性。
下面結合附圖而對本申請案實施例進行詳細描述。
本申請案實施例所提供的資訊檢索方法應用於資訊檢索系統,該資訊檢索系統中不僅要保存文檔(亦即全文資料,以下同)集合的倒排索引資料,還要能夠提供每個文檔對應的獨立的正排索引資料。目前的通用資訊檢索系統中,通常包含有文檔集合的倒排索引資料,同時包含每篇文檔對應的獨立的正排索引資料(例如通用的PostgreSQL,開源軟體的全文檢索系統)。針對暫不包含每篇文檔獨立的正排索引資料的資訊檢索系統,可以採用各種技術方案而從整個文檔集合的倒排索引資料中獲得到每個文檔獨立的正排索引資料,該過程可以在離線狀態下完成,但不會對資訊檢索系統線上提供資訊檢索服務的性能造成影響。
所謂文檔集合的倒排索引資料就是根據單詞建立的文檔索引,例如,每個單詞在資料庫中是一條記錄,單詞作為關鍵字,後面跟著文檔標識ID、位置等資訊。假設有3篇文檔:file1、file2和file3,文檔內容如下:
file1(單詞1,單詞2,單詞3,單詞4....)
file2(單詞a,單詞b,單詞c,單詞d,單詞a,單詞c,單詞d....)
file3(單詞1,單詞a,單詞3,單詞d....)
上述文檔所組成的文檔集合的倒排索引資料包括:
單詞1(file1,file3),單詞2(file1),單詞3(file1,file3),單詞a(file2,file3)等等。
所謂文檔的正排索引資料就是根據該文檔中包括的單詞建立的單詞位置在該文檔的索引。例如,對於上述file2文檔,如果各單詞在file2出現的位置依次記為pos1,pos2…,則其正排索引資料為:
file2(單詞a:pso1,pos5;單詞b:pos2;單詞c:pos3,pos6;單詞d:pos4,pos7…)可見,根據文檔及其倒排索引資料,可以獲得到各文檔各自的正排索引資料。
為了便於資料維護和管理,文檔集合及其倒排索引資料,以及各文檔獨立的正排索引資料可以以資料庫的形式來予以組織,當然也可以以其他形式來予以組織,諸如,檔案形式。本申請案中的實施例按照以資料庫形式所組織的文檔集合及各文檔獨立的正排序索引資料為例來進行描述。
參見圖1,為本申請案實施例中的資訊檢索系統來為用戶提供資訊檢索服務的流程示意圖。以下流程中的資訊檢索系統,包括儲存有文檔全文資料的全文資料庫,以及儲存有倒排索引資料的倒排索引庫和儲存有各文檔各自對應的正排索引資料的正排索引庫,全文資料庫與正排索引庫,以及全文資料庫與倒排索引庫之間透過定義的索引(諸如,文檔ID)關聯,使各文檔的正排索引與其文檔一一對應。
基於上述資訊檢索系統的資訊檢索流程包括:步驟101,資訊檢索系統接受用戶提交的查詢詞。
資訊檢索系統可為用戶提供資訊檢索介面,該介面可為用戶提供輸入查詢詞以及提交查詢詞到資訊檢索系統的操作命令。用戶輸入的查詢詞可以是單詞,也可以是由多個單詞組成短語,還可以是透過關係運算符(and、or等)連接的多個單詞(或短語)。
步驟102,資訊檢索系統對用戶提交的查詢詞進行分詞處理,獲得到查詢詞中包含的所有關鍵字,然後透過倒排索引庫中的倒排索引資料而找到與這些關鍵字匹配的文檔,並根據找到的各文檔從正排索引庫中找到這些文檔所對應的正排索引資料,並分別根據每個文檔的正排索引資料產生各文檔的摘要,將產生的文檔摘要以及對應文檔的標題、Url等資訊作為檢索結果。
在該步驟中,資訊檢索系統確定出與關鍵字匹配的文檔後,可獲得這些文檔各自對應的正排索引資料。由於資訊檢索系統檢索出的文檔可為多個,為了提高資訊檢索結果對於用戶的可用性以及提高用戶感受,資訊檢索系統可以按照文檔與關鍵字的匹配程度從高到低對檢索到的文檔進行排序,從而得到對應的文檔ID序列。
步驟103,資訊檢索系統根據產生的檢索結果以及文檔ID序列而輸出檢索結果,檢索結果可呈現在資訊檢索系統提供的檢索結果介面上,檢索結果可包括:文檔的標題、Url和文檔摘要。文檔摘要通常都包含有關鍵字,較佳地,可以是文檔中與關鍵字匹配程度高的那部分文本內容。
在該步驟中,資訊檢索系統可根據上個步驟而獲得到的文檔ID序列,從全文資料庫中獲得對應文檔的標題、Url等資訊(在通常的情況下,全文索引庫可使用文檔ID、標題、Url等作為文檔全文內容的索引資料),當然,如果正排索引庫中也包含有文檔標題和Url等資訊,也可以直接從正排索引庫中獲得這些資訊,然後按照該文檔ID序列的順序來進行輸出或顯示。資訊檢索系統還可對輸出的檢索結果的格式和文檔摘要的長度進行規定。
上述資訊檢索系統,如圖2所示,可包括以下功能模組:輸入模組21、檢索模組22和輸出模組23,還包括全文資料庫24、倒排索引庫25和正排索引庫26。其中,全文檢索資料庫24中儲存有各文檔的全文資料,可以用文檔ID、文檔標題、Url作為索引來儲存文檔的全文資料;倒排索引庫25中儲存有倒排索引資料;正排索引庫26中儲存有各文檔各自的正排索引資料。各模組所實現的功能可分別與上述流程中的相應步驟對應。其中,檢索模組22可進一步包括檢索子模組221、摘要產生子模組222和結果提交子模組223。
下面結合圖2所示的資訊檢索系統,對資訊檢索的流程做進一步詳細描述。
輸入模組21接收用戶提交的查詢詞後,將該查詢詞提交到檢索模組22;檢索模組22對查詢詞進行分詞處理後獲得到關鍵字,根據該關鍵字在倒排索引庫25中進行檢索,以檢索出與關鍵字匹配的文檔,然後根據正排索引庫26中的相應文檔的正排索引資料而產生該文檔的摘要,然後將包含有文檔摘要的檢索結果提交給輸出模組23,其中,如果需要輸出文檔的標題和Url,還可進一步從全文資料庫24或倒排索引資料庫25中獲取文檔標題和Url;輸出模組23接收到檢索結果後輸出該檢索結果。
對於每個與關鍵字匹配的文檔,檢索模組22可透過掃描正排索引庫26中相應正排索引資料中的每一個單詞,建立所有單詞的正排序列和僅包括關鍵字的正排索引序列,然後根據這兩個序列而確定出文檔摘要文本段在該正排序列或全文資料中的起始和終止位置,從而獲得到文檔摘要。檢索模組22的資訊檢索功能的具體實現過程需要一些變數,這些變數可包括:文檔ID序列:用以儲存檢索到的文檔的ID;Array_A陣列:用以儲存檢索到的文檔所包含的所有單詞的正排序列,該正排序列按序記錄了各單詞文本及其在該文檔全文資料中出現的位置,可以用單詞文本與位置鏈表的形式表現,例如:
Array_A記錄有(pos1:word1,pos2:word2,pos3:word3,pso4:word1……)
其中,pos表示相應單詞文本的第一個字元在全文資料中的字元位置,word表示單詞文本。亦即,Array_A中以單詞位置做為索引來記錄各單詞的文本。
Map_A陣列:用以儲存對查詢詞進行分詞處理後獲得到的各關鍵字的正排索引序列,該正排索引序列記錄了各關鍵字在相應文檔全文資料中出現的位置,可以用紅黑樹結構(紅黑樹是一種特定類型的二叉樹,它是在電腦科學中用來組織資料比如數位的塊的一種結構。所有資料塊都被儲存在節點中。)組織並儲存關鍵字文本與位置鏈表,例如,如果上述Array_A中的word1和word2為關鍵字,則:
Map_A記錄有(word1:pos1,pos4;word2:pos2……)
其中,pos表示相應關鍵字文本的第一個字元在全文資料中的字元位置,keyword表示關鍵字文本。亦即,Map_A中以單詞文本(該單詞是與關鍵字匹配的單詞)做為索引來記錄各單詞的位置。
Res_Beg、Res_End:用以表示摘要文本段的起止位置;Best_Path:用以表示最佳摘要路徑,其中包括文本起止位置參數,透過該參數可在正排索引資料或全文資料中界定出相應的文本段,由該最佳摘要路徑所界定出的文本段與關鍵字的匹配程度較相應其他文本段要高;RL:賦值為摘要文本的長度,通常用字數來予以表示,可在系統初始化時賦值。
檢索模組22的資訊檢索過程可分為2個階段:文檔檢索階段,以檢索出與關鍵字匹配的文檔(諸如,包含有關鍵字的文檔,或包含有與關鍵字具有等同含義的單詞的文檔);摘要產生階段,以針對檢索出的文檔產生對應的摘要。
在文檔檢索階段,檢索子模組221將用戶提交的查詢詞進行分詞處理,獲得到查詢詞中包含的所有關鍵字。然後,在倒排索引庫25中進行匹配查找,以查找與關鍵字匹配的文檔的ID,並按照匹配程度從高到低的順序對文檔ID進行排序,並將排序後的文檔ID儲存為文檔ID序列。該階段所進行的分詞處理可採用多種技術來予以實現,諸如,現有中文分詞處理技術;在倒排索引庫25中進行匹配查找的操作可採用現有全文檢索技術實現。應該理解到,本申請案實施例中所採用的分詞技術和全文檢索技術,並不對本申請案的保護範圍有所限制。
在摘要產生階段,摘要產生子模組222根據文檔ID序列中記錄的文檔ID,在正排索引庫26中遍歷各文檔ID對應的正排索引資料。針對每個文檔ID對應的正排索引資料,對遍歷過的每一個單詞,記錄該單詞的位置以及該單詞的文本,放入陣列Array_A中(通常是記錄到陣列資料結構中),如果該單詞與關鍵字相同,則還要在集合Map_A中記錄該單詞的文本以及該單詞的位置。當遍歷完文檔的正排索引資料後,如果Array_A所記錄的所有單詞文本的總長度不超過RL,則最佳摘要路徑為Array_A中第一個單詞的起始位置到最後一個單詞的終止位置;否則,遍歷Map_A中記錄的單詞文本與位置鏈表,以找出符合條件的最短文本段的起止位置單詞的相應位置Res_Beg和Res_End,則Array_A中從Res_Beg到Res_End即為最佳摘要路徑;在確定出最佳摘要路徑之後,摘要產生子模組222根據確定出的最佳摘要路徑,從相應正排索引資料或全文資料中定位出相應的文本段作為摘要文本,並將其提交給結果提交子模組223。上述滿足最佳摘要路徑的條件可包括:Res_Beg到 Res_End之間的文本長度為RL,或者不超過RL;Res_Beg到Res_End之間所包含的關鍵詞數量最多。
如果符合上述2個條件的摘要路徑有多個,則將這些摘要路徑所界定的摘要文本中,重複關鍵詞數量之和最大的摘要路徑作為最佳摘要路徑。
結果提交子模組223根據文檔ID序列中記錄的各文檔ID,從全文資料庫24或倒排索引庫25中查詢到對應的文檔標題、Url等資訊,並連同摘要文本一起提交給輸出模組23。
輸出模組23中可配置有摘要格式化參數Fmt_Arg(Format Argument的英文縮寫)。輸出模組23根據參數Fmt_Arg對摘要文本和文檔標題、Url等資訊進行格式處理,然後按照文檔ID序列中的文檔ID排列順序,將對應文檔的相關資訊(如包括標題、Url、摘要)以規定格式顯示輸出,較佳地,以全球資訊網通用的HTML(超文本標記語言)頁面標記語言展現,為用戶提供醒目、易辨認的檢索結果,以使用戶獲得更好的用戶體驗。
摘要產生子模組222遍歷文檔的正排索引資料的流程可如圖3A所示,遍歷完成後產生最佳摘要路徑的流程可如圖3B所示。
摘要產生子模組222對文檔ID序列中的每個文檔ID所對應的正排索引資料分別進行遍歷,如圖3A所示,當摘要產生子模組222從文檔ID序列獲取到一個文檔ID後,從正排索引庫26中找到對應的正排索引資料,並執行以下步驟:步驟301,逐個單詞遍歷目前正排索引資料;步驟302,是否遍歷到單詞,如果是,則執行步驟303;否則,執行步驟306。
該步驟中,遍歷不到單詞的情況有兩種:已經遍歷到目前正排索引資料的結尾,亦即,已經完成對目前正排索引資料的遍歷;或者,目前正排索引資料為空的。
步驟303,將該單詞的文本以及目前正排索引資料中所記錄的該單詞的目前位置記錄到Array_A中,透過Array_A中的記錄,可以確定各單詞的起止位置;例如,對於“電腦”這個中文單詞,其起始位置為“計”字所對應的位置,其終止位置為“機”字所對應的位置;而對於英文或其他中間包含單詞間隔符的文字,則可透過單詞間隔符來確定一個單詞的起始和終止位置;步驟304,該單詞是否與關鍵字相同,如果是,則執行步驟305;否則,返回步驟301,繼續遍歷該單詞後的其他單詞;步驟305,將該單詞的文本及目前正排索引資料中所記錄該單詞的目前位置記錄到Map_A中。
當摘要產生子模組222遍歷完成正排索引資料後,可根據遍歷過程所記錄的Array_A和Map_A而確定出最佳摘要路徑,並將最佳摘要路徑參數賦值給Best_Path,其過程可如圖3B所示,包括以下步驟:步驟310,將變數N賦值為0,將Best_Path賦值為空;步驟311,根據Map_A,取其中一單詞文本所對應的位置值而賦值給Res_Beg,然後根據RL從Array_A確定一單詞文本的位置值,使從Res_Beg開始到該確定出的位置值所界定出的長度為RL的文本段內包含有關鍵字,如果能取到這樣的位置值,則繼續執行後續步驟312;如果不能取到這樣的位置值,則執行步驟316;步驟312,將確定出的位置值賦值給Res_End,使Res_Beg到Res_End兩者之間的文本長度不超過RL,較佳地,根據Array_A的記錄,使Res_Beg所對應的位置是Array_A中記錄的單詞的開始位置(亦即,單詞文本的第一個字元的位置),Res_End所對應的位置是Array_A中記錄的單詞的結尾位置(亦即,單詞文本的最後一個字元的位置),以保證Res_Beg和Res_End之間的文本段內容清晰完整;步驟313,根據Map_A而確定Res_Beg到Res_End之間的文本段中所包含的關鍵字的數量,並將該數量值賦值給變數n;步驟314,n是否大於N,如果是,則執行步驟315;否則,返回步驟311,以確定下一個不同的Res_Beg;步驟315,將n的值賦值給N,將n清零,將目前Res_Beg和Res_End記錄到Best_Path中,並返回步驟311,以確定下一個不同的Res_Beg;步驟316,Best_Path的目前值即為最佳摘要路徑,輸出該Best_Path。
透過圖3B所示的流程可以看出,摘要產生子模組222透過多次迴路操作,每次取不同的位置值賦值給Res_Beg,並且在目前Res_Beg和Res_End界定出的文本段中包含的關鍵詞數量最多時,記錄目前Res_Beg和Res_End到Best_Path中,這樣,最終Best_Path中記錄的Res_Beg和Res_End所界定出的文本段中包含的關鍵字最多,從而得到最佳摘要路徑。
需要說明的是:在最佳摘要路徑確定過程中,可以在每遍歷完成一個正排索引資料後,利用遍歷結果而立即確定該正排索引資料的最佳摘要路徑;也可以在遍歷完所有正排索引資料後,根據正排索引資料各自的遍歷結果而分別確定各自的最佳摘要路徑。
下面以應用於網際網路的資訊檢索系統為例,透過一具體實例而進一步對本申請案實施例的實現過程進行描述。
當在網際網路中發佈新網頁時,將該網頁內容的正排索引資料儲存到資訊檢索系統的正排索引庫中,並建立與該網頁標識的對應關係。在本實例中,新發佈的網頁及其對應的正排索引資料分別為:網頁文檔1:ID=100,標題為“應用於電腦的安全技術”;對應的正排索引資料為:(電腦:2、50、90;安全:25……),其長度為100個字的長度;表示在網頁文檔1的全文文本的第2、50、90個字元的位置出現“電腦”一詞,在第25個字元的位置出現“安全”一詞;網頁文檔2:ID=200,標題為“如何提高電腦的安全性”;對應的正排索引資料:(電腦:10、70;安全:15……),其長度為100個字的長度;表示在網頁文檔2的全文文本的第10、70個字元的位置出現“電腦”一詞,在第15個字元的位置出現“安全”一詞。
倒排索引資料包括:電腦(ID 100,ID 200),安全(ID 100,ID 200)……資訊檢索系統規定的檢索結果的資料格式為HTML格式,摘要文本的長度不超過50字。
當系統接收到用戶提交的查詢詞“電腦的安全”後,將其進行分詞處理,獲得到關鍵字“電腦”和“安全”;根據倒排索引資料匹配查詢,查找到包含有上述關鍵字的網頁文檔為ID=100和ID=200的網頁文檔,然後根據該網頁文檔而確定出對應的正排索引資料,由於關鍵字在ID=100的網頁文檔中的出現次數為4,在ID=200的網頁文檔中出現的次數為3,則認為前者與查詢詞的匹配程度更高;然後,分別遍歷這兩個正排索引資料:對網頁文檔ID=100的正排索引資料的遍歷後,可獲得到:Array_A:(…2:電腦;…25:安全;…50:電腦;…90:電腦;…)Map_A:(電腦:2,50,90;安全:25)根據獲得到的Array_A和Map_A可以進一步得出從起始位置為2到終止位置為52的文本段包含有3個關鍵字,比其他長度為50的文本段所包含的關鍵字都多,則將該段文本的起止位置[2,52]作為最佳的摘要文本路徑;同理,對網頁文檔ID=200的正排索引資料的遍歷結果可以確定出最佳的摘要文本路徑為[1,50];然後,該系統根據確定出的最佳摘要文本路徑而產生摘要文本,並按照文檔與查詢詞匹配程度的高低,以HTML格式,將網頁ID=100和網頁ID=200的網頁的標題、Url和摘要作為檢索結果呈現給該用戶。
本申請案實施例還提供一種上述技術方案的替代方案,亦即,在產生摘要時,不是透過遍歷正排索引資料而獲得到摘要路徑,而是透過遍歷文檔的全文資料來獲得到摘要路徑,並相應地根據所獲得到的摘要路徑而從全文文本中提取出摘要文本,具體遍歷過程以及摘要路徑確定方式與前述描述相似,在此不再贅述。
將本申請案實施例提供的技術方案與傳統的資訊檢索技術方案相比,僅需要對查詢詞進行分詞處理,而傳統方式需要對查詢詞和全文資料都要進行分詞處理,可見本申請案實施例提供的技術方案的查詢效率會比傳統方式有所提高;本申請案實施例提供的技術方案利用文檔的正排索引資料來產生文檔的摘要,而傳統方式需要利用文檔的全文資料來產生文檔的摘要,而文檔的正排索引資料一方面比文檔的全文資料所含資料量少,因而可以提高效率,另一方面,利用文檔的正排索引資料可以較為方便地統計單詞出現的頻率、次數等,因而可以方便而準確地確定出文檔的摘要,並能較為準確和全面的概括對應全文資料的內容,因此,利用文檔的正排索引資料來產生文檔摘要,可以一定程度上保證檢索結果的合理性和準確性。
綜合而言,由於本申請案實施例充分利用了資訊檢索系統現有的全文索引結構,以及充分考慮到現有的檢索結果展現形式,因此能夠在產生摘要時,利用更精確且更有針對性的資料,可以提高產生效率,並且提高最終結果的用戶滿意度。本申請案實施例提供的資訊檢索系統具有高內聚、松耦合的特點,容易與現有的各種資訊檢索系統整合,例外該系統還具有高性能、可伸縮、易定制的特點。
本申請案是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來加以描述的。應理解可由電腦程式指令來實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可編程資料處理設備的處理器以產生一個機器,使得透過電腦或其他可編程資料處理設備的處理器執行的指令而產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。
這些電腦程式指令也可被儲存在能夠引導電腦或其他可編程資料處理設備以特定方式操作的電腦可讀取記憶體中,使得儲存在該電腦可讀取記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可編程資料處理設備上,使得在電腦或其他可編程設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可編程設備上執行的指令提供用以實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。
顯然,本領域的技術人員可以對本申請案進行各種修改和變型而不脫離本申請案的精神和範圍。這樣,倘若本申請案的這些修改和變型屬於本申請案申請專利範圍及其等同技術的範圍之內,則本申請案也意圖包含這些修改和變型在內。
21...輸入模組
22...檢索模組
23...輸出模組
24...全文資料庫
25...倒排索引庫
26...正排索引庫
221...檢索子模組
222...摘要產生子模組
223...結果提交子模組
圖1為本申請案實施例中的資訊檢索的流程示意圖;
圖2為本申請案實施例中的資訊檢索系統的結構示意圖;
圖3A、圖3B為本申請案實施例中的資訊檢索系統的檢索模組的處理流程示意圖。
Claims (10)
- 一種資訊檢索方法,應用於每個文檔對應有正排索引資料的資訊檢索系統,其中,每個文檔的正排索引資料以該文檔中的各單詞做為索引,以記錄各單詞在該文檔中的位置,其特徵在於,該方法包括以下步驟:接收查詢詞,透過分詞處理而獲得到該查詢詞中所包含的關鍵字;透過該資訊檢索系統的倒排索引資料來查找與該關鍵字匹配的文檔,及與該文檔對應的正排索引資料;以及根據與該文檔對應的正排索引資料而確定出該文檔的摘要,將該文檔的摘要及文檔的資訊作為檢索結果而進行輸出。
- 如申請專利範圍第1項所述的方法,其中,根據正排索引資料所確定出的摘要,具體為:根據正排索引資料所確定出的所有不超過規定長度的文本段中,該關鍵字出現次數最多的文本段。
- 如申請專利範圍第2項所述的方法,其中,若不超過規定長度、該關鍵字出現次數最多的文本段為多個,則將其中該關鍵字重複出現次數最多的文本段作為摘要。
- 如申請專利範圍第2項所述的方法,其中,根據與該文檔對應的正排索引資料而確定出該文檔的摘要的過程,具體為:針對該文檔中的每個文檔,執行以下步驟:逐一遍歷該文檔的正排索引資料中的單詞,在第一資料結構中以單詞位置做為索引來記錄每個遍歷到的單詞,並當遍歷到的單詞與該關鍵字匹配時,在第二資料結構中以單詞做為索引來記錄該單詞的位置;根據第二資料結構的記錄,確定出摘要的起始位置;根據規定的摘要長度和第一資料結構的記錄,以確定出摘要的終止位置;該起始位置和終止位置之間的文本段的長度不超過規定的摘要長度、該關鍵字在該文本段中的出現次數最多;以及根據確定出的摘要的起止位置以及正排索引資料而產生文檔的摘要。
- 如申請專利範圍第1到4項中任一項所述的方法,其中,將該文檔的摘要及該文檔的資訊作為檢索結果而進行輸出,具體為:按照該文檔與該關鍵字匹配程度從高到低的順序,將該文檔的摘要及該文檔的資訊作為檢索結果來進行排序,並根據規定的資料格式而對排序後的檢索結果進行輸出。
- 一種資訊檢索系統,包括儲存有該系統倒排索引資料和每個文檔對應的正排索引資料的儲存模組,其中,每個文檔的正排索引資料以該文檔中的各單詞做為索引,以記錄各單詞在該文檔中的位置,其特徵在於,還包括:輸入模組,用以接收輸入到該系統的查詢詞;檢索模組,用以對該查詢詞進行分詞處理而獲得到其所包含的關鍵字,透過該倒排索引資料來查找與該關鍵字匹配的文檔,及與該文檔對應的正排索引資料;根據該文檔對應的正排索引資料而確定出該文檔的摘要;以及輸出模組,用以將該文檔的摘要及文檔的資訊作為檢索結果而進行輸出。
- 如申請專利範圍第6項所述的系統,其中,該檢索模組根據該文檔對應的正排索引資料來確定該文檔的摘要時,將根據正排索引資料所確定出的所有不超過規定長度的文本段中,該關鍵字出現次數最多的文本段作為該文檔的摘要。
- 如申請專利範圍第7項所述的系統,其中,若該檢索模組所確定出的不超過規定長度、該關鍵字出現次數最多的文本段為多個,則將其中該關鍵字重複出現次數最多的文本段作為摘要。
- 如申請專利範圍第6項所述的系統,其中,該檢索模組包括:檢索子模組,用以對該查詢詞進行分詞處理而獲得到其所包含的關鍵字,透過該倒排索引資料來查找與該關鍵字匹配的文檔,及與該文檔對應的正排索引資料;摘要產生子模組,用以針對該文檔中每個文檔對應的正排索引資料,逐一遍歷其中的每個單詞,在第一資料結構中以單詞位置做為索引來記錄每個遍歷到的單詞,並當遍歷到的單詞與該關鍵字匹配時,在第二資料結構中以單詞做為索引來記錄該單詞的位置;以及,根據第二資料結構的記錄,確定出摘要的起始位置,根據規定的摘要長度和第一資料結構的記錄,確定出摘要的終止位置,該起始位置和終止位置之間的文本段的長度不超過規定的摘要長度、該關鍵字在該文本段中的出現次數最多;然後,根據確定出的摘要的起止位置及從正排索引資料產生文檔的摘要;以及提交子模組,用以將產生的該文檔的摘要及該文檔的資訊提交到該輸出模組。
- 如申請專利範圍第6到9項中任一項所述的系統,其中,該輸出模組將該文檔的摘要及該文檔的資訊作為檢索結果而進行輸出時,按照該文檔與該關鍵字匹配程度從高到低的順序,將該文檔的摘要及該文檔的資訊作為檢索結果來進行排序,並根據規定的資料格式而對排序後的檢索結果進行輸出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099106912A TWI485570B (zh) | 2010-03-10 | 2010-03-10 | Information retrieval method and its system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099106912A TWI485570B (zh) | 2010-03-10 | 2010-03-10 | Information retrieval method and its system |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201131400A TW201131400A (en) | 2011-09-16 |
TWI485570B true TWI485570B (zh) | 2015-05-21 |
Family
ID=50180363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099106912A TWI485570B (zh) | 2010-03-10 | 2010-03-10 | Information retrieval method and its system |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI485570B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103714096B (zh) * | 2012-10-09 | 2018-02-13 | 阿里巴巴集团控股有限公司 | 基于Lucene的倒排索引系统构建、数据处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080027933A1 (en) * | 1999-10-20 | 2008-01-31 | Araha, Inc. | System and method for location, understanding and assimilation of digital documents through abstract indicia |
US20080077570A1 (en) * | 2004-10-25 | 2008-03-27 | Infovell, Inc. | Full Text Query and Search Systems and Method of Use |
TW200816653A (en) * | 2006-09-28 | 2008-04-01 | Univ Nat Chiao Tung | Data query method and data coding method thereof |
-
2010
- 2010-03-10 TW TW099106912A patent/TWI485570B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080027933A1 (en) * | 1999-10-20 | 2008-01-31 | Araha, Inc. | System and method for location, understanding and assimilation of digital documents through abstract indicia |
US20080077570A1 (en) * | 2004-10-25 | 2008-03-27 | Infovell, Inc. | Full Text Query and Search Systems and Method of Use |
TW200816653A (en) * | 2006-09-28 | 2008-04-01 | Univ Nat Chiao Tung | Data query method and data coding method thereof |
Also Published As
Publication number | Publication date |
---|---|
TW201131400A (en) | 2011-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102023989B (zh) | 一种信息检索方法及其系统 | |
US9569506B2 (en) | Uniform search, navigation and combination of heterogeneous data | |
CN103729359B (zh) | 一种推荐搜索词的方法及系统 | |
JP4953468B2 (ja) | オントロジーデータのインポート/エクスポートのための方法および装置 | |
CN104239340B (zh) | 搜索结果筛选方法与装置 | |
CN108829858A (zh) | 数据查询方法、装置及计算机可读存储介质 | |
CN103425687A (zh) | 一种基于关键词的检索方法和系统 | |
CN110515896B (zh) | 模型资源管理方法、模型文件制作方法、装置和系统 | |
US9569525B2 (en) | Techniques for entity-level technology recommendation | |
US9317608B2 (en) | Systems and methods for parsing search queries | |
KR20160042896A (ko) | 마이닝된 하이퍼링크 텍스트 스니펫을 통한 이미지 브라우징 | |
US11604794B1 (en) | Interactive assistance for executing natural language queries to data sets | |
US10747795B2 (en) | Cognitive retrieve and rank search improvements using natural language for product attributes | |
US20110302167A1 (en) | Systems, Methods and Computer Program Products for Processing Accessory Information | |
CN113190687B (zh) | 知识图谱的确定方法、装置、计算机设备及存储介质 | |
WO2015010509A1 (zh) | 一种基于一维线性空间实现Trie树的词典检索方法 | |
US10303704B2 (en) | Processing a data set that is not organized according to a schema being used for organizing data | |
US9971782B2 (en) | Document tagging and retrieval using entity specifiers | |
WO2014114175A1 (zh) | 一种提供搜索引擎标签的方法和装置 | |
JP2023066404A (ja) | 電子商取引プラットフォームで商品マッチングを実行するための方法およびシステム | |
CN109933787A (zh) | 文本关键信息的提取方法、装置及介质 | |
CN103136221A (zh) | 一种生成需求模板的方法、需求识别的方法及其装置 | |
TWI485570B (zh) | Information retrieval method and its system | |
KR101602342B1 (ko) | 의미 태깅된 자연어 질의의 의도에 부합하는 정보 추출 및 제공 방법 및 시스템 | |
Nghiem et al. | Which one is better: presentation-based or content-based math search? |