檢索應(yīng)用中基于拼音的檢索條件糾錯(cuò)提示處理方法
【專利摘要】本發(fā)明提供了一種基于拼音的檢索條件糾錯(cuò)提示處理方法,該方法能夠?qū)崿F(xiàn)對(duì)拼音輸入法輸入漢字檢索條件時(shí)出現(xiàn)的輸入錯(cuò)誤提供糾錯(cuò)提示,能夠支持對(duì)漢字、拼音、漢字與拼音混合形式的糾錯(cuò)提示,并且可以針對(duì)同音詞和模糊音詞的別字詞條檢索提供糾錯(cuò)提示;本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法采用了字典樹作為查詢處理的數(shù)據(jù)結(jié)構(gòu),具有查詢速度快、糾錯(cuò)能力強(qiáng)、占用數(shù)據(jù)空間少等優(yōu)點(diǎn),能夠提升搜索引擎對(duì)檢索條件的糾錯(cuò)提示處理效率和響應(yīng)速度,給用戶帶來(lái)更好的使用體驗(yàn),從提升用戶對(duì)檢索應(yīng)用產(chǎn)品的忠誠(chéng)度。
【專利說(shuō)明】檢索應(yīng)用中基于拼音的檢索條件糾錯(cuò)提示處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)通信網(wǎng)絡(luò)技術(shù)和檢索應(yīng)用【技術(shù)領(lǐng)域】,具體涉及一種檢索應(yīng)用中基于拼音的檢索條件糾錯(cuò)提示處理方法。
【背景技術(shù)】
[0002]在信息化社會(huì)中,搜索引擎作為獲取信息的主要方式之一,自其問(wèn)世以來(lái)便引起人們的普遍關(guān)注。搜索引擎是指以網(wǎng)絡(luò)的各種信息資源為對(duì)象,以信息檢索的方式提供用戶所需信息的數(shù)據(jù)服務(wù)系統(tǒng),其通過(guò)特定的計(jì)算機(jī)應(yīng)用程序定時(shí)在互聯(lián)網(wǎng)上搜集信息,并對(duì)搜集到的信息提取、整合、建立索引之后,為用戶提供檢索服務(wù)。隨著信息量的爆炸式增長(zhǎng),大眾化搜索引擎的使用率持續(xù)提高,人們對(duì)搜索引擎的人機(jī)交互性能的要求也隨之提高,因此,業(yè)界逐漸關(guān)注搜索引擎的容錯(cuò)技術(shù)。搜索引擎容錯(cuò)技術(shù)是指用戶在輸入關(guān)鍵字進(jìn)行檢索時(shí),如果搜索引擎在返回結(jié)果中計(jì)算出與此關(guān)鍵詞相似的另一形式詞條得到大量的搜索結(jié)果,用戶將會(huì)在搜索結(jié)果頁(yè)面看到系統(tǒng)推測(cè)提供的關(guān)鍵詞項(xiàng)。目前,搜索引擎支持的用戶檢索錯(cuò)誤主要包括:同音別字錯(cuò)誤、模糊音別字錯(cuò)誤等。同音別字錯(cuò)誤是指由于用戶在輸入正確拼音(不包括聲調(diào))后由于粗心或無(wú)法確定字形而選擇與目標(biāo)檢索詞具有相同拼音的錯(cuò)誤漢字。模糊音別字錯(cuò)誤是指由于地域特色等原因使用戶輸入目標(biāo)檢索詞的相似拼音的錯(cuò)誤漢字。
[0003]現(xiàn)有技術(shù)中,搜索引擎容錯(cuò)式檢索的常用解決方案通常是基于統(tǒng)計(jì)的糾錯(cuò)提示處理,即通過(guò)特定算法(例如N-gram)計(jì)算作為檢索條件的詞條與提示詞庫(kù)中所有提示詞的匹配度,從而獲取較優(yōu)的糾錯(cuò)提示結(jié)果返回給用戶。但這種糾錯(cuò)提示處理方式,要檢索到匹配的糾錯(cuò)提示結(jié)果,需要遍歷匹配整個(gè)提示詞庫(kù)中所有的提示詞,匹配次數(shù)過(guò)多導(dǎo)致了糾錯(cuò)提示處理的整體耗時(shí)較長(zhǎng),糾錯(cuò)提示處理效率和響應(yīng)速度較低,影響了用戶對(duì)糾錯(cuò)提示功能的使用體驗(yàn)感。
【發(fā)明內(nèi)容】
[0004]針對(duì)現(xiàn)有技術(shù)中存在的上述不足,本發(fā)明提供一基于拼首的檢索條件糾錯(cuò)提不處理方法,一方面的目的在于針對(duì)拼音輸入法輸入漢字檢索條件時(shí)出現(xiàn)的輸入錯(cuò)誤提供糾錯(cuò)提示,以實(shí)現(xiàn)搜索引擎容錯(cuò)式檢索;另一方面的目的在于,提升搜索引擎對(duì)檢索條件的糾錯(cuò)提示處理效率和響應(yīng)速度。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明采用了如下技術(shù)手段:
基于拼音的檢索條件糾錯(cuò)提示處理方法,包括:在用戶輸入檢索條件時(shí),若作為檢索條件的詞條不是提示詞庫(kù)中的提示詞,則獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑,將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
[0006]作為進(jìn)一步優(yōu)化方案,所述“在用戶輸入檢索條件”之前,還包括:預(yù)先建立提示詞拼首字典樹;所述提不詞拼首字典樹包含有提不詞庫(kù)中各個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼首字符路徑;所述提不詞拼首字典樹中,在每一個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的同音指針。
[0007]作為一種可選擇方案,所述提示詞對(duì)應(yīng)的拼音字符串通過(guò)查詢預(yù)設(shè)的漢字-拼音對(duì)照字典獲得。
[0008]作為進(jìn)一步優(yōu)化方案,所述“將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果”的同時(shí),還包括:還將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
[0009]作為進(jìn)一步優(yōu)化方案,所述“在用戶輸入檢索條件”之前,還包括:預(yù)先建立提示詞拼首字典樹;所述提不詞拼首字典樹包含有提不詞庫(kù)中各個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼音字符路徑以及各個(gè)提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的字符串路徑;所述提示詞拼音字典樹中,在每一個(gè)提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提不詞的詞表的同首指針;在每一個(gè)提不詞對(duì)應(yīng)的I旲糊首字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的模糊音指針。[0010]作為一種可選擇方案,所述提示詞對(duì)應(yīng)的模糊音字符串通過(guò)查詢預(yù)設(shè)的漢字-模糊音對(duì)照字典獲得;或者,所述提示詞對(duì)應(yīng)的模糊音字符串通過(guò)查詢漢字-拼音對(duì)照字典以及拼音-模糊音對(duì)照關(guān)系表獲得。
[0011]作為進(jìn)一步優(yōu)化方案,所述提示詞拼音字典樹中,對(duì)于同一個(gè)提示詞,該提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表,以及該提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表,為同一個(gè)詞表。
[0012]作為進(jìn)一步優(yōu)化方案,所述“獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑”具體為:獲取作為檢索條件的詞條后,判斷該詞條中是否包含有多音字;若未包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為唯一對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條唯一對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑;若包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為各種能夠?qū)?yīng)的拼音字符串情況,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條各種能夠?qū)?yīng)的拼音字符串情況分別相匹配的拼音字符路徑。
[0013]作為進(jìn)一步優(yōu)化方案,作為糾錯(cuò)提示結(jié)果返回給用戶的提示詞數(shù)量不超過(guò)預(yù)設(shè)的詞數(shù)上限值Ntl ;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量η < Ntl的情況下,則將作為糾錯(cuò)提示結(jié)果的全部提示詞返回給用戶;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量η〉^的情況下,則從中選取出按預(yù)設(shè)排序規(guī)則排序靠前的Ntl個(gè)提示詞返回給用戶。
[0014]作為一種可選擇方案,所述預(yù)設(shè)排序規(guī)則為按提示詞的熱度由高到低的排序規(guī)則;所述提示詞的熱度是指,在指定時(shí)間段內(nèi),提示詞在用戶輸入的檢索條件中出現(xiàn)的次數(shù),該次數(shù)越大則提示詞的熱度越高。
[0015]相比于現(xiàn)有技術(shù),本發(fā)明具有如下有益效果:
1、本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法能夠?qū)崿F(xiàn)對(duì)拼音輸入法輸入漢字檢索條件時(shí)出現(xiàn)的輸入錯(cuò)誤提供糾錯(cuò)提示,能夠支持對(duì)漢字、拼音、漢字與拼音混合形式的糾錯(cuò)提示。
[0016]2、本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法,不僅可以針對(duì)同音詞別字詞條檢索提供糾錯(cuò)提不,還可以針對(duì)1?糊首別字詞條檢索提供糾錯(cuò)提不。
[0017]3、本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法采用了字典樹作為查詢處理的數(shù)據(jù)結(jié)構(gòu),具有查詢速度快、糾錯(cuò)能力強(qiáng)、占用數(shù)據(jù)空間少等優(yōu)點(diǎn),能夠提升搜索引擎對(duì)檢索條件的糾錯(cuò)提示處理效率和響應(yīng)速度。
【專利附圖】
【附圖說(shuō)明】
[0018] 圖1為本發(fā)明實(shí)施例中基于拼首的檢索條件糾錯(cuò)提不處理方法提不詞拼首字典樹的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0019]字典樹,又稱Trie樹,是一種樹形數(shù)據(jù)結(jié)構(gòu),是一種哈希樹的變種。作為一種現(xiàn)有技術(shù),字典樹的典型應(yīng)用是用于統(tǒng)計(jì)、排序和保存大量的字符串(但不僅限于字符串)。字典樹具有的主要優(yōu)點(diǎn)是:利用字符串的公共前綴來(lái)節(jié)約數(shù)據(jù)存儲(chǔ)空間,能夠最大限度地減少無(wú)謂的字符串比較,并且其查詢處理效率比哈希表更高。基于字典樹的這些優(yōu)點(diǎn),本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法很好的結(jié)合了字典樹數(shù)據(jù)結(jié)構(gòu)進(jìn)行糾錯(cuò)的查詢處理,很好的實(shí)現(xiàn)了對(duì)同音詞、模糊音的別字詞條檢索的糾錯(cuò)提示,并且其糾錯(cuò)查詢過(guò)程只需要經(jīng)歷的匹配次數(shù)即相當(dāng)于相匹配的拼音字符路徑上所包含的節(jié)點(diǎn)個(gè)數(shù),對(duì)于常規(guī)的提示詞拼音字符串來(lái)說(shuō),其相匹配的拼音字符路徑上所包含的節(jié)點(diǎn)個(gè)數(shù)通常不超過(guò)20個(gè),并且絕大多數(shù)都在10個(gè)以內(nèi),與現(xiàn)有技術(shù)中需要遍歷匹配整個(gè)提示詞庫(kù)中所有的提示詞相比,其匹配次數(shù)大幅減少,從而提升了搜索引擎對(duì)檢索條件的糾錯(cuò)提示處理效率和響應(yīng)速度。
[0020]為了更便于對(duì)本發(fā)明技術(shù)內(nèi)容的理解,下面對(duì)本發(fā)明涉及的一些技術(shù)詞語(yǔ)加以說(shuō)明。
[0021]拼音字典樹:除了根節(jié)點(diǎn)外的其它節(jié)點(diǎn)存儲(chǔ)的字符為拼音字符,這種字典樹,本發(fā)明中稱之為拼音字典樹。
[0022]根節(jié)點(diǎn):拼音字典樹中,唯一一個(gè)不存在上一父節(jié)點(diǎn)的節(jié)點(diǎn),稱為根節(jié)點(diǎn)。
[0023]末節(jié)點(diǎn):拼音字典樹中,任意一個(gè)不存在下一子節(jié)點(diǎn)的節(jié)點(diǎn),稱為末節(jié)點(diǎn)。
[0024]拼音字符路徑:拼音字典樹中,從根節(jié)點(diǎn)至任意一個(gè)末節(jié)點(diǎn)所依次經(jīng)歷的各個(gè)拼音字符的排序組合,稱為拼音字符路徑。
[0025]詞表:該詞表為一個(gè)存儲(chǔ)提示詞的鏈表。如果為了節(jié)省詞表所占用的存儲(chǔ)空間,提示詞拼音字典樹中,對(duì)于同一個(gè)提示詞,該提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表,以及該提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表,可以為同一個(gè)詞表。這樣以來(lái),每個(gè)詞表與不多于一個(gè)同音指針相對(duì)應(yīng),但有可能與若干個(gè)模糊音指針相對(duì)應(yīng)。該詞表中可以只包含一個(gè)提示詞,也可以同時(shí)包含多個(gè)提示詞,并且還可以設(shè)置讓詞表中的多個(gè)提示詞按預(yù)設(shè)排序規(guī)則進(jìn)行排序,例如按提示詞的熱度由高到低排序等。
[0026]下面結(jié)合實(shí)施例和附圖,對(duì)本發(fā)明進(jìn)行進(jìn)一步的說(shuō)明。[0027]本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法,其主要包括以下步驟:
S100,預(yù)先建立提示詞拼音字典樹;所述提示詞拼音字典樹包含有提示詞庫(kù)中各個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼首字符路徑;所述提不詞拼首字典樹中,在每一個(gè)提不詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的同音指針。
[0028]該步驟建立了只一個(gè)提供支持同音詞糾錯(cuò)提示的提示詞拼音字典樹。
[0029]如果還需要進(jìn)一步的提供支持模糊音糾錯(cuò)提示,那么需要采用另一種提示詞拼音字典樹建立方案,即:
S101,預(yù)先建立提示詞拼音字典樹;所述提示詞拼音字典樹包含有提示詞庫(kù)中各個(gè)提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑以及各個(gè)提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的字符串路徑;所述提不詞拼首字典樹中,在每一個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的同音指針;在每一個(gè)提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的模糊音指針。
[0030]可以看到,步驟SlOl與步驟SlOO相比,提示詞拼音字典樹中增加了提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的字符串路徑,以及提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針。如果提示詞庫(kù)中存在互為模糊音詞的數(shù)個(gè)提示詞,則某一個(gè)提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑,很可能也同時(shí)相當(dāng)于另一個(gè)提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑。
[0031]舉例子來(lái)說(shuō)明。如圖1所示,例如,當(dāng)提示詞庫(kù)中的提示詞“籃球”,其在提示詞拼音字典樹中對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑建立過(guò)程為:首先將提示詞“籃球”轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串“LANQIU”,該轉(zhuǎn)化通??梢酝ㄟ^(guò)查詢預(yù)設(shè)的漢字-拼音對(duì)照字典獲得;在提示詞拼音字典樹的根節(jié)點(diǎn)“root”下依次遍歷節(jié)點(diǎn)L、A、N、Q、1、U,若節(jié)點(diǎn)不存在則增加相應(yīng)節(jié)點(diǎn);該拼音字符路徑的末節(jié)點(diǎn)“U”之后預(yù)設(shè)對(duì)應(yīng)拼音字符串“LANQIU”的同音指針,指向“LANQIU”詞表,將提示詞“籃球”存儲(chǔ)其中。由于“欖球”的拼音字符串也同樣為“LANQIU”,因此提示詞庫(kù)中的提示詞“欖球”也將按上述流程被存儲(chǔ)在“LANQIU”詞表中。又例如,如果提示詞庫(kù)中的提示詞“籃球”對(duì)應(yīng)模糊音字符串“ LANGQIU”;要建立其對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑,其過(guò)程為:首先將提示詞“籃球”轉(zhuǎn)化為對(duì)應(yīng)模糊音字符串“LANGQIU”,該轉(zhuǎn)化通常可以通過(guò)查詢預(yù)設(shè)的漢字-模糊音對(duì)照字典獲得,或者,可以通過(guò)查詢漢字-拼音對(duì)照字典以及拼音-模糊音對(duì)照關(guān)系表獲得;在提示詞拼音字典樹的根節(jié)點(diǎn)下依次遍歷節(jié)點(diǎn)L、A、N、G、Q、1、U,若節(jié)點(diǎn)不存在則增加相應(yīng)節(jié)點(diǎn);該拼音字符路徑的末節(jié)點(diǎn)“U”之后預(yù)設(shè)對(duì)應(yīng)模糊音字符串“LANGQIU”的模糊音指針,指向“LANQIU”詞表,將提示詞“籃球”存儲(chǔ)其中;當(dāng)然,如果為了節(jié)省詞表所占用的存儲(chǔ)空間,若已經(jīng)存在記錄有提示詞“籃球”的詞表,例如前述拼音字符串“ LANQIU ”的同音指針?biāo)赶虻摹?LANQIU ”詞表即可;也就是說(shuō),提示詞拼音字典樹中,對(duì)于同一個(gè)提示詞,該提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表,以及該提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表,可以為同一個(gè)詞表。在這種情況下,如果提示詞庫(kù)中有提示詞“郎秋”,則其對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑也為L(zhǎng)、A、N、G、Q、1、U,其對(duì)應(yīng)的拼音字符串“LANGQIU”的同音指針指向“LANGQIU”詞表,則提示詞“郎秋”存儲(chǔ)于該“LANGQIU”詞表中;如果該提示詞“郎秋”對(duì)應(yīng)模糊音字符串“LANQIU”,則上述的提示詞“籃球”對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑L、A、N、Q、1、U,該末節(jié)點(diǎn)“U”之后預(yù)設(shè)對(duì)應(yīng)模糊音字符串“LANQIU”的模糊音指針,將指向存儲(chǔ)有提示詞“郎秋”的“LANGQIU”詞表。詳情如圖1所示。
[0032]實(shí)際上,上述的步驟SlOO與步驟SlOl都是預(yù)處理步驟,是可選執(zhí)行的步驟;如果搜索引擎已經(jīng)預(yù)先建立有默認(rèn)的提示詞拼音字典樹,則可以直接采用默認(rèn)的提示詞拼音字典樹,無(wú)需執(zhí)行這一步驟。只有當(dāng)需要重新建立、更新提示詞拼音字典樹時(shí),才需要執(zhí)行這步驟SlOO或步驟SlOl。
[0033]S200,在用戶輸入檢索條件時(shí),若作為檢索條件的詞條不是提示詞庫(kù)中的提示詞,則獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑,將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
[0034]該步驟的上述操作,只是執(zhí)行了對(duì)同音詞糾錯(cuò)提示處理的操作。如果還需要進(jìn)一步的提供支持同音詞糾錯(cuò)提示操作,則需要對(duì)步驟S200的處理作進(jìn)一步的改進(jìn),即在“將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果”的同時(shí),還包括:還將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
[0035]步驟S200是正式執(zhí)行檢索條件糾錯(cuò)提示處理操作的步驟,如果在已經(jīng)具備默認(rèn)的提示詞拼音字典樹的情況下,或者在已經(jīng)預(yù)先建立提示詞拼音字典樹之后,則只需要執(zhí)行該步驟的操作便可實(shí)現(xiàn)對(duì)檢索條件的糾錯(cuò)提示功能。舉例子來(lái)說(shuō)明。同樣可以參見圖1,如果一個(gè)用戶想檢索的目標(biāo)詞本為“籃球”,但因用戶在輸入時(shí)存在同音詞選詞錯(cuò)誤,實(shí)際輸入的檢索條件成為了“藍(lán)球”;由于提示詞庫(kù)中并不存在“藍(lán)球”這一提示詞(“藍(lán)球”一詞本來(lái)就存在錯(cuò)別字),因此搜索引擎啟動(dòng)了糾錯(cuò)提示處理過(guò)程,獲取作為檢索條件的詞條“藍(lán)球”,轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串“LANQIU”,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串“LANQIU”相匹配的拼音字符路徑,則查找到相匹配的拼音字符路徑為L(zhǎng)、A、N、Q、1、U,進(jìn)而將該拼音字符路徑的末節(jié)點(diǎn)“U”的同音指針?biāo)赶虻摹癓ANQIU”詞表中記錄的提示詞“籃球”和“欖球”作為糾錯(cuò)提示結(jié)果,返回給用戶;如果還伴隨有模糊音糾錯(cuò)提示,則同時(shí)還會(huì)將相匹配的拼音字符路徑L、A、N、Q、1、U的末節(jié)點(diǎn)“U”預(yù)設(shè)的模糊音指針?biāo)赶虻摹癓ANGQIU”詞表中記錄的提示詞“郎秋”作為糾錯(cuò)提示結(jié)果,返回給用戶。由此,用戶可能會(huì)獲得如下的糾錯(cuò)提示信息:“您要找的是不是:籃球、欖球、郎秋? ”。
[0036]在步驟S200的執(zhí)行過(guò)程中,可能會(huì)出現(xiàn)一些特殊情況。例如,用戶輸入的作為檢索條件的詞條中可能包含有多音字,這將使得一個(gè)詞條可能有多種能夠?qū)?yīng)的拼音字符串情況。針對(duì)這種情況,本發(fā)明方法可以通過(guò)對(duì)步驟S200進(jìn)行進(jìn)一步改進(jìn),使得問(wèn)題得到解決。具體改進(jìn)方案是,在上述步驟S200中,所述“獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑”具體為:獲取作為檢索條件的詞條后,判斷該詞條中是否包含有多音字;若未包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為唯一對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條唯一對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑;若包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為各種能夠?qū)?yīng)的拼音字符串情況,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條各種能夠?qū)?yīng)的拼音字符串情況分別相匹配的拼音字符路徑。這樣使得作為檢索條件的詞條因?yàn)槎嘁糇侄嬖诘母鞣N能夠?qū)?yīng)的拼音字符串情況,都可以匹配到拼音字符路徑,進(jìn)而將分別得到糾錯(cuò)提示。例如,詞條“大FU”中“大”字為多音字,存在“da”、“dai”兩種讀音;因此,詞條“大FU”存在“DAFU”、“DAIFU”兩種能夠?qū)?yīng)的拼音字符串情況,如果對(duì)此進(jìn)行糾錯(cuò)提示,用戶就可能的得到“答復(fù)”(對(duì)應(yīng)“DAFU”)、“大夫”(對(duì)應(yīng)“DAIFU”)等類似的糾錯(cuò)提不?目息。
[0037]通常情況下,作為糾錯(cuò)提示結(jié)果返回給用戶的提示詞數(shù)量越多當(dāng)然越有利于向用戶提供更多選擇,但過(guò)多的提示詞數(shù)量可能包含很多用戶根本不需要的提示信息,并且有時(shí)候也會(huì)造成用戶難于選擇的困惑。因此,針對(duì)步驟S200處理后可能得到多個(gè)提示詞的情形,例如上述的幾個(gè)舉例中出現(xiàn)的情況,作為一種進(jìn)一步的改進(jìn),搜索引擎中可以預(yù)設(shè)有詞數(shù)上限值Ntl,作為糾錯(cuò)提示結(jié)果返回給用戶的提示詞數(shù)量不超過(guò)預(yù)設(shè)的詞數(shù)上限值Ntl ;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量η < N0的情況下,則將作為糾錯(cuò)提示結(jié)果的全部提示詞返回給用戶;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量CNci的情況下,則從中選取出按預(yù)設(shè)排序規(guī)則排序靠前的Ntl個(gè)提示詞返回給用戶。例如設(shè)置Ntl=I,預(yù)設(shè)排序規(guī)則設(shè)置為按提示詞的熱度由高到低的排序規(guī)則;那么對(duì)于作為糾錯(cuò)提示結(jié)果的提示詞包括有“籃球”、“欖球”、“郎秋”的情形,若三者中提示詞“籃球”的熱度最高,那么用戶可能受到的糾錯(cuò)提示信息則不再是“您要找的是不是:籃球、欖球、郎秋? ”,而將是“您要找的是不是:籃球? ”。詞條熱度,是互聯(lián)網(wǎng)絡(luò)搜索引擎【技術(shù)領(lǐng)域】的一個(gè)常見概念,通常指在指定時(shí)間段內(nèi)詞條在用戶輸入的檢索條件中出現(xiàn)的次數(shù)。例如,提示詞的熱度即是指,在指定時(shí)間段內(nèi),提示詞在用戶輸入的檢索條件中出現(xiàn)的次數(shù);該次數(shù)越大則提示詞的熱度越高。當(dāng)然,作為具體應(yīng)用而言,詞數(shù)上限值Ntl的取值以及預(yù)設(shè)排序規(guī)則具體如何選擇,則可以根據(jù)實(shí)際情況的需要而設(shè)定。
[0038]綜上所述,可以看到,本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法能夠?qū)崿F(xiàn)對(duì)拼音輸入法輸入漢字檢索條件時(shí)出現(xiàn)的輸入錯(cuò)誤提`供糾錯(cuò)提示,能夠支持對(duì)漢字、拼音、漢字與拼音混合形式的糾錯(cuò)提示,并且可以針對(duì)同音詞和模糊音詞的別字詞條檢索提供糾錯(cuò)提示;本發(fā)明基于拼音的檢索條件糾錯(cuò)提示處理方法采用了字典樹作為查詢處理的數(shù)據(jù)結(jié)構(gòu),具有查詢速度快、糾錯(cuò)能力強(qiáng)、占用數(shù)據(jù)空間少等優(yōu)點(diǎn),能夠提升搜索引擎對(duì)檢索條件的糾錯(cuò)提示處理效率和響應(yīng)速度,給用戶帶來(lái)更好的使用體驗(yàn),從提升用戶對(duì)檢索應(yīng)用產(chǎn)品的忠誠(chéng)度。
[0039]最后說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的宗旨和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
【權(quán)利要求】
1.基于拼音的檢索條件糾錯(cuò)提示處理方法,其特征在于,包括:在用戶輸入檢索條件時(shí),若作為檢索條件的詞條不是提示詞庫(kù)中的提示詞,則獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑,將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
2.根據(jù)權(quán)利要求1所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述“在用戶輸入檢索條件”之前,還包括:預(yù)先建立提示詞拼音字典樹;所述提示詞拼音字典樹包含有提示詞庫(kù)中各個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼首字符路徑;所述提不詞拼首字典樹中,在每一個(gè)提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的同音指針。
3.根據(jù)權(quán)利要求2所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述提示詞對(duì)應(yīng)的拼音字符串通過(guò)查詢預(yù)設(shè)的漢字-拼音對(duì)照字典獲得。
4.根據(jù)權(quán)利要求1所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述“將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果”的同時(shí),還包括:還將相匹配的拼音字符路徑末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表中記錄的提示詞作為糾錯(cuò)提示結(jié)果,返回給用戶。
5.根據(jù)權(quán)利要求4所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述“在用戶輸入檢索條件”之前,還包括:預(yù)先建立提示詞拼音字典樹;所述提示詞拼音字典樹包含有提示詞庫(kù)中各個(gè)提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑以及各個(gè)提示詞對(duì)應(yīng)的模糊首字符串所構(gòu)成的字符串路徑;所述提不詞拼首字典樹中,在每一個(gè)提不詞對(duì)應(yīng)的拼首字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的同音指針;在每一個(gè)提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn),預(yù)設(shè)有用于指向記錄有該提示詞的詞表的模糊音指針。
6.根據(jù)權(quán)利要求5所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述提示詞對(duì)應(yīng)的模糊音字符串通過(guò)查詢預(yù)設(shè)的漢字-模糊音對(duì)照字典獲得;或者,所述提示詞對(duì)應(yīng)的模糊音字符串通過(guò)查詢漢字-拼音對(duì)照字`典以及拼音-模糊音對(duì)照關(guān)系表獲得。
7.根據(jù)權(quán)利要求5所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述提示詞拼音字典樹中,對(duì)于同一個(gè)提示詞,該提示詞對(duì)應(yīng)的拼音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的同音指針?biāo)赶虻脑~表,以及該提示詞對(duì)應(yīng)的模糊音字符串所構(gòu)成的拼音字符路徑的末節(jié)點(diǎn)預(yù)設(shè)的模糊音指針?biāo)赶虻脑~表,為同一個(gè)詞表。
8.根據(jù)權(quán)利要求1所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述“獲取作為檢索條件的詞條并轉(zhuǎn)化為對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑”具體為:獲取作為檢索條件的詞條后,判斷該詞條中是否包含有多音字;若未包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為唯一對(duì)應(yīng)的拼音字符串,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條唯一對(duì)應(yīng)的拼音字符串相匹配的拼音字符路徑;若包含有多音字,則將該作為檢索條件的詞條轉(zhuǎn)化為各種能夠?qū)?yīng)的拼音字符串情況,從預(yù)先建立的提示詞拼音字典樹中查找與作為檢索條件的詞條各種能夠?qū)?yīng)的拼音字符串情況分別相匹配的拼音字符路徑。
9.根據(jù)權(quán)利要求1、4、8中任一項(xiàng)所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,作為糾錯(cuò)提示結(jié)果返回給用戶的提示詞數(shù)量不超過(guò)預(yù)設(shè)的詞數(shù)上限值Ntl ;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量η < N0的情況下,則將作為糾錯(cuò)提示結(jié)果的全部提示詞返回給用戶;在作為糾錯(cuò)提示結(jié)果的提示詞數(shù)量η〉^的情況下,則從中選取出按預(yù)設(shè)排序規(guī)則排序靠前的Ntl個(gè)提示詞返回給用戶。
10.根據(jù)權(quán)利要求9所述的檢索條件糾錯(cuò)提示處理方法,其特征在于,所述預(yù)設(shè)排序規(guī)則為按提示詞的熱度由高到低的排序規(guī)則;所述提示詞的熱度是指,在指定時(shí)間段內(nèi),提示詞在用戶輸入的檢索條件中`出現(xiàn)的次數(shù),該次數(shù)越大則提示詞的熱度越高。
【文檔編號(hào)】G06F17/30GK103514236SQ201210228101
【公開日】2014年1月15日 申請(qǐng)日期:2012年6月30日 優(yōu)先權(quán)日:2012年6月30日
【發(fā)明者】劉磊, 熊小鵬 申請(qǐng)人:重慶新媒農(nóng)信科技有限公司