本申請涉及輸入法
技術領域:
,特別是涉及一種輸入方法和裝置。
背景技術:
:在各種計算機系統中,用戶在很多環境中均需要用到輸入法輸入文字信息。輸入法的基本流程是用戶通過鍵盤在輸入法中輸入編輯串,然后輸入法利用詞庫將編輯串轉換為默認的各個候選詞,用戶則可選擇具體的候選詞上屏,完成輸入過程。在很多搜索環境下,服務器還會為用戶輸入的搜索詞提供搜索建議功能,上述搜索建議功能即用戶通過輸入法將搜索詞輸入搜索框,然后在搜索框的下拉框中,服務器會提供與搜索詞相關的建議詞,供用戶選擇,從而進行檢索。例如用戶通過輸入法在搜索框中輸入搜索詞“淘寶”或“taobao”,下拉框中就會展示“淘寶網”“淘寶網購物”等建議詞。當用戶確認某個建議詞,則會跳轉到該建議詞對應的搜索結果頁。上述下拉框的方式,需要用戶將輸入法的候選詞上屏輸出到搜索框,該候選詞即作為搜索詞,搜索引擎再針對該搜索詞在下拉框中展示推薦的建議詞,用戶再從下拉框中選擇建議詞。在先技術中,存在一種輸入法,在輸入法的候選欄的基礎上,額外生成建議詞展示框。基于用戶輸入的編輯串,根據傳統邏輯生成候選詞,將該候選詞展示在候選欄;同時,基于用戶輸入的編輯串所對應的候選詞,計算以該候選詞為開頭的各個建議詞,然后將這些建議詞加載到建議詞展示框中展示,用戶觸發該建議詞后,啟動搜索過程。但是,上述方案中,當前展示的候選詞與當前的搜索環境可能并不相關,需要用戶輸入較長的編輯串才能得到與當前搜索環境相關的候選詞。另外,在額外的展示框中展示的建議詞,其顯示位置不在用戶的視覺焦點之內,不容易被觀察到,而且需要額外的操作才能輸入用戶需求的建議詞,用戶的操 作繁瑣,輸入過程也繁瑣。技術實現要素:鑒于上述問題,提出了本申請以便提供一種克服上述問題的輸入方法和相應的輸入裝置。依據本申請的一個方面,本申請公開了一種輸入方法,包括:識別當前的輸入環境;接收用戶輸入的編輯串;如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;如果存在與所述輸入意圖相匹配的建議詞,則將所述建議詞作為候選詞。依據本申請的另一個方面,本申請公開了一種輸入裝置,其包括:輸入環境識別模塊,適于識別當前的輸入環境;編輯串接收模塊,適于接收用戶輸入的編輯串;意圖分析模塊,適于如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;建議詞轉換模塊,適于如果存在與所述輸入意圖相匹配的建議詞,則將將所述建議詞作為候選詞。依據本申請的另一個方面,本申請公開了一種輸入裝置,包括有存儲器,以及一個或者一個以上的程序,其中一個或者一個以上程序存儲于存儲器中,且經配置以由一個或者一個以上處理器執行所述一個或者一個以上程序包含用于進行以下操作的指令:識別當前的輸入環境;接收用戶輸入的編輯串;如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;如果存在與所述輸入意圖相匹配的建議詞,則將所述建議詞作為候選詞。相對現有技術,本申請具備如下優點:本申請實施例可在搜索環境啟動的輸入法中,對用戶輸入的編輯串,利用預置的輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞,如果存在與用戶的輸入意圖相匹配的建議詞,則將該建議詞作為候選詞,使其可以直接在候選欄中展示。1、在確定輸入環境為搜索環境后,對于用戶輸入的編輯串,可以與該搜索環境對應的建議詞作為候選詞,使候選詞與搜索環境更匹配,前瞻性高,利用了搜索環境這一特殊輸入環境來有針對性的提升用戶體驗。2、由于將建議詞直接作為了候選詞,其展示在候選欄中,在用戶的視覺焦點之內,容易被觀察到,并且無需用戶進行額外的觸發操作,直接通過候選欄就能輸入用戶需求的建議詞,符合用戶的用戶輸入習慣,提高輸入效率。附圖說明圖1是本申請一種輸入方法的流程示意圖;圖2是本申請另一種輸入方法的流程示意圖;圖3是本申請的一種輸入裝置的結構示意圖;圖4根據一示例性實施例示出的一種用于輸入的裝置的框圖;圖5是本申請實施例中服務器的結構示意圖。具體實施方式為使本申請的上述目的、特征和優點能夠更加明顯易懂,下面結合附圖和具體實施方式對本申請作進一步詳細的說明。為了方便對本申請實施例進行描述,首先對本申請實施例涉及的術語進行介紹:首選詞:輸入法根據用戶當前輸入的編輯串,會計算給出多個候選詞,然后例如根據各候選詞的概率大小進行排序并展示給用戶,其中排在第一位 的候選詞稱為首選詞。一般來說,首選詞可能為用戶需要的概率最大的候選詞。例如用戶輸入“meili”,候選詞包括“美麗”“魅力”“沒理”等,多數情況下,首選詞是“美麗”,但如果用戶之前剛剛上屏輸入了“很有”,那么“魅力”是用戶需要的概率就會變大,“魅力”可能就會變成首選詞。搜索環境:在某些環境下,用戶輸入編輯串的最終意圖是為了搜索,這樣的輸入環境統稱為搜索環境。比如搜索引擎的搜索頁面,比如百度、搜狗、360、谷歌等搜索引擎的搜索頁面;一些導航網頁的搜索框,比如hao123、搜狗網址導航頁面等;一些網站內部的搜索環境,比如淘寶、京東商城網站內部的搜索框;一些論壇的內部搜索環境,如論壇內部進行搜索的搜索框;以及各種瀏覽器的地址欄和搜索欄等。這些可以采用搜索框接收用輸入的內容,以進行搜索的環境,均可以認為其是搜索環境。搜索建議:搜索建議(又稱:suggestion)功能是當用戶在搜索框中輸入關鍵詞的同時,可以將以該關鍵詞開頭的熱門搜索詞作為建議詞,將上述建議詞在搜索框的下拉框中進行展示,供用戶參考。例如用戶輸入“淘寶”或“taobao”,下拉框中就會展示“淘寶網”“淘寶網購物”等熱門搜索詞作為建議詞。當用戶用鼠標觸發了其中的某一個建議詞,就會直接跳轉到該建議詞的搜索結果頁。一般來說,建議詞的匯集和排序是從大量用戶的搜索行為中挖掘出來的。本申請的核心思想之一在于,本申請實施例可在搜索環境啟動的輸入法中,對用戶輸入的編輯串,利用預置的輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞,如果存在與用戶的輸入意圖相匹配的建議詞,則將該建議詞作為候選詞,使其可以直接在候選欄中展示。本申請實施例的輸入法在確定輸入環境為搜索環境后,對于用戶輸入的編輯串,可以與該搜索環境對應的建議詞作為候選詞,使候選詞與搜索環境更匹配,前瞻性高,利用了搜索環境這一特殊輸入環境來有針對性的提升用戶體驗。并且由于將建議詞直接作為了候選詞,展示在候選欄中,在用戶的視覺焦點之內,容易被觀察到。并且無需用戶進行額外的觸發操作,直接通過候選欄就能輸入用戶需求的建議詞,符合用戶的輸入習慣,提高輸入效率。實施例一參照圖1,其示出了一種輸入方法的流程示意圖,具體可以包括:步驟110,識別當前的輸入環境。在本申請實施例中,輸入法可以應用于不同的輸入環境,比如即時聊天工具的聊天框進行輸入的聊天,比如word中進行輸入的文檔編輯環境,比如搜索網頁中進行輸入的搜索環境。在本申請實施例中,判斷輸入法當前的輸入環境,可只分為搜索環境或者非搜索環境。在具體實現中,本申請實施例檢測的是網絡中的搜索環境。比如檢測當前網頁如果是搜索引擎的網頁,則當前的輸入環境為搜索環境;檢測當前的網頁為網址導航頁面時,再判斷光標的焦點是否在網址導航頁面的搜索框中,如果光標的焦點在網址導航頁面的搜索框中,則當前的輸入環境為搜索環境,對于其他類型網頁中的搜索框,其檢測方式類似;當判斷光標焦點在瀏覽器的地址欄和搜索欄中時,也判斷當前的輸入環境為搜索環境;當判斷光標焦點在桌面的搜索應用中時,也判斷當前的輸入環境為搜索環境等。在本申請實施例中,在輸入法啟動后,即可識別輸入法所在的輸入環境。步驟120,接收用戶輸入的編輯串。在本申請實施例中,用戶可通過實體鍵盤、或者虛擬鍵盤等方式在輸入法中進行編輯串的輸入。比如用戶輸入“wum”。步驟130,如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;如果存在與所述輸入意圖相匹配的建議詞,則進入步驟140。在本申請實施例中,進一步可以預置一個輸入意圖分析庫,該輸入意圖分析庫用于針對用戶輸入的編輯串,分析該編輯串的輸入意圖。即確定用戶輸入該編輯串時,是否有動機輸入某個建議詞。優選的,在識別當前的輸入環境之前,還包括:步驟100,根據搜索環境下各建議詞被觸發的歷史記錄信息構建所述輸入意圖分析庫;所述歷史記錄信息包括至少一個用戶的用戶標識、對應該用戶標識的編輯串、基于所述編輯串觸發的建議詞。用戶在網絡中進行搜索行為時,在搜索框中輸入關鍵詞時,搜索引擎會根據該關鍵詞返回相關的建議詞,然后在搜索框的下拉框中展示這些建議詞。以漢字為例,比如“淘寶”或“taobao”,下拉框中就會展示“淘寶網”“淘寶網購物”等熱門建議詞。當用戶觸發了下拉框中的某個建議詞,則會跳轉到相應結果頁面,那么搜索引擎則會記錄該次搜索行為,得到搜索行為歷史記錄。因此,搜索引擎可得到各個用戶基于搜索框的搜索行為歷史記錄。那么,本申請實施例則可以從基于搜索框的搜索行為歷史記錄中,提取歷史記錄信息,該歷史記錄信息包括:至少一個用戶的用戶標識、對應該用戶標識的編輯串、基于所述編輯串點觸發的建議詞。比如用戶AAA,在搜索框中輸入的內容為“淘寶”,觸發的建議詞為“淘寶網”,那么搜索引擎記錄該搜索行為歷史數據。本申請實施例則可以從中提取得到一條歷史記錄信息:(用戶標識:AAA,編輯串:taobao、建議詞:淘寶網)。如此,可得到大量的歷史記錄信息。當然,本申請實施例也可以針對其他語言,比如日文、韓文、法語等語言,按照類似原理構建輸入意圖分析庫。本申請不對其加以限制。當網絡中海量用戶進行上述搜索行為時,則可得到大量的上述歷史記錄信息,那么本申請則可根據這些歷史記錄信息構建輸入意圖分析庫。優選的,步驟101包括:子步驟1011,通過搜索引擎獲取各建議詞被觸發的歷史記錄信息;在實際應用中,搜索引擎中的根據搜索行為得到的初始歷史記錄信息可能并不規范,比如初始的歷史記錄信息包括用戶標識“飛翔”,用戶“飛翔”在搜索框中輸入的關鍵詞“淘寶”,用戶“飛翔”在下拉框中觸發的建議詞為“淘寶網”。而用戶“飛翔”是中文字符,在計算時計算量較大。而關鍵詞“淘寶”并不是一個編輯串,需要將其轉換為編輯串“taobao”。子步驟1012,將所述至少一條歷史記錄信息中用戶標識格式化為統一字符格式的至少一個用戶標識;那么對于至少一個用戶標識,可將用戶標識格式化為統一字符格式的至少一個用戶標識。比如對某個用戶標識采用MD5(Message-DigestAlgorithm 5,信息摘要算法5)算法進行轉換,轉換為一個字符,如類似05D57310F886F010D9633DEFB1E40FE3的字符串,將該字符串作為該用戶的用戶標識。子步驟1013,將每條歷史記錄信息中將用戶輸入的關鍵詞轉換為編輯串;如前述例子,將關鍵詞“淘寶”轉換為編輯串“taobao”。子步驟1014,以每條歷史記錄信息為單位,將其中的用戶標識、對應該用戶標識的編輯串、基于所述編輯串觸發的建議詞建立對應關系。即將轉換后為統一字符標識的用戶標識,與該用戶標識的編輯串和基于該編輯串觸發的建議詞之間,建立對應關系。經過子步驟1011-1014,得到格式化后的歷史記錄信息。在本申請實施例中,可以在表一的一行中,將一條歷史記錄信息進行記錄。參照表一,其為通過子步驟1011-1014統一用戶標識的字符格式后的歷史記錄信息。表一用戶標識編輯串建議詞05D57310F886F010D9633DEFB1E40FE3y游戲錄像專家212DFC0D6246885E53B240C328213DDC4sriban4s日版三網無鎖212DFC0D6246885E53B240C328213DDCwumei武媚娘傳奇309ED1EA18DBDFAA486414C424D0E7AFshenzhen深圳天氣34CCF663DCD26E3092775CEBABE2A237ouy歐陽震華502144240CFD2CF3779D1DC9BD3615F4ouy歐元兌換人民幣62635CA4BACFCB5DC0E37BA80F16CE83guge谷歌6FA3A920C68B8EC486767F12A9356949t淘寶7F4FB723FAD1CD41CB2D347A91E60992wuyou無憂的天堂B63D1DADA1B02C408F767E8C0CA773E0youminxingkong游民星空………………根據上述歷史記錄信息構建輸入意圖分析庫。當然,在實際應用中,表一的各條記錄還可包括時間等信息。優選的,步驟100還包括:子步驟1015,針對至少一個用戶標識,以所述用戶標識下的數據為基礎,統計該用戶標識下的至少一個編輯串對應的被觸發的各個建議詞(至少一個 建議詞)的觸發比例,并存入第一數據庫;所述輸入意圖分析庫包括所述第一數據庫。在本申請實施例中對于表一的歷史記錄信息,可以針對至少一個用戶標識建立各自的統計表,或存儲在一個統計表中,其中用戶標識可以作為關鍵字段,在每個關鍵字段后記錄該用戶標識的至少一個編輯串所對應的至少一個建議詞的觸發比例。其統計后可以得到如表二所示的第一數據庫:表二當然,用戶標識還可以直接采用用戶初始的用戶標識,比如“飛翔”,不需要一定轉換為字符串的用戶標識。當然,本申請實施例中,基于表一中的至少一條記錄,可以選擇預定時間段內的至少一個用戶標識的記錄構建第一數據庫。比如選擇最近兩個月等時間段的數據。優選的,步驟100還包括:子步驟1016,針對至少一個編輯串,以預定時間段內觸發所述編輯串的至少一個用戶的用戶標識下的數據為基礎,統計至少一個編輯串對應的不同 建議詞的觸發比例,并存入第二數據庫;所述輸入意圖分析庫包括所述第二數據庫。在本申請實施例中對于表一的歷史記錄信息,可以針對至少一個編輯串建立各自的統計表,或存儲在一個統計表中,其中編輯串可以作為表三的關鍵字段,在每個關鍵字段后記錄各個建議詞的觸發比例。其統計后可以得到如表三的第二數據庫:表三當然,本申請實施例中,基于表三中的各條記錄,可以選擇預定時間段內的至少一個用戶標識的記錄構建第二數據庫。比如選擇最近兩個月等預定時間段。在本申請實施例中,子步驟1015和子步驟1016可以同時采用,其執行的先后順序本申請不對其加以限制。本申請實施例的輸入意圖分析庫可以只包括第一數據庫,也可以只包括第二數據庫,也可以同時包括第一數據庫和 第二數據庫。在構建完輸入意圖分析庫之后,即可執行本申請的輸入意圖分析過程。如果步驟110識別當前的輸入環境為搜索環境時,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞。然后進入步驟140。在第一數據庫的基礎之上,優選的,步驟130可以包括:子步驟131,判斷針對當前用戶的用戶標識,所述第一數據庫中是否有對應所述用戶標識的記錄;如果第一數據庫中有對應所述用戶標識的各條記錄,則進入子步驟132。比如用戶B63D1DADA1B02C408F767E8C0CA773E0,輸入了w,則子步驟131先將B63D1DADA1B02C408F767E8C0CA773E0去第一數據庫,例如表二中匹配,可以匹配上多條記錄。如果有第一數據庫中沒有對應所述用戶標識的記錄,則可以進入子步驟135,也可以直接根據輸入法的常用詞庫生成候選詞進行展示。子步驟132,判斷對應所述用戶標識的記錄中,是否有包括所述編輯串的記錄;如果對應所述用戶標識的記錄中,有包括所述編輯串的記錄,則進入子步驟133。則對于每一條B63D1DADA1B02C408F767E8C0CA773E0的記錄,將w在每條記錄中匹配,發現匹配上幾條,則對這幾條數據進入子步驟133。如果對應所述用戶標識的記錄中,沒有包括所述編輯串的記錄,可以直接根據輸入法的常用詞庫生成候選詞進行展示,也可以進入子步驟135。子步驟133,在包括所述編輯串的記錄中,判斷是否有觸發比例超過第一閾值的建議詞;如果有觸發比例超過第一閾值的建議詞,則進入子步驟134。比如前述B63D1DADA1B02C408F767E8C0CA773E0和w的一條記錄,則查找其中的建議詞和相應的觸發比例,比如“武媚娘傳奇”的觸發比例為0.87,“微信網頁版”的觸發比例為0.103。然后判斷各個建議詞的觸發比例是否大于第一閾值,比如第一閾值設置為0.8,那么發現“武媚娘傳奇”符 合要求。如果沒有觸發比例超過第一閾值的建議詞,可以直接根據輸入法的常用詞庫生成候選詞進行展示,也可以進入子步驟135。在本申請實施例中,第一閾值可根據實際需求設置,例如0.5、0.6、0.8等,本申請不對其加以限制。子步驟134,將所述建議詞確定為與用戶的輸入意圖相匹配的建議詞。如前述例子,那么將“武媚娘傳奇”作為與用戶的輸入意圖相匹配的建議詞。當然,在本申請實施例中,當對用戶標識采用子步驟1012中格式化為統一格式的用戶標識時,在后續分析的過程中,也可對使用本申請實施例的用戶標識采用同樣的格式化方式,將用戶標識進行格式。如表二中的格式后的用戶標識的形式。在第二數據庫的基礎之上,優選的,步驟130可以包括:子步驟135,判斷所述第二數據庫中是否有當前接收的編輯串的記錄;以表三為例,本申請實施例還可以直接針對用戶當前輸入的編輯串去表三中查找是否有記錄,比如用戶輸入的是“wume”,那么查找第二數據庫,例如表三中存在相應的記錄,則進入子步驟136。當沒有查到相應記錄,則可直接根據輸入法的常用詞庫生成候選詞進行展示。子步驟136,如果有當前接收的編輯串的記錄,則判斷所述編輯串的記錄下是否有觸發比例超過第二閾值的建議詞;如前述“wume”,該條記錄中“武媚娘傳奇”的觸發比例是0.836,“武媚娘”的觸發比例是0.117,“武媚娘傳奇全集”的觸發比例是0.033,設第二閾值0.8,則“武媚娘傳奇”的觸發比例超過第二閾值,符合要求,進入子步驟137。當然,如果沒有任何一個建議詞的觸發比例超過第二閾值,則可直接根據輸入法的常用詞庫生成候選詞進行展示。子步驟137,如果有觸發比例超過第二閾值的建議詞,則將所述建議詞 確定為與用戶的輸入意圖相匹配的建議詞。當然,本申請實施例中的第二閾值可以根據實際情況設置,本申請不對其加以限制。在本申請實施例中,如果有多個觸發比例超過第一閾值或第二閾值的建議詞,則可以選擇觸發比例最高或排名前幾位(具體可以根據實際需要進行設定)的建議詞作為與用戶的輸入意圖相匹配的建議詞。當然,本申請實施例中第一閾值和第二閾值可以設置為同一個值或不同的值。如前述例子,那么將“武媚娘傳奇”作為與用戶的輸入意圖相匹配的建議詞。進入步驟140。步驟140,將所述建議詞作為候選詞。在實際應用中,輸入法的候選欄提供了N個位置,用于展示N個候選詞,比如展示5個。在傳統的輸入法中,其根據用戶輸入的編輯串,利用常用詞庫,去計算各個候選詞,在計算時,各個候選詞會根據與編輯串的相似程度進行排序,然后輸入法將排序靠前的N個作為默認展示的候選詞,即輸入法將排序靠前的N各展示在候選欄中。而本申請則將建議詞轉換為候選詞,然后將轉換后的候選詞作為N個默認展示的候選詞的一個。如此,建議詞則可在輸入法的輸入過程中在候選欄中進行展示。當然,在本申請中,由于建議詞的屬性并不是候選詞屬性,因此需要將建議詞轉換為候選詞屬性,比如將建議詞寫入候選詞緩存區,并將建議詞排到上述前N個位置之中。如此,輸入法將前N個候選詞進行展示時,則可直接將建議詞以候選詞的身份也展示在候選欄中。優選的,將所述建議詞作為候選詞的步驟,包括:子步驟141,將所述建議詞轉換為首選詞。一般來說,首選詞是用戶可能輸入概率最高也是輸入最方便的詞,本申請分析到了與用戶輸入意圖相匹配的建議詞之后,也可以理解為用戶輸入該建議詞的輸入概率最高。因此為了方便用戶輸入,本申請實施例中,可將前述步驟中得到的一個建議詞轉換為首選詞,以在候選欄的首項進行展示。當 建議詞為M個(M為大于1的正整數)時,可以將M個建議詞放置在候選欄的前M個位置,以在候選欄的前M項進行展示。當然,在本申請實施例中在識別當前的輸入環境的步驟之前,可以利用輸入法的常用詞庫,直接根據當前接收的編輯串,計算各默認的候選詞;所述各默認的候選詞的前N個默認的候選詞默認展示在候選欄中。該默認的候選詞是輸入法根據傳統邏輯,從輸入法的常用詞庫中轉換得到的候選詞。不是從本申請實施例的輸入意圖分析庫中得到的詞。本申請實施例,還保留輸入法的傳統字詞輸入功能,即利用輸入法的常用詞庫,直接根據當前接收的編輯串,計算各默認的候選詞。在實際的輸入法中,輸入法的候選欄提供了N個位置,用于展示N個候選詞,比如展示5個。比如用戶輸入“wum”,得到各默認的候選詞為:1“霧霾”、2“污蔑”、3“物美”、4“無名”、5“無眠”。其中,候選欄展示5個候選詞。在傳統的輸入法中,在直接根據當前接收的編輯串,計算各默認的候選詞時,各個默認的候選詞會根據與編輯串的相似程度等進行排序,然后輸入法將排序靠前的N個作為默認展示的候選詞,即輸入法將排序靠前的N各展示在候選欄中。其中,上述N為大于0的整數。本申請實施例如果將建議詞為一個且選擇在了首選詞位置進行展示,對于輸入法直接獲取的各個默認的候選詞,其展示順序從第二位開始往后排。本申請實施例如果將建議詞為M個(M為大于1且小于N的正整數)時,可以將M個建議詞放置在候選欄的前M個位置,以在候選欄的前M項進行展示,可以將第一個默認的候選詞從候選欄第M+1個位置開始往后排。本申請實施例如果將建議詞為一個且選擇在第二個候選詞的位置進行展示,保留輸入法直接獲取的各個默認的候選詞中的首選詞,可以將第二個默認的候選詞從候選欄第三個位置開始往后排。其他情況以此類推。本申請實施例如果將建議詞為M個(M為大于1且小于N的正整數)時,可以將M個建議詞分別放置在候選欄中任一個位置,可以將N-M個原默認的候選詞與M個建議詞重新順序編號在候選欄進行展示。本申請實施例對于輸入法默認的候選詞,不簡單將其進行替換,而是在 建議詞加入默認展示的范圍之后,將建議詞和默認的候選詞重新順序編號在候選欄進行展示,保證排序靠前的默認的候選詞能夠靠前展示,方便用戶瀏覽和操作。并且,如果將建議詞作為了首選詞,則使建議詞更符合用戶的輸入習慣,提高輸入效率。優選的,步驟140,包括:子步驟142,以所述建議詞作為候選詞,替換前N個默認的候選詞中的一個或多個并將被替換的默認的候選詞以及所述默認的候選詞之后的各默認的候選詞的展示順序順延。如前述例子,候選欄先展示的候選詞為:1“霧霾”、2“污蔑”、3“物美”、4“無名”、5“無眠”。那么,如果將“武媚娘傳奇”替換第3個默認的候選詞,則替換后的由候選欄展示的候選詞為:1“霧霾”、2“污蔑”、3“武媚娘傳奇”、4“物美”、5“無名”。而“無眠”的排序變為6,則不在候選欄的默認展示范圍之內。當然,替換首選詞的原理類似,在此不再贅敘。另外,如果當前的輸入環境不是搜索環境,則可直接將根據編輯串,利用常用詞庫計算各候選詞,然后展示到候選欄中。對于本申請實施例,用戶在搜索環境中每輸入一個編輯串即執行一次上述過程,可快速的定位與用戶輸入意圖相應的建議詞,將該建議詞作為默認展示在候選欄中的候選詞,從而在候選欄中進行展示。因此,本申請實施例具備如下優點:1、輸入法在確定輸入環境為搜索環境后,對于用戶輸入的編輯串,可以與該搜索環境對應的建議詞作為候選詞,使候選詞與搜索環境更匹配,前瞻性高,利用了搜索環境這一特殊輸入環境來有針對性的提升用戶體驗。進一步的,用戶使用輸入法在搜索引擎中構造查詢詞的時候,往往需要進行多次輸入和候選詞的選擇才能完成查詢詞的構造,這是因為輸入法在計算候選詞的時候會盡量與用戶當前的拼音輸入保持一致。而本申請考慮到用戶在搜索環境中進行輸入的特殊場景,利用大量用戶搜索行為的統計得到輸入意圖分析庫,從而能夠根據用戶輸入的編輯串做出比較準確的預測,可以顯著提高輸入法候選詞的前瞻性,從而降低用戶的輸入成本,利用了搜索環 境這一特殊輸入環境來有針對性的提升用戶體驗。2、由于將建議詞直接作為了候選詞,其展示在候選欄中,在用戶的視覺焦點之內,容易被觀察到。并且無需用戶進行額外的觸發操作,直接通過候選欄就能輸入用戶需求的建議詞,符合用戶的人體輸入習慣,提高輸入效率。進一步的,本申請實施例無需用戶進行額外的觸發操作,可將在視覺范圍之外的建議詞,在額外生成的展示框中進行輸入,比如滑動鼠標、找到建議詞擴展按鈕,再從所有建議詞中進行選擇的過程,而是直接將與用戶的輸入意圖最匹配的建議詞展示到了候選欄中。而本申請實施例確定的建議詞,直接展示在用戶使用輸入法時的習慣性的視覺范圍之內,方便用戶通過輸入鍵盤即可快速操作,比如建議詞如果確定為首選詞,直接按數字鍵1或光標定位觸發后即可完成輸入,符合用戶的人體輸入習慣,提高輸入效率。3、在用戶的編輯串的輸入過程中,在編輯串較少的時候,也能根據預置輸入意圖分析庫,將與用戶編輯串最匹配的建議詞轉換為默認展示在候選欄中的候選詞,降低了用戶輸入編輯串的位數,提高了用戶的輸入效率。特別是對于長詞的情況,本申請實施例可增加對長詞進行聯想輸入的場景出現頻率。例如,當前用戶輸入“wum”,傳統輸入法的默認展示的候選詞是“霧霾”、“污蔑”、“物美”、“無名”等詞,而由于預先通過對用戶歷史搜索行為的統計,發現絕大多數用戶在輸入“wum”時都是想要輸入當前熱播的電視劇“武媚娘傳奇”以進行搜索,那么將上述輸入意圖構建到輸入意圖分析庫,那么對用戶當前輸入的“wum”,則可匹配到用戶的輸入意圖為“武媚娘傳奇”,那么可直接將“武媚娘傳奇”轉換為候選詞展示到候選欄中。最后,本申請實施例如果同時采用的第一數據庫和/或第二數據庫作為輸入意圖分析庫,以對用戶輸入的編輯串進行輸入意圖分析,其首先通過第一數據庫針對當前用戶的個性化數據進行判斷,即以用戶標識+編輯串為維度,分析用戶的個性化的輸入意圖,該種輸入意圖與當前用戶最相匹配,最精確。如果以用戶標識和編輯串為維度,沒有相匹配的記錄,則單獨以編輯串為維度,利用所有用戶對該編輯串的歷史數據信息的統計,分析用戶的輸 入意圖,由于利用了編輯串的普遍性,其也可較為精確的判斷當前用戶的輸入意圖。兩種方式可以結合,使搜索環境的建議詞能夠更精準、以更高頻率的形式在候選欄中展示給用戶,方便用戶進行輸入,從而進行搜索。實施例二參照圖2,其示出了一種輸入方法的流程示意圖,具體可以包括:步驟210,服務器根據搜索環境下各建議詞被觸發的歷史記錄信息構建所述輸入意圖分析庫;所述歷史記錄信息包括至少一個用戶的用戶標識、對應該用戶標識的編輯串、基于所述編輯串觸發的建議詞;具體可以包括:子步驟211,服務器針對每個用戶標識,以每個用戶標識下的數據為基礎,統計該用戶標識下的每個編輯串,不同建議詞被觸發的觸發比例,并存入第一數據庫;所述輸入意圖分析庫包括所述第一數據庫。子步驟212,服務器針對每個編輯串,以預定時間段內觸發的至少一個用戶的用戶標識下的數據為基礎,統計每個編輯串之下,不同建議詞的觸發比例,并存入第二數據庫;所述輸入意圖分析庫包括所述第二數據庫。步驟220,客戶端識別當前的輸入環境;步驟230,客戶端接收用戶輸入的編輯串;步驟240,客戶端利用輸入法的常用詞庫,直接根據當前接收的編輯串,計算各默認的候選詞。步驟250,如果當前客戶端的輸入環境是搜索環境,則將當前的用戶標識和所述編輯串發送至服務器;步驟260,服務器根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;具體包括:子步驟261,判斷針對當前用戶的用戶標識,所述第一數據庫中是否有對應所述用戶標識的記錄;如果第一數據庫中有對應所述用戶標識的記錄,則進入子步驟262;如果有第一數據庫中沒有對應所述用戶標識的記錄,則可以進入子步驟265。子步驟262;判斷對應所述用戶標識的記錄中,是否有包括所述編輯串 的記錄;如果對應所述用戶標識的記錄中,有包括所述編輯串的記錄,則進入子步驟263。如果對應所述用戶標識的記錄中,沒有包括所述編輯串的記錄,則可以進入子步驟265。子步驟263,在包括所述編輯串的記錄中,判斷是否有觸發比例超過第一閾值的建議詞;如果有觸發比例超過第一閾值的建議詞,則進入子步驟264。如果沒有觸發比例超過第一閾值的建議詞,則進入子步驟265。子步驟264,將所述建議詞確定為與用戶的輸入意圖相匹配的建議詞。進入步驟270。當然,在本申請實施例中,如果沒有觸發比例超過第一閾值的建議詞,也可以直接進入子步驟267。子步驟265,判斷所述第二數據庫中是否有當前接收的編輯串的記錄;如果有當前接收的編輯串的記錄,則進入子步驟266;如果沒有當前接收的編輯串的記錄,則進入子步驟267。子步驟266,判斷所述編輯串的記錄下是否有觸發比例超過第二閾值的建議詞;如果有觸發比例超過第二閾值的建議詞,則進入子步驟264;如果沒有觸發比例超過第二閾值的建議詞,則進入子步驟267。子步驟267,服務器返回空值至客戶端,進入步驟280。步驟270,客戶端接收到所述建議詞之后,以所述建議詞作為候選詞,替換前N個默認的候選詞中的一個或多個并將被替換的默認的候選詞以及所述默認的候選詞之后的各默認的候選詞的展示順序順延。步驟280,客戶端接收到所述空值后,直接將前N個默認的候選詞候選欄按序進行展示。下面以實際示例對本申請實施例進行描述:示例1:1、假如id為B5C5051CA0B05ABB16517756C8C238CC的用戶,啟動輸入法客戶端進行輸入,那么步驟220中,輸入法客戶端可識別用戶的輸入環境,假設用戶在搜索環境中輸入,則進入步驟230。2、B5C5051CA0B05ABB16517756C8C238CC的用戶在輸入法客戶端中 輸入的編輯串為w,那么步驟230輸入法客戶端接收到用戶B5C5051CA0B05ABB16517756C8C238CC輸入的該w。3、在步驟240中,輸入法客戶端在接收到w后,輸入法客戶端本地計算默認的候選詞為“1.我2.為3.哇……”。4、在步驟250中,輸入法客戶端將B5C5051CA0B05ABB16517756C8C238CC和w傳到服務器。5、在子步驟261中,服務器用B5C5051CA0B05ABB16517756C8C238CC和去第一數據庫中進行查找,發現有B5C5051CA0B05ABB16517756C8C238CC的記錄,則進入子步驟262;6、子步驟262中,在子步驟261找到的記錄中查找是否有w的記錄,發現沒有,則進入子步驟265。7、在子步驟265中,服務器用w去第二數據庫中進行查找,發現w在第二數據庫中,對應的建議詞有“我是歌手第三季”、“武媚娘傳奇”、“微信網頁版”、“微信公眾平臺”等,但并沒有任何一個建議詞的搜索比例超過第二閾值80%,于是給輸入法客戶端返回空。8、在步驟280中,輸入法客戶端接收到空的返回數據后,直接在輸入法的候選欄中展示“1.我2.為3.哇……”中的前N個。9、該用戶B5C5051CA0B05ABB16517756C8C238CC繼續輸入,當前輸入串為wume,那么步驟230接收到用戶輸入的編輯串為wume。10、在步驟240中,輸入法本地計算的候選詞為“1.無么2.無3.誤……”。11、在步驟250中,輸入法客戶端將B5C5051CA0B05ABB16517756C8C238CC和w傳到服務器。12、在子步驟261中,服務器用B5C5051CA0B05ABB16517756C8C238CC去第一數據庫中進行查找,發現有該用戶的記錄,則進入子步驟261;13、在子步驟262中,繼續在子步驟261找到的記錄中,查找是否包括wume的記錄,發現沒有,進入步驟子步驟265。14、在子步驟265中,服務器用wume去第二數據庫中進行查找,發現 wume在第二數據庫中,對應的建議詞有武媚娘傳奇”、“武媚娘”、“武媚娘傳奇全集”等,而“武媚娘傳奇”等,而“武媚娘傳奇”的搜索比例為83.6%,超過了第二閾值80%,于是給輸入法客戶端返回“武媚娘傳奇”。15、輸入法展示候選詞為“1.武媚娘傳奇2.無么3.無4.誤……”的前N個。本示例中查到的建議詞可以作為首選詞進行展示。當然本示例僅例舉了第一數據庫中沒查找用戶標識和編輯串的情況下,第二數據庫的兩種查詢情況的執行過程。對于第一數據庫查到用戶標識和編輯串的后續多種情況,其原理類似,不再贅敘。本申請實施例在實施例一的基礎上,將輸入意圖的分析過程放到服務器中執行,減輕輸入法客戶端所在終端的計算量,避免影響終端的性能。實施例三參照圖3,其示出了一種輸入裝置的結構示意圖,具體可以包括:輸入環境識別模塊310,適于識別當前的輸入環境;編輯串接收模塊320,適于接收用戶輸入的編輯串;意圖分析模塊330,適于如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;建議詞轉換模塊340,適于如果存在與所述輸入意圖相匹配的建議詞,則將將所述建議詞作為候選詞。當然,實際應用中,還包括:默認的候選詞計算模塊,適于利用輸入法的常用詞庫,直接根據當前接收的編輯串,計算各默認的候選詞;所述各默認的候選詞的前N個默認的候選詞默認展示在候選欄中。優選的,在本申請另一實施例中,還包括:輸入意圖分析庫構建模塊,適于根據搜索環境下各建議詞被觸發的歷史數據信息構建所述輸入意圖分析庫;所述歷史記錄信息包括至少一個用戶的用戶標識、對應該用戶標識的編輯串、基于所述編輯串觸發的建議詞。優選的,在本申請另一實施例中,所述輸入意圖分析庫構建模塊包括:第一數據庫構建模塊,適于針對每個用戶標識,以每個用戶標識下的數據為基礎,統計該用戶標識下的每個編輯串,不同建議詞被觸發的觸發比例,并存入第一數據庫;所述輸入意圖分析庫包括所述第一數據庫。優選的,在本申請另一實施例中,所述輸入意圖分析庫構建模塊包括:第二數據庫構建模塊,適于針對每個編輯串,以預定時間段內觸發的至少一個用戶的用戶標識下的數據為基礎,統計每個編輯串之下,不同建議詞的觸發比例,并存入第二數據庫;所述輸入意圖分析庫包括所述第二數據庫。優選的,在本申請另一實施例中,所述意圖分析模塊320包括:第一記錄判斷模塊,適于以用戶標識和當前接收的編輯串為整體,判斷所述第一數據庫中是否有所述用戶標識和編輯串的記錄;第一閾值判斷模塊,適于如果所述第一數據庫中有所述用戶標識和編輯串的記錄,則判斷所述用戶標識和編輯串的記錄下是否有點擊比例超過第一閾值的建議詞;建議詞確定模塊,適于如果有點擊比例超過第一閾值的建議詞,則將所述建議詞確定為與用戶的輸入意圖相匹配的建議詞。優選的,在本申請另一實施例中,所述意圖分析模塊320包括:第二記錄判斷模塊,適于判斷所述第二數據庫中是否有當前接收的編輯串的記錄;第二閾值判斷模塊,適于如果有當前接收的編輯串的記錄,則判斷所述編輯串的記錄下是否有點擊比例超過第二閾值的建議詞;建議詞確定模塊,適于如果有點擊比例超過第二閾值的建議詞,則將所述建議詞確定為與用戶的輸入意圖相匹配的建議詞。優選的,在本申請另一實施例中,所述輸入意圖分析庫構建模塊包括:初始數據獲取模塊,適于通過搜索引擎獲取各建議詞被觸發的歷史記錄信息;用戶標識轉換模塊,適于將所述至少一條歷史記錄信息中用戶標識格式化為統一字符格式的至少一個用戶標識;編輯串轉換模塊,適于將每條歷史記錄信息中將用戶輸入的關鍵詞轉換為編輯串;對應模塊,適于以每條歷史記錄信息為單位,將其中的用戶標識、對應該用戶標識的編輯串、基于所述編輯串觸發的建議詞建立對應關系。優選的,在本申請另一實施例中,所述建議詞轉換模塊340包括:第一轉換模塊,適于以所述建議詞作為第二候選詞,替換所述前N個第一候選詞中的一個或多個并將被替換的第一候選詞以及所述第一候選詞之后的各第一候選詞的展示順序順延。優選的,在本申請另一實施例中,所述建議詞轉換模塊340包括:首選詞轉換模塊,適于將所述建議詞轉換為首選詞。當然,發明實施例的輸入意圖分析庫可以只包括第一數據庫,也可以只包括第二數據庫,也可以同時包括第一數據庫和第二數據庫。當然,在本申請實施例中,輸入意圖分析模塊320可以在服務器側,也可以在客戶端側,本申請不對其加以限制。本裝置實施例與方法實施例的原理類似,其達到效果也類似。關于上述實施例中的裝置,其中各個模塊執行操作的具體方式已經在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。圖4是根據一示例性實施例示出的一種輸入裝置400的框圖。例如,裝置400可以是移動電話,計算機,數字廣播終端,消息收發設備,游戲控制臺,平板設備,醫療設備,健身設備,個人數字助理等。參照圖4,裝置400可以包括以下一個或多個組件:處理組件402,存儲器404,電源組件406,多媒體組件408,音頻組件410,輸入/輸出(I/O)的接口412,傳感器組件414,以及通信組件416。處理組件402通常控制裝置400的整體操作,諸如與顯示,電話呼叫,數據通信,相機操作和記錄操作相關聯的操作。處理元件402可以包括一個或多個處理器420來執行指令,以完成上述的方法的全部或部分步驟。此外,處理組件402可以包括一個或多個模塊,便于處理組件402和其他組件之間的交互。例如,處理部件402可以包括多媒體模塊,以方便多媒體組件408和處理組件402之間的交互。存儲器404被配置為存儲各種類型的數據以支持在設備400的操作。這些數據的示例包括用于在裝置400上操作的任何應用程序或方法的指令,聯系人數據,電話簿數據,消息,圖片,視頻等。存儲器404可以由任何類型的易失性或非易失性存儲設備或者它們的組合實現,如靜態隨機存取存儲器(SRAM),電可擦除可編程只讀存儲器(EEPROM),可擦除可編程只讀存儲器(EPROM),可編程只讀存儲器(PROM),只讀存儲器(ROM),磁存儲器,快閃存儲器,磁盤或光盤。電力組件406為裝置400的各種組件提供電力。電力組件406可以包括電源管理系統,一個或多個電源,及其他與為裝置400生成、管理和分配電力相關聯的組件。多媒體組件408包括在所述裝置400和用戶之間的提供一個輸出接口的屏幕。在一些實施例中,屏幕可以包括液晶顯示器(LCD)和觸摸面板(TP)。如果屏幕包括觸摸面板,屏幕可以被實現為觸摸屏,以接收來自用戶的輸入信號。觸摸面板包括一個或多個觸摸傳感器以感測觸摸、滑動和觸摸面板上的手勢。所述觸摸傳感器可以不僅感測觸摸或滑動動作的邊界,而且還檢測與所述觸摸或滑動操作相關的持續時間和壓力。在一些實施例中,多媒體組件408包括一個前置攝像頭和/或后置攝像頭。當設備400處于操作模式,如拍攝模式或視頻模式時,前置攝像頭和/或后置攝像頭可以接收外部的多媒體數據。每個前置攝像頭和后置攝像頭可以是一個固定的光學透鏡系統或具有焦距和光學變焦能力。音頻組件410被配置為輸出和/或輸入音頻信號。例如,音頻組件410包括一個麥克風(MIC),當裝置400處于操作模式,如呼叫模式、記錄模式和語音識別模式時,麥克風被配置為接收外部音頻信號。所接收的音頻信號可以被進一步存儲在存儲器404或經由通信組件416發送。在一些實施例中,音頻組件410還包括一個揚聲器,用于輸出音頻信號。I/O接口412為處理組件402和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動按鈕和鎖定按鈕。傳感器組件414包括一個或多個傳感器,用于為裝置400提供各個方面 的狀態評估。例如,傳感器組件414可以檢測到設備400的打開/關閉狀態,組件的相對定位,例如所述組件為裝置400的顯示器和小鍵盤,傳感器組件414還可以檢測裝置400或裝置400一個組件的位置改變,用戶與裝置400接觸的存在或不存在,裝置400方位或加速/減速和裝置400的溫度變化。傳感器組件414可以包括接近傳感器,被配置用來在沒有任何的物理接觸時檢測附近物體的存在。傳感器組件414還可以包括光傳感器,如CMOS或CCD圖像傳感器,用于在成像應用中使用。在一些實施例中,該傳感器組件414還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。通信組件416被配置為便于裝置400和其他設備之間有線或無線方式的通信。裝置400可以接入基于通信標準的無線網絡,如WiFi,2G或3G,或它們的組合。在一個示例性實施例中,通信部件416經由廣播信道接收來自外部廣播管理系統的廣播信號或廣播相關信息。在一個示例性實施例中,所述通信部件416還包括近場通信(NFC)模塊,以促進短程通信。例如,在NFC模塊可基于射頻識別(RFID)技術,紅外數據協會(IrDA)技術,超寬帶(UWB)技術,藍牙(BT)技術和其他技術來實現。在示例性實施例中,裝置400可以被一個或多個應用專用集成電路(ASIC)、數字信號處理器(DSP)、數字信號處理設備(DSPD)、可編程邏輯器件(PLD)、現場可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件實現,用于執行上述方法。在示例性實施例中,還提供了一種包括指令的非臨時性計算機可讀存儲介質,例如包括指令的存儲器404,上述指令可由裝置400的處理器420執行以完成上述方法。例如,所述非臨時性計算機可讀存儲介質可以是ROM、隨機存取存儲器(RAM)、CD-ROM、磁帶、軟盤和光數據存儲設備等。一種非臨時性計算機可讀存儲介質,當所述存儲介質中的指令由移動終端的處理器執行時,使得移動終端能夠執行一種輸入方法,所述方法包括:識別當前的輸入環境;接收用戶輸入的編輯串;如果當前的輸入環境是搜索環境,則根據當前接收的編輯串,利用預置 輸入意圖分析庫,判斷是否存在與用戶的輸入意圖相匹配的建議詞;如果存在與所述輸入意圖相匹配的建議詞,則將所述建議詞作為候選詞。圖5是本申請實施例中服務器的結構示意圖。該服務器500可因配置或性能不同而產生比較大的差異,可以包括一個或一個以上中央處理器(centralprocessingunits,CPU)522(例如,一個或一個以上處理器)和存儲器532,一個或一個以上存儲應用程序542或數據544的存儲介質530(例如一個或一個以上海量存儲設備)。其中,存儲器532和存儲介質530可以是短暫存儲或持久存儲。存儲在存儲介質530的程序可以包括一個或一個以上模塊(圖示沒標出),每個模塊可以包括對服務器中的一系列指令操作。更進一步地,中央處理器522可以設置為與存儲介質530通信,在服務器500上執行存儲介質530中的一系列指令操作。服務器500還可以包括一個或一個以上電源526,一個或一個以上有線或無線網絡接口550,一個或一個以上輸入輸出接口558,一個或一個以上鍵盤556,和/或,一個或一個以上操作系統541,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM等等。本領域技術人員在考慮說明書及實踐這里公開的發明后,將容易想到本申請的其它實施方案。本申請旨在涵蓋本申請的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本申請的一般性原理并包括本公開未公開的本
技術領域:
中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本申請的真正范圍和精神由下面的權利要求指出。應當理解的是,本申請并不局限于上面已經描述并在附圖中示出的精確結構,并且可以在不脫離其范圍進行各種修改和改變。本申請的范圍僅由所附的權利要求來限制最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且 還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要素。以上所述僅為本申請的較佳實施例,并不用以限制本申請,凡在本申請的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本申請的保護范圍之內。當前第1頁1 2 3