欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

查詢多方面信息的方法和系統(tǒng)的制作方法

文檔序號(hào):6613321閱讀:157來(lái)源:國(guó)知局
專利名稱:查詢多方面信息的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及用于在信息檢索系統(tǒng)中搜索由倒排文本索引編碼的多方面 信息的方法和系統(tǒng)。
背景技術(shù)
傳統(tǒng)的信息檢索(IR)系統(tǒng)將自由文本搜索與上下文導(dǎo)斜目結(jié)合以增 強(qiáng)用戶體驗(yàn)。例如,銷售產(chǎn)品的網(wǎng)站提供了關(guān)鍵字搜索接口來(lái)搜索與銷售 的產(chǎn)品關(guān)聯(lián)的文檔數(shù)據(jù)庫(kù),并且所述接口結(jié)合了瀏覽菜單以允許用戶到達(dá) 產(chǎn)品的若干級(jí)的類別。響應(yīng)于用戶發(fā)出搜索數(shù)據(jù)庫(kù)的關(guān)鍵字查詢,信息檢 索系統(tǒng)向用戶呈現(xiàn)一組相關(guān)文檔以作為該查詢的結(jié)果,并且還改變導(dǎo)航菜 單以顯示給定查詢的最相關(guān)方面。需要改進(jìn)這些公知的信息檢索系統(tǒng)呈現(xiàn) 關(guān)鍵字搜索結(jié)果并更新上下文導(dǎo)航菜單的速度。此外,將自由文本搜索與 上下文導(dǎo)斜目結(jié)合所需的開發(fā)工作是巨大的。因此,需要克月W目關(guān)技術(shù)的 之前缺陷和限制中的至少一個(gè)。

發(fā)明內(nèi)容
本發(fā)明提供了一種在信息檢索系統(tǒng)中查詢多方面信息的計(jì)算機(jī)實(shí)現(xiàn)的 方法,所述方法包括
由所述信息檢索(IR)系統(tǒng)構(gòu)建倒排索引,所述倒排索引具有多個(gè)以
--對(duì)應(yīng)關(guān)系與多個(gè)置入列表(posting list)關(guān)聯(lián)的唯一索引標(biāo)記,每
個(gè)置入列表包括多個(gè)文檔中的一個(gè)或多個(gè)文檔,其中所述多個(gè)唯一索引標(biāo) 記中的索引標(biāo)記是以下兩者之一作為注釋包括在所述多個(gè)文檔中的一個(gè) 文檔內(nèi)的方面標(biāo)記,以及所述方面標(biāo)記的路徑前綴,其中所述注釋指示樹
形結(jié)構(gòu)中代表包括所述文檔的方面的路徑,所述樹形結(jié)構(gòu)包括多個(gè)節(jié)點(diǎn),
所述節(jié)點(diǎn)代表對(duì)所述文檔進(jìn)行分類的類別和一個(gè)或多個(gè)子類別;
由所述信息檢索系統(tǒng)接收包括針對(duì)所述多個(gè)文檔的多個(gè)約束的查詢,
所述多個(gè)約束與所述多個(gè)唯一索引標(biāo)記中的多個(gè)索引標(biāo)記以及對(duì)應(yīng)于所述
多個(gè)索引標(biāo)記的多個(gè)置入列表關(guān)聯(lián);以及
由所述信息檢索系統(tǒng)執(zhí)行所述查詢,所述執(zhí)行包括
利用所述多個(gè)約束和所述倒排索引來(lái)標(biāo)識(shí)所述多個(gè)置入列表,以

求所述多個(gè)置入列表的交集以獲得所述查詢的結(jié)果。
序產(chǎn)品。
有利地,本發(fā)明提供了高效地將方面信息編碼到倒排索引中的可伸縮 技術(shù)。此外,本發(fā)明提供了高效地對(duì)結(jié)合自由文本約束和導(dǎo)航約束的查詢 求值的運(yùn)行時(shí)算法,由此更快地返回查詢結(jié)果。此外,所公開的運(yùn)行時(shí)算 法是健壯的,即4吏索引的文檔可能被不一致地分類。


圖1是根據(jù)本發(fā)明的實(shí)施例的在信息檢索系統(tǒng)中查詢由倒排文本索引 編碼的多方面信息的系統(tǒng)的方塊圖2是根據(jù)本發(fā)明的實(shí)施例的可以由圖1的系統(tǒng)搜索的多方面信息的 實(shí)例;
圖3示出了根據(jù)本發(fā)明的實(shí)施例的入站文檔到要由圖1的系統(tǒng)使用的 樹形結(jié)構(gòu)的映射;
圖4A是根據(jù)本發(fā)明的實(shí)施例的要由圖1的系統(tǒng)搜索的多方面文檔的 分類的實(shí)例;
圖4B示出了根據(jù)本發(fā)明的實(shí)施例的與圖4A的分類關(guān)聯(lián)的倒排索引; 圖4C示出了才艮據(jù)本發(fā)明的實(shí)施例的圖4A的分類的特殊方面標(biāo)記和置 入列表; 圖5示出了根據(jù)本發(fā)明的實(shí)施例的在圖4A的分類中對(duì)每個(gè)文檔的完 整路徑進(jìn)行編碼的分類和標(biāo)記方案;
圖6是才艮據(jù)本發(fā)明的實(shí)施例的與圖5的分類和標(biāo)記方案對(duì)應(yīng)的計(jì)數(shù)器 的分層結(jié)構(gòu);
圖7是根據(jù)本發(fā)明的實(shí)施例在圖1的系統(tǒng)中執(zhí)行搜索查詢的過(guò)程;以

