專利名稱:層次化語(yǔ)義脈絡(luò)文檔查詢方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于非結(jié)構(gòu)化或半結(jié)構(gòu)化文檔查詢的計(jì)算機(jī)檢索方法,尤其是用
于網(wǎng)頁(yè)文檔的查詢。
背景技術(shù):
文檔查詢是科學(xué)工作中的重要環(huán)節(jié)。隨著計(jì)算機(jī)技術(shù)、通信技術(shù)、信息技術(shù)等的飛 速發(fā)展,人們可以獲得的文獻(xiàn)資料越來(lái)越多,視野變得越來(lái)越開(kāi)闊。然而問(wèn)題也隨之產(chǎn)生, 人們可能不必為資料比較少而發(fā)愁,卻為資料太多很難發(fā)現(xiàn)有用的資料發(fā)愁,人們更關(guān)心 如何表達(dá)更復(fù)雜的文檔查詢要求,如何獲取更深層的知識(shí)。因此為用戶提供簡(jiǎn)便、直觀、有 效、更強(qiáng)能力的查詢方法具有較大意義。 目前常見(jiàn)的商用查詢系統(tǒng)通常提供兩種查詢方式簡(jiǎn)單查詢和高級(jí)查詢。簡(jiǎn)單查 詢一般只需要用戶輸入比較少的關(guān)鍵詞,邏輯關(guān)系比較簡(jiǎn)單,而高級(jí)查詢則輸入的關(guān)鍵詞 比較多,甚至可以定義比較復(fù)雜的邏輯關(guān)系。在大多數(shù)情況下,簡(jiǎn)單查詢和高級(jí)查詢之間的 差別一般都不是本質(zhì)上的,常常體現(xiàn)為查詢所使用的關(guān)鍵詞的多少不同,它們之間不存在 層次關(guān)系,不容易反映用戶的復(fù)雜的查詢意圖。 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,通過(guò)網(wǎng)絡(luò)所能獲取的文檔將越來(lái)越多。目前通用的關(guān)鍵詞
查詢技術(shù)雖然簡(jiǎn)單有效,但是卻存在以下兩個(gè)問(wèn)題。 一個(gè)問(wèn)題是關(guān)鍵詞查詢所獲得的文檔
范圍太大,增加了用戶從中篩選的難度,需要消耗用戶更多的時(shí)間。另一個(gè)問(wèn)題是關(guān)鍵詞查
詢不能表示比較深層的知識(shí),它往往局限于關(guān)鍵詞之間的單層的與或非關(guān)系。 為了解決這些問(wèn)題,提出了許多方法。例如查詢擴(kuò)展方法通過(guò)同義詞、近義詞、上
下義詞的擴(kuò)展將關(guān)鍵詞查詢中的關(guān)鍵詞進(jìn)行擴(kuò)展,擴(kuò)大查詢范圍。而目前熱門的語(yǔ)義網(wǎng)絡(luò)、
本體論等則希望能在語(yǔ)義層次上理解文檔和用戶的查詢意圖,然后通過(guò)兩者的匹配實(shí)現(xiàn)文
檔查詢。遺憾的是,由于自然語(yǔ)言極其復(fù)雜,這些研究還停留在研究階段,并沒(méi)有在常用的
商用查詢引擎上出現(xiàn)。 與本發(fā)明比較接近的有 (1)文獻(xiàn)[1]針對(duì)SQL語(yǔ)言中SELECT語(yǔ)句的WHERE子句的要求設(shè)計(jì)了一個(gè)多叉 樹(shù),用于輸入查詢的條件,這樣可以構(gòu)成非常復(fù)雜的SQL查詢語(yǔ)句,但是這種多叉樹(shù)主要應(yīng) 用于管理信息系統(tǒng)的開(kāi)發(fā),是一種對(duì)數(shù)據(jù)庫(kù)操作的可視化操作,而不是對(duì)非結(jié)構(gòu)化的文檔 查詢進(jìn)行操作。 (2)文獻(xiàn)[2]則不對(duì)用戶的查詢請(qǐng)求進(jìn)行分詞等預(yù)處理,而是以語(yǔ)義單元為基本 單元進(jìn)行語(yǔ)義分析,得到語(yǔ)義表達(dá)式之后再借助于語(yǔ)義單元之間的關(guān)系進(jìn)行查詢擴(kuò)展,向 初始查詢中加入相關(guān)的詞或短語(yǔ)。這種查詢最終也歸結(jié)為關(guān)鍵詞查詢,算法比較復(fù)雜,不容 易表達(dá)關(guān)鍵詞之間的復(fù)雜關(guān)系,也限于表達(dá)關(guān)鍵詞之間的單層關(guān)系。 (3)本發(fā)明人在文獻(xiàn)[3]提出的層次化方法,可以用查詢樹(shù)來(lái)表達(dá)用戶的查詢意 圖,但該方法同文獻(xiàn)[1] 一樣,是應(yīng)用在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中,處理的是結(jié)構(gòu)化的數(shù)據(jù)庫(kù)表。
(4)本發(fā)明人提出語(yǔ)義脈絡(luò)文檔查詢方法,并于2008年12月10日申請(qǐng)發(fā)明專利,
3但該發(fā)明主要側(cè)重于用語(yǔ)義脈絡(luò)進(jìn)行單條查詢意圖的文檔查詢,沒(méi)有考慮層次化,不能表 達(dá)或?qū)崿F(xiàn)更深層次的文檔查詢或知識(shí)獲取[4]。
主要參考文獻(xiàn) [1]鄧亞,山嵐,李明。用"多叉樹(shù)"構(gòu)造SQL查詢中的wHERE子句——"多叉樹(shù)" 在VB中的實(shí)現(xiàn)及應(yīng)用[J]。微機(jī)發(fā)展,2003,13(7) :12-14 [2]李莉,高慶獅。 一種基于語(yǔ)義單元的查詢擴(kuò)展方法。計(jì)算機(jī)科學(xué),2008,35(2): 201-204 [3]Wensheng Yin, Pinghui Tu, Xiuguo Chen, Hengxi Zhang. Problem Oriented Analysis andDecision Expert System with Large Capacity Knowledge—Base. 2008Inte rnational Conferenceon Intelligent System and Knowledge Engineering,Nov. 17—18 : 32-372008,Xiaman China [4]尹文生。語(yǔ)義脈絡(luò)文檔查詢方法。專利申請(qǐng)?zhí)?00810236750. 3, 2008年12
月10日。
發(fā)明內(nèi)容
為了克服現(xiàn)有的文檔查詢方法中不能表達(dá)復(fù)雜關(guān)系和不能對(duì)文檔進(jìn)行較深層次 知識(shí)查詢功能的不足,本發(fā)明提出一種層次化語(yǔ)義脈絡(luò)文檔查詢方法。該方法用查詢樹(shù)來(lái) 描述用戶的查詢意圖,其中,查詢樹(shù)的葉結(jié)點(diǎn)稱為查詢子句,在其中采用查詢語(yǔ)義脈絡(luò)來(lái)描 述一個(gè)具體的查詢操作,而分支結(jié)點(diǎn)則為與或非操作結(jié)點(diǎn),用于對(duì)查詢子句的運(yùn)算結(jié)果進(jìn) 行邏輯運(yùn)算,并根據(jù)最后的邏輯運(yùn)算結(jié)果決定被測(cè)試文檔是否被選上。因?yàn)椴樵儤?shù)可以描 述非常復(fù)雜的關(guān)系,因此這種查詢方法可以描述比較深層的知識(shí),對(duì)于從文檔中獲取知識(shí) 是非常有利的。 本發(fā)明在每條查詢子句操作時(shí)采用了語(yǔ)義脈絡(luò)概念,可以描述為如果一個(gè)句子 r所有的組成成分(表現(xiàn)為構(gòu)成句子語(yǔ)法成分的詞或詞組),在另一個(gè)句子s中存在,并且 對(duì)應(yīng)詞或詞組的詞類相同,則稱句子r是句子s的語(yǔ)義脈絡(luò)。其中,如果s中所有組成部分 的順序都與r中對(duì)應(yīng)部分相同,則稱r和s為有序語(yǔ)義脈絡(luò)匹配,否則稱r和s為無(wú)序語(yǔ)義 脈絡(luò)匹配。語(yǔ)義脈絡(luò)的概念可以參閱本發(fā)明人的另一個(gè)發(fā)明申請(qǐng)200810236750. 3 (文獻(xiàn) [4])。 本發(fā)明所采用的技術(shù)方案如圖1所示 步驟101 :定義查詢子句。使用用戶界面定義查詢子句。讓用戶以合乎邏輯的詞、
短語(yǔ)或句子輸入自己的每一個(gè)具體的查詢要求,并且設(shè)定這些詞、短語(yǔ)或句子在文檔查詢
測(cè)試時(shí)的順序關(guān)系,即構(gòu)建查詢子句。每一個(gè)查詢子句構(gòu)成查詢樹(shù)的葉結(jié)點(diǎn)。
步驟102:定義查詢樹(shù)。使用用戶界面定義查詢子句之間的關(guān)系。用查詢樹(shù)的分
支結(jié)點(diǎn)表示查詢子句之間的關(guān)系,這些關(guān)系包括與、或、非及其組合。 步驟103 :查詢子句測(cè)試。將每條查詢子句作為查詢語(yǔ)義脈絡(luò)對(duì)文檔進(jìn)行測(cè)試。只 要該查詢子句中的所有詞均在文檔中的一條句子或擴(kuò)展句子(即包含段落內(nèi)容的句子)中 存在,該查詢子句就停止測(cè)試并返回真,否則返回假。 步驟104 :查詢樹(shù)邏輯運(yùn)算。將每條查詢子句測(cè)試返回結(jié)果根據(jù)查詢樹(shù)定義的關(guān) 系進(jìn)行邏輯運(yùn)算,最后得到查詢樹(shù)根結(jié)點(diǎn)的邏輯運(yùn)算結(jié)果。如果根結(jié)點(diǎn)運(yùn)算結(jié)果為真,則當(dāng)前文檔被選入被查詢文檔,否則丟棄。 本發(fā)明所帶來(lái)的有益效果是,在進(jìn)行文檔查詢時(shí)可以使用非常常用的樹(shù)窗口表達(dá) 自己的查詢意圖,操作簡(jiǎn)單方便,但表達(dá)的查詢意圖非常復(fù)雜、有深度,可以有效地從非結(jié) 構(gòu)的網(wǎng)頁(yè)等文檔中獲取知識(shí),而不需設(shè)計(jì)非常復(fù)雜的知識(shí)和數(shù)據(jù)獲取界面。
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步說(shuō)明。
圖1是本發(fā)明的技術(shù)方案流程圖。
圖2是查詢子句界面的示意圖。
圖3是實(shí)施例1的查詢樹(shù)結(jié)構(gòu)圖。
具體實(shí)施例方式
如圖1所示,以漢語(yǔ)電子文檔作為說(shuō)明對(duì)象,根據(jù)本發(fā)明所揭示的層次化語(yǔ)義脈 絡(luò)文檔查詢方法的流程圖和實(shí)現(xiàn)方案為 步驟101 :定義查詢子句。定義查詢子句和查詢樹(shù)采用圖2所示的交互界面,其中 圖2中上半部分用于定義查詢子句,稱為查詢子句界面,而下半部分用于定義查詢樹(shù),稱為 查詢樹(shù)界面。定義查詢子句的目的是獲得用戶的查詢意圖。用戶的查詢意圖是通過(guò)輸入一 串詞或詞組來(lái)實(shí)現(xiàn)的。它們?cè)谛问缴暇哂幸欢ǖ倪壿嬯P(guān)系,是組成一個(gè)句子的關(guān)鍵詞。查 詢子句界面主要由"查詢?cè)~"輸入編輯框(201)、"設(shè)置測(cè)試要求"按鈕(202)、"詞義擴(kuò)展" 按鈕(203)、"選進(jìn)查詢樹(shù)"按鈕(204)組成。 用戶在編輯框(201)中輸入查詢?cè)~(各個(gè)詞以空格分隔)表達(dá)他的查詢意圖。系 統(tǒng)將記錄這些詞的詞類、順序關(guān)系等,并形成查詢語(yǔ)義脈絡(luò),成為進(jìn)行語(yǔ)義匹配測(cè)試的依 據(jù)。用戶在輸入查詢語(yǔ)句時(shí),還可在并列的主語(yǔ)或賓語(yǔ)成分中間加入特殊符號(hào)"I "、"'"以 表明這些主語(yǔ)或賓語(yǔ)是否需要同時(shí)存在。 語(yǔ)義匹配測(cè)試的關(guān)鍵是測(cè)試必須針對(duì)文檔中的每一個(gè)句子或者擴(kuò)展句子(包括 段落的標(biāo)題)進(jìn)行。"設(shè)置測(cè)試要求"按鈕(202)則用于打開(kāi)一個(gè)設(shè)置對(duì)話框設(shè)定匹配的要 求。例如,可設(shè)置無(wú)序匹配,即只要在被測(cè)試文檔中同一句子出現(xiàn)用戶輸入的關(guān)鍵詞即認(rèn)為 匹配成功;設(shè)置嚴(yán)格有序匹配,則只有文檔中存在一條包含查詢語(yǔ)義脈絡(luò)中所有詞的句子, 而且這些詞的詞類相同,其順序也完全相同才算匹配;設(shè)置被動(dòng)語(yǔ)句,則主謂賓和賓主謂都 是一樣的;還可以根據(jù)需要設(shè)置選項(xiàng),以適應(yīng)語(yǔ)義脈絡(luò)中謂詞的變化;也可以設(shè)置選項(xiàng),將 當(dāng)前句子所屬的段落標(biāo)題也并入當(dāng)前句子中。 由于在語(yǔ)義查詢擴(kuò)展時(shí)存在同義詞、近義詞、上下義詞情況,所以可以點(diǎn)擊"詞義 擴(kuò)展"按鈕(203)查看、增加、刪除、修改用戶輸入的各查詢?cè)~的同義詞、近義詞、上下義詞, 用各查詢?cè)~的同義詞、近義詞、上下義詞去構(gòu)成新的查詢子句。用戶輸入的查詢子句和擴(kuò)展 的查詢子句之間的關(guān)系是"或"關(guān)系,即只要任一個(gè)查詢子句滿足,則被測(cè)試文檔就是用戶 所需的查詢文檔。 當(dāng)查詢子句構(gòu)成后,用戶點(diǎn)擊按鈕"選進(jìn)查詢樹(shù)"按鈕(204)則在查詢樹(shù)當(dāng)前結(jié) 點(diǎn)中生成一個(gè)子結(jié)點(diǎn),并將當(dāng)前查詢子句的數(shù)據(jù)記入該結(jié)點(diǎn)中。查詢子句的數(shù)據(jù)可用一個(gè) 類來(lái)記錄,該類包含數(shù)據(jù)項(xiàng)有查詢子句編號(hào),查詢?cè)~鏈表,語(yǔ)義脈絡(luò)匹配類型,詞義擴(kuò)展標(biāo)
5志,增加的查詢?cè)~同義詞、近義詞和上下義詞鏈表等等。 步驟102 :定義查詢樹(shù)。查詢樹(shù)是用來(lái)定義查詢子句之間的關(guān)系的,其葉結(jié)點(diǎn)表示 查詢子句,而分支結(jié)點(diǎn)表示結(jié)點(diǎn)之間的關(guān)系。因?yàn)椴樵冏泳淇偸嵌x為當(dāng)前節(jié)點(diǎn)的子結(jié)點(diǎn), 所以定義查詢樹(shù)的任務(wù)主要就是增加"或"、"與"、"非"結(jié)點(diǎn)和刪除當(dāng)前結(jié)點(diǎn)和全部結(jié)點(diǎn)。查 詢樹(shù)界面如圖2下部分所示,左邊部分是查詢樹(shù)的圖形表示(205),右邊部分是對(duì)查詢樹(shù)的 操作,下面是執(zhí)行查詢的按鈕"查詢"(211)。同所有其他樹(shù)的操作一樣,點(diǎn)擊右邊部分的按 鈕"或"(206)、"與"(207)、"非"(208)可以在當(dāng)前結(jié)點(diǎn)下增加"或"、"與"、"非"結(jié)點(diǎn),而點(diǎn) 擊右邊部分的按鈕"當(dāng)前"(209)、"全部"(210)可以刪除當(dāng)前結(jié)點(diǎn)、全部結(jié)點(diǎn)。
步驟103 :查詢子句測(cè)試。查詢子句的測(cè)試可以依照本發(fā)明人提出的語(yǔ)義脈絡(luò)文 檔查詢方法進(jìn)行,即對(duì)數(shù)據(jù)庫(kù)中所有的文檔按照關(guān)鍵詞、句子分隔符和代詞進(jìn)行標(biāo)記,并根 據(jù)代詞指代關(guān)系將其替換為對(duì)應(yīng)的關(guān)鍵詞;最后按照用戶對(duì)這些關(guān)鍵詞及其結(jié)構(gòu)關(guān)系的設(shè) 定對(duì)查詢語(yǔ)義脈絡(luò)與被測(cè)試文檔中的每條句子進(jìn)行匹配測(cè)試,只要被測(cè)試文檔中存在一條 與查詢語(yǔ)義脈絡(luò)匹配的句子,即與關(guān)鍵詞名稱、詞類、順序等關(guān)系相同,則認(rèn)為測(cè)試通過(guò),并 返回真。查詢子句測(cè)試的詳細(xì)方法可查閱本發(fā)明人的專利申請(qǐng)200810236750. 3。
步驟104 :查詢樹(shù)邏輯運(yùn)算。在層次化的語(yǔ)義脈絡(luò)文檔查詢中,查詢子句測(cè)試通過(guò) 并不意味被測(cè)試文檔就是用戶所需文檔,它還必須滿足整個(gè)查詢樹(shù)的要求。 一個(gè)被測(cè)試文 檔是否是用戶所需文檔,應(yīng)該滿足所有的查詢子句的測(cè)試(可以存在測(cè)試短路)以及按照 查詢樹(shù)的邏輯運(yùn)算的最終結(jié)果。查詢樹(shù)的邏輯運(yùn)算可以從根結(jié)點(diǎn)開(kāi)始使用深度優(yōu)先方式進(jìn) 行搜索,基本算法設(shè)計(jì)如下
〃分支結(jié)點(diǎn)的調(diào)用 FOR Each pChild in當(dāng)前結(jié)點(diǎn)的分支子結(jié)點(diǎn)DO將pChild作為當(dāng)前結(jié)點(diǎn)遞歸調(diào)用本算法,得到返回值retIF當(dāng)前結(jié)點(diǎn)為"或"節(jié)點(diǎn)THEN IF ret = TRUE THEN返回TRUEELSE IF當(dāng)前結(jié)點(diǎn)為"與"節(jié)點(diǎn)THEN IF ret = FALSE THEN返回FALSEELSE IF當(dāng)前結(jié)點(diǎn)為"非"節(jié)點(diǎn)THEN IF ret = TRUE THEN返回FALSE ELSE返回TRUEEND IF END DO 〃查詢子句結(jié)點(diǎn)的調(diào)用 FOR Each plnquery in當(dāng)前結(jié)點(diǎn)的查詢子句結(jié)點(diǎn)DO對(duì)plnquery進(jìn)行語(yǔ)義脈絡(luò)測(cè)試,得到返回值retIF當(dāng)前結(jié)點(diǎn)為"或"節(jié)點(diǎn)THEN IF ret = TRUE THEN返回TRUEELSE IF當(dāng)前結(jié)點(diǎn)為"與"節(jié)點(diǎn)THEN IF ret = FALSE THEN返回FALSEELSE IF當(dāng)前結(jié)點(diǎn)為"非"節(jié)點(diǎn)THEN
6
IF ret = TRUE THEN返回FALSE ELSE返回TRUE END IF END DO 〃查詢子句的最后處理 IF當(dāng)前結(jié)點(diǎn)為"或"節(jié)點(diǎn)THEN返回FALSE ELSE IF當(dāng)前結(jié)點(diǎn)為"與"節(jié)點(diǎn)THEN返回TRUE END IF 返回FALSE 這里約定"非"結(jié)點(diǎn)只有一個(gè)子結(jié)點(diǎn)。 當(dāng)該算法又回到根結(jié)點(diǎn)時(shí),查詢樹(shù)的邏輯運(yùn)算結(jié)束。如果根結(jié)點(diǎn)的邏輯運(yùn)算值為 真則當(dāng)前被測(cè)試文檔選為用戶需要的文檔,否則該文檔不是用戶需要的文檔,應(yīng)該將其丟 棄。 實(shí)施例1 : 假如武漢挑選北京奧運(yùn)候選火炬手的條件是 (1)本地區(qū)常住居民包括有戶口的人員①或有暫居證的長(zhǎng)期務(wù)工人員②,年齡大 于14歲③,有能力順利完成400米火炬接力(通過(guò)測(cè)試) ,沒(méi)有犯罪前科 (2)社會(huì)公開(kāi)報(bào)名的話,必須在本行業(yè)有突出貢獻(xiàn)⑥,如果是下崗工人或者殘疾人 則應(yīng)有感人的故事⑦,不包括專業(yè)體育人員⑧ (3)組織系統(tǒng)選送的話,限于專業(yè)體育人員⑨并獲得國(guó)家級(jí)比賽項(xiàng)目名次⑩ 作如下假定通過(guò)自由報(bào)名和組織選送兩種方式申請(qǐng)火炬手;每一個(gè)候選者必須
遞交一份申請(qǐng)書,在每份申請(qǐng)書中必須寫明符合的候選條件,不具備的條件不寫;每個(gè)條件 用一個(gè)句子描述;以電子文檔的方式提交申請(qǐng),格式不限。 將候選條件用數(shù)字加以描述,例如"本地區(qū)常住居民包括有戶口的人員"用數(shù)字①
加以描述,而分支結(jié)點(diǎn)用英文字母表示,可以得到圖3所示的查詢樹(shù)。圖3中葉結(jié)點(diǎn)中表達(dá)
的查詢語(yǔ)義脈絡(luò)可以采用如下方式描述 ①武漢戶口 ②有暫居證 ③大于14歲 通過(guò)測(cè)試 ⑤沒(méi)有無(wú)犯罪 ⑥有貢獻(xiàn) ⑦有感人故事 ⑧專業(yè)體育 ⑨專業(yè)體育 ⑩國(guó)家比賽 查詢語(yǔ)義脈絡(luò)描述的選擇方案是可選的,例如可以增加一些詞義擴(kuò)展定義,或者 并列關(guān)系,如約定③填寫年齡,即語(yǔ)義脈絡(luò)用"年齡14 I 15 I 16 I 17. . . I 100"表示,還可以設(shè)定 無(wú)序,如⑧中專業(yè)和體育可以無(wú)序,即專業(yè)體育和體育專業(yè)都一樣。
本發(fā)明適合非結(jié)構(gòu)文檔(包括網(wǎng)頁(yè))的檢索,對(duì)本領(lǐng)域的普通技術(shù)人員而言,本發(fā) 明所涉及的數(shù)據(jù)結(jié)構(gòu)和算法可以在一般的計(jì)算機(jī)系統(tǒng)中實(shí)現(xiàn),舉例而言,可以使用高級(jí)程 序設(shè)計(jì)語(yǔ)言¥0++和數(shù)據(jù)庫(kù)系統(tǒng)Access加以實(shí)現(xiàn)。如果需要在網(wǎng)絡(luò)搜索引擎實(shí)現(xiàn)本發(fā)明, 則需要在記錄關(guān)鍵詞的數(shù)據(jù)結(jié)構(gòu)中增加該關(guān)鍵詞的位置數(shù)據(jù)、句子的分割數(shù)據(jù)、代詞替換 等數(shù)據(jù),并且增加一個(gè)樹(shù)來(lái)記錄每一篇文檔的標(biāo)題信息。 以上所述,僅為本發(fā)明其中的較佳實(shí)施例而已,主要用來(lái)闡述實(shí)現(xiàn)原理,并非用來(lái) 限制本發(fā)明的實(shí)施范圍;即凡依本發(fā)明申請(qǐng)專利范圍所作的均等變化與修飾,皆為本發(fā)明 專利范圍所涵蓋。
權(quán)利要求
一種層次化語(yǔ)義脈絡(luò)文檔查詢方法,應(yīng)用于基于計(jì)算機(jī)的文檔查詢特別是網(wǎng)絡(luò)文檔查詢,其特征是用查詢樹(shù)來(lái)層次化表示用戶的查詢意圖,即定義該樹(shù)的葉結(jié)點(diǎn)為查詢子句,其表達(dá)的含義為查詢語(yǔ)義脈絡(luò),而分枝結(jié)點(diǎn)為與或非邏輯運(yùn)算結(jié)點(diǎn),表達(dá)對(duì)子結(jié)點(diǎn)的與或非邏輯運(yùn)算,當(dāng)根結(jié)點(diǎn)的邏輯運(yùn)算結(jié)果為真時(shí)就將當(dāng)前測(cè)試文檔選為用戶需要的文檔。
2. 根據(jù)權(quán)利要求1所述的層次化語(yǔ)義脈絡(luò)文檔查詢方法,其特征是查詢樹(shù)的葉結(jié)點(diǎn) 為查詢子句,以查詢語(yǔ)義脈絡(luò)方式記錄用戶輸入的查詢要求,包含用戶輸入的各個(gè)詞的詞 類、順序關(guān)系、語(yǔ)義匹配測(cè)試方式、詞義擴(kuò)展等數(shù)據(jù)。
3. 根據(jù)權(quán)利要求1所述的層次化語(yǔ)義脈絡(luò)文檔查詢方法,其特征是查詢子句采用語(yǔ) 義脈絡(luò)匹配方式進(jìn)行測(cè)試與求解,當(dāng)被測(cè)試文檔中只要存在一條句子或包含段落的擴(kuò)展句 子與查詢子句實(shí)現(xiàn)語(yǔ)義脈絡(luò)匹配時(shí)返回真,否則返回假。
4. 根據(jù)權(quán)利要求1所述的層次化語(yǔ)義脈絡(luò)文檔查詢方法,其特征是查詢樹(shù)的分支結(jié) 點(diǎn)表示與或非邏輯運(yùn)算操作,對(duì)各查詢子句和分支子結(jié)點(diǎn)的返回值進(jìn)行邏 輯運(yùn)算,并且向 各自的父結(jié)點(diǎn)返回邏輯運(yùn)算結(jié)果值。
5. 根據(jù)權(quán)利要求1所述的層次化語(yǔ)義脈絡(luò)文檔查詢方法,其特征是對(duì)查詢樹(shù)按照深 度優(yōu)先方式進(jìn)行分支結(jié)點(diǎn)和查詢子句的遞歸求解,當(dāng)回到根結(jié)點(diǎn)時(shí)查詢樹(shù)的邏輯運(yùn)算結(jié) 束,如果根結(jié)點(diǎn)的邏輯運(yùn)算值為真則當(dāng)前被測(cè)試文檔選為用戶需要的文檔。
全文摘要
一種層次化語(yǔ)義脈絡(luò)文檔查詢方法,應(yīng)用于非結(jié)構(gòu)化的文檔的查詢,可以進(jìn)行復(fù)雜的查詢和比較深層的知識(shí)獲取,例如網(wǎng)絡(luò)文檔查詢,問(wèn)卷調(diào)查文檔查詢等等。該方法采用查詢樹(shù)來(lái)表示用戶查詢意圖,用查詢樹(shù)的葉結(jié)點(diǎn)即查詢子句表達(dá)查詢語(yǔ)義脈絡(luò),用分支結(jié)點(diǎn)表達(dá)其子結(jié)點(diǎn)的之間的邏輯運(yùn)算關(guān)系。當(dāng)測(cè)試一個(gè)文檔是否是用戶所需的文檔時(shí),根據(jù)查詢樹(shù)進(jìn)行深度搜索與測(cè)試。如果一個(gè)結(jié)點(diǎn)是查詢子句結(jié)點(diǎn),則進(jìn)行語(yǔ)義脈絡(luò)匹配測(cè)試,如果是分枝結(jié)點(diǎn)則進(jìn)行邏輯運(yùn)算。當(dāng)前結(jié)點(diǎn)根據(jù)子結(jié)點(diǎn)的返回值決定自己的返回值。最后如果根結(jié)點(diǎn)的返回值為真,則當(dāng)前被測(cè)試文檔被選為用戶所需文檔。
文檔編號(hào)G06F17/30GK101770473SQ200810237460
公開(kāi)日2010年7月7日 申請(qǐng)日期2008年12月30日 優(yōu)先權(quán)日2008年12月30日
發(fā)明者尹文生, 陳修國(guó) 申請(qǐng)人:華中科技大學(xué)