專利名稱:一種構(gòu)建索引庫(kù)的方法、裝置及查詢方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息處理技術(shù),尤其涉及一種構(gòu)建索引庫(kù)的方法、裝置及查詢方法和>J-U ρ α 裝直。
背景技術(shù):
隨著互聯(lián)網(wǎng)的發(fā)展,信息量越來(lái)越大,各種搜索引擎就應(yīng)用而生。如圖I所示,傳統(tǒng)的搜索引擎主要包括如下幾個(gè)部分
搜索器101,其功能主要是在互聯(lián)網(wǎng)中漫游,發(fā)現(xiàn)和搜集信息;
索引器102,其功能是理解搜索器所搜索到的信息,從中抽取出索引項(xiàng),用于表示文檔以及生成文檔庫(kù)的索引表,并存入索引庫(kù)105中;
檢索器103,其功能是根據(jù)用戶的查詢?cè)谒饕龓?kù)105中快速檢索文檔,進(jìn)行相關(guān)度評(píng)價(jià),對(duì)將要輸出的結(jié)果排序,并能按用戶的查詢需求合理反饋信息;
用戶接口 104,其作用是接納用戶查詢、顯示查詢結(jié)果、提供個(gè)性化查詢項(xiàng)。
其中,如圖2所示,索引器102通過(guò)以下方法建立索引
步驟1021 :收集電子文檔;
步驟1022 :提取電子文檔中的關(guān)鍵詞;
步驟1023 :構(gòu)建索引。
在步驟1022中,對(duì)電子文檔的提取關(guān)鍵詞舉例說(shuō)明如下
例如,文章I的內(nèi)容為你住在廣州,我也住在廣州;
文章2的內(nèi)容為他曾經(jīng)住在上海。
取得這兩篇文章的關(guān)鍵詞,通常有以下步驟對(duì)兩片文章進(jìn)行分詞處理;將“在”、“也”和“曾經(jīng)”和標(biāo)號(hào)等這些不代表實(shí)際意義的詞過(guò)濾掉。
經(jīng)過(guò)處理后,文章I的所有關(guān)鍵詞為你住廣州我住廣州;文章2的所有關(guān)鍵字為他住上海。
接下來(lái),進(jìn)行步驟1023,構(gòu)建索引,目前比較常用的構(gòu)建索引的方法是倒排索引,
簡(jiǎn)化的倒排索引的建立方法將在下文中詳細(xì)敘述。上面的對(duì)應(yīng)關(guān)系是“文章號(hào)”對(duì)“文章中所有關(guān)鍵詞”,而倒排索引是把這個(gè)關(guān)系倒過(guò)來(lái),變成“關(guān)鍵詞”對(duì)“擁有該關(guān)鍵詞的所有文章號(hào)”。文章1、2經(jīng)過(guò)倒排后變成關(guān)鍵詞文章號(hào)廣州I
他2
我I
住I, 2
上海2
你I以關(guān)鍵詞住來(lái)說(shuō),出現(xiàn)在文章I和文章2中,所以當(dāng)使用者輸入關(guān)鍵詞住進(jìn)行查詢時(shí),檢索的結(jié)果就包含所有包含關(guān)鍵詞住的文章,在這個(gè)例子中,即文章I和2,對(duì)應(yīng)關(guān)鍵詞住的倒排鏈即為{1,2}。本發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中,至少發(fā)現(xiàn)如下技術(shù)問(wèn)題在現(xiàn)有的方法中,只要是搜索器101搜集到得信息、文檔等,索引器102都會(huì)給這些信息、文檔建立索引,所以,索引器102的索引過(guò)程工作量大且耗時(shí)長(zhǎng)。現(xiàn)有的方法在檢索過(guò)程中,檢索器會(huì)將包含有關(guān)鍵詞的文檔列出來(lái),當(dāng)索引數(shù)據(jù)量特別大時(shí),檢索輸出的文檔也會(huì)非常多,很多與關(guān)鍵詞相關(guān)度較低的文檔也會(huì)被輸出。另外,在現(xiàn)有的方法中,由于索引器會(huì)針對(duì)每個(gè)關(guān)鍵詞建索引,并根據(jù)檢索詞列出所有與所述檢索詞對(duì)應(yīng)關(guān)鍵詞的文檔,這導(dǎo)致需要占用大量的存儲(chǔ)空間,消耗大量的內(nèi)存。
發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┮环N構(gòu)建索引庫(kù)的方法、裝置用以解決現(xiàn)有技術(shù)中存在的索引過(guò)程中存在工作量大且耗時(shí)長(zhǎng)的技術(shù)問(wèn)題。本申請(qǐng)一方面提供了一種構(gòu)建索引庫(kù)的方法,包括收集電子文檔;提取所述電子文檔中的關(guān)鍵詞;將所述關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;過(guò)濾掉所述第一類別關(guān)鍵詞和所述第二類別關(guān)鍵詞;針對(duì)所述第三類別關(guān)鍵詞建立倒排索引;其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。優(yōu)選地,所述分類步驟包括判斷所述關(guān)鍵詞是否屬于第一預(yù)定詞匯集,如果是,則將所述關(guān)鍵詞歸類于所述第一類別關(guān)鍵詞;如果不是,則判斷所述關(guān)鍵詞是否屬于第二預(yù)定詞匯集,如果是,則將所述關(guān)鍵詞歸類于所述第二類別關(guān)鍵詞;如果不是,則將所述關(guān)鍵詞歸類于所述第三類別關(guān)鍵詞。優(yōu)選地,所述第一預(yù)定詞匯集包括虛詞,所述第二預(yù)定詞匯集包括停用詞。優(yōu)選地,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引時(shí),所述方法還包括計(jì)算所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度;以及,按照所述相關(guān)度,將所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)排序。優(yōu)選地,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引之后,所述方法還包括統(tǒng)計(jì)所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量;找出所述對(duì)應(yīng)電子文檔的總數(shù)量高于第一閾值的高頻關(guān)鍵詞;過(guò)濾掉所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中排序在第二閾值之后的電子文檔編號(hào),其中,所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)是按所述相關(guān)度降序排序,且所述第二閾值小于所述總數(shù)量。優(yōu)選地,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引之后,所述方法還包括統(tǒng)計(jì)所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量;找出所述對(duì)應(yīng)電子文檔的總數(shù)量高于第一閾值的高頻關(guān)鍵詞;過(guò)濾掉所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中相關(guān)度值低于第三閾值的電子文檔對(duì)應(yīng)的電子文檔編號(hào)。本申請(qǐng)另一方面提供了一種構(gòu)建索引庫(kù)的裝置,應(yīng)用于一搜索系統(tǒng),所述裝置包括收集單元,用于收集電子文檔;提取單元,用于提取所述電子文檔中的關(guān)鍵詞;分類單元,用于將所述關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;第一過(guò)濾單元,用于過(guò)濾掉所述第一類別關(guān)鍵詞和所述第二類別關(guān)鍵詞;以及索引建立單元,針對(duì)所述第三類別關(guān)鍵詞建立倒排索引;其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。本申請(qǐng)?jiān)僖环矫孢€提供了一種利用本申請(qǐng)實(shí)施例所述的方法構(gòu)建的索引庫(kù)進(jìn)行查詢的方法,包括接收N個(gè)查詢關(guān)鍵詞,所述N為大于或等于I的整數(shù);判斷所述N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞;當(dāng)所述判斷的結(jié)果為是時(shí),根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索結(jié)果。本申請(qǐng)還提供了一種利用本申請(qǐng)實(shí)施例所述的查詢方法進(jìn)行查詢的查詢裝置,包括接收器,用于接收N個(gè)查詢關(guān)鍵詞,所述N為大于或等于I的整數(shù);關(guān)鍵詞類別判斷器,用于判斷所述N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞;索引檢索器,用于當(dāng)所述關(guān)鍵詞類別判斷器的判斷結(jié)果為是時(shí),,根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索結(jié)果。本申請(qǐng)有益效果如下本申請(qǐng)實(shí)施例采用了給關(guān)鍵詞分類的方法,排除了不需要建立索引的關(guān)鍵詞,所以節(jié)約了磁盤的空間,而且當(dāng)查詢關(guān)鍵詞為不需要建立索引的關(guān)鍵詞時(shí),則不用查詢索引庫(kù),節(jié)約了磁盤讀寫操作的開銷。在優(yōu)選實(shí)施例中,通過(guò)預(yù)先計(jì)算每一關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度,并將每一關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)按照相關(guān)度排序,當(dāng)查詢關(guān)鍵詞只有一個(gè)第三類別關(guān)鍵詞時(shí),可以直接返回排序好的電子文檔列表,而不需要再進(jìn)行相關(guān)度計(jì)算以及排序,這提高了查詢響應(yīng)速度。在更進(jìn)一步的優(yōu)選實(shí)施例中,通過(guò)過(guò)濾掉相關(guān)度低的電子文檔對(duì)應(yīng)的電子文檔編號(hào),這進(jìn)一步減小了索引量,降低了資源浪費(fèi)并降低了磁盤的讀寫操作的開銷。查詢時(shí),在不影響查詢結(jié)果的情況下,由于數(shù)據(jù)傳輸量變小,所以響應(yīng)速度變快,用戶查詢速度也提高了。
圖I為現(xiàn)有技術(shù)中搜索引擎的結(jié)構(gòu)框圖;圖2為現(xiàn)有技術(shù)中構(gòu)建索引庫(kù)的方法流程圖;圖3為本申請(qǐng)一實(shí)施例中構(gòu)建索引庫(kù)的方法流程圖4為本申請(qǐng)一實(shí)施例中構(gòu)建索引庫(kù)的裝置功能方框圖;圖5為根據(jù)本申請(qǐng)一實(shí)施例中利用本申請(qǐng)構(gòu)建的索引庫(kù)進(jìn)行查詢的方法流程圖;圖6為根據(jù)本申請(qǐng)一實(shí)施例中利用本申請(qǐng)構(gòu)建的索引庫(kù)進(jìn)行查詢的裝置功能方框圖。
具體實(shí)施例方式如圖3所示,圖3為本申請(qǐng)一實(shí)施例中構(gòu)建索引庫(kù)的方法流程圖,本實(shí)施例中的一種構(gòu)建索引庫(kù)的方法包括步驟310 :收集電子文檔;步驟312 :提取電子文檔中的關(guān)鍵詞;步驟314 :將關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;以及步驟316 :過(guò)濾掉第一類別關(guān)鍵詞和第二類別關(guān)鍵詞;以及步驟318 :針對(duì)第三類別關(guān)鍵詞建立倒排索引。其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。電子文檔包括網(wǎng)頁(yè),WORD文檔、PDF文檔等電子信息。在步驟312中,關(guān)鍵詞可以是對(duì)電子文檔中的文章進(jìn)行分詞得到的。本領(lǐng)域技術(shù)人員可以采用已知的各種方法進(jìn)行分詞,這里不再詳述。在步驟314的分類步驟中,該分類可基于預(yù)定的分類標(biāo)準(zhǔn)進(jìn)行分類,本領(lǐng)域技術(shù)人員可根據(jù)實(shí)際應(yīng)用的需求來(lái)選擇該分類標(biāo)準(zhǔn)或者該預(yù)定詞匯集。例如,可以判斷該關(guān)鍵詞是否屬于第一預(yù)定詞匯集,如果屬于則將所述關(guān)鍵詞歸類為第一類別關(guān)鍵詞;如果不是,則判斷該關(guān)鍵詞是否屬于第二預(yù)定詞匯集,如果屬于則將該關(guān)鍵詞歸類于第二類別關(guān)鍵詞;如果不是,則將該關(guān)鍵詞歸類于第三類別關(guān)鍵詞。在其他實(shí)施例中,也可以先判斷關(guān)鍵詞是否屬于第二預(yù)定詞匯集,然后再判斷是否屬于第一預(yù)定詞匯集。該第一預(yù)定詞匯集包括副詞、介詞、連詞、助詞、語(yǔ)氣詞、象聲詞等虛詞,可以是中文詞匯,也可以是英文詞匯,還可以是標(biāo)點(diǎn)符號(hào)集;第二預(yù)定詞匯集可以基于一詞匯黑名單來(lái)確定,在其它實(shí)施例中,第二預(yù)定詞匯集還包括其他不需要建立索引的關(guān)鍵詞,本申請(qǐng)對(duì)此不作限制。步驟316和步驟318并沒(méi)有順序限制,可以先后進(jìn)行也可以同時(shí)進(jìn)行。在本實(shí)施例中,對(duì)關(guān)鍵詞進(jìn)行分類,一方面可以過(guò)濾掉例如虛詞等沒(méi)有實(shí)際意義的關(guān)鍵詞,可以減小索引工作量,節(jié)約建立索引的時(shí)間;另一方面,可以進(jìn)一步過(guò)濾掉例如網(wǎng)絡(luò)中黑名單中的詞匯,及其他不需要建立索引的詞匯,這些詞匯統(tǒng)稱為停用詞,所以進(jìn)一步縮減了索引的工作量和時(shí)間。而且,對(duì)于屬于第一類別關(guān)鍵詞和第二類別關(guān)鍵詞的查詢關(guān)鍵詞,并不需要去索引庫(kù)中進(jìn)行檢索,減少了磁盤的讀寫操作開銷,提高了查詢響應(yīng)速度。進(jìn)一步,在另一實(shí)施例中,在針對(duì)所述第三類別關(guān)鍵詞建立倒排索引時(shí),構(gòu)建索引庫(kù)的方法還包括分別計(jì)算第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度,然后按照相關(guān)度,將每個(gè)關(guān)鍵詞對(duì)應(yīng)的倒排鏈中的電子文檔編號(hào)排序。例如,關(guān)鍵詞廣州在電子文檔編號(hào)為1、3、5、6、8、20的電子文檔中出現(xiàn)過(guò),用倒排索引來(lái)表示就是
7
關(guān)鍵詞電子文檔編號(hào)廣州1、3、5、6、8、20但是通過(guò)分別計(jì)算關(guān)鍵詞廣州與電子文檔1、3、5、6、8及20的相關(guān)度之后發(fā)現(xiàn),關(guān)鍵詞廣州與電子文檔3的相關(guān)度最高,例如為80,其次是電子文檔8,例如為70,接下來(lái)依次是電子文檔I (得分為60)、6 (得分為50)、20 (得分為9)、5 (得分為9)。然后按照相關(guān)度,將關(guān)鍵詞廣州的倒排鏈中的電子文檔編號(hào)排序,本實(shí)施例以降序排序?yàn)槔幌抻诮敌蚺判?,所以關(guān)鍵詞廣州的倒排索引為關(guān)鍵詞電子文檔編號(hào)廣州3、8、1、6、20、5因此,當(dāng)接收到第三類別關(guān)鍵詞的一個(gè)查詢關(guān)鍵詞時(shí),可以直接按照相關(guān)度從高到底的順序返回結(jié)果,在查詢過(guò)程中可以不用再進(jìn)行計(jì)算相關(guān)度,然后排序等步驟,這進(jìn)一步提高了查詢速度。在其他實(shí)施例中,返回的查詢結(jié)果也可以是相關(guān)度排序靠前的電子文檔,而排序靠后的電子文檔被過(guò)濾掉。其中,計(jì)算相關(guān)度的方法有很多種,例如計(jì)算關(guān)鍵詞在電子文檔中出現(xiàn)的頻次,即詞頻(term frequency, TF);或者針對(duì)出現(xiàn)在title中的TF進(jìn)行加權(quán);或者不僅考慮TF,也考慮其他因素,例如page rank(網(wǎng)頁(yè)排名)等因素綜合計(jì)算相關(guān)度;本領(lǐng)域技術(shù)人員還可以選擇其他方法計(jì)算相關(guān)度,只要可以得到本實(shí)施例中的相關(guān)度排序,都在本申請(qǐng)涵蓋的范圍內(nèi)。更進(jìn)一步地,在又一實(shí)施例中,在針對(duì)第三類別關(guān)鍵詞建立倒排索引之后,當(dāng)?shù)玫较嚓P(guān)度排序后,統(tǒng)計(jì)第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量,找出對(duì)應(yīng)電子文檔總數(shù)量聞?dòng)诘谝婚撝档穆勵(lì)l關(guān)鍵詞,然后過(guò)濾掉聞?lì)l關(guān)鍵詞中每個(gè)聞?lì)l關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)排序在第二閾值之后的電子文檔編號(hào),其中,每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)是按照相關(guān)度降序排序。其中,例如第一閾值為100000,在其他實(shí)施例中,第一閾值可以為其他數(shù)值,本領(lǐng)域技術(shù)人員可以根據(jù)需要任意設(shè)置,本申請(qǐng)不作限制;第二閾值小于總數(shù)量,可以大于第一閾值也可以小于第一閾值,本領(lǐng)域技術(shù)人員可以根據(jù)需要進(jìn)行設(shè)置,本申請(qǐng)不作限制。在倒排索引中,高頻詞的索引量特別大,電子文檔倒排鏈很長(zhǎng),對(duì)應(yīng)的電子文檔數(shù)量甚至在百萬(wàn)之上,所以在本實(shí)施例中,找出對(duì)應(yīng)電子文檔數(shù)量高于第一閾值的高頻關(guān)鍵詞,然后過(guò)濾掉聞?lì)l關(guān)鍵詞中每個(gè)聞?lì)l關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)排序在第_■閾值之后的電子文檔編號(hào),以便精簡(jiǎn)索引。還是以關(guān)鍵詞廣州為例,其倒排鏈中電子文檔編號(hào)的降序排列為3、8、I、6、20、5,例如本實(shí)施例中設(shè)置排序在第五之后電子文檔編號(hào)都過(guò)濾掉,所以關(guān)鍵詞廣州的倒排鏈就變?yōu)閧3、8、1、6、20}。因此,索引量變小,當(dāng)用戶進(jìn)行查詢時(shí),數(shù)據(jù)傳輸量變小,減小了內(nèi)存的消耗,同時(shí)也節(jié)約了磁盤空間,但是并不影響檢索結(jié)果。在再一實(shí)施例中,也可以根據(jù)相關(guān)度值來(lái)過(guò)濾電子文檔編號(hào),即過(guò)濾掉高頻關(guān)鍵詞中每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中相關(guān)度值低于第三閾值的電子文檔對(duì)應(yīng)的電子文檔編號(hào),根據(jù)不同的相關(guān)度算法所得出的相關(guān)度值域是不相同的,所以本領(lǐng)域技術(shù)人員可以根據(jù)與使用的相關(guān)度算法一致的值域中的值來(lái)靈活設(shè)置第三閾值。例如,繼續(xù)以前述例子中關(guān)鍵詞廣州為例,在本實(shí)施例中,第三閾值設(shè)為10,那電子文檔編號(hào)20和5就會(huì)都過(guò)濾掉,因?yàn)殡娮游臋n編號(hào)20和5對(duì)應(yīng)的電子文檔的相關(guān)度值均為9,這樣可進(jìn)一步精簡(jiǎn)索引,使得檢索結(jié)果相關(guān)度更加精確。并且可進(jìn)一步節(jié)約磁盤空間,減少讀取磁盤的開銷,節(jié)約從磁盤傳輸?shù)臄?shù)據(jù)量和提高查詢響應(yīng)速度。請(qǐng)?jiān)賲⒖紙D4,圖4為本申請(qǐng)一實(shí)施例中的構(gòu)建索引庫(kù)的裝置功能方框圖。構(gòu)建索引庫(kù)的裝置包括收集單元410,用于收集電子文檔;提取單元412,用于提取電子文檔中的關(guān)鍵詞;分類單元414,用于將關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;第一過(guò)濾單元416,用于過(guò)濾掉第一類別關(guān)鍵詞和第二類別關(guān)鍵詞;以及索引建立單元418,針對(duì)第三類別關(guān)鍵詞建立倒排索引。該裝置應(yīng)用于一搜索系統(tǒng),以上各個(gè)單元可以由軟件、固件、硬件實(shí)現(xiàn)及結(jié)合來(lái)實(shí)現(xiàn),本申請(qǐng)不作限制。其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。分類單元414被配置為判斷關(guān)鍵詞是否屬于第一預(yù)定詞匯集420,如果是,則將關(guān)鍵詞歸類于第一類別關(guān)鍵詞;如果不是,則判斷關(guān)鍵詞是否屬于第二預(yù)定詞匯集422,如果是,則將關(guān)鍵詞歸類于第二類別關(guān)鍵詞;如果不是,則將關(guān)鍵詞歸類于第三類別關(guān)鍵詞。本領(lǐng)域技術(shù)人員可根據(jù)實(shí)際應(yīng)用的需求來(lái)選擇該分類標(biāo)準(zhǔn)或者該預(yù)定詞匯集。例如,該第一預(yù)定詞匯集420包括副詞、介詞、連詞、助詞、語(yǔ)氣詞、象聲詞等虛詞,可以是中文詞匯,也可以是英文詞匯,還可以是標(biāo)點(diǎn)符號(hào)集;第二預(yù)定詞匯集422可以基于一詞匯黑名單來(lái)確定。在其它實(shí)施例中,第二預(yù)定詞匯集422還包括其他不需要建立索引的關(guān)鍵詞,本申請(qǐng)對(duì)此不作限制。進(jìn)一步,在另一實(shí)施例中,該裝置還包括計(jì)算單元,分別計(jì)算第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度;排序單元,按照相關(guān)度將第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)的倒排鏈中的電子文檔編號(hào)排序。更進(jìn)一步地,在又一實(shí)施例中,該裝置還包括統(tǒng)計(jì)單元,統(tǒng)計(jì)第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量;查找單元,找出對(duì)應(yīng)電子文檔總數(shù)量高于第一閾值的高頻關(guān)鍵詞,然后利用第二過(guò)濾單元過(guò)濾掉高頻關(guān)鍵詞中每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)排序在第二閾值之后的電子文檔編號(hào),其中,每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)是按照對(duì)應(yīng)電子文檔的相關(guān)度降序排序。其中,例如第一閾值為100000,在其他實(shí)施例中,第一閾值可以為其他數(shù)值,本領(lǐng)域技術(shù)人員可以根據(jù)需要任意設(shè)置,本申請(qǐng)不作限制;第二閾值小于總數(shù)量,可以大于第一閾值也可以小于第一閾值,本領(lǐng)域技術(shù)人員可以根據(jù)需要進(jìn)行設(shè)置,本申請(qǐng)不作限制。在再一實(shí)施例中,還包括第三過(guò)濾單元,利用第三過(guò)濾單元代替第二過(guò)濾單元,過(guò)濾所述高頻關(guān)鍵詞中每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中相關(guān)度得分低于第三閾值的電子文檔對(duì)應(yīng)的電子文檔編號(hào)。根據(jù)不同的相關(guān)度算法所得出的相關(guān)度值域是不相同的,所以本領(lǐng)域技術(shù)人員可以根據(jù)與使用的相關(guān)度算法一致的值域中的值來(lái)靈活設(shè)置第三閾值。通過(guò)閱讀上文所描述的根據(jù)本申請(qǐng)實(shí)施例的構(gòu)建索引庫(kù)的方法的操作過(guò)程,圖4所示的構(gòu)建索引庫(kù)的裝置的上述各個(gè)單元如何實(shí)現(xiàn)就變得非常清楚了,因此,為了說(shuō)明書的簡(jiǎn)潔,在此就不再對(duì)上述各個(gè)單元的功能如何實(shí)現(xiàn)進(jìn)行詳細(xì)描述了。此外,需要說(shuō)明的是,雖然以上結(jié)合圖4對(duì)根據(jù)本實(shí)施例的構(gòu)建索引庫(kù)的裝置進(jìn)行了描述,但是本領(lǐng)域技術(shù)人員完全可以根據(jù)實(shí)際需要對(duì)圖4所示的示意圖進(jìn)行變型或更改。根據(jù)本發(fā)明的實(shí)施例,還提供了一種利用本發(fā)明的構(gòu)建索引庫(kù)的方法所構(gòu)建的索引庫(kù)來(lái)進(jìn)行查詢以及相應(yīng)的裝置。請(qǐng)參考圖5,圖5為根據(jù)本實(shí)施例中利用本申請(qǐng)構(gòu)建的索引庫(kù)進(jìn)行查詢的方法流程圖。如圖5所示,該查詢方法包括步驟501 :接收N個(gè)查詢關(guān)鍵詞,N為大于或等于I的整數(shù);步驟502 :判斷N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞;步驟503 :當(dāng)所述判斷的結(jié)果為是時(shí),根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索得到結(jié)果。其中,在步驟502中,判斷N個(gè)查詢關(guān)鍵詞是夠有查詢關(guān)鍵詞是第三類別關(guān)鍵詞時(shí),例如可以判斷該關(guān)鍵詞是否屬于第一預(yù)定詞匯集,如果不是,則判斷該關(guān)鍵詞是否屬于第二預(yù)定詞匯集,如果不是,則可以確定該關(guān)鍵詞是第三類別關(guān)鍵詞。其中,例如該第一預(yù)定詞匯集包括副詞、介詞、連詞、助詞、語(yǔ)氣詞、象聲詞等虛詞,可以是中文詞匯,也可以是英文詞匯,還可以是標(biāo)點(diǎn)符號(hào)集;第二預(yù)定詞匯集可以基于一詞匯黑名單來(lái)確定,在其它實(shí)施例中,第二預(yù)定詞匯集還包括其他不需要建立索引的關(guān)鍵詞,本申請(qǐng)對(duì)此不作限制,這些詞匯統(tǒng)稱停用詞。進(jìn)一步,在另一實(shí)施例中,該查詢方法還包括步驟504 :當(dāng)判斷步驟502判斷的結(jié)果是該N個(gè)查詢關(guān)鍵詞中沒(méi)有查詢關(guān)鍵詞是第三類別關(guān)鍵詞時(shí),則直接返回查詢關(guān)鍵詞無(wú)效的提示信息,而并不需要去檢索索引庫(kù),所以節(jié)約了讀取磁盤的次數(shù),降低了資源消耗。在其他實(shí)施例中,當(dāng)判斷步驟502判斷的結(jié)果是該N個(gè)查詢關(guān)鍵詞中沒(méi)有查詢關(guān)鍵詞是第三類別關(guān)鍵詞時(shí),也可以直接返回結(jié)果為O的查詢頁(yè)面,也可以返回提示用戶關(guān)鍵詞不存在的信息。根據(jù)圖6所示,圖6為根據(jù)本實(shí)施例中利用本申請(qǐng)構(gòu)建的索引庫(kù)進(jìn)行查詢的裝置。如圖6所示,該裝置包括接收器610,用于接收N個(gè)查詢關(guān)鍵詞;其中N為大于或等于I的整數(shù);關(guān)鍵詞類別判斷器612,用于判斷N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞,例如可以判斷該關(guān)鍵詞是否屬于第一預(yù)定詞匯集,如果不是,則判斷該關(guān)鍵詞是否屬于第二預(yù)定詞匯集,如果不是,則可以確定該關(guān)鍵詞是第三類別關(guān)鍵詞;索引檢索器614,用于當(dāng)所述關(guān)鍵詞類別判斷器的判斷結(jié)果為是時(shí),根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索結(jié)果。其中,例如該第一預(yù)定詞匯集包括副詞、介詞、連詞、助詞、語(yǔ)氣詞、象聲詞等虛詞,可以是中文詞匯,也可以是英文詞匯,還可以是標(biāo)點(diǎn)符號(hào)集;第二預(yù)定詞匯集可以基于一詞匯黑名單來(lái)確定。在其它實(shí)施例中,第二預(yù)定詞匯集還包括其他不需要建立索引的關(guān)鍵詞,本申請(qǐng)對(duì)此不作限制,這些詞匯統(tǒng)稱停用詞。通過(guò)閱讀上文所描述的根據(jù)本申請(qǐng)實(shí)施例的利用本申請(qǐng)構(gòu)建的索引庫(kù)來(lái)進(jìn)行的查詢方法的操作過(guò)程,圖6所示的構(gòu)建索引庫(kù)的裝置的上述各個(gè)部件如何實(shí)現(xiàn)就變得非常清楚了,因此,為了說(shuō)明書的簡(jiǎn)潔,在此就不再對(duì)上述各個(gè)部件的功能如何實(shí)現(xiàn)進(jìn)行詳細(xì)描述了。通過(guò)本申請(qǐng)中的上述實(shí)施例中的一個(gè)實(shí)施例或多個(gè)實(shí)施例,至少可以實(shí)現(xiàn)如下技術(shù)效果本申請(qǐng)一實(shí)施例中采用了給關(guān)鍵詞分類的方法,排除了不需要建立索引的關(guān)鍵詞,這不但縮減了索引量和時(shí)間,而且節(jié)約了磁盤的空間。當(dāng)查詢關(guān)鍵詞為不需要建立索引的關(guān)鍵詞時(shí),則不用查詢索引庫(kù),這進(jìn)一步節(jié)約了磁盤讀寫操作的開銷。進(jìn)一步,本申請(qǐng)一實(shí)施例中計(jì)算每一關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度,并將每一關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)按照相關(guān)度排序,所以當(dāng)查詢關(guān)鍵詞只有一個(gè)第三類別關(guān)鍵詞時(shí),可以直接返回排序好的電子文檔列表,可以不用再進(jìn)行相關(guān)度計(jì)算以及排序,所以提高了查詢響應(yīng)速度,而且內(nèi)存消耗小。更進(jìn)一步地,本申請(qǐng)還過(guò)濾掉索引中相關(guān)度低的電子文檔的電子文檔編號(hào),這樣可進(jìn)一步減小了索引量節(jié)約了磁盤空間,降低了資源浪費(fèi),而且減小了磁盤的讀寫操作開銷。查詢時(shí),在不影響查詢結(jié)果的前提下,由于數(shù)據(jù)傳輸量變小,所以響應(yīng)速度變快,用戶查詢速度也提高了。顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種構(gòu)建索引庫(kù)的方法,其特征在于,所述方法包括收集電子文檔;提取所述電子文檔中的關(guān)鍵詞;將所述關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;過(guò)濾所述第一類別關(guān)鍵詞和所述第二類別關(guān)鍵詞;以及針對(duì)所述第三類別關(guān)鍵詞建立倒排索引;其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。
2.如權(quán)利要求I所述的構(gòu)建索引庫(kù)的方法,其特征在于,所述分類步驟包括判斷所述關(guān)鍵詞是否屬于第一預(yù)定詞匯集,如果是,則將所述關(guān)鍵詞歸類于所述第一類別關(guān)鍵詞;如果不是,則判斷所述關(guān)鍵詞是否屬于第二預(yù)定詞匯集,如果是,則將所述關(guān)鍵詞歸類于所述第二類別關(guān)鍵詞;以及如果不是,則將所述關(guān)鍵詞歸類于所述第三類別關(guān)鍵詞。
3.如權(quán)利要求2所述的構(gòu)建索引庫(kù)的方法,其特征在于,所述第一預(yù)定詞匯集包括虛詞,所述第二預(yù)定詞匯集包括停用詞。
4.如權(quán)利要求1-3任一個(gè)所述的構(gòu)建索引庫(kù)的方法,其特征在于,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引時(shí),所述方法還包括計(jì)算所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞與對(duì)應(yīng)電子文檔的相關(guān)度;以及按照所述相關(guān)度,將所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)排序。
5.如權(quán)利要求4所述的構(gòu)建索引庫(kù)的方法,其特征在于,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引之后,所述方法還包括統(tǒng)計(jì)所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量;找出所述對(duì)應(yīng)電子文檔的總數(shù)量高于第一閾值的高頻關(guān)鍵詞;過(guò)濾掉所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中排序在第二閾值之后的電子文檔編號(hào),其中,所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中的電子文檔編號(hào)是依據(jù)所述相關(guān)度降序排序,且所述第二閾值小于所述總數(shù)量。
6.如權(quán)利要求4所述的構(gòu)建索引庫(kù)的方法,其特征在于,在所述針對(duì)所述第三類別關(guān)鍵詞建立倒排索引之后,所述方法還包括統(tǒng)計(jì)所述第三類別關(guān)鍵詞中每個(gè)關(guān)鍵詞對(duì)應(yīng)電子文檔的總數(shù)量;找出所述對(duì)應(yīng)電子文檔的總數(shù)量高于第一閾值的高頻關(guān)鍵詞;過(guò)濾掉所述每個(gè)高頻關(guān)鍵詞對(duì)應(yīng)倒排鏈中相關(guān)度值低于第三閾值的電子文檔對(duì)應(yīng)的電子文檔編號(hào)。
7.—種構(gòu)建索引庫(kù)的裝置,應(yīng)用于一搜索系統(tǒng),其特征在于,所述裝置包括收集單元,用于收集電子文檔;提取單元,用于提取所述電子文檔中的關(guān)鍵詞;分類單元,用于將所述關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;第一過(guò)濾單元,用于過(guò)濾掉所述第一類別關(guān)鍵詞和所述第二類別關(guān)鍵詞;以及索引建立單元,針對(duì)所述第三類別關(guān)鍵詞建立倒排索引;其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。
8.一種利用如權(quán)利要求1-6任一個(gè)所述的方法構(gòu)建的索引庫(kù)進(jìn)行查詢的方法,其特征在于,所述方法包括接收N個(gè)查詢關(guān)鍵詞,所述N為大于或等于I的整數(shù);判斷所述N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞;當(dāng)所述判斷的結(jié)果為是時(shí),根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索結(jié)果。
9.一種利用如權(quán)利要求8所述的查詢方法進(jìn)行查詢的查詢裝置,其特征在于,所述裝置包括;接收器,用于接收N個(gè)查詢關(guān)鍵詞,所述N為大于或等于I的整數(shù);關(guān)鍵詞類別判斷器,用于判斷所述N個(gè)查詢關(guān)鍵詞中是否有查詢關(guān)鍵詞是第三類別關(guān)鍵詞;索引檢索器,用于當(dāng)所述關(guān)鍵詞類別判斷器的判斷結(jié)果為是時(shí),根據(jù)所述N個(gè)查詢關(guān)鍵詞中屬于所述第三類別關(guān)鍵詞的查詢關(guān)鍵詞,在所述索引庫(kù)中進(jìn)行檢索,并返回檢索結(jié)果O
全文摘要
本發(fā)明公開了一種構(gòu)建索引庫(kù)的方法、裝置及查詢方法和裝置。構(gòu)建索引庫(kù)的方法包括收集電子文檔;提取所述電子文檔中的關(guān)鍵詞;將所述關(guān)鍵詞分類為第一類別關(guān)鍵詞、第二類別關(guān)鍵詞和第三類別關(guān)鍵詞;過(guò)濾掉所述第一類別關(guān)鍵詞和所述第二類別關(guān)鍵詞;以及針對(duì)所述第三類別關(guān)鍵詞建立倒排索引;其中,所述第一類別關(guān)鍵詞、所述第二類別關(guān)鍵詞和所述第三類別關(guān)鍵詞屬于不同類別的關(guān)鍵詞。本申請(qǐng)實(shí)施例采用了給關(guān)鍵詞分類的方法,排除了不需要建立索引的關(guān)鍵詞,所以節(jié)約了磁盤的空間,而且當(dāng)查詢關(guān)鍵詞為不需要建立索引的關(guān)鍵詞時(shí),則不用查詢索引庫(kù),節(jié)約了磁盤讀寫操作的開銷。
文檔編號(hào)G06F17/30GK102955812SQ20111025117
公開日2013年3月6日 申請(qǐng)日期2011年8月29日 優(yōu)先權(quán)日2011年8月29日
發(fā)明者吳凱, 楊二寶, 沈加翔, 陳維 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司