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