專利名稱:一種搜索方法、搜索裝置及一種搜索引擎系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請涉及網(wǎng)絡(luò)技術(shù),特別是涉及一種搜索方法、搜索裝置及一種搜索引擎系統(tǒng)。
背景技術(shù):
搜索引擎(search engine)是指根據(jù)一定的策略、運(yùn)用特定的計(jì)算機(jī)程序搜集互聯(lián)網(wǎng)上的信息,在對(duì)信息進(jìn)行組織和處理后,為用戶提供檢索服務(wù)的系統(tǒng)。搜索引擎的出現(xiàn),為用戶使用網(wǎng)絡(luò)信息提供了便利性,用戶可以從互聯(lián)網(wǎng)提供的海量數(shù)據(jù)中檢索出自己需要的息。利用現(xiàn)有的搜索引擎系統(tǒng),如果用戶想從網(wǎng)上下載“王菲”演唱的“螢火蟲”這首歌,若在搜索主頁的搜索框中輸入關(guān)鍵詞“螢火蟲”,大多數(shù)搜索引擎網(wǎng)站會(huì)給出如圖1所示或類似圖1的搜索結(jié)果。在這些搜索結(jié)果中,排在最前位置的是介紹“螢火蟲”這種動(dòng)物的網(wǎng)頁鏈接,這個(gè)結(jié)果顯然不符合用戶的搜索意圖。為了改善這種情況,有些搜索引擎系統(tǒng)提供了分類搜索功能,利用這種搜索引擎系統(tǒng),用戶可進(jìn)入音樂類的搜索頁面,然后在搜索框中輸入關(guān)鍵詞“螢火蟲”,此時(shí)多數(shù)搜索引擎網(wǎng)站又會(huì)給出如圖2或圖3所示的類似搜索結(jié)果。這些搜索結(jié)果雖然列出了歌曲的鏈接,但是,在歌曲名同名而歌手不同或多個(gè)歌手演唱同一首歌的情況下,搜索結(jié)果中排在最前位置的歌曲鏈接并不是流傳度最廣、多數(shù)用戶最想找的王菲演唱的“螢火蟲”,而是其他歌手演唱的“螢火蟲”。此時(shí),用戶需要在搜索結(jié)果中一條一條地查找王菲演唱的“螢火蟲”,非常麻煩。此外,有些搜索結(jié)果還不是針對(duì)歌曲“螢火蟲”的鏈接,而是其他的歌曲,只是這些歌曲的名字或歌詞中出現(xiàn)了“螢火蟲”一詞,如圖2所示。這樣,搜索的準(zhǔn)確度就更難保證了。因此,目前的搜索引擎在識(shí)別用戶搜索意圖時(shí)還不夠準(zhǔn)確,進(jìn)而影響了搜索精度。
發(fā)明內(nèi)容
本申請?zhí)峁┝艘环N搜索方法、搜索裝置及一種搜索引擎系統(tǒng),以解決現(xiàn)有技術(shù)在識(shí)別用戶搜索意圖時(shí)不夠準(zhǔn)確,進(jìn)而影響搜索精度的問題。為了解決上述問題,本申請公開了一種搜索方法,包括:接收實(shí)時(shí)搜索字符串;將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;如果所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上,則將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分;依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。優(yōu)選地,所述預(yù)生成的模式由元數(shù)據(jù)類別的標(biāo)簽組成,和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成;所述詞典中的第一類詞是所述模式中的意圖詞;所述詞典中的第二類詞是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。優(yōu)選地,所述方法還包括預(yù)生成模式的步驟:將歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽;統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值的匹配完成后的歷史搜索字符串作為模式。優(yōu)選地,將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,包括:將所述實(shí)時(shí)搜索字符串從左至右順次與預(yù)生成的詞典進(jìn)行完全匹配。優(yōu)選地,所述依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,包括:如果匹配完成后的實(shí)時(shí)搜索字符串由第二類詞所屬類別的標(biāo)簽組成,和/或,由第一類詞和第二類詞所屬類別的標(biāo)簽組成,則所述匹配完成后的實(shí)時(shí)搜索字符串與預(yù)生成的某個(gè)模式相匹配,所述匹配完成后的實(shí)時(shí)搜索字符串具有該模式表示的特定搜索意圖。優(yōu)選地,依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù),包括:將與所述的特定搜索意圖相對(duì)應(yīng)的特定結(jié)果數(shù)據(jù)排在所有搜索結(jié)果數(shù)據(jù)的第一位返回。優(yōu)選地,所述的特定結(jié)果數(shù)據(jù)包括多個(gè)相關(guān)聯(lián)的元數(shù)據(jù)信息,點(diǎn)擊每個(gè)元數(shù)據(jù)信息的鏈接可進(jìn)入相應(yīng)的詳情頁面。本申請還提供了 一種搜索裝置,包括:輸入模塊,用于接收實(shí)時(shí)搜索字符串;實(shí)時(shí)匹配模塊,用于將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;替換模塊,用于當(dāng)所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上時(shí),將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分;實(shí)時(shí)輸出模塊,用于依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。優(yōu)選地,所述預(yù)生成的模式由元數(shù)據(jù)類別的標(biāo)簽組成,和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成;所述詞典中的第一類詞是所述模式中的意圖詞;所述詞典中的第二類詞是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。優(yōu)選地,所述裝置還包括:模式生成模塊,具體包括:替換子模塊,用于將歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽;統(tǒng)計(jì)子模塊,用于統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值的匹配完成后的歷史搜索字符串作為模式。本申請還提供了一種搜索引擎系統(tǒng),包括如上所述的搜索裝置。與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點(diǎn):首先,本申請從大規(guī)模的歷史搜索數(shù)據(jù)和特定領(lǐng)域的關(guān)系數(shù)據(jù)出發(fā),事先計(jì)算出特定搜索意圖包含的意圖詞及其模式,并結(jié)合相關(guān)領(lǐng)域的關(guān)系數(shù)據(jù),實(shí)時(shí)地判斷給定的搜索字符串是否具有其特定的搜索意圖。本申請可準(zhǔn)確識(shí)別搜索字符串中每個(gè)部分的特定意圖,進(jìn)而精準(zhǔn)確定該搜索字符串的搜索意圖,顯著提高搜索精度,提供更加精確的搜索結(jié)果數(shù)據(jù)。而且,本申請還可確保自動(dòng)識(shí)別用戶特定搜索意圖的三個(gè)條件,即:很高的實(shí)時(shí)響應(yīng)速度、很高的正確率以及較高的召回率。其次,本申請?jiān)趯?shí)時(shí)判斷給定的搜索字符串是否具有其特定的搜索意圖時(shí),優(yōu)選采用完全匹配的方法,進(jìn)一步提高了搜索精度。再次,本申請根據(jù)識(shí)別出的特定搜索意圖返回的搜索結(jié)果數(shù)據(jù)與現(xiàn)有技術(shù)不同,本申請是將與所述的特定搜索意圖相對(duì)應(yīng)的特定結(jié)果數(shù)據(jù)排在所有搜索結(jié)果數(shù)據(jù)的第一位返回,并且特定結(jié)果數(shù)據(jù)包括多個(gè)相關(guān)聯(lián)的元數(shù)據(jù)信息,點(diǎn)擊每個(gè)元數(shù)據(jù)信息的鏈接可進(jìn)入相應(yīng)的詳情頁面。這種展現(xiàn)方式給出的搜索結(jié)果更加精準(zhǔn)、給出的與結(jié)果相關(guān)的信息更加豐富,方便了用戶操作。當(dāng)然,實(shí)施本申請的任一產(chǎn)品不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
圖1、圖2和圖3是現(xiàn)有技術(shù)中搜索結(jié)果頁面的示意圖;圖4是本申請實(shí)施例所述一種搜索方法的總體流程示意圖;圖5是本申請實(shí)施例所述離線生成搜索意圖模式的示意圖;圖6是本申請實(shí)施例所述在線進(jìn)行模式匹配的示意圖;圖7是本申請實(shí)施例所述在線搜索的流程圖;圖8.1至8.4是本申請實(shí)施例所述搜索結(jié)果頁面的示意圖;圖9是本申請實(shí)施例所述一種搜索裝置的結(jié)構(gòu)圖;圖10是本申請另一實(shí)施例所述一種搜索裝置的結(jié)構(gòu)圖。
具體實(shí)施例方式為使本申請的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本申請作進(jìn)一步詳細(xì)的說明。為了提供更加準(zhǔn)確的針對(duì)特定搜索意圖的搜索觸發(fā)服務(wù),提高用戶的搜索體驗(yàn),本申請從大規(guī)模的歷史搜索數(shù)據(jù)和特定領(lǐng)域的關(guān)系數(shù)據(jù)出發(fā),事先計(jì)算出特定搜索意圖包含的意圖詞及其模式,并結(jié)合相關(guān)領(lǐng)域的關(guān)系數(shù)據(jù),實(shí)時(shí)地判斷給定的搜索字符串是否具有其特定的搜索意圖。例如,用戶若輸入搜索“螢火蟲MP3下載”,本申請會(huì)基于搜索觸發(fā)服務(wù)自動(dòng)識(shí)別出用戶的搜索意圖是得到歌曲“螢火蟲”的直接相關(guān)信息服務(wù)。據(jù)此分析,本申請會(huì)在搜索返回首頁直接給出歌曲“螢火蟲”的相關(guān)信息,包括:歌手名、專輯名、可免費(fèi)下載的鏈接等。下面通過實(shí)施例對(duì)本申請進(jìn)行詳細(xì)說明。參照圖4,是本申請實(shí)施例所述一種搜索方法的總體流程示意圖。本實(shí)施例所述的搜索方法是基于關(guān)系數(shù)據(jù)的無結(jié)構(gòu)查詢觸發(fā)的流程圖。基本的,可分為離線處理和在線處理兩部分,具體如下:I)離線處理部分基于大規(guī)模的歷史搜索數(shù)據(jù)(百萬數(shù)量級(jí)以上)和特定領(lǐng)域的關(guān)系數(shù)據(jù)(例如,歌曲名以及對(duì)應(yīng)的歌手名),利用數(shù)據(jù)挖掘技術(shù),挖掘出特定領(lǐng)域的搜索意圖詞及其模式。例如,搜音樂意圖的查詢,其意圖詞包括:“mp3下載”、“免費(fèi)下載”;其搜索意圖模式包括:“<Song>mp3 下載”、“〈Song〉免費(fèi)下載”、“〈SongXSinger〉”。其中,標(biāo)簽〈Song〉和〈Singer〉分別表示一個(gè)歌曲名和一個(gè)歌手名。2)在線處理部分針對(duì)用戶實(shí)時(shí)提交的搜索字符串,基于離線處理挖掘出的特定意圖的模式以及其相關(guān)領(lǐng)域的關(guān)系數(shù)據(jù),判斷該搜索是否具有特定的搜索意圖。下面通過圖5和圖6分別詳細(xì)說明上述的離線處理部分和在線處理部分。參照圖5,是本申請實(shí)施例所述離線生成搜索意圖模式的示意圖。如前所述,在離線部分,是基于大規(guī)模的歷史搜索數(shù)據(jù)和特定領(lǐng)域的關(guān)系數(shù)據(jù)挖掘出特定領(lǐng)域的搜索意圖詞及其模式。其中,所述歷史搜索數(shù)據(jù)可以采用搜索引擎系統(tǒng)的日志數(shù)據(jù),日志數(shù)據(jù)中記載了用戶的歷史搜索字符串。所述歷史搜索字符串可以是一個(gè)關(guān)鍵詞,也可以是多個(gè)關(guān)鍵詞的組合,還可以是一個(gè)短語、一句話。所述特定領(lǐng)域的關(guān)系數(shù)據(jù)是指特定領(lǐng)域的采用關(guān)系型數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù),特定領(lǐng)域可以是新聞、圖片、視頻、地圖、音樂、購物等等劃分出來的領(lǐng)域,對(duì)于每個(gè)領(lǐng)域中的搜索數(shù)據(jù),可采用關(guān)系型數(shù)據(jù)結(jié)構(gòu)進(jìn)行存儲(chǔ)。其中,關(guān)系型數(shù)據(jù)是以關(guān)系數(shù)學(xué)模型來表示的數(shù)據(jù),關(guān)系數(shù)學(xué)模型中以二維表的形式來描述數(shù)據(jù)。例如,在音樂領(lǐng)域,歌曲名以及對(duì)應(yīng)的歌手名就是一對(duì)關(guān)系數(shù)據(jù)。如圖5所示,挖掘過程可分為以下兩步:SI,改寫查詢;將大規(guī)模歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與特定領(lǐng)域的關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽;例如,將歷史搜索字符串“螢火蟲王菲MP3下載”與音樂領(lǐng)域的元數(shù)據(jù)(歌曲名及對(duì)應(yīng)的歌手名)進(jìn)行匹配,匹配到歌曲名“螢火蟲”和歌手名“王菲”,則可將該查詢改寫為“<SongXSinger>MP3下載”,其中〈Song〉和〈Singer〉分別是對(duì)應(yīng)歌曲名及歌手名的標(biāo)簽。S2,統(tǒng)計(jì)排序;統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值(即高頻)的匹配完成后的歷史搜索字符串作為模式。相應(yīng)地,模式中的詞即為意圖詞。例如,基于真實(shí)大規(guī)模搜索數(shù)據(jù)挖掘出的音樂意圖模式包括:“〈SongXSinger〉”、“<Song>mp3 下載”、“〈Song〉鈴聲〈Singer〉,,等。由上可知,對(duì)于匹配完成后的所有歷史搜索字符串,本實(shí)施例只是從中選取高頻出現(xiàn)的作為模板。并且,生成的模式由元數(shù)據(jù)類別的標(biāo)簽組成(如“〈SongXSinger〉”),和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成(“<Song>mp3下載”、“〈Song〉鈴聲〈Singer〉”)。意即:生成的模式中可能全部是標(biāo)簽或標(biāo)簽的組合,也可能是標(biāo)簽和意圖詞的組合,但單獨(dú)的意圖詞不會(huì)構(gòu)成模式。而且,模式中出現(xiàn)的詞才是意圖詞,不是模式中出現(xiàn)的詞不能成為意圖詞。基于以上生成的意圖詞及其模式,實(shí)時(shí)的模式匹配過程如圖6所示。
參照圖6,是本申請實(shí)施例所述在線進(jìn)行模式匹配的示意圖。在線匹配過程是:將挖掘出的意圖詞以及關(guān)系數(shù)據(jù)中的元數(shù)據(jù)的集合作為詞典,將用戶輸入的搜索字符串從左至右與詞典進(jìn)行匹配。匹配過程中,用戶輸入的搜索字符串無需進(jìn)行分詞,直接以單個(gè)詞為單位進(jìn)行匹配,如果搜索字符串是中文,則以單個(gè)字為單位,如果搜索字符串是英文等外文,則通過空格可以區(qū)分出一個(gè)個(gè)的單詞,并以單詞為單位進(jìn)行匹配。現(xiàn)有技術(shù)中的搜索一般都先進(jìn)行分詞處理,但分詞的處理速度較慢,而且對(duì)于未出現(xiàn)過程的新詞還可能存在分詞不準(zhǔn)確的問題。但本申請實(shí)施例不經(jīng)過分詞的處理,所以可以避免這些問題。如果搜索字符串中的某部分匹配上關(guān)系數(shù)據(jù)中的元數(shù)據(jù),則將該部分替換為元數(shù)據(jù)類別的標(biāo)簽;如果搜索字符串中的某部分匹配不上詞典,也即:這部分既匹配不上詞典中的元數(shù)據(jù),也匹配不上詞典中的意圖詞,則表明該搜索字符串與任何一個(gè)模式都不匹配,失敗退出。如果搜索字符串能成功地從左至右匹配上詞典,并且其改寫后的字符串匹配完全匹配上離線挖掘出的一個(gè)模式,則判斷該搜索具有某特定的搜索意圖。舉例來說,通常搜索系統(tǒng)會(huì)參考用戶的關(guān)注度對(duì)特定領(lǐng)域的關(guān)系數(shù)據(jù)進(jìn)行分類,如分為音樂、小說、電影等不同領(lǐng)域的關(guān)系數(shù)據(jù),并結(jié)合不同領(lǐng)域的意圖詞構(gòu)成不同類型的詞典。搜索時(shí),優(yōu)先考慮熱門領(lǐng)域的詞典,對(duì)于冷門的領(lǐng)域,一般不予考慮,只有在熱門領(lǐng)域的搜索中查詢不到時(shí)才會(huì)考慮。基于此,假設(shè)當(dāng)前系統(tǒng)中有音樂、小說和電影三個(gè)熱門領(lǐng)域的詞典,當(dāng)用戶輸入“MP3螢火蟲王菲”后,不進(jìn)行分詞,根據(jù)空格或簡單地語義分析(目前的搜索系統(tǒng)基本都具有此功能)就可以確定出一個(gè)個(gè)單獨(dú)的詞,然后分別與熱門領(lǐng)域的三個(gè)詞典進(jìn)行匹配。匹配過程為:先將“MP3” 一詞分別與音樂、小說和電影這三個(gè)詞典中的元數(shù)據(jù)和意圖詞進(jìn)行匹配,假設(shè)在音樂和電影這兩個(gè)詞典中找到MP3 —詞,結(jié)合現(xiàn)有的模式,MP3是意圖詞,不進(jìn)行標(biāo)簽的替換。然后,繼續(xù)將“瑩”字在音樂和電影這兩個(gè)詞典中進(jìn)行匹配,假設(shè)在這兩個(gè)詞典中都找到“瑩”字,則繼續(xù)匹配“火”字,如果也同時(shí)找到,繼續(xù)匹配“蟲”字,假設(shè)還是同時(shí)在兩個(gè)詞典中找到。此時(shí),結(jié)合現(xiàn)有的模式,在音樂類的模式中,可以將“螢火蟲”替換為標(biāo)簽〈Song〉;而在電影類的模式中,可以將“螢火蟲”替換為標(biāo)簽〈Film〉。替換之后,繼續(xù)依次匹配“王”字和“菲”字。最后,在匹配“菲”字時(shí),只在音樂類的詞典中找到,而且結(jié)合音樂類的現(xiàn)有模式,可以將“王菲”一詞替換為標(biāo)簽〈Singer〉。至此,匹配并替換之后得到“MP3〈SongXSinger>”,現(xiàn)有的模式中存在這種模式,因此最后得到可以推測出用戶的搜索意圖是希望找到王菲演唱的螢火蟲這首歌。上述在線匹配過程中,雖然“螢火蟲”一詞也可能在昆蟲類的詞典中出現(xiàn),但是昆蟲類是較冷門的分類,匹配時(shí)不會(huì)考慮,即不會(huì)把“螢火蟲”與昆蟲類的詞典進(jìn)行匹配。因此,實(shí)際應(yīng)用中,出現(xiàn)多個(gè)匹配結(jié)果的可能性非常低,可以忽略不計(jì)。綜上所述,由圖6可知,通過匹配識(shí)別搜索意圖的過程中,將用戶輸入的搜索字符串與特定領(lǐng)域的關(guān)系數(shù)據(jù)、意圖詞及模式的匹配過程是一個(gè)自動(dòng)一體化的過程,通過自左至右的逐個(gè)匹配,如果能全部匹配上,則原始輸入的搜索字符串被改寫為一個(gè)由意圖詞和標(biāo)簽,或者僅由標(biāo)簽構(gòu)成的字符串,此時(shí)該搜索字符串已成為一個(gè)模式,因?yàn)槿绻衅ヅ洳簧系牟糠郑瑒t不屬于模式的范疇,所以當(dāng)匹配結(jié)束時(shí),就已經(jīng)確定出該搜索字符串是不是與預(yù)生成的模式相匹配。
在線匹配的詳細(xì)處理流程如圖7所示。參照圖7,是本申請實(shí)施例所述在線搜索的流程圖。步驟701,接收實(shí)時(shí)搜索字符串;所述實(shí)時(shí)搜索字符串即為用戶在搜索框中輸入的查詢信息;步驟702,將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;具體的,所述詞典中的第一類詞可以是模式中的意圖詞,所述詞典中的第二類詞可以是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。優(yōu)選的,可以將所述實(shí)時(shí)搜索字符串從左至右順次與預(yù)生成的詞典進(jìn)行完全匹配,匹配過程中無需對(duì)實(shí)時(shí)搜索字符串進(jìn)行分詞,而是以單個(gè)詞為單位順次匹配。所述完全匹配是指實(shí)時(shí)搜索字符串中的所有內(nèi)容均與詞典中的意圖詞或原數(shù)據(jù)匹配,沒有不匹配的部分。這種完全匹配策略可以使搜索意圖的識(shí)別準(zhǔn)確度更高。當(dāng)然,在準(zhǔn)確度要求不高的情況下,也可以采用部分匹配或權(quán)值匹配等方法。此外,本實(shí)施例中,由于生成的模式中各個(gè)元素有先后順序之分,如“〈SongXSinger〉”和“〈SingerXSong〉”是兩個(gè)模式,所以所述匹配還有順序的要求(從左至右)。當(dāng)然,如果模式中的元素沒有順序之分,如將上述兩個(gè)模式合并為一個(gè)模式,則匹配時(shí)也無需要求搜索字符串中各部分的順序與模式中各元素的順序一致。步驟703,如果所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上,則將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分;例如,搜索字符串“螢火蟲王菲MP3下載”與元數(shù)據(jù)中的歌曲名“螢火蟲”和歌手名“王菲”相匹配,則使用標(biāo)簽替換該字符串為“〈Song>〈Singer>MP3下載”。步驟704,依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。其中,依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,具體可以理解為:如果匹配完成后的實(shí)時(shí)搜索字符串由第二類詞(元數(shù)據(jù))所屬類別的標(biāo)簽組成,和/或,由第一類詞(意圖詞)和第二類詞(元數(shù)據(jù))所屬類別的標(biāo)簽組成,則所述匹配完成后的實(shí)時(shí)搜索字符串與預(yù)生成的某個(gè)模式相匹配,所述匹配完成后的實(shí)時(shí)搜索字符串具有該模式表示的特定搜索意圖。例如,搜索字符串“螢火蟲王菲MP3下載”與元數(shù)據(jù)中的歌曲名“螢火蟲”和歌手名“王菲”,以及意圖詞“MP3下載”依次相匹配,因此搜索字符串“螢火蟲王菲MP3下載”與模式“〈SongXSinger>MP3下載”相匹配,進(jìn)而識(shí)別出該搜索字符串表示的搜索意圖是“下載王菲演唱的螢火蟲這首歌”。相反的,如果搜索字符串是“螢火蟲王菲免費(fèi)”,而預(yù)生成的模式中沒有“〈SongXSinger〉免費(fèi)”這樣的模式,那么該搜索字符串就與模式不匹配。此外,步驟704中依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù),具體可以理解為:將與所述的特定搜索意圖相對(duì)應(yīng)的特定結(jié)果數(shù)據(jù)排在所有搜索結(jié)果數(shù)據(jù)的第一位返回。而且,所述的特定結(jié)果數(shù)據(jù)可以包括多個(gè)相關(guān)聯(lián)的元數(shù)據(jù)信息,點(diǎn)擊每個(gè)元數(shù)據(jù)信息的鏈接可進(jìn)入相應(yīng)的詳情頁面。
例如,假設(shè)特定結(jié)果數(shù)據(jù)是“王菲”演唱的“螢火蟲”這首歌,那么就把這首歌的一些相關(guān)信息放在返回首頁的第一位。所述相關(guān)信息如歌曲名、歌手名、專輯名、歌詞、文件大小等信息,每個(gè)信息都是一個(gè)元數(shù)據(jù),這些元數(shù)據(jù)之間具有關(guān)聯(lián)關(guān)系。而且,每個(gè)元數(shù)據(jù)都可以做成鏈接的形式,點(diǎn)擊鏈接,即可進(jìn)入相應(yīng)的詳情頁面。這種展現(xiàn)方式給出的搜索結(jié)果更加精準(zhǔn)、給出的與結(jié)果相關(guān)的信息更加豐富,方便了用戶操作。下面通過舉例說明搜索結(jié)果數(shù)據(jù)的展現(xiàn)形式。例1,參照圖8.1所示,搜索關(guān)鍵詞是“螢火蟲”,返回的結(jié)果頁面中第一條數(shù)據(jù)如圖8.1中左側(cè)的顯示內(nèi)容,若繼續(xù)點(diǎn)擊歌曲名“螢火蟲”的鏈接,則打開如右側(cè)顯示的詳情頁。其中,“歌曲名”鏈至音樂詳情頁,與旁邊的“免費(fèi)下載”鏈接指向同一個(gè)音樂資源。需要說明的是,圖中左側(cè)未顯示出排在第一條數(shù)據(jù)之后的其他搜索結(jié)果數(shù)據(jù)。例2,參照圖8.2所示,繼續(xù)例1,若繼續(xù)點(diǎn)擊歌手名“王菲”的鏈接,則鏈至相關(guān)搜索結(jié)果頁面如圖8.2的右側(cè)顯示。例3,參照圖8.3所示,繼續(xù)例1,點(diǎn)擊歌曲名“螢火蟲”的鏈接,打開如右側(cè)上面顯示的詳情頁;點(diǎn)擊歌詞的鏈接,打開如右側(cè)下面顯示的歌詞頁。此時(shí),點(diǎn)擊“歌詞鏈接”等同于在歌詞頁中搜索“螢火蟲王菲”。例4,參照圖8.4所示,繼續(xù)例1,若直接點(diǎn)擊“免費(fèi)下載”,則鏈接至的音樂下載提示頁如圖8.4所示。上述實(shí)施例是以音樂領(lǐng)域的搜索為例進(jìn)行說明,但具體應(yīng)用中也可以應(yīng)用到其他特定領(lǐng)域的搜索中,其實(shí)施原理與上述實(shí)施例相似,故不再贅述。綜上所述,對(duì)于搜索引擎系統(tǒng),目前評(píng)價(jià)這些搜索引擎系統(tǒng)一般從以下三方面考慮:第一,實(shí)時(shí)響應(yīng)速度:一個(gè)實(shí)時(shí)響應(yīng)速度很高的搜索引擎系統(tǒng)每秒可以處理萬級(jí)以上的查詢;第二,正確率:也即精度,精度是檢索出的相關(guān)文檔數(shù)與檢索出的文檔總數(shù)的比率,衡量的是檢索系統(tǒng)的查準(zhǔn)率。一個(gè)精度很高的搜索引擎系統(tǒng)需要識(shí)別用戶真正的查詢意圖,否則會(huì)嚴(yán)重?fù)p害用戶的搜索體驗(yàn);第三,召回率:召回率是檢索出的相關(guān)文檔數(shù)和文檔庫中所有的相關(guān)文檔數(shù)的比率,衡量的是檢索系統(tǒng)的查全率。用戶的背景千差萬別,對(duì)于特定搜索意圖的查詢表達(dá)也往往不一樣,因此一個(gè)召回率較高的搜索引擎系統(tǒng)需要自動(dòng)識(shí)別出不同表現(xiàn)形式的特定查詢意圖。但是,在平衡以上三點(diǎn)的過程中,現(xiàn)有技術(shù)中的很多搜素引擎系統(tǒng)都未能做到盡善盡美,尤其是在正確率和召回率上還很欠缺。而本申請實(shí)施例可準(zhǔn)確識(shí)別搜索字符串中每個(gè)部分的特定意圖,進(jìn)而精準(zhǔn)確定該搜索字符串的搜索意圖,顯著提高搜索精度。提供更加精確的搜索結(jié)果數(shù)據(jù)。而且,本申請實(shí)施例還可確保自動(dòng)識(shí)別用戶特定搜索意圖的三個(gè)條件,即:很高的實(shí)時(shí)響應(yīng)速度、很高的正確率以及較高的召回率。例如,用戶輸入“螢火蟲”進(jìn)行搜索,使用本申請實(shí)施例所述方法,由于離線生成的模式是根據(jù)大量的歷史搜索數(shù)據(jù)統(tǒng)計(jì)生成,因此會(huì)將“螢火蟲”識(shí)別為音樂類而且是王菲演唱的歌曲,并將該歌曲的相關(guān)信息展現(xiàn)在結(jié)果頁面的第一位。再如,用戶輸入“螢火蟲王菲MP3下載”,本申請會(huì)快速識(shí)別出每個(gè)關(guān)鍵詞的搜索意圖,會(huì)將“螢火蟲”定位為歌曲名,將“王菲”定位為歌手名,將“MP3下載”定位為模式中的意圖詞。因此,與現(xiàn)有技術(shù)相比,本申請的識(shí)別準(zhǔn)確度更高。需要說明的是,對(duì)于前述的方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本申請,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本申請所必須的。基于上述方法實(shí)施例的說明,本申請還提供了相應(yīng)的搜索裝置實(shí)施例。參照圖9,是本申請實(shí)施例所述一種搜索裝置的結(jié)構(gòu)圖。所述搜索裝置可以包括輸入模塊10、實(shí)時(shí)匹配模塊20、替換模塊30和實(shí)時(shí)輸出模塊40,其中:輸入模塊10,用于接收實(shí)時(shí)搜索字符串;實(shí)時(shí)匹配模塊20,用于將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;替換模塊30,用于當(dāng)所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上時(shí),將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分;實(shí)時(shí)輸出模塊40,用于依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。其中,所述預(yù)生成的模式可以由元數(shù)據(jù)類別的標(biāo)簽組成,和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成。相應(yīng)的,所述詞典中的第一類詞可以是所述模式中的意圖詞,所述詞典中的第二類詞可以是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。優(yōu)選的,在本申請的另一裝置實(shí)施例中,參照圖10所示,所述裝置還可以包括:模式生成模塊50,所述模式生成模塊50具體包括:替換子模塊,用于將歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽;統(tǒng)計(jì)子模塊,用于統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值的匹配完成后的歷史搜索字符串作為模式。優(yōu)選的,所述實(shí)時(shí)匹配模塊20可以將所述實(shí)時(shí)搜索字符串從左至右順次與預(yù)生成的詞典進(jìn)行完全匹配。其中,所述實(shí)時(shí)輸出模塊40中,依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,可以理解為:如果匹配完成后的實(shí)時(shí)搜索字符串由第二類詞所屬類別的標(biāo)簽組成,和/或,由第一類詞和第二類詞所屬類別的標(biāo)簽組成,則所述匹配完成后的實(shí)時(shí)搜索字符串與預(yù)生成的某個(gè)模式相匹配,所述匹配完成后的實(shí)時(shí)搜索字符串具有該模式表示的特定搜索意圖。所述實(shí)時(shí)輸出模塊40中,依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù),進(jìn)一步可以理解為:將與所述的特定搜索意圖相對(duì)應(yīng)的特定結(jié)果數(shù)據(jù)排在所有搜索結(jié)果數(shù)據(jù)的第一位返回。并且,可選的,所述的特定結(jié)果數(shù)據(jù)包括多個(gè)相關(guān)聯(lián)的元數(shù)據(jù)信息,點(diǎn)擊每個(gè)元數(shù)據(jù)信息的鏈接可進(jìn)入相應(yīng)的詳情頁面。基于上述搜索裝置實(shí)施例的內(nèi)容,本申請還提供了一種搜索引擎系統(tǒng)的實(shí)施例。在該實(shí)施例中,所述搜索引擎系統(tǒng)包含上述任一實(shí)施例所述的搜索裝置。對(duì)于上述的搜索裝置和搜索引擎系統(tǒng)實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。本申請各個(gè)實(shí)施例所述的內(nèi)容均適用于搜素領(lǐng)域,尤其適用于全網(wǎng)搜索和移動(dòng)搜索領(lǐng)域。本申請可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置中。例如:個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。本申請可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請,在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,上文中的“和/或”表示本文既包含了 “和”的關(guān)系,也包含了 “或”的關(guān)系,其中:如果方案A與方案B是“和”的關(guān)系,則表示某實(shí)施例中可以同時(shí)包括方案A和方案B ;如果方案A與方案B是“或”的關(guān)系,則表示某實(shí)施例中可以單獨(dú)包括方案A,或者單獨(dú)包括方案B。以上對(duì)本申請所提供的一種搜索方法、搜索裝置及一種搜索引擎系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本申請的限制。
權(quán)利要求
1.一種搜索方法,其特征在于,包括: 接收實(shí)時(shí)搜索字符串; 將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合; 如果所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上,則將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分; 依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于: 所述預(yù)生成的模式由元數(shù)據(jù)類別的標(biāo)簽組成,和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成; 所述詞典中的第一類詞是所述模式中的意圖詞; 所述詞典中的第二類詞是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,還包括預(yù)生成模式的步驟: 將歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽; 統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值的匹配完成后的歷史搜索字符串作為模式。
4.根據(jù)權(quán)利要求1至3任一所述的方法,其特征在于,將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,包括: 將所述實(shí)時(shí)搜索字符串從左至右順次與預(yù)生成的詞典進(jìn)行完全匹配。
5.根據(jù)權(quán)利要求1至3任一所述的方法,其特征在于,所述依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,包括: 如果匹配完成后的實(shí)時(shí)搜索字符串由第二類詞所屬類別的標(biāo)簽組成,和/或,由第一類詞和第二類詞所屬類別的標(biāo)簽組成,則所述匹配完成后的實(shí)時(shí)搜索字符串與預(yù)生成的某個(gè)模式相匹配,所述匹配完成后的實(shí)時(shí)搜索字符串具有該模式表示的特定搜索意圖。
6.根據(jù)權(quán)利要 求1至3任一所述的方法,其特征在于,依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù),包括: 將與所述的特定搜索意圖相對(duì)應(yīng)的特定結(jié)果數(shù)據(jù)排在所有搜索結(jié)果數(shù)據(jù)的第一位返回。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于, 所述的特定結(jié)果數(shù)據(jù)包括多個(gè)相關(guān)聯(lián)的元數(shù)據(jù)信息,點(diǎn)擊每個(gè)元數(shù)據(jù)信息的鏈接可進(jìn)入相應(yīng)的詳情頁面。
8.一種搜索裝置,其特征在于,包括: 輸入模塊,用于接收實(shí)時(shí)搜索字符串; 實(shí)時(shí)匹配模塊,用于將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;替換模塊,用于當(dāng)所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上時(shí),將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分; 實(shí)時(shí)輸出模塊,用于依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于: 所述預(yù)生成的模式由元數(shù)據(jù)類別的標(biāo)簽組成,和/或由意圖詞和元數(shù)據(jù)類別的標(biāo)簽組成; 所述詞典中的第一類詞是所述模式中的意圖詞; 所述詞典中的第二類詞是關(guān)系數(shù)據(jù)中的元數(shù)據(jù)。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括:模式生成模塊,具體包括: 替換子模塊,用于將歷史搜索數(shù)據(jù)中的歷史搜索字符串依次與關(guān)系數(shù)據(jù)中的元數(shù)據(jù)進(jìn)行匹配,如果歷史搜索字符串中的某部分與某個(gè)類別的元數(shù)據(jù)匹配上,則將該部分替換為所述元數(shù)據(jù)類別的標(biāo)簽; 統(tǒng)計(jì)子模塊,用于統(tǒng)計(jì)匹配完成后的歷史搜索字符串出現(xiàn)的頻次,并基于該統(tǒng)計(jì)的頻次進(jìn)行排序,將頻次超過閾值的匹配完成后的歷史搜索字符串作為模式。
11.一種搜索引擎系統(tǒng),其特征在于,包括:如權(quán)利要求8至10任一權(quán)利要求所述的搜索裝置。`
全文摘要
本申請?zhí)峁┝艘环N搜索方法、搜索裝置及一種搜索引擎系統(tǒng),以解決現(xiàn)有技術(shù)在識(shí)別用戶搜索意圖時(shí)不夠準(zhǔn)確,進(jìn)而影響搜索精度的問題。所述方法包括接收實(shí)時(shí)搜索字符串;將所述實(shí)時(shí)搜索字符串與預(yù)生成的詞典進(jìn)行匹配,所述詞典是第一類詞和第二類詞的集合;如果所述實(shí)時(shí)搜索字符串中的某部分與詞典中的某個(gè)類別的第二類詞匹配上,則將該部分替換為所述第二類詞所屬類別的標(biāo)簽,匹配完成后的實(shí)時(shí)搜索字符串包含第一類詞和/或第二類詞所屬類別的標(biāo)簽和/或未匹配上的部分;依據(jù)預(yù)生成的模式確定匹配完成后的實(shí)時(shí)搜索字符串的特定搜索意圖,并依據(jù)所述的特定搜索意圖返回搜索結(jié)果數(shù)據(jù)。本申請可顯著提高搜索精度,提供更加精確的搜索結(jié)果數(shù)據(jù)。
文檔編號(hào)G06F17/30GK103106220SQ20111036197
公開日2013年5月15日 申請日期2011年11月15日 優(yōu)先權(quán)日2011年11月15日
發(fā)明者郎皓, 唐超, 張小洵, 薛貴榮 申請人:阿里巴巴集團(tuán)控股有限公司