專利名稱:應用搜索結果的自然語言處理以改進整體精度的信息檢索系統(tǒng)的設備和方法
技術領域:
本發(fā)明涉及應用自然語言處理以處理由信息檢索引擎檢索的結果從而改進整體精度的信息檢索系統(tǒng)的設備和相伴方法,該信息檢索引擎是例如一個常規(guī)基于統(tǒng)計的搜索引擎。
自數(shù)十年前開始并延續(xù)至今的自動化信息檢索技術愈來愈多地用于自海量數(shù)據(jù)庫中檢索存儲的信息,該數(shù)據(jù)庫例如包含印刷材料和/或它們的文獻信息的常規(guī)數(shù)據(jù)庫。這類常規(guī)數(shù)據(jù)庫偏向于專門化,從而通常包含針對一個雖然廣泛但卻特定的題材,例如電機工程和計算機有關技術,例如由電氣及電子工程師學會所維持并當今可通過例如Knight-Ridder Information Inc.的Dialog InformationServices訪問的INSPEC數(shù)據(jù)庫(DIALOG是Knight-RidderInformation,Inc.的注冊服務商標)。當不斷增多的有關文章和其他材料印刷出來時,其增長率相對地緩和和可合理地控制。此外,這類專門化的數(shù)據(jù)庫組織得較好。
然而,隨著可通過因特網(wǎng)訪問的所謂“萬維網(wǎng)”(此后簡單稱為“網(wǎng)絡”)的開發(fā)和增長,以及與常規(guī)印刷相反的發(fā)送信息至網(wǎng)絡及自其中存取信息的方便和低費用,網(wǎng)上可用的信息量顯現(xiàn)出高指數(shù)的(如不是爆炸性的)增長,看上去并無實際限制。當網(wǎng)絡在人類知識的所有領域中提供不斷增長的豐富信息時,網(wǎng)上的信息內容是高度雜亂和極端無組織的,這使網(wǎng)上的信息訪問和檢索極其復雜和混亂。
為試圖在很大程度上簡化從網(wǎng)絡檢索信息的任務,在過去幾年內已經(jīng)開發(fā)了一系列計算機化搜索引擎以供廣大公眾使用。一般而言,這些常規(guī)引擎通過由軟件實施的“網(wǎng)絡爬行器”自動地訪問網(wǎng)站和依次地跟蹤其中的超文本連接并通過所謂“關鍵詞”提取在其中遇到的每個文件并在一個大數(shù)據(jù)庫中標志每個文件以備隨后訪問。具體地,通過這類提取,每個由爬行器遇到的這類文件都減縮為通常所謂“詞袋”,后者雖已被抽掉所有語義和句法信息,但還包含文件中具有的有內容的詞。這些內容詞可能存在文件本身內和/或只在該文件的超文本標記語言(HTML)版本的描述段內。在以上任何一種情況下,該引擎為每個這類文件建立一個條目即一個文件記錄。對于每個文件,其內容詞都在一個可搜索數(shù)據(jù)結構中加以標志,并帶有一個往回指向文件記錄的連接。該文件記錄通常包含(a)一個網(wǎng)址,即一個URL--均勻資源定位器,一個網(wǎng)絡瀏覽器可通過它訪問相應的文件;(b)該文件中的不同內容詞以及在某些引擎中與該文件的其他內容詞有關的每個這類內容詞的相對地址;(c)該文件的一個短摘要,通常只是幾行或該文件的前幾行;及可能(d)在其HTML描述段中提供的對文件的描述。為搜索數(shù)據(jù)庫,用戶向引擎提供一個基于關鍵詞的查詢。該查詢通常包含一個或多個用戶提供的關鍵詞,這通常只是一個由引擎容量決定的小數(shù)字,可能帶有一個位于連續(xù)關鍵詞之間的布爾型(例如“AND”或“OR”)或類似的(例如數(shù)字接近)運算符。響應于查詢,該引擎試圖查找包含盡可能多的關鍵詞的文件,及如提供了一個邏輯或接近運算符,則該文件應包含所請求的關鍵詞的特定組合或處于彼此的一定“范圍”內的關鍵詞(特定數(shù)目的關鍵詞)。以此方式,該引擎搜索其數(shù)據(jù)庫以查找包含至少一個與查詢中的關鍵詞之一匹配的詞的文件,以及在有請求時根據(jù)運算符和/或由其規(guī)定的范圍來查找。對于每一個它查找的這類文件,該引擎檢索它的文件記錄及按照該文件中相對于其他這類文件而言的關鍵詞匹配數(shù)目來排序以向用戶提供該記錄。
通常,只對用戶提供的關鍵詞查詢作出響應而檢索的大多數(shù)文件只是與查詢無關的,因而對用戶無用。
因此,為減少無關的檢索文件,常規(guī)基于關鍵詞的搜索引擎(今后簡單稱為“統(tǒng)計搜索引擎”)在它們的搜索方法學中包括了統(tǒng)計處理。例如,根據(jù)查詢中關鍵詞與每一個檢索的文件記錄中的內容詞之間的匹配總數(shù)以及這些關鍵詞如何匹配,即它們是否在該組合中和/或是在一個所請求的接近范圍內,統(tǒng)計搜索引擎為每個這類檢索的文件記錄計算被經(jīng)常稱為“統(tǒng)計”的數(shù)字量度。這些統(tǒng)計可包括每個匹配詞的反文件頻度。該引擎然后按照文件記錄的統(tǒng)計將它們排序并將一個預定小數(shù)目的,例如5-20個或更少的具有最高序數(shù)的檢索文件送回至用戶。一旦用戶已查看了第一組檢索文件的第一組文件記錄(或對于某些引擎,如文件本身是由引擎送回的,則就是它們自身),則用戶可請求下一組具有次高序數(shù)的文件記錄,并依此類推,直至查看完所有檢索的文件記錄。
傳統(tǒng)上,搜索引擎的性能是按回叫和精度來評價的。作為數(shù)據(jù)集中的所有有關文件的百分比,回叫測量是對一定查詢作出響應而實際上檢索的這類文件的數(shù)目。另一方面,作為所有檢索文件的百分比,精度測量是真正與查詢有關的文件數(shù)目。我們相信在網(wǎng)絡搜索引擎的上下文中回叫不是一個重要的性能量度,猶如最后檢索的文件數(shù)不重要一樣。事實上,對于有些查詢,此數(shù)目可能異常地大。因此,我們相信為產(chǎn)生一個有用結果,并不是所有由引擎標志的有關文件都需要檢索;然而,我們認為精度非常重要,也即那些具有最高序數(shù)及首先提供給用戶的文件應該是與查詢最有關系的。
常規(guī)統(tǒng)計搜索引擎的相當差的精度來源于以下假定詞是獨立的變量,也即任何文字段落中詞都是彼此獨立地出現(xiàn)的。此上下文中的獨立性意味著已知一個文件中出現(xiàn)一個詞時,出現(xiàn)另一個詞的條件概率始終是零,也即一個文件只是簡單地一個無結構的詞的集合或簡單的“詞袋”。人們可以容易地理解,對于任何語言而言,這個假定是十分錯誤的。如其他語言一樣,英語具有一個豐富和復雜的句法和詞素-語義結構,其中詞的意義經(jīng)常隨著它們用在其中的特定語言上下文很大地變化,及上下文在任何情況下都確定一個詞的意義和哪些詞會隨后出現(xiàn)。因此,出現(xiàn)在一個文字段落中的詞并不是彼此獨立的,相反它們是緊密相關的?;陉P鍵詞的搜索引擎完全忽略了這個精細的語言結構。例如,考慮一個用自然語言表達的示例性查詢“How many hearts does an octopus have ”。一個按照內容詞“hearts”和“octopus”或它們的詞態(tài)詞干操作的統(tǒng)計搜索引擎可能向用戶送回引導用戶到一個包含一個具有其成分為以下內容詞“artichoke hearts,squid,onions and octopus”的配方的存儲文件。此引擎在得到兩個內容詞“octopus”和“hearts”的匹配之后可能根據(jù)例如包括接近和邏輯運算符的統(tǒng)計量度來確定此文件為一個很好的匹配,而實際上該文件與該查詢毫不相關。
技術上有不同方案用于將句法詞組的成分提取為無標記關系中的首修飾詞對。然后將這些成分標志為常規(guī)統(tǒng)計向量空間模型中的名詞(通常不帶內部結構)。
這一方案的例子在J.L.Fagan的1988年Cornell University的博士論文“文件檢索的自動詞組標志實驗句法與非句法方法的比較”中p.i-261上有介紹。具體地說,此方案使用自然語言處理以分析英語句子和提取句法詞組組成成分,其中將這些詞組成分作為名詞對待并使用統(tǒng)計向量空間模型加以標志。在檢索期間,用戶輸入用自然語言表達的查詢,在此方案中,該查詢經(jīng)受自然語言處理以備分析并從中提取與標志中存儲的成分類似的句法詞組組成成分。此后,試圖把來自查詢的句法詞組組成成分與存儲于標志中的成分相匹配。本作者將此純粹句法方案與一個其中使用一個隨機方法以識別句法詞組中成分的統(tǒng)計方案相對照。本作者的結論是自然語言處理實質上并不比隨機方案優(yōu)越,以及有時候自然語言處理的確在精度上有小改進,但并不證實自然語言處理的價值。
在1996年5月6-8日Tysons Corner,Virginia的DARPA的Proceedings of Advances in Text Processing:Tipster Program Phase2中143-148頁上由T.Strzalkowski所寫“自然語言信息檢索TIPSTER-2最后報告”(今后稱為“DARPA報告”)以及1995年Information Processing and Management論文集的Vol.31,No.3,397-417頁上由T.Strzalkowski所寫“自然語言信息檢索”都描述了另一個基于句法的方案,它使用自然語言處理以便選擇合適名詞以包括在搜索查詢中。雖然此方案提供理論意義,但該作者在DARPA報告的147-8頁上得出結論由于實施基本自然語言技術需要復雜處理,因此該方案不實際,原文如下“…重要的是記住能滿足我們性能要求(或至少能接近此要求)的NLP[自然語言處理]技術在處理自然語言文本中的能力仍然相當不足。特別是,涉及概念結構,邏輯形式等的先進處理仍然在計算上不能達到要求??梢约俣ㄟ@些先進技術將證明為更加有效,因為它們涉及表示層限制的問題;然而,實驗證據(jù)不充分并且只能限于較小范圍實驗”。
在1997年6月25-27日加拿大魁北克McGill University的Conference Proceedings of RIAO97,Computer-Assisted InformationSearching in InternetVol.1,136-155頁上B.Katz所寫“使用自然語言為萬維網(wǎng)注解”(今后稱為“Katz著作”)中描述了又一個這一類基于句法的方案。如Katz著作中所描述的,在保留內部結構的同時建立主語-動詞-賓語表達式以便在檢索期間容納小的句法交替。
由于這些句法方案只得到黯淡的改進或在實施自然語言處理系統(tǒng)時不實用,注意力從試圖直接改進查詢初始結果的精度和重叫轉向改進用戶接口,也即具體地通過用于細化基于與用戶的交互的查詢的方法來改進,例如通過對于檢索結果的“用戶-類似”用戶響應,還有通過顯示合適群中的結果等觀看查詢結果的方法來改進。
雖然這些改進在它們自己方面是有用的,但通過這些改進所能得到的精度仍然過低,因此肯定不足以有效地減少關鍵詞搜索中所固有的用戶無能。具體地,仍然要求用戶手動地篩選在其中只松散地分布著有關響應的相對大的文件組。
因此,需要一種技術,具體是一種設備及其相伴方法,用于檢索信息從而在精度上顯著地超過常規(guī)統(tǒng)計方案的信息檢索所能得到的精度。此外,這一技術應該在任意出現(xiàn)的文本中的句型和長度的廣闊范圍內得到可靠和可重復的結果,并且在實施中可行和廉價。為顯著地改進常規(guī)方案的精度和克服該技術中固有的問題,這類技術應優(yōu)選地使用自然語言處理以便根據(jù)有關文件的語義內容與查詢的有關內容的匹配程度來有利地選擇有關文件以備檢索和隨后呈現(xiàn)給用戶。
根據(jù)我們的廣泛原理,本發(fā)明通過使用自然語言處理滿足以下需要改進由例如統(tǒng)計網(wǎng)絡搜索引擎所完成的基于關鍵詞的文件搜索的精度。
廣義而言,此處理涉及分別與一個搜索查詢和每個檢索的文件相關的邏輯形式之間的匹配的產(chǎn)生、比較和加權。根據(jù)查詢和檢索文件兩者的“邏輯形式”的預定函數(shù),具體地根據(jù)與文件相關的邏輯形式的匹配權值之和,將檢索的文件排序,并最后按該排序顯示文件。一個邏輯形式是一個有向無環(huán)圖,其中用標記的關系來連接表示任意長度的文本的詞。具體是,一個邏輯形式描繪輸入串中重要詞之間的語義關系,尤其是內容和修飾成分關系。此描繪可采取不同具體形式,例如一個邏輯形式圖或它的任何一個子圖,后者包括例如一個邏輯形式三重構詞表,其中每個三重構詞用“詞-關系-詞”形式加以闡述;其中這些形式中任何一種可用于本發(fā)明。
根據(jù)我們的特定原理,這類搜索最終從例如一個數(shù)據(jù)庫或萬維網(wǎng)中產(chǎn)生一組檢索的文件。 然后每個文件經(jīng)受自然語言處理,具體是詞態(tài)、句法和邏輯的形式,以備最終為每個文件的每個句子產(chǎn)生合適的邏輯形式。以相同的方式分析用戶提供的查詢以便產(chǎn)生一組它們的相應的邏輯形式三重構詞。然后將該查詢的邏輯形式組與每個所檢索文件有關的邏輯形式組進行比較,以便確認查詢組的邏輯形式與每個文件組的邏輯形式之間的匹配。把不產(chǎn)生匹配的文件消除而不再考慮。然后為每個留下的文件探索性計分。具體地,對可能在邏輯形式中出現(xiàn)的每個不同關系類型,也即例如深層主語、深層賓語、作用詞和類似詞賦予一個預定權值。每個這類留下文件的分數(shù)是其中的匹配的邏輯形式的權值的預定函數(shù)。此函數(shù)可能是例如與出現(xiàn)在該文件中的所有獨一匹配三重構詞(忽略雙重匹配)的相關權值之和。最后,根據(jù)留下文件的分數(shù)的降序排列將它們呈現(xiàn)給用戶,通常分為預定小數(shù)目的組,例如5或10個,用戶選擇時,文件自具有最高分的組開始,然后連續(xù)地隨之以降序的組。
本發(fā)明可用于數(shù)個不同處理結構中(a)基于查詢和基于關鍵詞的兩種搜索(文件檢索)可由一個公共計算機例如本地個人計算機(PC)處理;(b)可由一個遠程計算機例如遠程服務器處理基于關鍵詞的搜索同時在例如一個客戶PC上處理查詢和搜索結果;或(c)可在一個客戶PC上生成查詢及在四處分布的不同遠程服務器上進行其余處理。此外,由于數(shù)據(jù)庫中每個文件在數(shù)據(jù)庫中都已標志,它可預先處理以便產(chǎn)生可存儲以供隨后訪問的有關邏輯形式,從而以后只要該文件被檢索和經(jīng)受自然語言處理時,都可節(jié)省操作時間。
結合附圖閱讀下列詳細說明可容易地理解本發(fā)明原理,附圖中
圖1闡述根據(jù)本發(fā)明的信息檢索系統(tǒng)5的高層框圖;圖2闡述圖1中所示類型的使用本發(fā)明原理的信息檢索系統(tǒng)200的高層實施例;圖3闡述包含于圖2中系統(tǒng)200內的計算機系統(tǒng)300,具體是一個客戶個人計算機的框圖;圖4闡述圖3中所示計算機300內運行的應用程序400的高層框圖;圖5A-5D闡述不同復雜程度的英語句子的不同相應例子和它們的相應邏輯形式成分;圖6闡述圖6A和6B的圖紙的正確對齊;圖6A和6B集合地闡述本發(fā)明檢索過程600的流程圖;圖7闡述過程600內運行的NLP子程序700的流程圖;圖8A闡述解釋性的匹配邏輯形式三重構詞加權表800;圖8B圖形地闡述邏輯形式三重構詞比較;及闡述解釋性查詢和三組解釋性統(tǒng)計檢索文件的分別示于圖6A和6B中的塊650、660、665和670內出現(xiàn)的根據(jù)本發(fā)明原理的文件計分、排序和選擇過程;圖9A-9C分別闡述三個不同的實現(xiàn)本發(fā)明原理的信息檢索系統(tǒng)圖13A闡述三重構詞生成過程1100中運行的NLP子程序1300的流程圖;及圖13B闡述檢索過程1200中運行的NLP子程序1350的流程圖。
為便于理解,如果可能,使用相同的參考數(shù)字以標志各圖中共同的元件。
在了解下列說明后,熟悉技術的人能清楚地理解,本發(fā)明原理可容易地用于幾乎任何信息檢索系統(tǒng)以增加其中應用的搜索引擎的精度,而不論該引擎是否為一個常規(guī)引擎。此外,本發(fā)明可用于改進從幾乎任何類型海量數(shù)據(jù)庫中檢索文字信息的精度,例如存儲于磁的、光的(如CD-ROM)或其他媒體內的而不論文字信息采用何種語言,例如英語、西班牙語、德語等。
一般而言,根據(jù)本發(fā)明,我們已知道可以應用自然語言處理來處理這些記錄,即最終將由其中使用的搜索引擎所提供的文件特殊地篩選和排序,從而顯著地提高一個檢索引擎的精度。
考慮到這點,圖1闡述使用本發(fā)明的信息檢索系統(tǒng)5的高層框圖。系統(tǒng)5由例如基于關鍵詞的統(tǒng)計檢索引擎那樣的常規(guī)檢索引擎20及后隨的處理器30所組成。處理器30使用如下所述的本發(fā)明自然語言處理技術以便將引擎20產(chǎn)生的文件篩選和重排序從而產(chǎn)生一個檢索文件的有序組,后者與用戶提供的查詢的相關程度比其他方案都高。
具體地,運行中用戶向系統(tǒng)5提供一個搜索查詢。該查詢必須具有全文本(通常稱為“文字的”)形式以便通過自然語言處理充分利用其語義內容,從而提供高于單獨使用引擎20時的精度。系統(tǒng)5將此查詢應用于引擎20和處理器30兩者。響應于該查詢,引擎20搜索所存文件的數(shù)據(jù)集20以產(chǎn)生來自它們的一組檢索文件。然后將此組文件(此處也稱為一個“輸出文件集”),如線25所標示,作為處理器30的輸入量加以提供。在處理器30內,如下面詳細說明的,該集中的每個文件都經(jīng)受自然語言處理,尤其是詞態(tài)、句法和邏輯形式,以便為該文件中每個句子產(chǎn)生邏輯形式。每個這類句子的邏輯形式將該句子中的語言詞組中的詞之間的語義關系,尤其是內容和修飾成分加以編碼。處理器30以相同方式分析該查詢以便產(chǎn)生它們的一組相應的邏輯形式。處理器30然后將該查詢的一組邏輯形式與該組中和每個文件有關的邏輯形式組比較以確認查詢組中邏輯形式與每個文件的邏輯形式之間的任何匹配。沒有匹配的文件即被消除而不再考慮。每個留下的包含至少一個與查詢邏輯形式匹配的邏輯形式的文件即保留下來并由處理器30探索性地計分。如下面將討論的,為每個可能在邏輯形式三重構詞中出現(xiàn)的不同關系類型即深層主語、深層賓語、作用詞和類似詞賦予一個預定權值。每個這類文件的總權值(即分數(shù))是例如所有它的獨一地匹配的三重構詞(即忽略雙重匹配)的權值之和。最后,處理器30根據(jù)留下文件的分數(shù)向用戶提供排序的文件,通常分為預定小數(shù)目的組,例如5或10個,自具有最高分的文件開始。
由于系統(tǒng)5非常通用和適用于廣闊的不同應用范圍,因此為簡化以下討論,我們將在一個解釋性的上下文中討論本發(fā)明的使用。該上下文是一個信息檢索系統(tǒng),它使用一個常規(guī)基于關鍵詞的統(tǒng)計因特網(wǎng)搜索引擎以檢索自萬維網(wǎng)標志入一個數(shù)據(jù)集中的英語文件的所存記錄。如下面說明的,每個這類記錄通常包含一個相應文件的預定信息。對于其他搜索引擎,記錄可能包含整個文件本身。雖然下面對本發(fā)明的討論是在使用常規(guī)因特網(wǎng)搜索引擎的上下文中,同時該搜索引擎檢索一個包含有關相應文件的一定信息的記錄及該文件包括一個可找到該文件的網(wǎng)址,但一般而言,該引擎所檢索的最終項目事實上是該文件,即使通常使用一個用到該地址的中間過程來實際地訪問來自網(wǎng)絡的文件時也是如此。在了解下面的說明后,熟悉技術的人將能容易地理解本發(fā)明如何能容易地適用于任何其他信息檢索應用中。
圖2闡述在一個因特網(wǎng)搜索引擎的上下文中使用的本發(fā)明特定實施例的高層框圖。本發(fā)明主要將在此特定實施例的上下文中詳細討論。如圖所示,系統(tǒng)200包含計算機系統(tǒng)300,例如客戶個人計算機(PC),通過網(wǎng)絡連接205、網(wǎng)絡210(此處使用因特網(wǎng),當然可以替代地使用任何其他這類網(wǎng)絡例如內聯(lián)網(wǎng))和網(wǎng)絡連接215連至服務器220。服務器通常包括計算機222,它裝有因特網(wǎng)搜索引擎225并連至海量數(shù)據(jù)庫227,搜索引擎225的類型例如ALTA VISTA搜索引擎(ALTA VISTA是Maynard,Massachusetts的Digital EquipmentCorporation的注冊商標),數(shù)據(jù)庫227通常是由搜索引擎標志的并可通過因特網(wǎng)上的萬維網(wǎng)訪問的文件記錄的數(shù)據(jù)集。每個這類記錄通常包含(a)一個網(wǎng)址(通常稱為均勻資源定位器--URL),網(wǎng)絡瀏覽器可于該處訪問相應的文件;(b)預定義內容詞,它在某些引擎中與每一個這類詞的相對于該文件中其他內容詞的相對地址一起出現(xiàn)在該文件中;(c)一個短摘要,通常是該文件的幾行或該文件的前幾行;及可能(d)如同它的超文本標記語言(HTML)描述段中提供的那樣的文件描述。
一個在計算機系統(tǒng)300處的用戶通過例如一個在此系統(tǒng)運行的有關的網(wǎng)絡瀏覽器(例如基于可自Microsoft Corporation得到的“因特網(wǎng)探索器”版本3.0瀏覽器并適當?shù)匦薷囊园ū景l(fā)明原理)建立與服務器220并具體地與在該處運行的搜索引擎222的因特網(wǎng)連接。此后,用戶輸入一個此處標以線201的查詢至瀏覽器,后者又通過系統(tǒng)300和因特網(wǎng)連接將該查詢送至服務器220和搜索引擎225。該搜索引擎然后對于存儲于數(shù)據(jù)集227內的文件記錄處理該查詢以便為由引擎確定為與查詢有關的文件產(chǎn)生一組檢索記錄。鑒于引擎225實際上用于標志文件以形成存儲于數(shù)據(jù)庫227中的文件記錄的方式以及該引擎所采取用于選擇任何這類存儲的文件記錄的實際分析兩者都與本發(fā)明無關,我們將不再進一步討論這兩個方面??梢杂邪盐盏卣f,引擎225對查詢作出響應,通過因特網(wǎng)連接將一組檢索的文件記錄送回至網(wǎng)絡瀏覽器420。當引擎225在檢索文件和/或其后續(xù)者的時候,與此同時瀏覽器420分析該查詢以產(chǎn)生它的一組相應的邏輯形式三重構詞。一旦該搜索引擎完成其搜索和已檢索一組文件記錄并已向瀏覽器提供該組文件記錄,瀏覽器即從相關的網(wǎng)絡服務器中訪問相應的文件本身以形成一組輸出文件(與其相關的數(shù)據(jù)庫集合地形成所存儲文件的一個“庫房”;這類庫房也可是一個單獨的數(shù)據(jù)集,例如在一個自包含的基于CD-ROM的數(shù)據(jù)檢索應用軟件)。該瀏覽器420然后又分析每個訪問的文件(即輸出文件組中的文件)以便為每個這類文件形成一組相應的邏輯形式三重構詞。此后,如下面將詳細討論的,根據(jù)查詢和檢索文件之間匹配的邏輯形式三重構詞,瀏覽器420為每個具有這類匹配的文件計分并如線203所標示的根據(jù)分數(shù)的降序排列將它們呈現(xiàn)給用戶,通常在一個預定小數(shù)目的組內,如用戶通過瀏覽器選擇,文件自具有最高分的組開始,然后連續(xù)地隨之以降序的組,并依此類推,直至用戶查看完足夠數(shù)量的呈現(xiàn)的文件。雖然圖2闡述了本發(fā)明利用一個網(wǎng)絡連接以便自一個遠程服務器獲取文件記錄和文件,但本發(fā)明不限于此。如下面將結合圖9A詳細討論的,當檢索應用軟件和本發(fā)明的軟件都是在一個公共計算機上例如一個本地PC上運行以及可就地訪問存儲于CD-ROM或其他合適的媒體內的相伴數(shù)據(jù)集時,這一網(wǎng)絡化連接就不必要。
圖3闡述示于圖2中的實現(xiàn)本發(fā)明原理的計算機系統(tǒng)300的框圖。
如圖所示,示例為一個客戶個人計算機的此系統(tǒng)包括輸入接口(INPUT I/F)330、處理器340、通信接口(COMM I/F)350、存儲器375和輸出接口(OUTPUT I/F)360,全部常規(guī)地由總線370互連。通常包括不同形式設備例如示例的隨機存取存儲器(RAM)和硬盤存儲器的存儲器375(為簡化起見,此處并不顯示全部)中存放著操作系統(tǒng)(O/S)378和應用程序400。實施本發(fā)明原理的軟件通常包含于應用程序400內,具體對于本實施例而言,則包含于一個網(wǎng)絡瀏覽器(示于圖4內)內。此操作系統(tǒng)可用任何常規(guī)操作系統(tǒng)實施,例如當今可從Redmond,Washington的Microsoft Corporation買到的WINDOWS NT操作系統(tǒng)(該公司也擁有注冊商標“WINDOWSNT”)。由于O/S 378的組成過程與本發(fā)明無關,我們將不再討論它。當然該瀏覽器及本發(fā)明的軟件也可以包括于操作系統(tǒng)本身內。為了闡述方便和簡單,我們將假定瀏覽器是與操作系統(tǒng)分開并位于應用程序400內。應用程序400在O/S 378控制下運行。對于每個包括網(wǎng)絡瀏覽器在內的運行的應用程序,對每個用戶規(guī)定的命令作出響應,由用戶調用一個或多個單獨的任務實例,這些命令通常通過用戶輸入設備390的可用命令選擇的合適操作來交互地輸入,例如通過工具條內的一個菜單或圖標,然后在顯示器380上顯示相伴信息。
如圖3所示,輸入的信息可來自兩條示例性外部來源網(wǎng)絡供應的信息,例如來自因特網(wǎng)和/或其他網(wǎng)絡設施如一個內聯(lián)網(wǎng)(全部通常表示為圖2中的網(wǎng)絡210)并通過網(wǎng)絡連接205送至通信接口350(示于圖3);或來自專用輸入源并通過路徑310送至輸入接口330。專用輸入可來自廣泛范圍的來源,例如一個或者本地或者遠程的外部數(shù)據(jù)集或者其他輸入源。輸入接口330連至路徑310及包含合適電路以便提供為物理地將每個不同專用輸入信息源連接和接口至計算機系統(tǒng)300所需的相應電氣連接。在操作系統(tǒng)控制下,應用程序400與外部來源,例如通過網(wǎng)絡連接205與遠程網(wǎng)絡服務器或者通過路徑310與專用源交換命令和數(shù)據(jù),以便在程序運行期間傳送和接收通常由用戶請求的信息。
輸入接口330也可通過連線395和用戶輸入設備例如鍵盤和鼠標電氣地連至計算機系統(tǒng)300。顯示器380例如常規(guī)彩色顯示器和打印機例如常規(guī)激光打印機可分別通過連線363和367連至輸出接口360。輸出接口提供必要的電路以便電氣地將顯示器和打印機與計算機系統(tǒng)連接和接口。通過打印機385向用戶提供來自一個運行中的應用程序的硬頁輸出信息。具體地,處于系統(tǒng)300處的用戶可以通過顯示器和打印機和輸入設備390(主要是鼠標和鍵盤)的合適操作,通過因特網(wǎng)與包括一個可通過它訪問的搜索引擎的任何一個范圍廣闊的遠程網(wǎng)絡服務器圖像地實現(xiàn)通信,及從中下載信息例如文件以備就地顯示和打印。
由于除用于實施本發(fā)明的所需硬件和軟件外,計算機系統(tǒng)300的其他特定硬件部件以及存儲于存儲器375中的各種軟件都是常規(guī)的和眾所周知的,將不會再詳細地討論它們。
圖4闡述圖3中所示計算機300內運行的應用程序400的高層框圖;如圖4所示,在本發(fā)明范圍內這些程序包括用于實施本發(fā)明的包括檢索過程(這將結合圖6A和6B在下面詳細討論)的網(wǎng)絡瀏覽器420。假定在網(wǎng)絡瀏覽器與一個用戶選擇的統(tǒng)計搜索引擎例如ALTAVISTA搜索引擎之間建立了一條因特網(wǎng)連接,然后用戶如線422所標示地向過程600提供一個全文本(“文字的”)搜索查詢。此過程如線426所示地通過網(wǎng)絡瀏覽器將該查詢送至搜索引擎。此外,雖未專門示出,過程600也在內部分析該查詢以便產(chǎn)生其相應的邏輯形式三重構詞,后者然后就地存儲在計算機300內。對查詢作出響應,該搜索引擎如線432所示地向過程600提供一組統(tǒng)計地檢索的文件記錄。如上所述,這些記錄中的每一個包括一個網(wǎng)址,具體是URL,可在該網(wǎng)址訪問該文件及該文件所在遠程網(wǎng)絡服務器可請求合適命令,從而在因特網(wǎng)上下載一個包含該文件的計算機文件。一旦過程600接收所有記錄,此過程然后如線436所示地通過網(wǎng)絡瀏覽器420發(fā)送合適命令以便訪問和下載所有由這些記錄規(guī)定的文件(即形成輸出文件組)。然后依次地從這些文件的相應網(wǎng)絡服務器訪問它們并且如線442所示地將它們下載至網(wǎng)絡瀏覽器420和特定過程600。一旦下載了這些文件,過程600即分析每個這類文件以產(chǎn)生和就地存儲它們的相應的邏輯形式三重構詞。此后,將查詢的邏輯形式三重構詞與每個文件的邏輯形式三重構詞加以比較,過程600為每個包含至少一個匹配的邏輯形式三重構詞的文件計分,然后根據(jù)它們的分數(shù)將這些特定文件排序,并最后指令網(wǎng)絡瀏覽器400如線446所示地在“一組再一組”基礎上按照降序的文件分數(shù)向用戶呈現(xiàn)這些特定文件。瀏覽器400在顯示器380屏幕上生成一個合適的選擇按鈕(見圖3),用戶可恰當?shù)卦谄渖稀包c擊”他(她)的鼠標以顯示所需的每個連續(xù)的文件組。
為充分理解邏輯形式在確定、保存和編碼語義信息中的用途,我們將在此處偏離對實施本發(fā)明的處理的討論而在有關范圍內闡釋和描述本發(fā)明中使用的邏輯形式和邏輯形式三重構詞并提供對用于產(chǎn)生它們的方式的簡要了解。
廣義而言,一個邏輯形式是一個有向無環(huán)圖,其中用標記關系將表示任何任意長度文本的詞連接起來。一個邏輯形式描繪詞組中重要詞之間的語義關系,它可能包括它的超名詞和/或同音異義詞。如圖5A-5D中將討論和闡述的,一個邏輯形式可采取一系列不同形式中的任何一個,例如邏輯形式圖或它的任何子圖,例如邏輯形式三重構詞表,每個三重構詞具有“詞-關系-詞”的形式。雖然本發(fā)明如特定實施例中那樣生成和比較邏輯形式三重構詞,但如上述,本發(fā)明可容易地利用任何其他能夠描繪各詞之間的語義關系的形式。
邏輯形式三重構詞和它們的結果可以通過一系列逐步復雜的句子例子來更好地理解,首先考慮圖5A。此圖闡述示例性輸入串510的邏輯形式圖515和邏輯形式三重構詞525,該句子具體是“The octopushas three hearts.”一般而言,為生成一個示例性輸入串例如輸入串510的邏輯形式三重構詞,首先將該串進行語法分析以得到它的成分詞。此后,為每個這類詞使用一個存儲的詞典中的預定記錄(不能與由搜索引擎利用的文件記錄相混淆),這些成分詞的相應記錄本身通過預定語法規(guī)則合并為較大結構或分析,而它們本身又通過預定語法規(guī)則再次合并為更大結構,例如一個句法的語法分析樹。然后從該句法的語法分析樹中建立一個邏輯形式圖。由詞記錄中一定相應屬性和它們的值的存在與否來部分地確定是否可對成分的特定組應用特定規(guī)則。該邏輯形式圖然后轉換為一系列邏輯形式三重構詞。本發(fā)明的例子使用這類具有大約165,000個首詞條目的詞典。此詞典包括不同類型的詞,例如前置詞、連詞、動詞、名詞、作用詞和量詞,它們確定輸入串的詞中所固有的句法和語義特性從而可構作它的一個句法的語法分析樹。顯然,可預先計算一個邏輯形式(或者任何其他表示,例如任何其他能夠描繪一個語義關系的邏輯形式三重構詞或邏輯形式中的邏輯形式圖),而一個相應文件則在該文件的一個記錄中標志和存儲以備以后一旦該文件被檢索時即可供隨后訪問和使用而不用計算。如下面結合圖10-13B詳細地討論的另一個實施例中,使用這類預先計算和存儲可以顯著地和有利地減少為處理任何根據(jù)本發(fā)明檢索的文件所需自然語言處理量及與其相關的運行時間。
具體地,對于一個輸入串,例如圖5A中所示句子510,首先為它的每個成分詞使用詞典中的預定記錄進行詞態(tài)分析,以便為它們生成一個所謂“詞干”(或“基干”)形式。詞干形式用于將不同詞形式例如動詞時態(tài)和單復數(shù)名詞變化規(guī)范化為一個公共的詞態(tài)形式以供語法分析器用。一旦產(chǎn)生了詞干形式,語法分析器即使用成分詞的記錄中的語法規(guī)則和屬性將輸入串進行句法分析,從而產(chǎn)生它的句法的語法分析樹。此樹闡述輸入串的結構,具體是輸入串中每個詞或詞組,例如名詞詞組“The octopus”的結構;它的相應語法功能分類,例如NP用于名詞詞組;以及其中的與每個句法相關的詞或詞組的連接。對于示例性句子510,它的相關句法的語法分析樹將是表1--“The octopus has three hearts.”的句法的語法分析樹 位于該樹左上角中的起始節(jié)點規(guī)定了進行語法分析的輸入串的類型。句子類型包括“DECL”(此處所用)用于陳述句,“IMPR”用于命令句和“QUES”用于問句。垂直地顯示于起始節(jié)點之右和下方的是第一層分析。此分析具有一個用星號標示的首節(jié)點,它通常是一個主動詞(此處是“has”一個前修飾語(此處是名詞詞組“Theoctopus”),后隨以一個后修飾語(名詞詞組“three hearts”)。該樹的每一片葉包含一個詞素名詞或一個標點符號。此處作為標記,“NP”標示一個名詞詞組,及“CHAR”標示一個標點符號。
然后使用一組不同的規(guī)則來處理句法的語法分析樹以產(chǎn)生一個邏輯形式圖,例如輸入串510的圖515。產(chǎn)生邏輯形式圖的過程涉及從輸入串的句法分析中提取基礎結構;邏輯形式圖包括定義為具有詞之間的語義關系的那些詞及該關系的功能特性。用于將不同語義關系分類的“深層”情況或功能作用包括表2Dsub--深層主語Dind--深層間接賓語
Dobj--深層賓語Dnom--深層謂語主格Dcmp--深層賓語補語為標識輸入串中所有語義關系,查看該串的句法的語法分析樹中的每個節(jié)點。在以上關系之外,還使用其他語義作用,例如下面所示表3PRED--謂語PTCL--由兩部分動詞組成的助詞Ops--作用詞,例如數(shù)詞Nadj--修飾名詞的形容詞Dadj--謂語形容詞PROPS--是一個從句的其他沒有規(guī)定的修飾語MODS--不是一個從句的其他沒有規(guī)定的修飾語還定義了附加語義標記,例如表4TmeAt--那個時候IocAt--位置在任何情況下,輸入串510的這類分析結果是邏輯形式圖515。輸入串中彼此之間存在語義關系的那些詞(例如“Octopus”和“Have”)被顯示時用彼此間規(guī)定為連接屬性的關系(如Dsub)彼此連接起來。由輸入串510的圖515所舉例的這個圖獲取了每個輸入串的內容和修飾成分的結構。其中邏輯形式分析將功能詞例如前置詞和冠詞映射為圖中所闡述的特征或結構關系。邏輯形式分析還解決指代照應,也即規(guī)定例如一個代詞和一個共同指代的名詞詞組之間的正確先行詞關系;并檢測和闡述省略的恰當功能關系。在邏輯形式分析嘗試處理多義性和/或其他語言風格期間可能出現(xiàn)附加處理。然后簡單地用常規(guī)方式自邏輯形式圖中讀取相應的邏輯形式三重構詞并將它存儲為一組。每個三重構詞包含兩個如圖中所闡述的由一個語義關系所連接的節(jié)點詞。對于示例性輸入串510,邏輯形式三重構詞525來自處理圖515。此處邏輯形式三重構詞525包含三個個別的三重構詞,它們集合地表達了輸入串510中固有的語義信息。
類似地,如圖5B-5D所示,對于輸入串530、550和570,具體即示例性句子“The octopus has three hearts and two lungs.”,“Theoctopus has three hearts and it can swim.”,和“I like shark fin soupbowls.”,可分別得到邏輯形式圖535、555和575以及邏輯形式三重構詞540、560和580。
有三種邏輯形式構造,它們需要附加的自然語言處理以便在包括一個常規(guī)“走圖”的常規(guī)方式外正確地產(chǎn)生所有邏輯形式三重構詞,其中從邏輯形式圖中建立邏輯形式三重構詞。在句子并列的情況下,如在示例性句子“The octopus has three hearts and two lungs”即輸入串530中,為一個詞建立一個邏輯形式三重構詞、它的語義關系及其并列成分的每一個值。根據(jù)“特殊”走圖,我們在圖540中發(fā)現(xiàn)兩個邏輯形式三重構詞“have-Dobj-heart”和“have-Dobj-lung”。只使用一個常規(guī)走圖,我們只能獲取一個邏輯形式三重構詞“have-Dobj-and”。類似地,在具有所指事物(Refs)的成分的情況下,如在示例性句子“The octopus has three hearts and it can swim”也即輸入串550中,我們在由常規(guī)走圖所生成的三重構詞之外還為一個詞建立一個邏輯形式三重構詞、它的語義關系及Refs屬性的每一個值。根據(jù)此特殊走圖,我們在常規(guī)邏輯形式三重構詞“swim-Dsub-it”之外還在三重構詞560中發(fā)現(xiàn)邏輯形式三重構詞“swim-Dsub-octopus”。最后,在具有名詞修飾語的成分的情況下,如在示例性句子“I likeshark fin soup bowls”也即輸入串570中,建立附加邏輯形式三重構詞以表示復合名詞的可能內部結構。常規(guī)走圖建立邏輯形式三重構詞“bowl-Mods-shark”、“bowl-Mods-fin”和“bowl-Mods-soup”以反映可能的內部結構[[shark][fin][soup]bowl]。在特殊走圖中,我們建立附加邏輯形式三重構詞“fin-Mods-shark”、“soup-Mods-fin”和“soup-Mods-shark”以分別反映以下可能的內部結構[[sharkfin][soup]bowl]和[[shark][fin soup]bowl]和[[shark[fin]soup]bowl]。
由于詞態(tài)、句法和邏輯形式的處理的特點細節(jié)與本發(fā)明無關,我們將跳過它們的任何細節(jié)。當然,關于這方面的進一步細節(jié),讀者可參考于1996年6月28日遞交的名為“用于自句法樹中計算語義邏輯形式的方法和系統(tǒng)”并賦予系列號08/674,610的共同未決美國專利申請以及可具體地參考于1997年3月7日遞交的其所賦予系列號為的“利用文本的語義表示的信息檢索”;這兩者都已轉讓給本受讓人并已包括作為參考資料。
研究過邏輯形式和它們的結構后,我們將回來討論用于實施本發(fā)明的處理操作。
用于圖2、3和4中所示的本發(fā)明的特定實施例中的本發(fā)明檢索過程600的流程圖集合地闡述于圖6A和6B中;這兩張圖紙的正確對齊已示于圖6中。除虛線框225中所示的操作外,這些圖中的其余操作都由計算機系統(tǒng)完成,例如客戶PC300(見圖2和3)及具體地在網(wǎng)絡瀏覽器420內完成。為便于理解,在以下整個討論中讀者應同時參考圖2、3和6A-6B。
在進入過程600時,首先進至塊605。運行時此塊提示用戶通過網(wǎng)絡瀏覽器420輸入一個全文本(文字)查詢。該查詢可以是單個問句(例如“Are there any air-conditioned hotel sin Bali ”)或單個句子(例如“Give me contact information for all fireworks held inSeattle during the month of July.”)或句子片斷(例如“Clothes inEcuador”)。一旦獲取此查詢607,過程即分叉并通過路徑607進至塊610及通過路徑643至塊645。塊645即調用NLP子程序700以分析該查詢和結構成分并就地存儲其相應的邏輯形式三重構詞組。塊610即如虛線615所標示地將全文本查詢自網(wǎng)絡瀏覽器420通過一個因特網(wǎng)連接傳送至遠程搜索引擎例如位于服務器220處的引擎225。在此處,搜索引擎完成塊625以對查詢作出響應而檢索一組文件記錄。一旦形成此組,即如虛線630所示由遠程服務器將該組傳送回計算機系統(tǒng)300,并具體地送至在此處運行的網(wǎng)絡瀏覽器420。此后完成塊635以接收該組記錄,然后為每個記錄自該記錄提取一個URL,在該URL處訪問一個網(wǎng)站及自該處下載一個包含一個對應于該記錄的文件的相關軟件。一旦已下載了所有文件,塊640即完成。對于每個這類文件,此塊首先自該文件提取所有文本,包括位于HTML標記內的與該文件相關的任何文本。此后,為便于進行一個時候對單個句子操作的自然語言處理,通過一個常規(guī)句子分解器將每個文件的文本分解為一個文本軟件,其中每個句子(或問句)占據(jù)軟件中一行。此后,塊640為該文件中每一行文字重復地調用NLP子程序700(下面將結合圖7詳細地討論它)以分析這些文件和結構成分中的每一個并為該文件中每一文字行就地存儲一組相應的邏輯形式三重構詞。雖然塊645中的操作主要是與塊610、635和640中的操作并行地進行的,但根據(jù)實際實施情況,塊645中的操作可串行地在塊610、635和640之前或后完成。選代地,如下面結合圖10-13B討論的本發(fā)明另一個實施例中的情況,可預先計算每一個文件的邏輯形式三重構詞并存儲起來以供隨后文件檢索時訪問和使用,在此情況下,在文件檢索期間這些三重構詞只是簡單地提供訪問而不是計算。在此情況下這些三重構詞可用某種方式存儲為該所存文件的特性,或作為例如該文件的記錄的單獨條目或包含該文件的數(shù)據(jù)集中的單獨條目。
在任何情況下以及回至圖6A和6B中所示過程600,一旦為查詢和為輸出文件集中每個檢索的文件構成邏輯形式三重構詞組并將它們全部存儲起來,塊650即完成。此塊將查詢中每個邏輯形式三重構詞與每個檢索的文件的每個邏輯形式三重構詞進行比較以便找到查詢中任何三重構詞與任何文件中任何三重構詞的匹配。匹配的一種示例性形式規(guī)定為兩個三重構詞之間既在節(jié)點詞的名詞上又在這些三重構詞的關系類型上完全匹配。具體地,對于一個示例性邏輯形式三重構詞對“詞1a-關系1-詞2a”和“詞1b-關系2-詞2b”而言,只在節(jié)點詞‘詞1a’與‘詞1b’彼此完全相同,節(jié)點詞‘詞2a’與‘詞2b’彼此完全相同及′關系1′與′關系2′完全相同時才出現(xiàn)匹配。除非一個三重構詞的所有三個成分與另一個三重構詞的相應成分都完全相同,不然這兩個三重構詞不匹配。完成塊650后,完成塊655以便消除所有不包含匹配的三重構詞的檢索的文件,也即其中沒有與查詢中任何三重構詞匹配的三重構詞的文件。此后完成塊660。通過塊660,根據(jù)這些文件中的每個中存在的匹配三重構詞的關系類型和它們的權值,對所有留下的文件計分。具體地,對一個邏輯形式三重構詞中出現(xiàn)的每一個不同關系類型賦予相應的權值,如圖8A中表800中所示。例如,如圖所示,示例性關系Dobj,Dsub,Ops和Nadj可分別賦予預定的靜態(tài)數(shù)字權值100、75、10和10。這些權值反映了用于標示查詢與文件之間的正確語義匹配的關系的相對重要性。這些權值的實際數(shù)字值通常在經(jīng)驗基礎上確定。如下面結合圖8B所詳細討論的,對于每一個留下的文件,它的分數(shù)是它的獨一的匹配三重構詞(忽略所有雙重匹配)的權值的預定函數(shù),示例性地是它們的數(shù)值和。將這些文件如此加權后,完成塊665以便按照分數(shù)下降的順序將文件排序。最后,完成塊670以按照所排順序顯示文件,通常將一個預定小數(shù)目的文件組,例如5-10個具有最高序數(shù)的檢索文件加以顯示。此后,用戶可在由網(wǎng)絡瀏覽器420顯示的相應按鈕上恰當?shù)亍包c擊”他或她的鼠標,以便計算機系統(tǒng)(客戶PC)300顯示下一組具有次高序數(shù)的文件,并依此類推,直至用戶充分地連續(xù)查看完所有排序的文件,在此處過程600結束。
圖7闡述NLP子程序700的流程圖。當給定一行單行輸入文字時,不論它是一個查詢、一個文件中的句子還是文字片斷,此子程序都構作它們的相應的邏輯形式三重構詞。
具體地,在進入子程序700時,首先執(zhí)行塊710以便處理一行輸入文字從而產(chǎn)生一個邏輯形式圖,例如圖5A中所示示例性圖515。此處理包括詞態(tài)的和句法的處理以便產(chǎn)生一個句法的語法分析樹,然后從其中計算一個邏輯形式圖。此后,如圖7中所示,完成塊720以從該圖中提取(讀取)一組相應的邏輯形式三重構詞。在此以后,執(zhí)行塊730以生成作為一個單獨和各別的格式化文字串的每個這類邏輯形式三重構詞。最后,執(zhí)行塊740以便在一個數(shù)據(jù)集(或數(shù)據(jù)庫)中存儲該行輸入文字及作為一串格式化文字串的該行的一組邏輯形式三重構詞。在完全存儲此組后,在塊700結束執(zhí)行。如要替代邏輯形式三重構詞,可在本發(fā)明中使用與邏輯形式相關的一種不同表示例如一個邏輯形式圖,可將塊720和730容易地改變?yōu)樯勺鳛楦袷交奶囟ㄐ问?,而塊740則用于在數(shù)據(jù)集中存儲該形式以替代邏輯形式三重構詞。
為充分了解本發(fā)明將邏輯形式三重構詞比較和加權及將相應文件排序的方式,可考慮圖8B。此圖用圖像闡述解釋性查詢和三組解釋性檢索文件的分別示于圖6A和6B中的塊650、660、665和670內出現(xiàn)的根據(jù)本發(fā)明原理的邏輯形式三重構詞的比較;及文件計分、排序和選擇過程。為便于闡述,假定用戶向本發(fā)明的檢索系統(tǒng)提供全文本查詢810,其查詢?yōu)椤癏ow many hearts does an octopus have ”。還假定,對此查詢作出響應,最終通過一個統(tǒng)計搜索引擎將三個文件820檢索。這些文件中,第一個文件(標以Document 1)是一個包含artichoke hearts和octopus的配方。第二個文件(標以Document2)是一個有關octopi的冠詞。第三個文件(標以Document 3)是一個有關deer的冠詞。這三個文件和該查詢都轉換為它們的成分邏輯形式三重構詞,該過程因此在文字上用“NLP”(自然語言處理)表示。所得該查詢和Document 1、Document 2和Document 3的邏輯形式三重構詞分別示于塊830、840、850和860內。
一旦如此確定了這些三重構詞,即如虛線845、855和865所標示,依次地將查詢的邏輯形式三重構詞分別與Document 1、Document 2和Document 3的邏輯形式三重構詞比較,以便確認是否有任何文件包含任何與查詢中任何邏輯形式三重構詞相匹配的三重構詞。不包含任何這類匹配的三重構詞的文件例如Document 1即予以消除并不再考慮。另一方面,Document 2和Document 3包含了匹配的三重構詞。具體地,Document 2包含三個這類三重構詞示例性地與一個句子相關的“HAVE-Dsub-OCTOPUS”和“HAVE-Dsub-HEART”及示例性地和另一個句子相關的“HAVE-Dsub-OCTOPUS”(這些句子并未示出)。在這些三重構詞中,兩個是完全相同的,即“HAVE-Dsub-OCTOPUS”。文件的分數(shù)示例性地是該文件中所有獨一地匹配的三重構詞的權值的數(shù)值和。任何文件的雙重匹配全部忽略。可在一個三重構詞中出現(xiàn)的不同類型的關系的相對加權排序按下降順序自它們的最高分至最低分排列如下首先是動詞-賓語組合(Dobj);然后是動詞-主語組合(Dsub);前置詞和作用詞(例如Ops);及最后是修飾語(例如Nadj)。在圖8A中的示例性三重構詞加權表800給出這一加權方案。為簡化此圖,表800并未包括所有可能出現(xiàn)在邏輯形式三重構詞中的不同關系,而只包括那些和圖8B中三重構詞有關系者。按此尺度,每個文件中對其分數(shù)有影響的特定三重構詞都用打勾記號(“√”)標出。當然,也可使用與我們所使用的不同的為文件計分的預定尺度,例如將權值相乘而不是相加以增強文件的選擇性(區(qū)別性),或是以另外一種預定方式將權值相加,例如包括同一類型的多次匹配和/或除以上所指出的以外將其他三重構詞的權值都排除。此外,對于任何文件,在某些方式中也可為下列情況加分該文件中三重構詞本身內的節(jié)點詞,或該文件中這些節(jié)點詞的頻度或語義內容;該文件中的特定節(jié)點詞的頻度或語義內容;或該文件中特定邏輯形式(或它的釋義)和/或作為整體的特定邏輯形式三重構詞的頻度;以及該文件長度。
因此,已知我們所選用計分尺度和表800中所示權值,即可知Document2的分數(shù)是175,它由與塊850中標示的文件中第一句有關的前兩個三重構詞的權值100和75組合而成。此塊中列出的與它的第二句有關的文件中第三個三重構詞早已與文件中存在的其他一個三重構詞匹配,因此予以忽略。類似地,Document3的分數(shù)是100,由列于塊860中的此特定文件中單個匹配三重構詞的權值100組成。根據(jù)這些分數(shù),Document2排在Document3之前,這些文件即按此順序呈現(xiàn)給用戶。在此處并未出現(xiàn)的另一種情況下,即當任何兩個文件具有相同分數(shù)時,這些文件按照常規(guī)統(tǒng)計搜索引擎所提供的相同順序來排序并按此序呈現(xiàn)給用戶。
顯然,熟悉技術的人知道實施本發(fā)明的不同處理部分可位于單個計算機內,也可分布在用于集合地組成一個信息檢索系統(tǒng)的不同計算機內。在此方面,圖9A-9C分別闡述三個不同的實現(xiàn)本發(fā)明原理的信息檢索系統(tǒng)實施例。
圖9A顯示一個這類選代實施例,其中所有處理操作都位于單個本地計算機910例如一個PC內。在此情況下,計算機910容納一個搜索引擎并通過該引擎標志輸入的文件及對用戶提供的全文本查詢作出響應而搜索一個數(shù)據(jù)集(或是本地的,例如在一個CD-ROM上或其他存儲媒體上,或是可對該計算機訪問的)以便最終產(chǎn)生一個組成輸出文件組的檢索文件組。此計算機也執(zhí)行本發(fā)明以下處理分析查詢和每個這類文件兩者以產(chǎn)生其相應的邏輯形式三重構詞組;然后比較三重構詞組及按照以上討論的方式將文件選擇、計分和排序,以及最后將這些結果呈現(xiàn)給用戶,例如就在該處或由用戶向該處訪問。
圖9B顯示另一個選代實施例,它包含圖2中所示特定上下文,其中檢索系統(tǒng)由一個與遠程服務器聯(lián)網(wǎng)的客戶PC組成。此處客戶PC920通過網(wǎng)絡連接925與遠程計算機(服務器)930連接。位于客戶PC920處的用戶輸入一個全文本查詢,然后PC將它在網(wǎng)絡連接上傳送至遠程服務器,該客戶PC還分析該查詢以產(chǎn)生其相應的邏輯形式三重構詞組。該服務器容納例如一個常規(guī)統(tǒng)計搜索引擎,因此對查詢作出響應而實行統(tǒng)計檢索以產(chǎn)生一組文件記錄。該服務器然后送回該組記錄并最后或者按照客戶指令或者根據(jù)搜索引擎或有關軟件的能力將一組輸出文件中的每個文件送回至客戶PC。該客戶PC然后分析它所接收的輸出文件組中的相應文件以便產(chǎn)生它的一組邏輯形式三重構詞。該客戶PC然后恰當?shù)乇容^兩組三重構詞、用上述方式將文件計分和排序,并最終將結果呈現(xiàn)給本地用戶,從而完成其處理。
圖9C中還顯示又一個實施例。雖然此實施例采用了與圖9B中相同的物理硬件和網(wǎng)絡連接,但客戶PC920自一個本地用戶接收一個全文本查詢并通過聯(lián)網(wǎng)連接925將查詢向前傳送至遠程計算機(服務器)930。此服務器還提供根據(jù)本發(fā)明的自然語言處理,而不是單純地容納一個常規(guī)搜索引擎。在此情況下,該服務器而不是該客戶PC會恰當?shù)胤治鲈摬樵円援a(chǎn)生一組相應的邏輯形式三重構詞。必要時服務器也下載一組輸出文件中的每個檢索的文件,然后分析每個這類文件以產(chǎn)生它的相應的邏輯形式三重構詞組。此后,服務器恰當?shù)乇容^查詢和文件的兩組三重構詞并按照以上所述的方式將文件選擇、計分和排序。排序以后,服務器930將留下的檢索文件按所排順序通過網(wǎng)絡連接925傳送至客戶PC920以在該處顯示。服務器可以或者按照用戶的指令以上述方式在一組再一組的基礎上傳送這些文件,或者全部依次傳送以供在它們之間按組選擇并顯示于客戶PC上。
此外,遠程計算機(服務器)930不一定只由單個用于提供如上所述的所有常規(guī)檢索的和相關的自然語言處理的單個計算機實施,也可以是如圖9D所示的分布處理系統(tǒng)而由分布于其中的單個服務器中之一承擔處理操作。此處服務器930由前端處理器940組成,它通過連接950將消息發(fā)布至一系列服務器960(包含服務器1,服務器2,……,服務器n)。這些服務器中每一個實施本發(fā)明過程的一個特定部分。在這方面,服務器1可用于將輸入文件標志入海量數(shù)據(jù)庫上的數(shù)據(jù)集中以備隨后檢索。服務器2可實施一個搜索引擎,例如一個常規(guī)統(tǒng)計引擎,以便對一個用戶提供的由前端處理器940送來的查詢作出響應而自海量數(shù)據(jù)庫中檢索一組文件記錄。這些記錄將自服務器2通過前端處理器940送至例如服務器n以備隨后處理,如自一個相應的網(wǎng)站或數(shù)據(jù)庫中下載一個輸出文件組中的每個相應的文件。前端處理器940也發(fā)送該查詢至服務器n。服務器n然后恰當?shù)胤治鲈摬樵兒兔總€文件以便產(chǎn)生相應的邏輯形式三重構詞組并恰當?shù)乇容^這些三重構詞組以及按照上述方式將文件選擇、計分和排序,然后通過前端處理器940將排序的文件送回至客戶PC920以供該處排序地顯示。當然,決定于運行時間和/或出現(xiàn)的其他條件,可以用許多任何其他方法中之一將本發(fā)明處理中不同操作分散于服務器960之間。此外,服務器930可示例性地由一個周知的系統(tǒng)組合配置所實施,該系統(tǒng)組合配置具有一個可由其中所有處理器(或其他類似的分布多處理環(huán)境)訪問的分享的直接存取存儲設備(DASD),它包括存儲于其中的例如常規(guī)搜索引擎所用的數(shù)據(jù)庫及用于自然語言處理的詞典兩者。
雖然我們已描述本發(fā)明是對每個檢索的文件記錄作出響應而下載文件和隨后由例如一個客戶PC就地分析該文件以產(chǎn)生其相應的邏輯形式三重構詞,但也可替代地在搜索引擎標志該文件時生成這些三重構詞。在這方面,當搜索引擎通過例如使用一個網(wǎng)絡爬行器找到并標志每個新文件時,該引擎可以為該文件下載一個完整文件,然后或立即或稍后通過一個批處理過程分析該文件及產(chǎn)生其邏輯形式三重構詞從而預處理該文件。為完成預處理,搜索引擎在其數(shù)據(jù)庫中將這些三重構詞存為該文件的標志記錄的一部分。隨后,任何時候例如對搜索查詢作出響應而檢索該文件記錄時,即將這些三重構詞作為文件記錄一部分送回至客戶PC以供比較等用途。由于在搜索引擎中預處理文件,可以有利地各別地節(jié)省客戶PC的處理時間,從而增加客戶通過量。
此外,雖然我們在使用基于因特網(wǎng)的搜索引擎的特定環(huán)境中討論本發(fā)明,但本發(fā)明同樣可用于(a)任何網(wǎng)絡可訪問的搜索引擎,不論它是否為基于內聯(lián)網(wǎng)的,是否可通過專用網(wǎng)絡設施或其他設施訪問的;(b)與其所存儲數(shù)據(jù)集一起運行的本地化搜索引擎,例如基于CD-ROM的數(shù)據(jù)檢索應用程序,其例子是百科全書、年鑒或自包含單獨數(shù)據(jù)集;和/或(c)它們的任何組合。
考慮到這些,圖10A和10B集合地闡述本發(fā)明又一個實施例,其中預先處理文件以生成邏輯形式三重構詞并集合地將所得三重構詞、文件記錄和文件本身作為自包含單獨數(shù)據(jù)集存儲在一個公共存儲媒體上,該媒體的例子是一個或多個CD-ROM或其他可攜帶海量存儲媒體(其例子是可移動硬盤,磁帶或磁-光或大容量磁的或電子存儲設備),以備分發(fā)給終端用戶。圖10中顯示這些圖紙的正確闡述。將檢索應用程序本身和相伴的待搜索的數(shù)據(jù)集集合地放置于公共媒體上,即得到一個單獨數(shù)據(jù)檢索應用程序;因此不再需要連至遠程服務器的網(wǎng)絡連接去檢索文件。
如圖示,此實施例主要由三部分組成文件標志部分10051,復制部分10052和用戶部分10053。部分10051收集文件以備標志入一個數(shù)據(jù)集,例如數(shù)據(jù)集1030,它又為一個自包含文件檢索應用程序形成文件信息庫,例如一個百科全書,年鑒,特定圖書庫(例如一個決定性法律報告集)雜志裝訂本或類似內容。當用于復制CD-ROM和其他形式的具有相當存儲容量的媒體的費用很塊地下降時,此實施例具有特殊吸引力用于低費用地向廣大用戶群體傳播大量收集的文件以及精確地搜索此收集文件的能力。
在任何情況下,有待標志入數(shù)據(jù)集的輸入文件可自任意數(shù)目的廣泛來源收集并依次地用于計算機1010。此計算機通過存于存儲器1015中的恰當?shù)能浖嵤┮粋€文件標志引擎,它為每個這類文件在數(shù)據(jù)集1030內建立一個記錄并將信息存入文件的記錄中,以及也在數(shù)據(jù)集中建立一個包含文件本身的副本的恰當?shù)卮鎯Φ臈l目。引擎1015執(zhí)行三重構詞生成過程1100。將在下面結合圖11詳細討論的這個過程是為每個被標志的文件單獨執(zhí)行的。此過程用主要與圖6A和6B所示的塊640中討論的相同方式分析文件中的文字詞組,并且如此做后在數(shù)據(jù)集1030中構作及存儲該文件的一組相應的邏輯形式三重構詞。由于圖10A和10B所示的標志引擎1010所執(zhí)行的所有其他用于標志文件的過程包括生成一個它的合適記錄的過程都與本發(fā)明無關,我們將不再對它們作任何討論。只需指出,一旦在過程1100中生成了該組三重構詞,引擎1015即將此組連同文件本身的副本和建立的文件記錄一起存入數(shù)據(jù)集1030。因此在完成所有標志操作后,數(shù)據(jù)集1030不單存儲了其中標志的每個文件的完整副本和它的一個記錄,而且存儲了該文件的一組邏輯形式三重構詞。
在恰當?shù)貥酥玖怂兴栉募?,即通過復制部分10052把被看作“主數(shù)據(jù)集”的數(shù)據(jù)集1030本身復制。在部分10052內,常規(guī)媒體復制系統(tǒng)1040重復地將通過線1035提供的主數(shù)據(jù)集的內容的副本連同通過線1043提供的包括檢索過程的檢索軟件和用戶安裝程序的合適軟件的副本寫入公共存儲媒體內,例如一個或多個CD-ROM,以便集合地形成單獨的文件檢索應用程序。通過系統(tǒng)1040產(chǎn)生一系列媒體副本1050,它具有單獨副本10501,10502,……1050n。所有副本都是相同的,并且如副本10501所特定地顯示的,包含一個如通過線1043所提供的文件檢索應用文件那樣的副本和如通過線1035所提供的數(shù)據(jù)集1030那樣的副本。決定于數(shù)據(jù)集的大小和組織,每個副本可跨越一個或多個單獨的媒體,例如一個或多個單獨的CD-ROM。隨后通常依靠一個購買的許可證將副本在用戶群體內分發(fā)這些副本,如虛線1055所標示。
在用戶例如Userj取得一個副本如CD-ROMj(也標為CD-ROM1060)后,如用戶部分10053中所闡述的,用戶可通過計算機系統(tǒng)1070(例如一個具有即使不是相同的但也是主要的結構體系的PC,例如圖3中所示客戶PC300)相對于存于CD-ROMj中的數(shù)據(jù)集執(zhí)行文件檢索應用程序,包括本發(fā)明在內,從而檢索它的所需文件。具體地,在用戶獲得CD-ROMj后,用戶將該CD-ROM插入PC 1070并進而執(zhí)行存于CD-ROM上的安裝程序以便建立和安裝文件檢索應用軟件入PC的存儲器1075內(這通常是硬盤內一個預定目錄)從而在PC上建立文件檢索應用程序1085。此應用程序包含搜索引擎1090和檢索過程1200。在完成安裝和調用應用程序1085后,用戶可提供一個合適的全文本查詢給應用程序以便搜索CD-ROMj上的數(shù)據(jù)集。對查詢作出響應,搜索引擎自數(shù)據(jù)集中檢索出包括文件記錄和這類每個文件的存儲的邏輯形式三重構詞的一組文件。該查詢也用于檢索過程1200。此過程與以上結合圖6A和6B所討論的檢索過程非常相似,它分析該查詢并構作它的邏輯形式三重構詞。此后,示于圖10A和10B中的過程1200比較該組中每個檢索的文件(尤其是它的記錄)的邏輯形式三重構詞與查詢中的三重構詞。根據(jù)它們之間出現(xiàn)的匹配三重構詞和它們的權值,過程1200然后用如上所示的方式將每個其中出現(xiàn)至少一個匹配的三重構詞的文件計分并按照降序將它們排序并最后將一組,例如5-20個或更少的具有最高序數(shù)的文件記錄呈現(xiàn)給用戶。用戶在觀看這些記錄后,可指令文件檢索應用程序檢索并顯示任何用戶感興趣的有關文件的整個副本。在用戶觀看完第一組檢索文件的第一組文件記錄后,用戶可請求具有次高序數(shù)的下一組文件記錄,依此類推,直至觀看完所有檢索的文件記錄。雖然應用程序1085最初對查詢作出響應而送回排序的文件記錄,但此應用程序也可對查詢作出響應而替代地送回文件本身的排序副本。
圖11闡述圖10A和10B中所示文件標志引擎1015所完成的三重構詞生成過程1100。如上所述,過程1100分析待標志的文件的文字詞組,從而預處理該文件,并為該文件構作一組相應的邏輯形式三重構詞及將它存儲于數(shù)據(jù)集1030內。具體地,在進入過程1100時執(zhí)行塊1110。此塊首先自該文件中提取所有文字,包括任何位于與該文件相關的HTML標記內的文字。此后,為便于執(zhí)行在一個時候只對一個句子操作的自然語言處理,通過常規(guī)句子分解器將每個文件的文字分解為文字軟件,其中每個句子(或問句)占據(jù)軟件中的一行。此后,塊1110單獨為文件中的每一行文字調用NLP子程序(下面將結合圖13A詳細討論它),以便分析該文件及構作該行的一組相應的邏輯形式三重構詞和就地將它存儲在數(shù)據(jù)集1030內。完成這些操作后,過程1100即自塊1110退出。
圖12A和12B集合地闡述圖10A和10B中所示本發(fā)明特定實施例內所用本發(fā)明檢索過程1200的流程圖;其中圖12闡述圖12A和12B的圖紙的正確對齊。與檢索過程600(示于圖6A和6B中及在上面討論過)相反,圖12A和12B中所示所有操作都在一個公共計算機系統(tǒng)上完成,此處為PC 1070(見圖10A和10B)。為便于理解,讀者在以下整個討論中應同時參考圖10A和10B。
進入過程1200后,首先進至塊1205。此塊在執(zhí)行時提示用戶輸入一個全文本查詢。在獲取此查詢后,過程分為兩路通過路徑1207至塊1210及通過路徑1243至塊1245。塊1245在執(zhí)行時調用NLP子程序1350以分析該查詢并構作其相應的邏輯形式三重構詞組和就地將它存儲在存儲器1075內。塊1210在執(zhí)行時如虛線1215所示,將全文本查詢傳送給搜索引擎1090。此處該搜索引擎完成塊1220以便對查詢作出響應而檢索一組文件記錄和與每個這類記錄有關的相應的邏輯形式三重構詞兩者。在檢索此組和相關的邏輯形式三重構詞兩者后,如虛線1230所示,這兩者被送回至過程1200,具體是其中的塊1240。塊1240只是從搜索引擎1090接收此信息并將它存儲在存儲器1075中以便后用。雖然如上所述塊1245中的操作主要是與塊1210、1090和1220的操作并行的,但根據(jù)實際實施考慮,塊1245的操作可以串行地在塊1210、1090或1220的操作之前或后完成。
在將查詢和每個檢索的文件記錄兩者的邏輯形式三重構詞組存入存儲器1075后,塊1250即完成。此塊用以上詳細討論過的方式比較查詢中每個邏輯形式三重構詞及每個文件記錄的每個邏輯形式三重構詞,以便查找查詢中任何邏輯形式三重構詞與任何相應文件中任何邏輯形式三重構詞之間的匹配。完成塊1250后,塊1255將其中不出現(xiàn)匹配邏輯形式三重構詞的即其邏輯形式三重構詞與查詢中任何邏輯形式三重構詞都不匹配的文件的所有檢索記錄都消除。此后完成塊1260。塊1260如上所述地根據(jù)每個相應文件中存在的匹配邏輯形式三重構詞的關系類型和它們的權值對留下的文件記錄計分。在將文件記錄如此加權后,完成塊1265以按照分數(shù)降序將這些記錄排序。最后,塊1270按照所排順序顯示記錄,通常分為一個預定小數(shù)目的,例如5或10個具有最高分數(shù)的文件記錄組。此后用戶可例如在由計算機系統(tǒng)1070顯示的相應按鈕上恰當?shù)亍包c擊”他(她)的鼠標以使系統(tǒng)顯示下一組排序的文件記錄,并依此類推,直至用戶已充分地連續(xù)查看完所有排序的文件記錄(及已訪問和查看其中任何感興趣的文件),此處過程1200結束操作并退出。
圖13A闡述圖11中所示三重構詞生成過程1100中運行的NLP子程序1300的流程圖。如上所述,NLP子程序1300分析待標志的輸入文件,具體是它的單行文字,并構作該文件的一組相應的邏輯形式三重構詞并在圖10A和10B所示數(shù)據(jù)集1030中就地存儲它。子程序1300的操作主要與圖7中所示和以上詳細討論過的NLP子程序700相同。
具體地,進入子程序1300后,首先執(zhí)行塊1310以處理一行輸入文字從而產(chǎn)生一個邏輯形式圖,例如圖5A中所示示例性圖515。此后,如圖13A所示,塊1320自圖中提取(讀取)一組相應的邏輯形式三重構詞。在此后,塊1330將每個這類邏輯形式三重構詞生成為一個單獨和各別的格式化的文字串。最后塊1340在數(shù)據(jù)集1030中存儲該行輸入文本和成為一系列格式化文字串的該行的一組邏輯形式三重構詞。在完全存儲該組后,過程1300退出。選代地,如結合本發(fā)明使用另外不同形式例如一個邏輯形式圖或其子圖以替代邏輯形式三重構詞,則可容易地修改塊1320和1330以便生成該特定形式為格式化串,其中塊1340在數(shù)據(jù)集中存儲該形式以替代邏輯形式三重構詞。
圖13B闡述檢索過程1200中運行的NLP子程序1350的流程圖。如上所述,NLP子程序分析由Userj提供給文件檢索應用程序1085(示于圖10A和10B中)的查詢,并構作它的一組相應的邏輯形式三重構詞及將它存儲在存儲器1075內。子程序1350與以上結合圖13A詳細討論過的子程序1300在操作上的唯一差別在于存儲相應的三重構詞的位置,也即在NLP子程序1300中塊1340將它存儲于數(shù)據(jù)集1030中,而NLP子程序1350中塊1390將它存入存儲器1075中。由于子程序1350的其他塊,具體是塊1360、1370和1380所完成的操作主要分別與子程序1300的塊1310、1320和1330所完成的操作相同,因此我們將不再討論上述塊。
為測試以上結合圖1所一般描述的本發(fā)明檢索過程,我們使用ALTA VISTA搜索引擎作為本檢索系統(tǒng)的搜索引擎。此引擎可在因特網(wǎng)上公開訪問,是一個常規(guī)統(tǒng)計搜索引擎,它具有超過3千1百萬頁標志的網(wǎng)頁并廣泛地使用著(差不多當今每天有2千8百萬個調用)。我們在一臺標準Pentium 90 MHz PC上實施本發(fā)明檢索過程600,使用不同自然語言處理部分,包括一個詞典軟件,它包含于一個作為MICROSOFT OFFICE97程序包一部分的語法檢查程序內(“OFFICE”和“OFFICE97”是Microsoft Corporation of Redmond,Washington的注冊商標)。我們用了一個在線流水線處理模型,即當用戶等待即將得到的結果時,文件被用流水線方式收集并處理。在此具體PC中,大約需要三分之一到二分之一秒以生成每個句子的邏輯形式三重構詞。
請志愿者生成全文本查詢以輸入搜索引擎。生成了總共121條內容廣泛的查詢,以下是代表性的“why was the Celtic civilizationso easily conquered by the Romans ”,“Why do antibiotics work oncolds but not on viruses ”,“Who is the governor of Washington ”,“Where does the Nile cross the equator ”和“When did they startvaccinating for small pox ”。我們將這些121條查詢送至ALTAVISTA搜索引擎并在可能時獲取在每個查詢的響應中送回的最前面的30個文件。在這些例子中,某些文件的送回的文件少于30個,我們就使用全部送回的文件。累計下來,在121個查詢中,我們獲得了3361個文件(即“原始”文件)。
通過本發(fā)明的過程分析3361個文件和121個查詢中的每一個以產(chǎn)生相應的邏輯形式三重構詞組。將這些組恰當?shù)丶右员容^,并用以上討論的方式將所得文件選擇、計分和排序。
手動地和個別地估價所有3361個文件與檢索這些文件所用的相應查詢的相關程度。為估價相關程度,我們請一位不了解我們的特定測試目的的估價人員來手動地和主觀地將這些3361個文件按照它們與其相應查詢的相關程度排序為“最佳”,“相關”或“不相關”。一個最佳文件可認為是包含一個對相應查詢的各別答案的文件。一個相關文件是一個不包含對相應查詢的各別答案但卻與它相關的文件。一個不相關文件是一個對查詢是無用響應的文件,例如一個與查詢無關的用一種英語以外的語言的或是無法從ALTA VISTA引擎提供的相應URL中檢索到的文件。為增加估價的正確性,第二位估價人員查看了這些3361個文件的子集,具體是那些具有至少一個與其相應的查詢中的邏輯形式三重構詞匹配的邏輯形式三重構詞的文件(3361中有431個)以及那些早先安排為相關或最佳但卻沒有任何匹配的邏輯形式三重構詞的文件(3361中有102個)。第三位估價人員作為“平局決勝員”,查看文件排序中出現(xiàn)的任何不一致。
我們觀察到此測試的結果是,本發(fā)明檢索系統(tǒng)實現(xiàn)了改進在總精度上超過ALTA VISTA搜索引擎所送回的原始文件的精度大約200%(即所有選擇的文件),即自大約16%升至大約47%,以及對于前面五個文件大約超過100%,即自大約26%升至大約51%。此外,使用本發(fā)明系統(tǒng)使第一個作為最佳文件送回的文件的精度比原始文件的精度提高了大約113%,自大約17%升至大約35%。
雖然我們是在統(tǒng)計搜索引擎的上下文中具體地討論了本發(fā)明,但本發(fā)明不限于此。在這方面,本發(fā)明可用于處理實際上任何類型搜索引擎所獲取的檢索文件而改進該引擎的精度。
邏輯形式三重構詞中每個不同屬性的權值可以是動態(tài)的或事實上適應的而不是固定的。為做到這點,可將一個學習機理例如Bayesian或神經(jīng)網(wǎng)絡恰當?shù)匕氡景l(fā)明過程中,以便根據(jù)學習經(jīng)驗為每一個不同邏輯形式三重構詞改變數(shù)字權值至最佳值。
雖然本發(fā)明需要邏輯形式三重構詞來精確地匹配,但為在邏輯形式三重構詞之間識別足夠類似的語義內容,可以放寬用于匹配的準則以包含釋義匹配。釋義可以是詞素的或是結構的。詞素釋義的例子是一個超名詞或一個同音異義詞。結構釋義的例子是使用一個名詞同位語或一個關系從句。例如,名詞同位語結構例如“thepresident,Bill Clinton”應看作匹配的關系從句結構例如“Bill Clinton,who is president”。在語義水平上可以實現(xiàn)細度判斷以確定兩個詞彼此之間在語義上是如何類似,從而禁止在查詢“where is coffeegrown ”和文章句子例如“Coffee is frequently farmed in tropicalmountainous regions.”之間出現(xiàn)匹配。此外,可以根據(jù)所提查詢類型來修改用于判定是否存在匹配的過程。例如,如一個查詢詢問某個東西在哪里,則該過程應堅持將“位置”屬性放在任何與所測試句子有關的邏輯形式三重構詞內以便在與查詢的匹配中能看到它。因此,邏輯形式三重構詞“匹配”通常應規(guī)定為不單包含完全相同的匹配,也應包含從寬松的、判斷性的和修改的匹配條件中引伸出來的結果。
此外,本發(fā)明可容易地與其他專門用于非文字信息例如圖像、表格、視頻或其他內容的處理技術結合起來,以便改進總精度。一般而言,文件中的非文字內容經(jīng)常伴以語言的(文字的)描述,例如圖例說明或簡短說明。因此本發(fā)明過程,具體是它的自然語言處理部分,可用于分析和處理經(jīng)常與非文字內容一起使用的語言描述??墒褂帽景l(fā)明自然語言處理技術檢索文件,首先查找具有在語義上與查詢有關的語言內容的一組文件,然后相對于它們的非文字內容,處理此組文件以查找具有有關的文字的和非文字內容的文件。選代地,檢索文件時可以首先相對于非文字內容而檢索一組文件;然后相對于它們的語言內容使用本發(fā)明技術處理該組文件以查找相關文件。
雖然此處詳細地顯示和說明了包含本發(fā)明原理的不同實施例,但熟悉技術的人能夠容易地改變仍然使用這些原理的許多其他實施例。
權利要求
1.一種用于從一個信息庫中檢索所存文件的信息檢索系統(tǒng)中所用設備,所述系統(tǒng)具有一個檢索系統(tǒng),用于對一個查詢作出響應而從該信息庫中檢索多個與該查詢相關的所存文件以規(guī)定一組輸出文件;所述設備包括一個處理器;及具有存在其中的可執(zhí)行指令的存儲器;及其中該處理器對存于存儲器中的指令作出響應從而對查詢作出響應而產(chǎn)生一個它的第一邏輯形式,其中第一邏輯形式描繪與該查詢有關的詞之間的語義關系;為輸出文件組中每個不同的文件獲取一個相應的第二邏輯形式,其中第二邏輯形式描繪所述一個文件內與一個詞組有關的詞之間的語義關系;按照查詢的第一邏輯形式和輸出文件組中多個文件中的每一個的第二邏輯形式的預定函數(shù)來確定輸出文件組中多個文件的順序以便排序;及按照所排順序提供多個與輸出文件組有關的所存條目作為輸出。
2.權利要求1中的設備,其中每個條目或是輸出文件組中一個相應文件,或是一個與所述一個相應文件有關的記錄。
3.權利要求2中的設備,其中該查詢的和輸出文件組中每個不同文件的相應的第一和第二邏輯形式中的每一個是一個邏輯形式圖、一個子圖或一個邏輯形式三重構詞表。
4.權利要求3中的設備,其中該處理器對所存指令作出響應而自一個存儲媒體中讀取輸出文件組中的所述每一個不同文件的相應第二邏輯形式;或分析輸出文件組中所述每一個不同文件,從而產(chǎn)生所述相應的第二邏輯形式。
5.權利要求4中的設備,其中該函數(shù)根據(jù)與該查詢相關的所述第一邏輯形式及與所述一個文件相關的所述第二邏輯形式中的每一個之間的預定關系為所述一個文件計分,以及其中該處理器對所存指令作出響應,根據(jù)與輸出文件中每個文件相關的分數(shù)將所存條目計分以便確定順序。
6.權利要求5中的設備,其中或是與該查詢相關的或是與輸出文件組中所述一個文件相關的所述第一或第二邏輯形式還包括分別與所述查詢或所述一個文件相關的詞的一個釋義。
7.權利要求6中的設備,其中所述第一和第二邏輯形式包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
8.權利要求5中的設備,其中與該查詢有關的所述第一邏輯形式及與輸出文件組中任何文件有關的所述任何第二邏輯形式之間的匹配是一個完全的匹配。
9.權利要求8中的設備,其中所述第一和第二邏輯形式中的每一個包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
10.權利要求5中的設備,其中該信息庫包括一個數(shù)據(jù)集。
11.權利要求5中的設備,其中該查詢是一個全文本查詢。
12.權利要求5中的設備,其中該檢索系統(tǒng)是一個統(tǒng)計搜索引擎。
13.權利要求5中的設備,還包括一個客戶計算機,用于自一個用戶獲取一個查詢及按照所述排序顯示輸出文件組中的多個文件;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器包括所述處理器和所述存儲器,其中該處理器對存于該存儲器中的指令作出響應而自客戶計算機中獲取查詢;按所述所排順序向客戶計算機提供輸出文件組中所述多個文件。
14.權利要求13中的設備,其中服務器包括多個單獨的服務器。
15.權利要求13中的設備,其中檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
16.權利要求15中的設備,其中聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
17.權利要求16中的設備,其中該搜索引擎對查詢作出響應,為輸出文件組中的所述多個文件中的每一個自信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
18.權利要求5中的設備還包括一個具有所述處理器和所述存儲器的客戶計算機;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng)及對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組。
19.權利要求18中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
20.權利要求19中的設備,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
21.權利要求20中的設備,其中該搜索引擎對查詢作出響應而為輸出文件組中所述多個文件中的每一個自信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
22.權利要求5中的設備還包括一個具有所述處理器和所述存儲器的計算機,其中該計算機也對存于存儲器內的指令作出響應而實施所述檢索系統(tǒng)。
23.權利要求22中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
24.權利要求5中的設備,其中所述一個文件的分數(shù)也是所述一個文件中第二邏輯形式內的節(jié)點詞,所述一個文件中所述節(jié)點詞的頻度或語義內容,所述一個文件中的預定義節(jié)點詞的頻度或語義內容,所述一個文件中特定邏輯形式三重構詞的頻度,或所述一個文件的長度的預定函數(shù)。
25.權利要求24中的設備,其中該查詢是一個全文本查詢。
26.權利要求24中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
27.權利要求24中的設備還包括一個客戶計算機,用于自一個用戶獲取一個查詢,及按照所述排序顯示輸出文件組中多個文件;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器包括所述處理器和所述存儲器,其中該處理器對存于該存儲器內的指令作出響應而自該客戶計算機中獲取該查詢,及按照所述排序向該客戶計算機提供輸出文件組中的所述多個文件。
28.權利要求27中的設備,其中該服務器包括多個單獨的服務器。
29.權利要求27中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
30.權利要求29中的設備,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
31.權利要求30中的設備,其中該搜索引擎對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
32.權利要求24中的設備還包括一個具有所述處理器和所述存儲器的客戶計算機;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng)及對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組。
33.權利要求32中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
34.權利要求33中的設備,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
35.權利要求34中的設備,其中該搜索引擎對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
36.權利要求24中的設備還包括一個具有所述處理器和所述存儲器的計算機,其中該計算機也對存于存儲器內的指令作出響應而實施所述檢索系統(tǒng)。
37.權利要求36中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
38.權利要求5的中設備,其中所述第一和第二邏輯形式中的每一個包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
39.權利要求38中的設備,其中或是與該查詢相關的或是與輸出文件組中所述一個文件相關的所述第一或第二邏輯形式三重構詞還包括分別與所述查詢或所述一個文件相關的詞的一個釋義。
40.權利要求38中的設備,其中所述一個文件的分數(shù)也是所述一個文件中第二邏輯形式內的節(jié)點詞,所述一個文件中所述節(jié)點詞的頻度或語義內容,所述一個文件中的預定義節(jié)點詞的頻度或語義內容,所述一個文件中特定邏輯形式三重構詞的頻度,或所述一個文件的長度的預定函數(shù)。
41.權利要求38中的設備,其中該函數(shù)是跨越與輸出文件組中所述多個文件中的每一個有關的邏輯形式三重構詞而取得的權值之和,該邏輯形式三重構詞及與該查詢有關的至少一個邏輯形式三重構詞完全匹配,其中按照與匹配的邏輯形式三重構詞相關的語義關系類型賦予每個匹配的邏輯形式三重構詞一個權值。
42.權利要求41中的設備,其中該處理器對存于該存儲器內的指令作出響應而判定與查詢有關的任何邏輯形式三重構詞是否和與輸出文件組中任何文件有關的任何邏輯形式三重構詞匹配,以便確定一個與所述任何文件有關的匹配邏輯形式三重構詞;對于所述輸出文件組中具有至少一個與它有關的匹配邏輯形式三重構詞的每一個文件,使用由與所述每個匹配邏輯形式三重構詞有關的語義關系所預定義的數(shù)字權值將所述每一個文件中的匹配邏輯形式三重構詞加權,以便形成所述一個文件的一個或多個權值;為所述一個文件計算作為所述一個或多個權值的函數(shù)的分數(shù);及根據(jù)所述分數(shù)將所述文件中的每一個排序以便確定安排順序。
43.權利要求42中的設備,其中安排順序是下降權值順序。
44.權利要求38中的設備,其中該處理器對存于存儲器中的指令作出響應而為所述輸出文件組中具有該文件的最高連續(xù)排序的所述輸出文件組提供一個所述條目的第一預定義組。
45.權利要求44中的設備,其中輸出文件組中的多個文件包含所述輸出文件組中具有至少一個與文件有關的匹配的三重構詞的文件。
46.權利要求45中的設備,其中所述第一和第二邏輯形式三重構詞中的每一個包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
47.權利要求38中的設備,其中或與查詢有關或與輸出文件組中所述一個文件有關的所述邏輯形式三重構詞還包括一個包含所述詞中的任何一個的一個超詞或同音異義詞的邏輯形式三重構詞。
48.權利要求38中的設備,其中與該查詢有關的所述任何邏輯形式三重構詞及與輸出文件組中任何文件有關的所述任何邏輯形式三重構詞之間的所述匹配是一個完全的匹配。
49.權利要求38中的設備,其中該信息庫包括一個數(shù)據(jù)集。
50.權利要求38中的設備,其中該查詢是一個全文本查詢。
51.權利要求38中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
52.權利要求38中的設備,還包括一個客戶計算機,用于自一個用戶獲取一個查詢及按照所述排序顯示輸出文件組中的多個文件;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器包括所述處理器和所述存儲器,其中該處理器對存于該存儲器中的指令作出響應而自客戶計算機中獲取查詢;及按所述所排順序向客戶計算機提供輸出文件組中所述多個文件。
53.權利要求52中的設備,其中該服務器包括多個單獨的服務器。
54.權利要求52中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
55.權利要求54中的設備,其中聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
56.權利要求55中的設備,其中該搜索引擎對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
57.權利要求38中的設備還包括一個具有所述處理器和所述存儲器的客戶計算機;及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng)及對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組。
58.權利要求57中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
59.權利要求58中的設備,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
60.權利要求59中的設備,其中該搜索引擎對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及該處理器對存于存儲器中的指令和記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
61.權利要求38中的設備還包括一個具有所述處理器和所述存儲器的計算機,其中該計算機也對存于存儲器內的指令作出響應而實施所述檢索系統(tǒng)。
62.權利要求61中的設備,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
63.一種用于從一個信息庫中檢索所存文件的信息檢索系統(tǒng)中所用方法,所述系統(tǒng)具有一個檢索系統(tǒng),用于對一個查詢作出響應而從該信息庫中檢索多個與該查詢相關的所存文件以規(guī)定一組輸出文件;該方法包括以下步驟對查詢作出響應而產(chǎn)生一個它的第一邏輯形式,其中第一邏輯形式描繪與該查詢有關的詞之間的語義關系;為輸出文件組中每個不同的文件獲取一個相應的第二邏輯形式,其中第二邏輯形式描繪所述一個文件內與一個詞組有關的詞之間的語義關系;按照查詢的第一邏輯形式和輸出文件組中多個文件中的每一個的第二邏輯形式的預定函數(shù)來確定輸出文件組中多個文件的順序以便排序;及按照所排順序作為輸出提供多個與輸出文件組有關的所存條目。
64.權利要求63中的方法,其中每個條目或是輸出文件組中一個相應文件,或是一個與所述一個相應文件有關的記錄。
65.權利要求64中的方法,其中該查詢的和輸出文件組中每個不同文件的相應的第一和第二邏輯形式中的每一個是一個邏輯形式圖、它的子圖或一個邏輯形式三重構詞表。
66.權利要求65中的方法,其中該獲取步驟包括以下步驟自一個存儲媒體中讀取輸出文件組中的所述每一個不同文件的相應第二邏輯形式;或分析輸出文件組中所述每一個不同文件,從而產(chǎn)生所述相應的第二邏輯形式。
67.權利要求66中的方法,其中該函數(shù)根據(jù)與該查詢相關的所述第一邏輯形式及與所述一個文件相關的所述第二邏輯形式中的每一個之間的預定關系為所述一個文件計分,以及其中該排序步驟包括根據(jù)與輸出文件中每個文件相關的分數(shù)將所存條目排序以便確定順序的步驟。
68.權利要求67中的方法,其中或是與該查詢相關的或是與輸出文件組中所述一個文件相關的所述第一或第二邏輯形式還包括分別與所述查詢或所述一個文件相關的詞的一個釋義。
69.權利要求68中的方法,其中所述第一和第二邏輯形式包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
70.權利要求67中的方法,其中與該查詢有關的所述第一邏輯形式及與輸出文件組中任何文件有關的所述任何第二邏輯形式之間的匹配是一個完全的匹配。
71.權利要求70中的方法,其中所述第一和第二邏輯形式中的每一個包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
72.權利要求67中的方法,其中該信息庫包括一個數(shù)據(jù)集。
73.權利要求67中的方法,其中該查詢是一個全文本查詢。
74.權利要求67中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
75.權利要求67中的方法,其中該系統(tǒng)還包括一個客戶計算機,其中該方法包括在該客戶計算機中的以下步驟自一個用戶獲取一個查詢;及按照所述排序顯示輸出文件組中的多個文件;及該系統(tǒng)還包括一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,其中該方法還包括所述服務器中的以下步驟自客戶計算機中獲取查詢;及按所述所排順序向客戶計算機提供輸出文件組中所述多個文件。
76.權利要求75中的方法,其中檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
77.權利要求76中的方法,其中聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
78.權利要求77中的方法還包括以下步驟,在該搜索引擎中對查詢作出響應,為輸出文件組中的所述多個文件中的每一個自信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及在該服務器中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
79.權利要求67中的方法,其中該系統(tǒng)還包括一個客戶計算機及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng);其中該方法還包括在服務器中對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組的步驟。
80.權利要求79中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
81.權利要求80中的方法,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
82.權利要求81中的方法還包括以下步驟在該搜索引擎中對查詢作出響應而為輸出文件組中所述多個文件中的每一個自信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;及在客戶計算機中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
83.權利要求67中的方法,其中該系統(tǒng)還包括一個計算機,其中該方法包括在計算機中實施所述檢索系統(tǒng)的步驟。
84.權利要求83中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
85.權利要求67中的方法,其中所述一個文件的分數(shù)也是所述一個文件中第二邏輯形式內的節(jié)點詞,所述一個文件中所述節(jié)點詞的頻度或語義內容,所述一個文件中的預定義節(jié)點詞的頻度或語義內容,所述一個文件中特定邏輯形式三重構詞的頻度,或所述一個文件的長度的預定函數(shù)。
86.權利要求85中的方法,其中該信息庫包括一個數(shù)據(jù)集。
87.權利要求85中的方法,其中該查詢是一個全文本查詢。
88.權利要求85中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
89.權利要求85中的方法,其中該系統(tǒng)還包括一個客戶計算機,其中該方法包括在客戶計算機中的以下步驟自一個用戶獲取一個查詢,及按照所述排序顯示輸出文件組中多個文件;及該系統(tǒng)還包括一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,其中該方法還包括在所述服務器中的以下步驟自該客戶計算機中獲取該查詢,及按照所述排序向該客戶計算機提供輸出文件組中的所述多個文件。
90.權利要求89中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
91.權利要求90中的方法,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
92.權利要求91中的方法,還包括以下步驟在該搜索引擎中對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及在服務器中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
93.權利要求85中的方法,其中該系統(tǒng)包括一個客戶計算機及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng);其中該方法還包括以下步驟在服務器中對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組。
94.權利要求93中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
95.權利要求94中的方法,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
96.權利要求95中的方法還包括以下步驟在該搜索引擎中對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及在該客戶計算機中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
97.權利要求85中的方法,其中該系統(tǒng)還包括一個計算機,其中該方法包括在計算機中實施所述檢索系統(tǒng)的步驟。
98.權利要求97中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
99.權利要求67中的方法,其中所述第一和第二邏輯形式中的每一個包括一個或多個邏輯形式三重構詞的相應的第一和第二表,所述第一和第二表中的每一個所述邏輯形式三重構詞都包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
100.權利要求99中的方法,其中或是與該查詢相關的或是與輸出文件組中所述一個文件相關的所述第一或第二邏輯形式三重構詞還包括分別與所述查詢或所述一個文件相關的詞的一個釋義。
101.權利要求99中的方法,其中所述一個文件的分數(shù)也是所述一個文件中第二邏輯形式內的節(jié)點詞,所述一個文件中所述節(jié)點詞的頻度或語義內容,所述一個文件中的預定義節(jié)點詞的頻度或語義內容,所述一個文件中特定邏輯形式三重構詞的頻度,或所述一個文件的長度的預定函數(shù)。
102.權利要求99中的方法,其中該函數(shù)是跨越與輸出文件組中所述多個文件中的每一個有關的邏輯形式三重構詞而取得的權值之和,該邏輯形式三重構詞及與該查詢有關的至少一個邏輯形式三重構詞完全匹配,其中按照與匹配的邏輯形式三重構詞相關的語義關系類型賦予每個匹配的邏輯形式三重構詞一個權值。
103.權利要求102中的方法,其中排序步驟包括以下步驟判定與查詢有關的任何邏輯形式三重構詞是否和與輸出文件組中任何文件有關的任何邏輯形式三重構詞匹配,以便確定一個與所述任何文件有關的匹配邏輯形式三重構詞;對于所述輸出文件組中具有至少一個與它有關的匹配邏輯形式三重構詞的每一個文件,使用由與所述每個匹配邏輯形式三重構詞有關的語義關系所預定義的數(shù)字權值將所述每一個文件中的匹配邏輯形式三重構詞加權,以便形成所述一個文件的一個或多個權值;為所述一個文件計算作為所述一個或多個權值的函數(shù)的分數(shù);及根據(jù)所述分數(shù)將所述文件中的每一個排序以便確定安排順序。
104.權利要求103中的方法,其中安排順序是下降權值順序。
105.權利要求99中的方法,其中提供所存條目的步驟包括為所述輸出文件組中具有該文件的最高連續(xù)排序的所述輸出文件提供一個所述條目的第一預定義組的步驟。
106.權利要求105中的方法,其中輸出文件組中的多個文件包含所述輸出文件組中具有至少一個與文件有關的匹配的三重構詞的文件。
107.權利要求106中的方法,其中所述第一和第二邏輯形式三重構詞中的每一個包括兩個詞中每一個的詞干形式,所述兩個詞分別在該查詢中或在所述每一個文件中的詞組中的相應邏輯形式圖中在語義上相關,所述邏輯形式三重構詞還包括一個表示所述兩個詞之間的語義關系的預定關系。
108.權利要求99中的方法,其中或與查詢有關或與輸出文件組中所述一個文件有關的所述邏輯形式三重構詞還包括一個包含所述詞中的任何一個的一個超詞或同音異義詞的邏輯形式三重構詞。
109.權利要求99中的方法,其中與該查詢有關的所述任何邏輯形式三重構詞及與輸出文件組中任何文件有關的所述任何邏輯形式三重構詞之間的所述匹配是一個完全的匹配。
110.權利要求99中的方法,其中該信息庫包括一個數(shù)據(jù)集。
111.權利要求99中的方法,其中該查詢是一個全文本查詢。
112.權利要求99中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
113.權利要求99中的方法,其中該系統(tǒng)還包括一個客戶計算機,其中該方法包括在客戶計算機中的以下步驟自一個用戶獲取一個查詢;及按照所述排序顯示輸出文件組中的多個文件;及該系統(tǒng)還包括一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,其中該方法還包括在該服務器中的以下步驟自客戶計算機中獲取查詢;及按所述所排順序向客戶計算機提供輸出文件組中所述多個文件。
114.權利要求113中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
115.權利要求114中的方法,其中聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
116.權利要求115中的方法還包括以下步驟,在該搜索引擎中對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;及在該服務器中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
117.權利要求99中的方法,其中該系統(tǒng)包括一個客戶計算機及一個通過聯(lián)網(wǎng)連接連至客戶計算機的服務器,所述服務器實施所述檢索系統(tǒng);其中該方法還包括在服務器中對由客戶計算機提供的查詢作出響應而向客戶計算機提供所述輸出文件組的步驟。
118.權利要求117中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
119.權利要求118中的方法,其中該聯(lián)網(wǎng)連接是一個因特網(wǎng)或內聯(lián)網(wǎng)連接。
120.權利要求119中的方法還包括以下步驟,在該搜索引擎中對查詢作出響應而為輸出文件組中所述多個文件中的每一個自該信息庫中檢索一個所存記錄,該記錄包含用于標示在哪里可以找到輸出文件組中的所述每一個文件的信息;以及在該客戶計算機中對記錄中包含的信息作出響應,自一個與它相關的服務器中訪問和下載所述每一個文件以便包括在輸出文件組中。
121.權利要求99中的方法,其中該系統(tǒng)還包括一個計算機,其中該方法包括在計算機中實施所述檢索系統(tǒng)的步驟。
122.權利要求121中的方法,其中該檢索系統(tǒng)包括一個統(tǒng)計搜索引擎。
123.一種具有存在其中的用于完成權利要求63的步驟的計算機可執(zhí)行指令的計算機可讀媒體。
全文摘要
應用自然語言處理以處理信息檢索引擎例如基于統(tǒng)計的常規(guī)搜索引擎的檢索結果從而改進整體精度的信息檢索系統(tǒng)的設備和相伴方法。具體地,這類搜索最后產(chǎn)生一組檢索文件。然后這些文件經(jīng)受自然語言處理以產(chǎn)生一組邏輯形式。每個這類邏輯形式用“詞-關系-詞”方式將詞組中的詞之間的語義關系,具體是內容和修飾成分加以編碼。以同樣方式分析用戶提供的查詢以產(chǎn)生一組它們的相應的邏輯形式。按照文件和查詢的邏輯形式的預定函數(shù)將文件排序。具體地,將查詢的邏輯形式組和每個檢索的文件的邏輯形式組比較以便確認在這兩個組的任何邏輯形式之間的匹配。對每個具有至少一個匹配邏輯形式的文件探索性地計分,對匹配邏輯形式的每個不同關系賦予不同相應的預定權值。每個這類文件的分數(shù)是例如它的獨一地匹配的邏輯形式的權值的預定函數(shù)。最后將留下的文件按下降分數(shù)排序并按此順序呈現(xiàn)給用戶。
文檔編號G06F17/28GK1302412SQ98808395
公開日2001年7月4日 申請日期1998年5月13日 優(yōu)先權日1997年7月22日
發(fā)明者利薩·布雷登-哈德, 西蒙·H·科斯頓, 威廉·B·多蘭, 露西·H·范德溫德 申請人:微軟公司