一種即時搜索方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例公開了一種即時搜索方法和系統(tǒng),所述的方法包括:檢測搜索欄中當前輸入的文字信息,對當前輸入的文字信息進行糾錯處理,并提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù);當對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字;在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提示信息;當接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。本發(fā)明實施例改寫后的搜索關鍵詞使得搜索結果更加接近當初的預期,提升用戶體驗,減少了客戶端的資源和搜索引擎的資源浪費,提高了搜索效率。
【專利說明】一種即時搜索方法和系統(tǒng)
【技術領域】
[0001]本發(fā)明涉及搜索的【技術領域】,具體涉及一種即時搜索方法和一種即時搜索系統(tǒng)?!颈尘凹夹g】
[0002]隨著互聯(lián)網(wǎng)的高速發(fā)展,網(wǎng)絡應用趨向多元化,網(wǎng)上的信息量急劇增加。
[0003]在各種場合下,用戶經(jīng)常需要輸入語言文字進行信息的交互。例如,在搜索引擎中輸入關鍵詞搜索網(wǎng)頁信息,在即時通訊工具中輸入詞句與其他用戶進行交流,等等。
[0004]語言文字存在形近字,即語言文字的結構相似的語言文字。語言文字被定義為各種編碼方式進行輸入,例如五筆編碼、拼音編碼等等,用戶在采用該編碼方式輸入語言文字時,由于形近字的原因,很容易出現(xiàn)誤操作,輸入其他語言文字,導致用戶經(jīng)常需要重新輸入語言文字,不僅操作麻煩,而且浪費系統(tǒng)資源。
[0005]以五筆為例,五筆輸入文字準不準確取決于用戶是否細心或?qū)h字本身的認知,但是由于粗心導致的誤操作或用戶認知本身就是錯別字導致的輸錯漢字的情形等并不少見,例如某新聞報紙的某次頭版頭條“亂撳喇叭被罰不要喊冤”寫成了 “亂撳嗽叭被罰不要喊冤”。
[0006]再者,若用戶在搜索引擎中想輸入搜索詞“項羽”,搜索歷史人物項羽的相關網(wǎng)頁信息,但是將“項”誤輸入為“頂”,由于“項”和“頂”也很相近,用戶很可能輸入了“頂羽”而沒有察覺,直接請求搜 索引擎搜索與“頂羽”相關的網(wǎng)頁信息。
[0007]—方面,誤操作的搜索結果與當初的預期有很大差別,用戶體驗十分差,浪費了客戶端的資源和搜索引擎的資源。另一方面,用戶需要獲取自己感興趣的網(wǎng)頁信息,會再次在搜索引擎中輸入關鍵詞進行搜索,搜索引擎要再次進行海量信息的搜索、對比、篩選等獲取與搜索關鍵詞相關的信息,不僅用戶操作更加繁瑣,耗費用戶的時間,而且將大大增加搜索引擎的負擔,耗費更多客戶端與搜索引擎的資源。
【發(fā)明內(nèi)容】
[0008]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的一種即時搜索方法和相應的一種即時搜索的系統(tǒng)。
[0009]依據(jù)本發(fā)明的一個方面,提供了一種即時搜索方法,包括:
[0010]檢測搜索欄中當前輸入的文字信息,對當前輸入的文字信息進行糾錯處理,并提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù);
[0011]當對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字;
[0012]在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提不?目息;
[0013]當接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。[0014]可選地,所述近似字包括形近字和/或音近字。
[0015]可選地,所述形近字通過以下方式獲得:
[0016]確定輸入搜索引擎中的待校驗是否為形近字的第一文字和第二文字;
[0017]按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串;
[0018]計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離;
[0019]當所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字;
[0020]在搜索引擎中建立第一文字與第二文字之間的形近字映射關系。
[0021]可選地,所述預設規(guī)則包括預設的編碼規(guī)則,所述按照預設規(guī)則獲取所述第一文字的第一編碼字符串,以及,所述第二文字的第二編碼字符串的步驟包括:
[0022]按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串;
[0023]按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串;
[0024]其中,所述預設的編碼規(guī)則包括五筆編碼規(guī)則。
[0025]可選地,所述形近字還通過以下方式獲得:
[0026]分別查找所述第一編碼字符串對應的第一輸入按鍵;
[0027]分別查找所述第二編碼字符串對應的第二輸入按鍵;
[0028]分別計算所述第一輸入按鍵和所述第二輸入按鍵之間的按鍵距離;
[0029]依據(jù)所述按鍵距離為所述編碼距離配置對應的權重;
[0030]所述當所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字的步驟為:
[0031]當配置有所述權重的編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字。
[0032]可選地,所述按鍵距離與所述權重成反比。
[0033]根據(jù)本發(fā)明的另一方面,提供了一種即時搜索系統(tǒng),包括:
[0034]文字信息檢測單元,適于檢測搜索欄中當前輸入的文字信息;
[0035]糾錯處理單元,適于對當前輸入的文字信息進行糾錯處理;
[0036]第一結果提供單元,適于提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù);
[0037]近似字計算單元,適于對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字;
[0038]糾錯提示單元,適于在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提示信息;
[0039]第二結果提供單元,適于在接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。
[0040]可選地,所述近似字包括形近字和/或音近字。
[0041]可選地,所述形近字通過調(diào)用以下模塊獲得:
[0042]文字確定模塊,適于確定輸入搜索引擎中的待校驗的第一文字和第二文字;
[0043]編碼獲取模塊,適于按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串;
[0044]編碼距離計算模塊,適于計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離;
[0045]形近字判定模塊,適于在所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字;
[0046]映射關系確定模塊,適于在搜索引擎中建立第一文字與第二文字之間的形近字映身寸關系。
[0047]可選地,所述預設規(guī)則包括預設的編碼規(guī)則,所述編碼獲取模塊還適于:
[0048]按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串;
[0049]按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串;
[0050]其中,所述預設的編碼規(guī)則包括五筆編碼規(guī)則。
[0051]可選地,所述形近字還通過調(diào)用以下模塊獲得:
[0052]第一查找模塊,適于分別查找所述第一編碼字符串對應的第一輸入按鍵;
[0053]第二查找模塊,適于分別查找所述第二編碼字符串對應的第二輸入按鍵;
[0054]按鍵距離計算模塊,適于分別計算所述第一輸入按鍵和所述第二輸入按鍵之間的按鍵距離;
[0055]權重配置模塊,適于依據(jù)所述按鍵距離為所述編碼距離配置對應的權重;
[0056]所述形近字判定模塊還適于:
[0057]當配置有所述權重的編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字。
[0058]可選地,所述按鍵距離與所述權重成反比。
[0059]本發(fā)明實施例在即時搜索引擎中對文字信息進行糾錯處理,采用與文字信息匹配的近似文字對搜索關鍵詞進行改寫,以獲得與所述改寫后的文字信息相匹配的搜索結果數(shù)據(jù)。一方面,改寫后的搜索關鍵詞使得搜索結果更加接近當初的預期,提升用戶體驗,減少了客戶端的資源和搜索引擎的資源浪費,提高了搜索效率。另一方面,避免用戶需要獲取自己感興趣的網(wǎng)頁信息,再次在搜索引擎中輸入關鍵詞進行搜索,減少了搜索引擎要再次進行海量信息的搜索、對比、篩選等獲取與搜索關鍵詞相關的信息,使得用戶操作更加方便,減少用戶的時間耗費,進一步減少了客戶端與搜索引擎的資源耗費。
[0060]上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0061]通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0062]圖1示出了根據(jù)本發(fā)明的一個實施例的一種即時搜索方法實施例的步驟流程圖;以及
[0063]圖2示出了根據(jù)本發(fā)明一個實施例的一種即時搜索系統(tǒng)實施例的結構框圖?!揪唧w實施方式】
[0064]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領域的技術人員。
[0065]參照圖1,示出了根據(jù)本發(fā)明的一個實施例的一種即時搜索方法實施例的步驟流程圖,可以包括如下步驟:
[0066]步驟101,檢測搜索欄中當前輸入的文字信息;
[0067]需要說明的是,即時搜索(Current Event Search Engine, ISE),又稱瞬時搜索,是指以RSS (簡易信息聚合)/Atom (—對彼此相關的標準)、Tag (分類標簽)等新興技術為基礎,專注于中文世界里頻繁更新的博客網(wǎng)站和新聞網(wǎng)站,能夠給用戶提供接近實時效果的搜索結果。
[0068]在具體實現(xiàn)中,即時搜索引擎可以檢測用戶在搜索欄中輸入的文字信息,隨著用戶在搜索欄中輸入文字信息,即時搜索引擎可以同時給出搜索結果,隨著用戶不斷的輸入新的文字信息,即時搜索引擎可以隨時刷新出的搜索結果頁面都會一起發(fā)生變化。
[0069]步驟102,對當前輸入的文字信息進行糾錯處理;
[0070]在一種情形中,可以使用自然語言處理技術(Natural Language Processing,NLP)對搜索關鍵詞進行糾錯處理。
[0071]糾錯處理一般可以拆分成兩個子任務:
[0072]1、拼寫錯誤檢測(Spelling Error Detection):按照錯誤類型不同,可以分為Non-word Errors 和 Real-word Errors。其中,Non-word Errors 可以指拼寫錯誤后的詞本身就不合法,如錯誤的將“giraffe”寫成“graffe” ;Real_word Errors可以指那些拼寫錯誤后的詞仍然是合法的情況,如將“there”錯誤拼寫為“three”(形近),將“peace”錯誤拼寫為“piece”(同音),將“two”錯誤拼寫為“too”(同音)。在具體實現(xiàn)中,可以基于噪聲信道模型(Noisy Channel Model)等進行拼寫糾錯;
[0073]2、拼寫糾錯(Spelling Error Correction):對搜索關鍵詞進行糾錯,可以進行字詞查錯,例如對相鄰字和字、相鄰字和詞、相鄰詞和詞之間等的錯誤進行檢查。
[0074]在另一種情形中,也可以采用語言模型(Language Model)對當前輸入的文字信息進行糾錯處理。
[0075]即時搜索引擎可以預先采集用戶的輸入文本信息,然后訓練語言模型。訓練的模型可以為N-Gram(大詞匯連續(xù)語音識別中常用的一種語言模型)、基于神經(jīng)網(wǎng)絡的語言模型等等,用戶語言模型的學習可以采取定期或者客戶端空閑的方式進行。
[0076]當然,上述糾錯處理方法只是作為示例,在實施本發(fā)明實施例時,可以根據(jù)實際情況設置其他糾錯處理方法,本發(fā)明實施例對此不加以限制。另外,除了上述糾錯處理方法夕卜,本領域技術人員還可以根據(jù)實際需要采用其它糾錯處理方法,本發(fā)明實施例對此也不加以限制。
[0077]步驟103,提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù);
[0078]即時搜索中,隨著用戶每次輸入新的文字信息,都可以自動向即時搜索引擎發(fā)起查詢請求并接收搜索結果展示,而無需點擊Enter鍵等觸發(fā)查詢請求。步驟104,當對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字;
[0079]在具體實現(xiàn)中,所述近似字可以包括形近字和/或音近字。
[0080]音近字可以為讀音相同或相近的詞,例如“案”和“安”的讀音都為“an”。其中,中文的拼音由聲母和韻母組成,可以分別計算第一文字和第二文字的聲母和韻母的相似度,獲得讀音之間的相似度,當該相似度大于預設的相似度閾值時,可以判定第一文字和第二
文字為音近字。
[0081]對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,在字體數(shù)據(jù)庫中查找與錯誤處的文字對應的上下文最匹配的近似文字對文字信息進行改寫。
[0082]在本發(fā)明的一種優(yōu)選實施例中,所述形近字可以通過以下方式獲得:
[0083]子步驟S11,確定輸入搜索引擎中的待校驗的第一文字和第二文字;
[0084]在具體實現(xiàn)中,可以從預設采集的語料庫中提取第一文字和第二文字,進行是否互為形近字的校驗。
[0085]在本發(fā)明實施例的一個可選示例中,第一文字和第二文字可以為漢字。
[0086]子步驟S12,按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串;
[0087]文字可以具有特定的文字結構特性,按照該文字結構特性進行編碼,建立輸入方式,可以實現(xiàn)進行電子設備中輸入文字。例如,第一文字和第二文字可以進行拼音輸入方式、五筆輸入方式、筆畫輸入方式等等。
[0088]相對應地,第一文字和第二文字針對不同的編碼規(guī)則可以對應不同第一編碼字符串和第二編碼字符串。例如,“側”針對拼音輸入方式對應的編碼字符串為“ ce ”,針對五筆輸入方式對應的編碼字符串為“WMJh”。
[0089]在本發(fā)明實施例的一種優(yōu)選示例中,所述預設規(guī)則可以包括預設的編碼規(guī)則,子步驟12進一步可以包括如下子步驟:
[0090]子步驟S121,按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串;
[0091]子步驟S122,按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串;
[0092]其中,所述預設的編碼規(guī)則可以包括五筆編碼規(guī)則。
[0093]漢字是由筆劃或偏旁部首組成的,為了輸入這些漢字,可以把漢字拆成一些最常用的基本單位,即字根。字根可以是漢字的偏旁部首,也可以是部首的一部分,甚至是筆劃。
[0094]字根在組成漢字時,可以按照字根之間的位置關系分為四類結構:單、散、連、交。其中,單可以指字根本身單獨成為一個漢字,包括鍵名字根和成字字根,例如口、木等;散可以指構成漢字的字根之間可以保持一定距離,例如漢、湘等;連可以指一個字根連一單筆畫,例如“ j ”連“目”成為“自”;交可以指幾個字根交叉套迭之后構成漢字,例如“申”是由“日”交“ I ”。
[0095]五筆為五筆輸入法的簡稱,為一種形碼輸入法。字根是五筆輸入法的基本單元,依據(jù)筆畫和字形特征對漢字進行編碼,把字根按一定的規(guī)律分類,再把這些字根分配在鍵盤上,作為輸入漢字的基本單位。
[0096]具體地,五筆將漢字筆劃分為五個區(qū):橫(同提)、豎、撇、捺(同點)、折五區(qū)。把字根或碼元按一定規(guī)律分布在25個字母鍵上(即標準的QWERTY鍵盤,不包括Z鍵)。
[0097]在采用五筆輸入法輸入漢字時,可以按照漢字的書寫順序和結構依次按鍵盤上與字根對應的鍵,組成一個編碼字符串,系統(tǒng)根據(jù)輸入字根組成的編碼字符串,在五筆輸入法的字庫中檢索出所要的文字。
[0098]需要說明的是,在五筆輸入法中,雖然識別碼的應用使得單個文字的重碼(編碼字符串)率較低,但是詞組的重碼率較高。因此,五筆輸入法普遍不使用大詞庫,以防止過多重碼,反之,五筆輸入法尤其適用于單個文字輸入,以獲得較高的輸入效率。
[0099]子步驟13,計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離;
[0100]通過計算第一編碼字符串和第二編碼字符串之間的編碼距離,可以標識出第一編碼字符串和第二編碼字符串之間的相似度。
[0101 ] 在本發(fā)明實施例的一種優(yōu)選示例中,所述編碼距離可以包括編輯距離。編輯距離(Edit Distance),又稱Levenshtein距離,可以指兩個字符串(例如第一編碼字符串和第二編碼字符串)之間,由一個轉換為另一個所需的最少編輯操作次數(shù)。
[0102]在實際中,許多的編輯操作包括將一個字符串替換成另一個字符串,插入一個字符串,刪除一個字符串。
[0103]例如,將字符串“kitten”轉換為字符串“sitting”最少需要三次操作次數(shù):
[0104]Usitten (k — S),即將字符“k”替換為字符“s” ;
[0105]2、sittin (e — i),即將字符“e”替換為字符“i”;
[0106]3、sitting (― g),即在字符串“sittin”最后插入字符“g”。
[0107]子步驟14,當所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字。
[0108]形近字可以為字形結構相似的文字,在使用時容易產(chǎn)生混淆。例如“己”、“已”、“巳”互為形近字。
[0109]在五筆輸入法中,字根或碼元一般為成塊的存在,與組成文字的筆畫或部偏旁首相同或相近,都集中在某一個或相鄰的按鍵中。例如,某版本的五筆輸入法中H鍵對應的字根包括“目、上、卜、止、虎、頭、具”。
[0110]由于形近字的字形結構相似,對應地,組成形近字的字根也相似。
[0111]在采用五筆輸入法輸入單個文字時,除了少數(shù)的鍵名字根和成字字根外,大多數(shù)情況都需要按照漢字的特點采用拆分規(guī)則對文字進行字根拆分,如果拆分獲得超過四個字根時,取第一、二、三、末(最后)個字根即可輸入文字。
[0112]例如,拆分規(guī)則可以包括:書寫順序、取大優(yōu)先、兼顧直觀、能連不交、能散不連。
[0113]組成文字的筆畫或部偏旁首都是具有一定的使用規(guī)則的,可以包括位置規(guī)則、書寫規(guī)則等等。例如單人旁“彳”、雙人旁”一般是在文字的最左側,最優(yōu)先書寫,如“你”、“億”、“很”、“往”等。
[0114]筆畫或偏旁部首的使用規(guī)則使得漢字可以分為獨體字(如上、下、日、月等由筆畫構成的字,或者是說由單個偏旁組成的字)和合體字(如掛、休、取、明等由偏旁組成的字)。
[0115]具體地,漢字結構可以分為:
[0116](I)上下結構:思、歪、冒、意、安、全;
[0117](2)上中下結構:草、暴、意、竟、競;[0118](3)左右結構:好、棚、和、蜂、灘、往、明;
[0119](4)左中右結構:謝、樹、倒、搬、撇、鞭、辯;
[0120](5)全包圍結構:圍、囚、困、田、因、國、固;
[0121](6)半包圍結構:包、區(qū)、閃、這、句、函、風;
[0122](7)穿插結構:噩、兆、非;
[0123](8)品字形結構:品、森、轟、晶、嘉、盡、炎。
[0124]因此,在五筆輸入法中,由于漢字的筆畫或偏旁部首與五筆字根的相似性,漢字的結構及其書寫規(guī)則與五筆拆分規(guī)則的相似性,因此分別對形近字進行字根拆分,可以獲得相似或相近的編碼字符串。例如,“測”和“側”互為形近字,“測”包括三個偏旁,同時也是字根,分別為“? ”、“貝”、“ U”,其編碼字符串為“imjh”,“側”包括三個偏旁,同時也是字根,分別是M ”、“貝”、“丨J,,,其編碼字符串為“wmjh”,顯然,“imjh”和“麗ijh”是很相似的。
[0125]相對應地,對第一文字和第二文字對應的第一編碼字符串和第二編碼字符串進行編碼距離的計算,當其小于預設距離閾值時,表明其相似度較高,可以認為是形近字。相反,當編碼距離大于或等于預設距離閾值時,表明其相似度較低,可以認為是非形近字。
[0126]例如,在五筆輸入法中,由于漢字最多為4個編碼字符串,則可以預設距離閾值為
2。對于文字“候”和“侯”,應用五筆編碼規(guī)則,“候”的編碼字符串為“whnd”,“侯”的編碼字符串為“¥社(1”,“化11(1”和“^^(1”之間的編碼距離為1,小于可以距離閾值2,則可以判定“候”和“侯”互為形近字。
[0127]子步驟15,在搜索引擎中建立第一文字與第二文字之間的形近字映射關系。
[0128]在具體實現(xiàn)中,可以在搜索引擎中分別建立字體數(shù)據(jù)庫收集當前文字的形近字及對應的形近字映射關系。
[0129]需要說明的是,形近字映射關系可以是相互的。例如第一文字與與第二文字的形
近字映射關系可以為第一文字-第二文字;第二文字與第一文字的形近字映射關系
可以為第二文字-第一文字。
[0130]應用本發(fā)明實施例,可以在語料庫中遍歷所有文字,尋找當前文字的形近字,將尋找到的形近字及形近字映射關系生成當前文字的字體數(shù)據(jù)庫。
[0131]例如第一文字的字體數(shù)據(jù)庫中保存一個或多個形近字及形近字映射關系,如第一
文字-第二文字、第三文字、第四文字;第二文字的字體數(shù)據(jù)庫中保存一個或多個形
近字及形近字映射關系,如第二文字-第一文字、第五文字、第六文字。
[0132]本發(fā)明實施例通過計算第一文字的第一編碼字符串和第二文字的第二編碼字符串之間的編碼距離,實現(xiàn)了第一文字和第二文字是否互為形近字的判定。
[0133]在本發(fā)明的另一種優(yōu)選實施例中,所述形近字可以通過以下方式獲得:
[0134]子步驟S21,確定輸入搜索引擎中的待校驗是否為形近字的第一文字和第二文字;
[0135]子步驟S22,按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串;
[0136]子步驟S23,計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離;
[0137]子步驟S24,分別查找所述第一編碼字符串對應的第一輸入按鍵;
[0138]子步驟S25,分別查找所述第二編碼字符串對應的第二輸入按鍵;[0139]子步驟S26,分別計算所述第一輸入按鍵和所述第二輸入按鍵之間的按鍵距離;
[0140]子步驟S27,依據(jù)所述按鍵距離為所述編碼距離配置對應的權重;
[0141]子步驟S28,當配置有所述權重的編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字;
[0142]子步驟S29,在搜索引擎中建立第一文字與第二文字之間的形近字映射關系。
[0143]在本發(fā)明實施例中,第一輸入按鍵和第二輸入按鍵之間的按鍵距離可以為鍵盤上輸入按鍵的物理距離。
[0144]在QWERTY鍵盤的指法中,左手食指控制按鍵R、T、F、G、V、B,左手中指控制按鍵E、D、C,左手無名指控制按鍵W、S、X,左手小指控制按鍵Q、A、Z,右手食指控制按鍵Y、U、H、J、N、M,右手中指控制按鍵1、K,右手無名指控制按鍵0、L,右手小指控制按鍵P。其中,按鍵F、J 一般具有凸起,作為定位鍵。
[0145]而由于定位鍵的存在,使得當前手指點擊不屬于其控制的按鍵時,例如左手食指點擊按鍵E,手指跨度較大,使得用戶一般存在明顯不適,進而使得此種誤點擊的幾率很小。反之,在當前手指控制的按鍵中誤點擊的幾率相對較大,例如左手食指點擊按鍵R,容易誤點擊T。
[0146]因此,所述按鍵距離可以與所述權重成反比。并且,可選地,同一個手指控制的輸入按鍵之間的按鍵距離可以對權重配置權重系數(shù),降低權重,使得第一文字和第二文字的編碼距離更小,即相似度更高,以體現(xiàn)誤點擊的幾率相對較大的特點。
[0147]步驟105,在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提示信息;
[0148]在具體實現(xiàn)中,本發(fā)明實施例可以采用任意形式進行提示,例如可以在輸入框下提示對推薦近似文字進行糾錯提示的信息,為增強提示功能,也可以對糾錯前的文字和推薦近似文字采用不同的顏色進行標注,等等,本發(fā)明實施例對此不加以限制。
[0149]步驟106,當接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。
[0150]觸發(fā)指示可以是指用戶發(fā)出的采用某個近似文字進行替換發(fā)現(xiàn)錯誤的文字信息的指示。例如,當用戶在提示信息處點擊時,就相當于接收到了觸發(fā)指示。又例如,當用戶采用Tab鍵等按鍵選擇近似文字后按下回車鍵時,就相當于接收到了觸發(fā)指示。
[0151]當接收到用戶對所述提示信息的觸發(fā)指示時,則可以再次提供基于觸發(fā)指示替換發(fā)現(xiàn)錯誤后的文字信息反饋的即時搜索結果數(shù)據(jù)。
[0152]本發(fā)明實施例在即時搜索引擎中對文字信息進行糾錯處理,采用與文字信息匹配的近似文字對搜索關鍵詞進行改寫,以獲得與所述改寫后的文字信息相匹配的搜索結果數(shù)據(jù)。一方面,改寫后的搜索關鍵詞使得搜索結果更加接近當初的預期,提升用戶體驗,減少了客戶端的資源和搜索引擎的資源浪費,提高了搜索效率。另一方面,避免用戶需要獲取自己感興趣的網(wǎng)頁信息,再次在搜索引擎中輸入關鍵詞進行搜索,減少了搜索引擎要再次進行海量信息的搜索、對比、篩選等獲取與搜索關鍵詞相關的信息,使得用戶操作更加方便,減少用戶的時間耗費,進一步減少了客戶端與搜索引擎的資源耗費。
[0153]對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0154]參照圖2,示出了本發(fā)明一個實施例的一種即時搜索系統(tǒng)實施例的結構框圖,可以包括如下模塊:
[0155]文字信息檢測單元201,適于檢測搜索欄中當前輸入的文字信息;
[0156]糾錯處理單元202,適于對當前輸入的文字信息進行糾錯處理;
[0157]第一結果提供單元203,適于提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù);
[0158]近似字計算單元204,適于對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字;
[0159]糾錯提示單元205,適于在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提示信息;
[0160]第二結果提供單元206,適于在接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。
[0161]在本發(fā)明的一種優(yōu)選實施例中,所述近似字可以包括形近字和/或音近字。
[0162]在本發(fā)明的一種優(yōu)選實施例中,所述形近字可以通過調(diào)用以下模塊獲得:
[0163]文字確定模塊,適于確定輸入搜索引擎中的待校驗的第一文字和第二文字;
[0164]編碼獲取模塊,適于按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串;
[0165]編碼距離計算模塊,適于計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離;
[0166]形近字判定模塊,適于在所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字;
[0167]映射關系確定模塊,適于在搜索引擎中建立第一文字與第二文字之間的形近字映身寸關系。
[0168]在本發(fā)明的一種優(yōu)選實施例中,所述預設規(guī)則可以包括預設的編碼規(guī)則,所述編碼獲取模塊還可以適于:
[0169]按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串;
[0170]按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串;
[0171]其中,所述預設的編碼規(guī)則包括五筆編碼規(guī)則。
[0172]在本發(fā)明的一種優(yōu)選實施例中,所述形近字還可以通過調(diào)用以下模塊獲得:
[0173]第一查找模塊,適于分別查找所述第一編碼字符串對應的第一輸入按鍵;
[0174]第二查找模塊,適于分別查找所述第二編碼字符串對應的第二輸入按鍵;
[0175]按鍵距離計算模塊,適于分別計算所述第一輸入按鍵和所述第二輸入按鍵之間的按鍵距離;
[0176]權重配置模塊,適于依據(jù)所述按鍵距離為所述編碼距離配置對應的權重;
[0177]所述形近字判定模塊還可以適于:
[0178]當配置有所述權重的編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字。[0179]在本發(fā)明的一種優(yōu)選實施例中,所述按鍵距離可以與所述權重成反比。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
[0180]在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構造這類系統(tǒng)所要求的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
[0181]在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0182]類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發(fā)明的單獨實施例。
[0183]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0184]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0185]本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP )來實現(xiàn)根據(jù)本發(fā)明實施例的一種即時搜索設備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0186]應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
【權利要求】
1.一種即時搜索方法,包括: 檢測搜索欄中當前輸入的文字信息,對當前輸入的文字信息進行糾錯處理,并提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù); 當對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字; 在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提不?目息; 當接收到用戶對所述提示信息的觸發(fā) 指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。
2.如權利要求1所述的方法,其特征在于,所述近似字包括形近字和/或音近字。
3.如權利要求1或2所述的方法,其特征在于,所述形近字通過以下方式獲得: 確定輸入搜索引擎中的待校驗是否為形近字的第一文字和第二文字; 按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串; 計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離; 當所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字; 在搜索引擎中建立第一文字與第二文字之間的形近字映射關系。
4.如權利要求1-3任一項所述的方法,其特征在于,所述預設規(guī)則包括預設的編碼規(guī)貝U,所述按照預設規(guī)則獲取所述第一文字的第一編碼字符串,以及,所述第二文字的第二編碼字符串的步驟包括: 按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串; 按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串; 其中,所述預設的編碼規(guī)則包括五筆編碼規(guī)則。
5.如權利要求1-4任一項所述的方法,其特征在于,所述形近字還通過以下方式獲得: 分別查找所述第一編碼字符串對應的第一輸入按鍵; 分別查找所述第二編碼字符串對應的第二輸入按鍵; 分別計算所述第一輸入按鍵和所述第二輸入按鍵之間的按鍵距離; 依據(jù)所述按鍵距離為所述編碼距離配置對應的權重; 所述當所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字的步驟為: 當配置有所述權重的編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字。
6.如權利要求1-5任一項所述的方法,其特征在于,所述按鍵距離與所述權重成反比。
7.—種即時搜索系統(tǒng),包括: 文字信息檢測單元,適于檢測搜索欄中當前輸入的文字信息; 糾錯處理單元,適于對當前輸入的文字信息進行糾錯處理; 第一結果提供單元,適于提供基于當前輸入的文字信息反饋的即時搜索結果數(shù)據(jù); 近似字計算單元,適于對所述文字信息進行糾錯處理發(fā)現(xiàn)錯誤時,計算與發(fā)現(xiàn)錯誤的文字信息中包含的字符數(shù)據(jù)匹配的近似文字; 糾錯提示單元,適于在所述即時搜索結果數(shù)據(jù)插入針對所述發(fā)現(xiàn)錯誤的文字信息進行糾錯的推薦近似文字的提示信息; 第二結果提供單元,適于在接收到用戶對所述提示信息的觸發(fā)指示時,提供以所述觸發(fā)指示對應的近似文字進行搜索的即時搜索結果數(shù)據(jù)。
8.如權利要求7所述的系統(tǒng),其特征在于,所述近似字包括形近字和/或音近字。
9.如權利要求7或8所述的系統(tǒng),其特征在于,所述形近字通過調(diào)用以下模塊獲得: 文字確定模塊,適于確定輸入搜索引擎中的待校驗的第一文字和第二文字; 編碼獲取模塊,適于按照預設規(guī)則獲取所述第一文字的第一編碼字符串以及所述第二文字的第二編碼字符串; 編碼距離計算模塊,適于計算所述第一編碼字符串和所述第二編碼字符串之間的編碼距離; 形近字判定模塊,適于在所述編碼距離小于預設距離閾值時,判定所述第一文字與所述第二文字互為形近字; 映射關系確定模塊,適于在搜索引擎中建立第一文字與第二文字之間的形近字映射關系.
10.如權利要求7-9任一項所述的系統(tǒng),其特征在于,所述預設規(guī)則包括預設的編碼規(guī)則 ,所述編碼獲取模塊還適于: 按照預設的編碼規(guī)則計算所述第一文字對應的第一編碼字符串; 按照所述編碼規(guī)則計算所述第二文字對應的第二編碼字符串; 其中,所述預設的編碼規(guī)則包括五筆編碼規(guī)則。
【文檔編號】G06F17/27GK103927329SQ201410103601
【公開日】2014年7月16日 申請日期:2014年3月19日 優(yōu)先權日:2014年3月19日
【發(fā)明者】項碧波 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司