圖8是根據(jù)本發(fā)明的實(shí)施例的實(shí)現(xiàn)圖7的算法的計(jì)算系統(tǒng)。
具體實(shí)施方式
概述
本發(fā)明提供了向信息檢索系統(tǒng)添加多方面導(dǎo)航能力的可伸縮解決方 案。本文公開的解決方案包括用于對(duì)多方面信息進(jìn)行編碼的倒排索引,以 及高效地對(duì)結(jié)合導(dǎo)航約束和自由文本謂語(yǔ)(即,關(guān)鍵字)的查詢求值的運(yùn) 行時(shí)算法。此外,本發(fā)明提供了高效地對(duì)查詢約束中指定的類別的子類別 內(nèi)包括的文檔數(shù)進(jìn)行計(jì)數(shù)的技術(shù)。此外,本文還公開了計(jì)算與此類子類別 相關(guān)的聚合函數(shù)的技術(shù)。
查詢多方面信息的系統(tǒng)
圖1是根據(jù)本發(fā)明的實(shí)施例的在信息檢索系統(tǒng)中查詢由倒排文本索引 編碼的多方面信息的系統(tǒng)的方塊圖。信息檢索系統(tǒng)ioo(也稱為多方面搜 索系統(tǒng))包括接收搜索查詢104的搜索引擎102。搜索引擎102接jRx站 文檔106,文檔106將方面標(biāo)記作為注釋包括在每個(gè)文檔的文本中。此夕卜, 搜索引擎102使用方面標(biāo)記來(lái)建立將方面信息與置入列表關(guān)聯(lián)的倒排索引 108。每個(gè)置入列表包括一組入站文檔106中的一個(gè)或多個(gè)文檔(也稱為資 格文檔)。此外,搜索引擎102通過(guò)在倒排索引108中求置入列表的交集 來(lái)執(zhí)行查詢104以確定查詢結(jié)果110。
圖2是根據(jù)本發(fā)明的實(shí)施例的可以由圖1的系統(tǒng)搜索的多方面信息的 實(shí)例。如在此使用的,將方面定義為具有有向非循環(huán)圖(dag)或樹形結(jié)構(gòu)的
分層結(jié)構(gòu)或分類,它們通過(guò)類別和一個(gè)或多個(gè)子類別對(duì)項(xiàng)目進(jìn)4亍分類。多
導(dǎo)航。多方面信息200包括通過(guò)類型202、語(yǔ)言204和標(biāo)題206對(duì)電影進(jìn) -f亍分類的三個(gè)方面。類型類別之下的子類別包括戲劇、愛(ài)情劇、喜劇和動(dòng) 作片。每個(gè)這些類型的子類別都存在其他級(jí)別的子類別。例如,戲劇的子 類別包括犯罪片、戰(zhàn)爭(zhēng)片和愛(ài)情片。
使用圖2的各方面中組織的多方面影片信息,針對(duì)任何語(yǔ)言的影片執(zhí) 行示例性數(shù)據(jù)庫(kù)搜索。以下示出了針對(duì)此搜索的圖形向下擴(kuò)展
類型
—故事片
犯罪片(200)
戰(zhàn)爭(zhēng)片(200)
愛(ài)情片(100) —語(yǔ)言
英語(yǔ)(400 )
法語(yǔ)(100 )
將搜索結(jié)果顯示為包括英語(yǔ)或法語(yǔ)故事片的電影的標(biāo)題列表(例如, The Godfather,由Marlon Brando和Al Pacino主演;The Great Escape, 由Steve McQueen主演;Scarface, 由Al Pacino主演;The French Connection,由Gene Hackman主; 寅;Breathless,由Jean-Paul Belmondo
主演,等等)。括號(hào)內(nèi)的數(shù)字指示在每個(gè)故事片子類別以及在每個(gè)語(yǔ)言子 類別中符合條件的影片數(shù)(即,計(jì)數(shù))。例如,犯罪片之后的(200)指示 數(shù)據(jù)庫(kù)中有200部犯罪片。括號(hào)中的這些數(shù)字指引用戶進(jìn)一步向下擴(kuò)展。
繼續(xù)該實(shí)例,顯示了現(xiàn)在將搜索限于故事片類型中的英語(yǔ)電影的第二 向下擴(kuò)展 類型 故事片
犯罪片(100) 戰(zhàn)爭(zhēng)片(50) 愛(ài)情片(50)
語(yǔ)言
—英語(yǔ)(200 )
在此第二向下擴(kuò)展中,示出的故事片的計(jì)數(shù)從第一向下擴(kuò)展下降,因 為僅考慮了英語(yǔ)故事片。另外,同樣通過(guò)排除法語(yǔ)故事片縮短了搜索結(jié)果 列表(例如,The Godfather,由Marlon Brando和A1 Pacino主演;The Great Escape,由Steve McQueen主演;Scarface,由Al Pacino主演;The French Connection, 由Gene Hackman主演,等等)。
仍繼續(xù)該實(shí)例,輸入"Al Pacino"作為關(guān)鍵字搜索項(xiàng),得到的向下擴(kuò) 展顯示如下
類型
—故事片
犯罪片(10)
語(yǔ)言
—英語(yǔ)(10 )
在此情況下,搜索引擎確定戰(zhàn)爭(zhēng)片和愛(ài)情片的計(jì)數(shù)都為零,因此,不 再將這兩個(gè)子類別顯示為向下擴(kuò)展選擇。在搜索結(jié)果列表中,僅顯示了Al Pacino主演的英語(yǔ)故事片(例如,The Godfather,由Marlon Brando和 Al Pacino主演;以及Scarface,由Al Pacino主演)。
索引
圖3示出了根據(jù)本發(fā)明的實(shí)施例的入站文檔到要由圖1的系統(tǒng)使用的 樹形結(jié)構(gòu)的映射300。入站文檔的類別和子類別的分層結(jié)構(gòu)是樹形結(jié)構(gòu)的 方面或在索引之前轉(zhuǎn)換成樹形結(jié)構(gòu)的DAG結(jié)構(gòu)的方面。例如,DAG 302包 括與節(jié)點(diǎn)D關(guān)聯(lián)的文檔dl。在索引之前,將DAG 302轉(zhuǎn)換為樹形結(jié)構(gòu)的方 面304,其中文檔dl與兩個(gè)不同的節(jié)點(diǎn)D關(guān)聯(lián)。在轉(zhuǎn)換為方面304之后, 倒排索引將路徑A.B.D (而非路徑A.C.D)視為在不同節(jié)點(diǎn)結(jié)束。
每個(gè)入站文檔包括一個(gè)或多個(gè)方面標(biāo)記。如在此使用的,將方面標(biāo)記 定義為指示方面的樹形結(jié)構(gòu)分類中路徑的文檔注釋。在一個(gè)實(shí)施例中,將
方面標(biāo)記作為元數(shù)據(jù)插入使用通用標(biāo)記語(yǔ)言(例如,可擴(kuò)展標(biāo)記語(yǔ)言(XML)) 的文檔。在下文中,由術(shù)語(yǔ)"方面"后跟路徑指示符(例如,"方面A.B.D,,) 來(lái)表示特定方面標(biāo)記。對(duì)于本領(lǐng)域的技術(shù)人員顯而易見的是,可以使用其 他表示法來(lái)指示方面標(biāo)記。方面標(biāo)記所指示的路徑通常以該方面的樹形結(jié) 構(gòu)的葉節(jié)點(diǎn)結(jié)束,但是也可能以樹形結(jié)構(gòu)的內(nèi)部節(jié)點(diǎn)結(jié)束。
圖4A是根據(jù)本發(fā)明的實(shí)施例的要由圖1的系統(tǒng)搜索的多方面文檔的分 類實(shí)例。分類400包括虛擬根節(jié)點(diǎn)401并且還包括兩個(gè)方面402和404。 方面402包括類別406 (即,節(jié)點(diǎn)A)、子類別408、 410、 412 (即,分別 為節(jié)點(diǎn)B、 C和D,它們是節(jié)點(diǎn)A的子類別)、子類別414 (即,節(jié)點(diǎn)E, 它是節(jié)點(diǎn)B的子類別),以及子類別416 (即,節(jié)點(diǎn)F,它是節(jié)點(diǎn)C的子類 別)。方面402還包括文檔418、 420和422 (即,分別為文檔dl、 d2和 d3 )。文檔dl包括在子類別414和416中,文檔d2包括在子類別408中, 而文檔d3包括在子類別416中。
方面404包括類別426(即,節(jié)點(diǎn)X)和節(jié)點(diǎn)X的子類別428和430(即, 分別為節(jié)點(diǎn)Y和Z)。方面404還包括子類別428中的文檔418和子類別 430中的文檔420。
應(yīng)指出的是,可以將文檔包括在多個(gè)方面中,并且可以包括在一個(gè)方 面的多個(gè)路徑中。例如,將文檔dl包括在方面402的路徑A. B. E和A. C. F 以及方面404的路徑X. Y中。要指示其包括在路徑A. B. E、 A. C. F和X. Y 中,文檔dl包括以下方面標(biāo)"^己方面A.B.E、方面A. C. E和方面X. Y。
倒排索引由多方面搜索系統(tǒng)100(參見圖l)構(gòu)建并由搜索查詢用于查 找與包括在所述倒排索引中的一個(gè)或多個(gè)索引標(biāo)記匹配的文檔。索引標(biāo)記 是文檔中的關(guān)鍵字或?qū)υ獢?shù)據(jù)進(jìn)行編碼的任意字符串。倒排索引將每個(gè)索 引標(biāo)記與置入列表關(guān)聯(lián),置入列表是符合條件的文檔(例如, 一個(gè)或多個(gè) 包括索引標(biāo)記作為方面標(biāo)記的文檔)的一個(gè)或多個(gè)標(biāo)識(shí)符的列表。例如, 倒排索引將索引標(biāo)記x與包括文檔dl、 d2及d5的第一置入列表關(guān)聯(lián)并將索引標(biāo)記y與包括文檔d5及d9的第二置入列表關(guān)聯(lián)。要針對(duì)索引標(biāo)記"x、 y"執(zhí)行搜索查詢,則求與x和y關(guān)聯(lián)的置入列表的交集以生成d5作為查 詢結(jié)果。該結(jié)果指示文檔d5同時(shí)包括索引標(biāo)記"x"和索引標(biāo)記"y"。
在一個(gè)實(shí)施例中,倒排索引中的置入列表內(nèi)的每個(gè)項(xiàng)都包括可選的有 效負(fù)載,其中可以存儲(chǔ)有關(guān)文檔的其他信息。在下文中,方括號(hào)(即,口) 指示有效負(fù)載。例如,0. 1. 0是d3
中的有效負(fù)載。
返回上述有關(guān)圖2的電影數(shù)據(jù)庫(kù)搜索實(shí)例,可以由包括方面標(biāo)記交集 的查詢提供任何語(yǔ)言的故事片電影標(biāo)題的搜索。作為一個(gè)實(shí)例,該查詢可 以具有以下語(yǔ)法
方面類型.故事片"與"方面語(yǔ)言 同樣,可以由以下查詢提供A1 Pacino主演的英語(yǔ)犯罪片的電影標(biāo)題 的上述搜索
方面類型.故事片.犯罪"與"方面語(yǔ)言.英語(yǔ)"與""alpacino"
每個(gè)索引標(biāo)記"方面類型.故事片.犯罪,,和"方面語(yǔ)言.英語(yǔ)"與倒排索 引中的置入列表關(guān)聯(lián)。倒排索引還包括關(guān)鍵字"al pacino"的置入列表。 要執(zhí)行此查詢,求與"方面類型.故事片.犯罪"、"方面語(yǔ)言.英語(yǔ),,和 "al pacino"關(guān)聯(lián)的置入列表的交集以便確定查詢結(jié)果。
在一個(gè)實(shí)施例中,查詢語(yǔ)法還包括返回子類別路徑名稱及其計(jì)數(shù)的函 數(shù)(例如,獲得計(jì)數(shù))。所返回的子類別路徑名稱是由查詢中的方面限制 所指定的類別或子類別下的每個(gè)子類別的名稱。例如,可以執(zhí)行以下查詢 以返回"類型.故事片"子類別下的子類別名稱和計(jì)數(shù)(參見圖2),以及 返回"語(yǔ)言"類別下的子類別名稱和計(jì)數(shù)(參見圖2):
方面:類型.故事片"與"方面:語(yǔ)言,獲得計(jì)數(shù)(*) 使用與圖2相關(guān)的上述圖形向下擴(kuò)展中顯示的計(jì)數(shù),該樣例查詢返回類型. 故事片.{犯罪片(200),戰(zhàn)爭(zhēng)片(200),愛(ài)情片(100)}以及語(yǔ)言.{英語(yǔ)(400),法 語(yǔ)(100)}。在以上示出的示例性語(yǔ)法中,獲得計(jì)數(shù)(*)指示所述計(jì)數(shù)基于查 詢的方面限制(即,"方面:類型.故事片"和"方面:語(yǔ)言")。
應(yīng)指出的是,包括在查詢中的計(jì)數(shù)函數(shù)可以使用與查詢的方面限制不
同的方面限制。例如,使用圖5的分類,查詢"方面:A "與"方面:X,獲 得計(jì)數(shù)(方面:A.B)"將返回與方面A.B相關(guān)(而不是與A和X相關(guān))的候 選文檔的子類別名稱和計(jì)數(shù)。在下文中根據(jù)圖5和6更詳細(xì)地說(shuō)明了計(jì)數(shù) 的確定。
圖4B示出了與圖4A的分類關(guān)聯(lián)的倒排索引450。倒排索引450由多 方面搜索系統(tǒng)100 (參見圖1)構(gòu)建并包括具有一一對(duì)應(yīng)關(guān)系的索引標(biāo)記 452和置入列表454。每個(gè)索引標(biāo)記或者是包括在文檔中的方面標(biāo)記(所述 文檔包括在關(guān)聯(lián)的置入列表中),或者是源自方面標(biāo)記指示的路徑的唯一 前綴的方面標(biāo)記。作為一個(gè)實(shí)例,圖4A中的文檔dl位于路徑A.B. E中并 包括方面標(biāo)記"方面A.B.E"。在該實(shí)例的倒排索引中,dl在與索引標(biāo)記 "方面A.B.E,,(即,是包括在dl中的方面標(biāo)記的索引標(biāo)記)關(guān)聯(lián)的置入 列表中,以4與索引標(biāo)記"方面A,,和"方面A.B,,(即,源自路徑A.B.E 的唯一前綴)關(guān)聯(lián)的置入列表中。注意,雖然dl也包括在路徑A.C.F中, 后者也具有路徑前綴A,但是索引標(biāo)記"方面A"在倒排索引中僅出現(xiàn)一 次,以保持索引標(biāo)記列表中的表項(xiàng)的唯一性。
當(dāng)執(zhí)行查詢時(shí),搜索引擎102(參見圖l)使用倒排索引來(lái)查找構(gòu)成查 詢結(jié)果的一個(gè)或多個(gè)符合條件的文檔。作為與圖4B相關(guān)的實(shí)例,為了查找 符合查詢"方面A.B '與,方面X.Y,,的條件的文檔,求置入列表[dl,d2] 與[dl]的交集以提供文檔dl的查詢結(jié)果。
入站文檔可能包括臟數(shù)據(jù)(例如,文檔分類的不一致性)。例如,圖 4A中的文檔dl歸類于路徑A. B. E和A. C. F之下。這些路徑可以代表兩個(gè) 相互排斥的類別。本文描述的方法對(duì)此類不一致性是健壯的。
圖4C示出了根據(jù)本發(fā)明的實(shí)施例的圖4A的分類的特殊方面標(biāo)記和置 入列表。在一個(gè)實(shí)施例中,由搜索引擎構(gòu)建的倒排索引包括最終類別部分
470,后者以--對(duì)應(yīng)關(guān)系將特殊方面標(biāo)記(也稱為特殊精確標(biāo)記)472與
置入列表關(guān)聯(lián)。對(duì)于每個(gè)文檔,倒排索引的最終類別部分包括指示文檔所 屬的任何路徑的最終類別或子類別的特殊方面標(biāo)記(多個(gè))。此最終類別/
子類別索引允許查詢"精確地"位于類別或子類別中的文檔(即,屬于類 別或子類別,但是不屬于所述類別或子類別的任何下級(jí))。
特殊精確標(biāo)記472指示圖4A的分類的類別和/或子類別。在圖4C的實(shí) 例中,特殊精確標(biāo)記"方面A.B"與包括文檔d2的置入列表關(guān)聯(lián),由此指 示d2精確地位于節(jié)點(diǎn)B子類別中(參見圖4A中的方面402 )且不位于由 節(jié)點(diǎn)B的子節(jié)點(diǎn)表示的子類別中(即,不位于節(jié)點(diǎn)E子類別中)。
確定符合條件的文檔的計(jì)數(shù)
圖5示出了根據(jù)本發(fā)明的實(shí)施例的對(duì)與圖4A的分類中每個(gè)文檔關(guān)聯(lián)的 所有完整路徑進(jìn)行編碼的分類和標(biāo)記方案。分類500包括施加于圖4A的分 類400的簡(jiǎn)明標(biāo)記方案(例如,杜威標(biāo)記方案)。有關(guān)圖5中示出的節(jié)點(diǎn) 和文檔401-430的說(shuō)明,請(qǐng)參考上文與圖4A相關(guān)的說(shuō)明。根據(jù)分類500 的每個(gè)父節(jié)點(diǎn),將唯一標(biāo)識(shí)符(例如,來(lái)自從0開始的一系列整數(shù))分配 到每個(gè)同胞節(jié)點(diǎn)。在圖5中,使用杜威標(biāo)記方案將0和1分別分配給同胞 節(jié)點(diǎn)A和X。此外,將0、 l和2分別分配給圖5中的同胞節(jié)點(diǎn)B、 C和D, 并將0和1分別分配給同胞節(jié)點(diǎn)Y和Z。此外,所述標(biāo)記方案將0分配給 圖5中沒(méi)有同胞的子節(jié)點(diǎn)(例如,節(jié)點(diǎn)E和F)。將完整路徑(例如,字 符串"fullpath,,)添加到倒排索引并且將其與包括代表所有可以由搜索 引擎102 (參見圖1)搜索的文檔的標(biāo)識(shí)符的置入列表相關(guān)聯(lián)。每個(gè)代表完 整路徑標(biāo)記置入列表中的文檔的標(biāo)識(shí)符包括有效負(fù)載值,所述有效負(fù)載值 ^^用來(lái)自標(biāo)記方案的指示該文檔的所有完整路徑的指示符。例如,分類500 的完整路徑標(biāo)記和關(guān)聯(lián)的置入列表是
fullpath dl[O. 0. 0, 0.1.0, 1. 0], d2
, d3
上述完整路徑標(biāo)記和置入列表示出了文檔dl包括在完整路徑A.B.E、 A. C. F,以及X.Y中,所述路徑分別對(duì)應(yīng)于有效負(fù)載值0. 0. 0、 0. 1. O以及 1. 0;文檔d2包括在完整路徑A. B和X. Z中,所述路徑分別對(duì)應(yīng)于有效負(fù) 載值0. 0和1. 1;文檔d3包括在完整路徑A. C. F中,所述路徑對(duì)應(yīng)于有效 負(fù)載值0.1.0。對(duì)本領(lǐng)域的技術(shù)人員顯而易見的是,還可以使用其他基于
非杜威標(biāo)記方案的編碼。
圖6是根據(jù)本發(fā)明的實(shí)施例的對(duì)應(yīng)于圖5的分類和標(biāo)記方案的計(jì)數(shù)器 分層結(jié)構(gòu)。計(jì)數(shù)器分層結(jié)構(gòu)600由多方面搜索系統(tǒng)100(參見圖l)構(gòu)建以 包括對(duì)應(yīng)于圖5的根節(jié)點(diǎn)401的根節(jié)點(diǎn)601,以及在分別與類別或子類別 節(jié)點(diǎn)406、 408、 410、 412、 414、 416、 426、 428和430 (參見圖5)對(duì)應(yīng) 的節(jié)點(diǎn)606、 608、 610、 612、 614、 616、 626、 628及630處的計(jì)數(shù)器。由 標(biāo)記方案(參見圖5)提供的值對(duì)圖6中的每個(gè)計(jì)數(shù)器進(jìn)行索引,其中該 值是圖5中計(jì)數(shù)器的對(duì)應(yīng)節(jié)點(diǎn)的完整路徑的編碼。例如,由杜威編碼0. 1. 0 對(duì)節(jié)點(diǎn)616的計(jì)數(shù)器F[]進(jìn)行索引并將其與圖5中的分類500的完整路徑 A. C. F關(guān)聯(lián)。
分層結(jié)構(gòu)600中的計(jì)數(shù)器由多方面搜索系統(tǒng)100(參見圖l)用于跟蹤 與用作搜索查詢中約束的類別(或子類別)的每個(gè)子類別關(guān)聯(lián)的符合條件 文檔的計(jì)數(shù)。例如,圖6中的完整路徑A.C.F下的符合條件文檔與杜威編 碼0.1. 0關(guān)聯(lián)。確定編碼0.1. 0的每個(gè)前綴且遞增與每個(gè)前綴關(guān)聯(lián)的計(jì)數(shù) 器。在此實(shí)例中,確定的第一前綴O. 1. O是編碼中最左側(cè)的0,它對(duì)應(yīng)于 分類600中的部分路徑A。然后遞增計(jì)數(shù)器606 (即,對(duì)應(yīng)于部分路徑A 的計(jì)數(shù)器)。從O. l.O確定的第二前綴為0.1,它對(duì)應(yīng)于部分路徑A.C,并 且遞增計(jì)數(shù)器610。最終,確定了完整前綴0. 1. 0且遞增與完整路徑A. C. F 對(duì)應(yīng)的計(jì)數(shù)器616。
為了支持導(dǎo)航操作,本發(fā)明的實(shí)施例提供了其他計(jì)數(shù)。在一個(gè)實(shí)施例 中,查詢API指定查詢的計(jì)數(shù)函數(shù)(例如,獲得計(jì)數(shù))是局部地(即,僅 下級(jí))還是全局地(即,整個(gè)子樹)計(jì)數(shù)。此指定局部還是全局模式有助 于找到整個(gè)樹中對(duì)于給定查詢具有更高計(jì)數(shù)的節(jié)點(diǎn)。在執(zhí)行查詢之后,可 以將用戶的導(dǎo)航位置置于與該查詢最相關(guān)(即,具有更高的計(jì)數(shù))的節(jié)點(diǎn) 處。例如,將圖4A和方面A的分類用作"獲得計(jì)數(shù)"函數(shù)的輸入,所述 函數(shù)在"獲得計(jì)數(shù)"處于全局模式時(shí)返回A. B、 A. C、 A. D、 A. B. E和A. C. F 的計(jì)數(shù),并在"獲得計(jì)數(shù)"處于局部模式時(shí)僅返回A. B、 A. C和A. D的計(jì)數(shù)。
查詢執(zhí)行算法
圖7示出了根據(jù)本發(fā)明的實(shí)施例的在圖1的系統(tǒng)中執(zhí)行搜索查詢的運(yùn) 行時(shí)算法。雖然該查詢執(zhí)行算法使用了杜威編碼,但是對(duì)于本領(lǐng)域的技術(shù) 人員顯而易見的是,還可以使用其他基于非杜威標(biāo)記方案的編碼。在圖7 的查詢執(zhí)行算法開始之前,由多方面搜索系統(tǒng)100(參見圖1)接^站文 檔并且如上所述構(gòu)建倒排索引。查詢執(zhí)行算法始于在步驟700接收搜索查
詢。所述搜索查詢包括包含一個(gè)或多個(gè)方面限制(也稱為約束)Fl 、 F2........
Fn的輸入702。輸入702可選地包括自由文本(也稱為關(guān)鍵字)限制T和/ 或一個(gè)或多個(gè)計(jì)數(shù)器方面限制Cl、 C2........ Cm。
在步驟704,使用倒排索引來(lái)標(biāo)識(shí)與T及F1、 F2........ Fn關(guān)聯(lián)的置
入列表。求這些標(biāo)識(shí)的置入列表的交集以確定一個(gè)或多個(gè)符合條件文檔的
列表。在步驟706,使用完整路徑標(biāo)記來(lái)查找杜威編碼E1、 E2........ Ek
以尋找在步驟704中確定的每個(gè)符合條件的文檔。對(duì)于每個(gè)編碼Ei, Ei
中的杜威數(shù)位在步驟708中用于遞增與Cl、 C2.......、 Cra指示的類別和/
或子類別的子類別相關(guān)聯(lián)的計(jì)數(shù)器。在步驟710,返回(例如,顯示)符
合條件的文檔以及C1、 C2........ Cm的每個(gè)子類別中符合條件的文檔計(jì)數(shù)
和Cl、 C2........Cm的那些子類別的名稱。查詢執(zhí)行算法在步驟712結(jié)束。
查詢執(zhí)4亍實(shí)例
作為應(yīng)用圖7的查詢執(zhí)行算法的實(shí)例,將分類500 (參見圖5)和以下 查詢3見為輸入702:
方面A.B "與"方面X,獲得計(jì)數(shù)(*)
在此實(shí)例中,通過(guò)步驟704中求方面標(biāo)記交集而找到的符合條件的文 檔為文檔dl和d2(即,圖5的文檔418和420 )。步驟706確定匹配查詢 中方面限制的dl和d2的杜威編碼為dl[O. 0. 0, 1. 0]和d2
。對(duì) 于dl,步驟708遞增與0.0, 0.0.0, 1及1.0(即,分別為路徑A.B、 A.B.E、 X和X.Y)關(guān)聯(lián)的計(jì)數(shù)器。對(duì)于d2,步驟708遞增與0. O,l和l. 1 (即,分 別為路徑A.B,X和X.Z)關(guān)聯(lián)的計(jì)數(shù)器。最終,步驟710返回符合條件的
文檔dl和d2,以及A. B和X的子類別以及這些子類別中符合條件的文檔 的計(jì)數(shù)。例如,將子類別和計(jì)數(shù)表示為A.B{E(1)}X{Y(1),Z(1)},其中子 類別在大括號(hào)(即,"0")中列出,并且每個(gè)計(jì)數(shù)在緊隨其關(guān)聯(lián)的子類 別的括號(hào)中。
聚合函數(shù)
在一個(gè)實(shí)施例中,向包括在查詢語(yǔ)法中的上述計(jì)數(shù)函數(shù)(例如,獲得 計(jì)數(shù))補(bǔ)充了提供方面數(shù)據(jù)聚合的更通用的函數(shù),其中聚合比對(duì)屬于特定 類別的子類別的記錄或文檔的簡(jiǎn)單計(jì)數(shù)更復(fù)雜。在特定方面搜索應(yīng)用(如 商業(yè)智能(BI)應(yīng)用)中需要此類聚合且有助于導(dǎo)航到方面的子類別。
在特定數(shù)據(jù)集合(例如,企業(yè)數(shù)據(jù))中,每個(gè)文檔都具有一個(gè)或多個(gè) 與其關(guān)聯(lián)的數(shù)字字段且所述字段在搜索引擎102中索引(參見圖1)。方 面查詢104 (參見圖1)包括自由文本部分和類別約束,以及一組要求子計(jì) 數(shù)(即,所述組中每個(gè)類別的所有子類別的計(jì)數(shù),如以上與圖5及6相關(guān) 的說(shuō)明)的類別。在每個(gè)類別需要子計(jì)數(shù)的情況下,本發(fā)明關(guān)聯(lián)數(shù)字字段 (與索引文檔關(guān)聯(lián))上的一個(gè)或多個(gè)算術(shù)表達(dá)式。搜索引擎102 (參見圖1) 計(jì)算并返回每個(gè)子類別的算術(shù)表達(dá)式(多個(gè)),此外還計(jì)算匹配文檔的數(shù) 量。每個(gè)算術(shù)表達(dá)式可以包含聚合函數(shù)(例如,和、積、平均值、最大值 或最小值)和/或基本公式(例如,數(shù)字字段和/或數(shù)字常數(shù)、加、減、乘 和/或除運(yùn)算符,以及括號(hào)的任何組合)。算術(shù)表達(dá)式的一個(gè)實(shí)例是 AVG{contract-value-2*estimated—cost}。提供了接口,以便可以將算術(shù) 表達(dá)式添加到查詢104 (參見圖1),并與搜索結(jié)果中的計(jì)數(shù)一起返回。
例如,假定"項(xiàng)目集合"中的每個(gè)文檔具有兩個(gè)與其關(guān)聯(lián)的數(shù)值 contract—value和estimated-cost。此外,假定存在地理范圍,并且選擇 了類別"US"(即,表示美國(guó))且子類別是美國(guó)的50個(gè)州。如上所述,搜 索引擎102(參見圖l)計(jì)算每個(gè)州的項(xiàng)目數(shù)。在此實(shí)施例中,對(duì)于每個(gè)州, 搜索引擎還使用聚合函數(shù)來(lái)針對(duì)該州中所有項(xiàng)目的值 [contract-value-estimated-cost](即,期望利潤(rùn))求和。此聚合指示每
個(gè)子類別(即,每個(gè)州)的項(xiàng)目的期望利潤(rùn),而非僅提供該州的項(xiàng)目計(jì)數(shù)。 計(jì)算系統(tǒng)
圖8是根據(jù)本發(fā)明的實(shí)施例的用于實(shí)現(xiàn)圖7的算法的計(jì)算系統(tǒng)。計(jì)算 單元800適于存儲(chǔ)和/或執(zhí)行多方面搜索系統(tǒng)814的程序代碼,并且通常包 括中央處理單元(CPU) 802、存儲(chǔ)器804、輸入/輸出(I/0)接口 806、總線 808、 I/O設(shè)備810和存儲(chǔ)單元812。 CPU 802執(zhí)行計(jì)算單元800的計(jì)算和 控制功能。CPU 802可以包括單個(gè)處理單元,或分布于一個(gè)或多個(gè)位置(例 如,在客戶機(jī)和服務(wù)器上)中的一個(gè)或多個(gè)處理單元之間。
在實(shí)際執(zhí)行多方面搜索系統(tǒng)814的程序代碼期間使用了存儲(chǔ)器804的 本地存儲(chǔ)元件。存儲(chǔ)器804的高速緩沖存儲(chǔ)器元件提供至少一些程序代碼 的臨時(shí)存儲(chǔ),以便減少在執(zhí)行期間必須從大容量存儲(chǔ)裝置檢索代碼的次數(shù)。 此外,存儲(chǔ)器804可以包括未在圖8中示出的其他系統(tǒng),例如,在CPU 802 上運(yùn)行并提供對(duì)計(jì)算單元800內(nèi)和/或連接到計(jì)算單元800的各種組件的控 制的操作系統(tǒng)(例如,Linux)。存儲(chǔ)器804可以包括任何已知類型的數(shù)據(jù) 存儲(chǔ)裝置和/或傳輸介質(zhì),包括大容量存儲(chǔ)裝置、磁介質(zhì)、光介質(zhì)、隨才4 取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、數(shù)據(jù)高速緩存、數(shù)據(jù)對(duì)象等。存儲(chǔ)單 元812例如是存儲(chǔ)數(shù)據(jù)的磁盤驅(qū)動(dòng)器或光盤驅(qū)動(dòng)器。此夕卜,類似于CPU 802, 存儲(chǔ)器804可以位于單個(gè)物理位置,其中包括一個(gè)或多個(gè)類型的數(shù)據(jù)存儲(chǔ) 裝置,或以各種形式分布于多個(gè)物理系統(tǒng)間。此外,存儲(chǔ)器804可以包括 分布于例如LAN、 WAN或存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)(未示出)之間的數(shù)據(jù)。
I/O接口 806包括與外部源往返交換信息的任何系統(tǒng)。I/O設(shè)備810 包括任何已知類型的外部設(shè)備,包括顯示器、鍵盤、鼠標(biāo)、打印機(jī)、揚(yáng)聲 器、手持設(shè)備、傳真機(jī)等。總線808提供計(jì)算單元800中每個(gè)組件之間的 通信鏈路,并可以包括任何類型的傳輸鏈路,包括電、光、無(wú)線鏈路等。
I/O接口 806還允許計(jì)算單元800從輔助存儲(chǔ)設(shè)備(例如,存儲(chǔ)單元 812)存儲(chǔ)和檢索信息(例如,程序指令或數(shù)據(jù))。輔助存儲(chǔ)設(shè)備可以是非 易失性存^i殳備(例如,容納CD-ROM盤的CD-ROM驅(qū)動(dòng)器)。計(jì)算單元800 可以從其他輔助存儲(chǔ)設(shè)備(未示出)存儲(chǔ)和檢索信息,所述設(shè)備可以包括
直接存取存儲(chǔ)器(DASD)(例如,硬盤或軟盤)、磁-光盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng) 器或無(wú)線通信設(shè)備。
本發(fā)明可以采取完全硬件實(shí)施例、完全軟件實(shí)施例或同時(shí)包含硬件和 軟件元素的實(shí)施例的形式。在優(yōu)選實(shí)施例中,本發(fā)明以軟件來(lái)實(shí)現(xiàn),所述 軟件包括但不限于固件、駐留軟件、微碼等。
此外,本發(fā)明可以采取可從計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)訪問(wèn)的計(jì)算 機(jī)程序產(chǎn)品的形式,所述計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)提供了可以被計(jì)算 單元800或任何指令執(zhí)行系統(tǒng)使用或與計(jì)算單元800或任何指令執(zhí)行系統(tǒng) 結(jié)合的多方面搜索系統(tǒng)814的程序代碼。出于此描述的目的,計(jì)算機(jī)可用
或計(jì)算機(jī)可讀介質(zhì)可以是任何能夠包含、存儲(chǔ)、傳送、傳播或傳輸由指令 執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與所述指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程 序的裝置。
所述介質(zhì)可以是電、磁、光、電磁、紅外線或半導(dǎo)體系統(tǒng)(或裝置或 設(shè)備)或傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的實(shí)例包括半導(dǎo)體或固態(tài)存儲(chǔ)器、磁 帶、可移動(dòng)計(jì)算機(jī)盤、RAM 804、 ROM、硬》茲盤和光盤。光盤的當(dāng)前實(shí)例包 括光盤-只讀存儲(chǔ)器(CD-ROM)、光盤-讀/寫(CR-R/W)和DVD。
通過(guò)實(shí)例的方式提供了在此示出的流程圖。可以存在對(duì)在此說(shuō)明的這 些圖或步驟(或操作)的變化而不偏離本發(fā)明的精神。例如,在特定情況 下,可以通過(guò)不同的順序執(zhí)行步驟,或可以添加、刪除或^"改步驟。所有 這些變化都被視為如所附權(quán)利要求中所述的本發(fā)明的 一部分。
雖然在此出于示例目的說(shuō)明了本發(fā)明的實(shí)施例,但是對(duì)于本領(lǐng)域的技 術(shù)人員來(lái)說(shuō),許多修改和更改將是顯而易見的。因此,所附權(quán)利要求旨在 包括所有此類落入本發(fā)明的真正精神和范圍內(nèi)的修改和更改。
權(quán)利要求
1.一種在信息檢索系統(tǒng)中查詢多方面信息的計(jì)算機(jī)實(shí)現(xiàn)的方法,所述方法包括由所述信息檢索系統(tǒng)構(gòu)建倒排索引,所述倒排索引具有多個(gè)以一一對(duì)應(yīng)關(guān)系與多個(gè)置入列表關(guān)聯(lián)的唯一索引標(biāo)記,每個(gè)置入列表包括多個(gè)文檔中的一個(gè)或多個(gè)文檔,其中所述多個(gè)唯一索引標(biāo)記中的索引標(biāo)記是以下兩者之一作為注釋包括在所述多個(gè)文檔中的一個(gè)文檔內(nèi)的方面標(biāo)記,以及所述方面標(biāo)記的路徑前綴,其中所述注釋指示樹形結(jié)構(gòu)中代表包括所述文檔的方面的路徑,所述樹形結(jié)構(gòu)包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)代表對(duì)所述文檔進(jìn)行分類的類別和一個(gè)或多個(gè)子類別;由所述信息檢索系統(tǒng)接收包括針對(duì)所述多個(gè)文檔的多個(gè)約束的查詢,所述多個(gè)約束與所述多個(gè)唯一索引標(biāo)記中的多個(gè)索引標(biāo)記以及對(duì)應(yīng)于所述多個(gè)索引標(biāo)記的多個(gè)置入列表關(guān)聯(lián);以及由所述信息檢索系統(tǒng)執(zhí)行所述查詢,所述執(zhí)行包括利用所述多個(gè)約束和所述倒排索引來(lái)標(biāo)識(shí)所述多個(gè)置入列表,以及求所述多個(gè)置入列表的交集以獲得所述查詢的結(jié)果。
2. 如權(quán)利要求l中所述的方法,其中所述多個(gè)約束包括一個(gè)或多個(gè)方 面約束以及一個(gè)或多個(gè)自由文本約束,并且其中所述標(biāo)識(shí)所述多個(gè)置入列 表包括通過(guò)所述倒排索引標(biāo)識(shí)第 一組以——對(duì)應(yīng)關(guān)系與所述一個(gè)或多個(gè)方面 約束關(guān)聯(lián)的一個(gè)或多個(gè)索引標(biāo)記以及第二組以——對(duì)應(yīng)關(guān)系與所述一個(gè)或 多個(gè)自由文本約束關(guān)聯(lián)的一個(gè)或多個(gè)索引標(biāo)記,所述第一組和所述第二組 一個(gè)或多個(gè)索引標(biāo)記包括在所述多個(gè)唯一索引標(biāo)記中;以及通過(guò)所述倒排索引標(biāo)識(shí)第一組一個(gè)或多個(gè)置入列表和第二組一個(gè)或多個(gè)置入列表,所述第 一組的所述一個(gè)或多個(gè)置入列表以--對(duì)應(yīng)關(guān)系與所述第一組的所述一個(gè)或多個(gè)索引標(biāo)記關(guān)聯(lián),并且所述第二組的所述一個(gè)或多個(gè)置入列表以--對(duì)應(yīng)關(guān)系與所述笫二組的所述一個(gè)或多個(gè)索引標(biāo)記關(guān)聯(lián)。
3. 如權(quán)利要求l中所述的方法,其中所述構(gòu)建所述倒排索引包括 通過(guò)所述倒排索引生成完整路徑標(biāo)記及與其關(guān)聯(lián)的完整路徑標(biāo)記置入列表,所述完整路徑標(biāo)記置入列表包括多個(gè)代表所述多個(gè)文檔的標(biāo)識(shí)符, 其中所述多個(gè)標(biāo)識(shí)符中的 一個(gè)標(biāo)識(shí)符代表所述文檔并包括有效負(fù)載值,所 述有效負(fù)載值標(biāo)識(shí)所述文檔在所述樹形結(jié)構(gòu)中的完整路徑,并且所述有效 負(fù)載值包括由唯一地標(biāo)記所述樹形結(jié)構(gòu)的每個(gè)同胞節(jié)點(diǎn)的方案提供的 一組 完整路徑指示符。
4. 如權(quán)利要求3中所述的方法,還包括建立多個(gè)計(jì)數(shù)器的分層結(jié)構(gòu),每個(gè)計(jì)數(shù)器與所述樹形結(jié)構(gòu)的所述多個(gè) 節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn)關(guān)聯(lián),其中通過(guò)所述一組完整路徑指示符對(duì)所述多個(gè)計(jì) 數(shù)器中的一個(gè)計(jì)數(shù)器進(jìn)行索引;以及更新存儲(chǔ)在所述計(jì)數(shù)器中的值,所述值指示對(duì)所述多個(gè)文檔中的一個(gè) 或多個(gè)文檔的計(jì)數(shù),通過(guò)類別的子類別或由所述多個(gè)約束中的一個(gè)約束指 示的子類別來(lái)對(duì)所述一個(gè)或多個(gè)文檔進(jìn)行分類。
5. 如;K利要求3中所述的方法,其中所述方案是杜威標(biāo)記方案。
6. 如權(quán)利要求l中所述的方法,還包括由所述信息檢索系統(tǒng)接收包括在所述查詢中的算術(shù)表達(dá)式,所述算術(shù) 表達(dá)式與包括在所述多個(gè)文檔中的一個(gè)或多個(gè)文檔內(nèi)的至少一個(gè)數(shù)字字段 關(guān)聯(lián);以及計(jì)算所述算術(shù)表達(dá)式的值,對(duì)所述多個(gè)約束中的一個(gè)約束指示的類別 的每個(gè)子類別執(zhí)行所述計(jì)算。
7. 如權(quán)利要求6中所述的方法,其中所述算術(shù)表達(dá)式包括聚合函數(shù)和 基^/^式中的至少一個(gè),其中所述聚合函數(shù)包括和、積、最大值、最小值和平均值中的至少一 個(gè),以及其中所述基本公式包括一個(gè)或多個(gè)數(shù)字字段、 一個(gè)或多個(gè)數(shù)字常數(shù)、一個(gè)或多個(gè)算術(shù)算子,以及指示帶括號(hào)表達(dá)式的括號(hào)的任何組合。
8.如權(quán)利要求l中所述的方法,其中所述構(gòu)建所述倒排索引包括 對(duì)于所述多個(gè)文檔中的每個(gè)文檔,指定所述多個(gè)唯一索引標(biāo)記中的一 組一個(gè)或多個(gè)索引標(biāo)記作為一組一個(gè)或多個(gè)精確標(biāo)記,每個(gè)精確標(biāo)記指示 對(duì)所述多個(gè)文檔中的一個(gè)或多個(gè)文檔進(jìn)行分類的最終子類別,其中由所述 最終子類別分類的每個(gè)文檔不會(huì)由所述最終子類別的下級(jí)子類別進(jìn)行分 類;以及通過(guò)使用所述一組一個(gè)或多個(gè)精確標(biāo)記的所述查詢,將所述文檔標(biāo)識(shí) 為位于所述最終子類別中,但不在所述最終子類別的任何下級(jí)子類別中。
9, 一種用于在計(jì)算環(huán)境中查詢多方面信息的信息檢索系統(tǒng),所述系統(tǒng) 包括用于由所述信息檢索系統(tǒng)構(gòu)建倒排索引的裝置,所述倒排索引具有多 個(gè)以 一一對(duì)應(yīng)關(guān)系與多個(gè)置入列表關(guān)聯(lián)的唯一索引標(biāo)記,每個(gè)置入列表包 括多個(gè)文檔中的一個(gè)或多個(gè)文檔,其中所述多個(gè)唯一索引標(biāo)記中的索引標(biāo) 記是以下兩者之一作為注釋包括在所述多個(gè)文檔中的一個(gè)文檔內(nèi)的方面 標(biāo)記,以及所述方面標(biāo)記的路徑前綴,其中所述注釋指示樹形結(jié)構(gòu)中代表 包括所述文檔的方面的路徑,所述樹形結(jié)構(gòu)包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)代表 對(duì)所述文檔進(jìn)行分類的類別和一個(gè)或多個(gè)子類別;用于由所述信息檢索系統(tǒng)接收包括針對(duì)所述多個(gè)文檔的多個(gè)約束的查 詢的裝置,所述多個(gè)約束與所述多個(gè)唯一索引標(biāo)記中的多個(gè)索引標(biāo)記以及 對(duì)應(yīng)于所述多個(gè)索引標(biāo)記的多個(gè)置入列表關(guān)聯(lián);以及用于由所述信息檢索系統(tǒng)執(zhí)行所述查詢的裝置,所述用于執(zhí)行的裝置 包括用于利用所述多個(gè)約束和所述倒排索引來(lái)標(biāo)識(shí)所述多個(gè)置入列表 的裝置,以及用于求所述多個(gè)置入列表的交集以獲得所述查詢的結(jié)果的裝置。
10.如權(quán)利要求9中所述的系統(tǒng),其中所述多個(gè)約束包括一個(gè)或多個(gè) 方面約束以及一個(gè)或多個(gè)自由文本約束,并且其中所述用于標(biāo)識(shí)所述多個(gè)置入列表的裝置包括用于通過(guò)所述倒排索引標(biāo)識(shí)第 一組以 一一對(duì)應(yīng)關(guān)系與所述一個(gè)或多個(gè) 方面約束關(guān)聯(lián)的一個(gè)或多個(gè)索引標(biāo)記以及第二組以——對(duì)應(yīng)關(guān)系與所述一 個(gè)或多個(gè)自由文本約束關(guān)聯(lián)的一個(gè)或多個(gè)索引標(biāo)記的裝置,所述第一組和 所述第二組一個(gè)或多個(gè)索引標(biāo)記包括在所述多個(gè)唯一索引標(biāo)記中;以及用于通過(guò)所述倒排索引標(biāo)識(shí)第一組一個(gè)或多個(gè)置入列表和第二組一個(gè) 或多個(gè)置入列表的裝置,所述第 一組的所述一個(gè)或多個(gè)置入列表以——對(duì) 應(yīng)關(guān)系與所述第一組的所述一個(gè)或多個(gè)索引標(biāo)記關(guān)聯(lián),并且所述第二組的 所述一個(gè)或多個(gè)置入列表以——對(duì)應(yīng)關(guān)系與所述第二組的所述一個(gè)或多個(gè) 索引標(biāo)記關(guān)聯(lián)。
11. 如權(quán)利要求9中所述的系統(tǒng),其中所述用于構(gòu)建所述倒排索引的 裝置包括用于通過(guò)所述倒排索引生成完整路徑標(biāo)記及與其關(guān)聯(lián)的完整路徑標(biāo)記 置入列表的裝置,所述完整路徑標(biāo)記置入列表包括多個(gè)代表所述多個(gè)文檔 的標(biāo)識(shí)符,其中所述多個(gè)標(biāo)識(shí)符中的 一個(gè)標(biāo)識(shí)符代表所述文檔并包括有效 負(fù)載值,所述有效負(fù)載值標(biāo)識(shí)所述文檔在所述樹形結(jié)構(gòu)中的完整路徑,并 且所述有效負(fù)載值包括由唯一地標(biāo)記所述樹形結(jié)構(gòu)的每個(gè)同胞節(jié)點(diǎn)的方案 提供的 一組完整路徑指示符。
12. 如權(quán)利要求ll中所述的系統(tǒng),還包括用于建立多個(gè)計(jì)數(shù)器的分層結(jié)構(gòu)的裝置,每個(gè)計(jì)數(shù)器與所述樹形結(jié)構(gòu) 的所述多個(gè)節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn)關(guān)聯(lián),其中通過(guò)所述一組完整路徑指示符對(duì) 所述多個(gè)計(jì)數(shù)器中的一個(gè)計(jì)數(shù)器進(jìn)行索引;以及用于更新存儲(chǔ)在所述計(jì)數(shù)器中的值的裝置,所述值指示對(duì)所述多個(gè)文 檔中的一個(gè)或多個(gè)文檔的計(jì)數(shù),通過(guò)類別的子類別或由所述多個(gè)約束中的 一個(gè)約束指示的子類別來(lái)對(duì)所述一個(gè)或多個(gè)文檔進(jìn)行分類。
13. 如權(quán)利要求ll中所述的系統(tǒng),其中所述方案是杜威標(biāo)記方案。
14. 如權(quán)利要求9中所述的系統(tǒng),還包括用于由所述信息檢索系統(tǒng)接收包括在所述查詢中的算術(shù)表達(dá)式的裝置,所述算術(shù)表達(dá)式與包括在所述多個(gè)文檔中的一個(gè)或多個(gè)文檔內(nèi)的至少一個(gè)數(shù)字字段關(guān)聯(lián);以及用于計(jì)算所述算術(shù)表達(dá)式的值的裝置,對(duì)所述多個(gè)約束中的一個(gè)約束 指示的類別的每個(gè)子類別執(zhí)行所述計(jì)算。
15. 如權(quán)利要求14中所述的系統(tǒng),其中所述算術(shù)表達(dá)式包括聚合函數(shù)和基本公式中的至少一個(gè),其中所述聚合函數(shù)包括和、積、最大值、最小值和平均值中的至少一個(gè),以及其中所述基本公式包括一個(gè)或多個(gè)數(shù)字字段、 一個(gè)或多個(gè)數(shù)字常數(shù)、 一個(gè)或多個(gè)算術(shù)算子,以及指示帶括號(hào)表達(dá)式的一組或多組括號(hào)的任何組 合。
16. 如權(quán)利要求9中所述的系統(tǒng),其中所述用于構(gòu)建所述倒排索引的 裝置包括用于對(duì)于所述多個(gè)文檔中的每個(gè)文檔,指定所述多個(gè)唯一索引標(biāo)記中 的一組一個(gè)或多個(gè)索引標(biāo)記作為一組一個(gè)或多個(gè)精確標(biāo)記的裝置,每個(gè)精 確標(biāo)記指示對(duì)所述多個(gè)文檔中的一個(gè)或多個(gè)文檔進(jìn)^f亍分類的最終子類別, 其中由所述最終子類別分類的每個(gè)文檔不會(huì)由所述最終子類別的下級(jí)子類 別進(jìn)行分類;以及用于通過(guò)使用所述一組一個(gè)或多個(gè)精確標(biāo)記的所述查詢,將所述文檔 標(biāo)識(shí)為位于所述最終子類別中,但不在所述最終子類別的任何下級(jí)子類別 中的裝置。
全文摘要
一種用于查詢多方面信息的方法和系統(tǒng)。構(gòu)建倒排索引以包括與一個(gè)或多個(gè)文檔的置入列表關(guān)聯(lián)的唯一索引標(biāo)記。索引標(biāo)記或者是作為注釋包括在文檔內(nèi)的方面標(biāo)記,或者是所述方面標(biāo)記的路徑前綴。所述注釋指示樹形結(jié)構(gòu)中代表包括所述文檔的方面的路徑。所述樹形結(jié)構(gòu)包括多個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)代表文檔的類別。接收包括針對(duì)文檔的約束的查詢。所述約束與索引標(biāo)記和相應(yīng)的置入列表關(guān)聯(lián)。執(zhí)行所述查詢,所述執(zhí)行包括利用所述約束和所述倒排索引來(lái)標(biāo)識(shí)所述相應(yīng)的置入列表,以及求所述置入列表的交集以獲得查詢結(jié)果。
文檔編號(hào)G06F17/30GK101192237SQ20071016959
公開日2008年6月4日 申請(qǐng)日期2007年11月13日 優(yōu)先權(quán)日2006年11月30日
發(fā)明者A·Z·布羅德, A·紐曼, E·J·謝基塔, F·M·芬圖拉, J·A·小麥克弗森, N·艾榮, R·雷姆佩爾, S·奧菲克-克瓦夫曼, 寧 李, 祁潤(rùn)平 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
中阳县| 鄂尔多斯市| 平远县| 石楼县| 湟源县| 溧水县| 怀来县| 寻甸| 湖南省| 五原县| 乐昌市| 游戏| 扬中市| 兰考县| 辽阳县| 阿合奇县| 泰宁县| 乐亭县| 孝义市| 广汉市| 苍梧县| 台东市| 涟源市| 沙河市| 台州市| 同仁县| 唐海县| 盐池县| 吴桥县| 大宁县| 衢州市| 宁夏| 新和县| 岳阳市| 吴堡县| 秦皇岛市| 江山市| 和平区| 同仁县| 丹棱县| 封丘县|