本發(fā)明涉及輸入法的技術(shù)領(lǐng)域,特別是涉及一種詞庫的生成方法和一種詞庫的生成裝置。
背景技術(shù):
隨著計算機技術(shù)的普及與發(fā)展,輸入法已經(jīng)成為用戶與計算機交互的重要工具,不同專業(yè)領(lǐng)域、不同興趣以及使用習(xí)慣的用戶對于輸入法的智能性要求越來越高。
目前輸入法的詞庫一般覆蓋用戶使用的詞匯的一部分,通常包括一些人們普遍的常用詞匯,還有一部分詞匯是輸入法系統(tǒng)的詞庫未覆蓋的。
在日常生活中,很多時事新聞是人們討論的熱點,如奧運會、臺風(fēng)等等,這是時事新聞的出現(xiàn)時間很短暫,用戶在討論這些時事新聞時,某些詞需要用戶通過輸入法逐個字輸入,輸入效率較低。
技術(shù)實現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的一種詞庫的生成方法和相應(yīng)的一種詞庫的生成裝置。
依據(jù)本發(fā)明的一個方面,提供了一種詞庫的生成方法,包括:
獲取具有時效性的文本信息;
從所述文本信息中提取關(guān)鍵詞;
確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
可選地,所述獲取具有時效性的文本信息的步驟包括:
對通知欄進行監(jiān)聽;
當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
可選地,所述獲取具有時效性的文本信息的步驟包括:
當(dāng)加載頁面信息時,從所述頁面信息中讀取文本信息。
可選地,所述從所述文本信息中提取關(guān)鍵詞的步驟包括:
在所述通知消息中查找指定的符號;
基于所述符號確定關(guān)鍵詞。
可選地,所述確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件的步驟包括:
統(tǒng)計所述關(guān)鍵詞的頻次;
當(dāng)所述頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
可選地,所述依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中的步驟包括:
在除臨時詞庫之外的詞庫中查詢是否存儲有所述關(guān)鍵詞;
若是,則丟棄所述關(guān)鍵詞;
若否,則依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
可選地,還包括:
在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期;
若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞;
若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期;
將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
可選地,還包括:
在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期,所述時效期在所述有效期內(nèi);
接收輸入的字符串;
在各個詞庫中查找與字符串匹配的候選項;
當(dāng)確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序;
按照調(diào)整之后的排序顯示所述候選項。
可選地,所述按照所述時效期對所述關(guān)鍵詞調(diào)整排序的步驟包括:
若當(dāng)前時間在所述時效期內(nèi),提高所述關(guān)鍵詞的排序;
若當(dāng)前時間在所述時效期外,降低所述關(guān)鍵詞的排序。
根據(jù)本發(fā)明的另一方面,提供了一種詞庫的生成裝置,包括:
文本信息獲取模塊,適于獲取具有時效性的文本信息;
關(guān)鍵詞提取模塊,適于從所述文本信息中提取關(guān)鍵詞;
條件滿足確定模塊,適于確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
關(guān)鍵詞存儲模塊,適于依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
可選地,所述文本信息獲取模塊包括:
通知欄監(jiān)聽子模塊,適于對通知欄進行監(jiān)聽;
文本信息設(shè)置子模塊,適于當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
可選地,所述文本信息獲取模塊包括:
文本信息讀取子模塊,適于在加載頁面信息時,從所述頁面信息中讀取文本信息。
可選地,所述關(guān)鍵詞提取模塊包括:
符號查找子模塊,適于在所述通知消息中查找指定的符號;
關(guān)鍵詞確定子模塊,適于基于所述符號確定關(guān)鍵詞。
可選地,所述條件滿足確定模塊包括:
頻次統(tǒng)計子模塊,適于統(tǒng)計所述關(guān)鍵詞的頻次;
頻次確定子模塊,適于在所述頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
可選地,所述關(guān)鍵詞存儲模塊包括:
重復(fù)查詢子模塊,適于在除臨時詞庫之外的詞庫中查詢是否存儲有所述關(guān)鍵詞;若是,則調(diào)用丟棄子模塊,若否,則調(diào)用臨時詞庫存儲子模塊;
丟棄子模塊,適于丟棄所述關(guān)鍵詞;
臨時詞庫存儲子模塊,適于將所述關(guān)鍵詞存儲在臨時詞庫中。
可選地,還包括:
有效期設(shè)置模塊,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期;
關(guān)鍵詞刪除模塊,適于若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞;
有效期刪除模塊,適于若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期;
關(guān)鍵詞轉(zhuǎn)移模塊,適于將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
可選地,還包括:
時效期設(shè)置模塊,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期,所述時效期在所述有效期內(nèi);
字符串接收模塊,適于接收輸入的字符串;
候選項查找模塊,適于在各個詞庫中查找與字符串匹配的候選項;
排序調(diào)整模塊,適于在確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序;
候選項展示模塊,適于按照調(diào)整之后的排序顯示所述候選項。
可選地,所述排序調(diào)整模塊包括:
提高排序子模塊,適于若當(dāng)前時間在所述時效期內(nèi),提高所述關(guān)鍵詞的排序;
降低排序子模塊,適于若當(dāng)前時間在所述時效期外,降低所述關(guān)鍵詞的排序。
本發(fā)明實施例設(shè)置臨時詞庫,從具有時效性的文本信息中提取關(guān)鍵詞,在該關(guān)鍵詞滿足熱度條件時,將該關(guān)鍵詞存儲至臨時詞庫中,用戶輸入時可以直接作為候選項,避免用戶逐個字輸入,提高用戶的輸入效率。
本發(fā)明的這些方面或其他方面在以下實施例的描述中會更加簡明易懂。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明一個實施例的詞庫的生成方法的步驟流程圖;
圖2示出了根據(jù)本發(fā)明另一個實施例的詞庫的生成方法的步驟流程圖;
圖3示出了根據(jù)本發(fā)明一個實施例的詞庫的生成裝置的結(jié)構(gòu)框圖;以及
圖4示出了根據(jù)本發(fā)明另一個實施例的詞庫的生成裝置的結(jié)構(gòu)框圖。
具體實施方式
下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。
參照圖1,示出了根據(jù)本發(fā)明一個實施例的詞庫的生成方法的步驟流程圖,具體可以包括如下步驟:
步驟101,獲取具有時效性的文本信息。
在具體實現(xiàn)中,本發(fā)明實施例可以應(yīng)用于輸入法系統(tǒng)中,該輸入法系統(tǒng)可以安裝在計算設(shè)備中,例如,電腦、手機、pda(personaldigitalassistant,個人數(shù)字助理)、膝上型計算機、掌上電腦等等,本發(fā)明實施例對此不加以限制。
該計算設(shè)備可以支持windows、android(安卓)、ios、windowsphone等操作系統(tǒng),通常可以在輸入法系統(tǒng)中通過虛擬鍵盤、物理鍵盤、語音等方式輸入字詞。
在本發(fā)明實施例中,輸入法系統(tǒng)可以在計算設(shè)備的環(huán)境中,獲取具有時效性的文本信息。
所謂時效性,是指該文本信息在某一個特定的時間出現(xiàn)的頻率較高(可表現(xiàn)為高于預(yù)設(shè)的第一頻率閾值),在該特定的時間之后,其出現(xiàn)的頻率明顯降低(可表現(xiàn)為低于預(yù)設(shè)的第二頻率閾值,第一頻率閾值大于第二頻率閾值)。
例如,在奧運會期間中,各大網(wǎng)站會頻繁發(fā)布與奧運會相關(guān)的報道(文本信息),在奧運會之后,與奧運會相關(guān)的報道會顯著減少;在臺風(fēng)期間中,各大網(wǎng)站會頻繁發(fā)布與臺風(fēng)修相關(guān)的報道(文本信息),在臺風(fēng)之后,與臺風(fēng)修相關(guān)的報道會顯著減少。
在本發(fā)明的一個實施例中,步驟101可以包括如下子步驟:
子步驟s11,對通知欄進行監(jiān)聽;
子步驟s12,當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
通知欄(notificaiton),適用于交互事件的通知,它是位于頂層可以展開的通知列表。
通知欄一般可以包括如下的一種或多種功能:
1、顯示接收到短消息、即時通信消息等信息;
2、顯示客戶端的推送消息,例如,新版本發(fā)布、廣告、推薦新聞等等;
3、顯示正在進行的事物,例如,音樂播放器、版本更新時候的下載進度等等。
諸如熱點新聞等具有時效性的通知消息,為了讓用戶更快地了解,經(jīng)常將這些通知消息推送至通知欄。
因此,本發(fā)明實施例可以通過監(jiān)聽通知欄,接收推送至該通知欄的通知消息,獲取具有時效性的文本信息。
由于新聞類應(yīng)用、社交類應(yīng)用等應(yīng)用推送具有時效性的消息的概率較高,而銀行類應(yīng)用、游戲類應(yīng)用等應(yīng)用推送具有時效性的消息的概率較低,因此,為了減少計算量,輸入法系統(tǒng)可以注冊指定應(yīng)用(如新聞類應(yīng)用、社交類應(yīng)用等)的監(jiān)聽器,監(jiān)聽這些應(yīng)用推送至通知欄的消息。
在本發(fā)明的另一個實施例中,步驟101可以包括如下子步驟:
子步驟s21,當(dāng)加載頁面信息時,從所述頁面信息中讀取文本信息。
在本發(fā)明實施例中,用戶可以在打開網(wǎng)頁,瀏覽諸如熱點新聞等具有時效性的網(wǎng)頁信息。
因此,本發(fā)明實施例可以在加載頁面信息時,從頁面信息中讀取具有時效性的文本信息。
網(wǎng)頁按照功能可以劃分為多個區(qū)域,例如,導(dǎo)航塊、垃圾塊、翻頁塊、標(biāo)題塊、作者信息塊、發(fā)表日期塊、正文塊等等,具有時效性的文本信息一般集中在標(biāo)題、正文等區(qū)域,因此,可以提取這些標(biāo)題、正文等區(qū)域的信息作為具有時效性的文本信息。
進一步而言,可以在當(dāng)前頁面的dom(documentobjectmodel,文件對象模型)樹節(jié)點中查找具有時效性的文本信息。
dom定義了表示和修改文檔所需的對象、這些對象的行為和屬性以及這些對象之間的關(guān)系,可以把dom認(rèn)為是頁面上數(shù)據(jù)和結(jié)構(gòu)的一個樹形表示,不過頁面當(dāng)然可能并不是以這種樹的方式具體實現(xiàn)。
例如,在head標(biāo)簽的title標(biāo)簽中,可以提取標(biāo)題,在body標(biāo)簽的某一個div標(biāo)簽中,可以提取正文。
由于門戶網(wǎng)站、新聞網(wǎng)站等網(wǎng)站發(fā)布具有時效性的頁面信息的概率較高,而購物網(wǎng)站、技術(shù)類網(wǎng)站等網(wǎng)站發(fā)布具有時效性的頁面信息的概率較低,因此,為了減少計算量,輸入法系統(tǒng)可以監(jiān)聽指點網(wǎng)站(如門戶網(wǎng)站、新聞網(wǎng)站等)的網(wǎng)頁信息。
例如,門戶網(wǎng)站、新聞網(wǎng)站都具有特定的域名,其中,體育領(lǐng)域的網(wǎng)頁網(wǎng)址一般帶有“sports”標(biāo)識的域名,新聞領(lǐng)域的網(wǎng)頁一般帶有“news”標(biāo)識的二級域名,如sports.***.com、news.***.com(***為頂級域名),在該網(wǎng)站的網(wǎng)址檢測出“sports”或“news”等二級域名時,則可以識別出該網(wǎng)頁類別為體育領(lǐng)域的網(wǎng)頁、新聞領(lǐng)域的網(wǎng)頁,繼而可以從這些網(wǎng)頁提取標(biāo)題、正文等文本信息。
當(dāng)然,上述文本信息的獲取方式只是作為示例,在實施本發(fā)明實施例時,可以根據(jù)實際情況設(shè)置其他文本信息的獲取方式,本發(fā)明實施例對此不加以限制。另外,除了上述文本信息的獲取方式外,本領(lǐng)域技術(shù)人員還可以根據(jù)實際需要采用其它文本信息的獲取方式,本發(fā)明實施例對此也不加以限制。
步驟102,從所述文本信息中提取關(guān)鍵詞。
在具體實現(xiàn)中,可以通過自然語言處理(naturallanguageprocessing,nlp)從文本信息中提取關(guān)鍵詞。
在一個示例中,可以采用tf-idf(termfrequency–inversedocumentfrequency)算法提取關(guān)鍵詞,tf是指某詞在本聚類內(nèi)所有文章的詞頻,而不是本文章內(nèi)出現(xiàn)的次數(shù),idf還是在所有文章里出現(xiàn)的倒文檔頻率。
在此示例中,可以先給本聚類內(nèi)的所有文檔進行分詞,然后用一個字典保存每個詞出現(xiàn)的次數(shù);遍歷每個詞,得到每個詞在所有文檔里的idf值,和在本聚類內(nèi)出現(xiàn)的次數(shù)(tf)相乘的值;用一個字典(key是詞,value是tf*idf權(quán)重)來保存所有的詞信息,然后按value對字典排序,最后取權(quán)重排名靠前的幾個詞作為關(guān)鍵詞
在另一個示例中,可以基于語義的統(tǒng)計語言模型提取關(guān)鍵詞。
在此示例中,在全面把握文本信息的中心思想的基礎(chǔ)上,提取出若干個代表文本信息語義內(nèi)容的詞匯或短語。
在另一個示例中,可以采用tf-iwf文檔關(guān)鍵詞自動提取算法提取關(guān)鍵詞。
在此示例中,使用簡單統(tǒng)計并考慮詞長、位置、詞性等啟發(fā)性知識計算詞權(quán)重。
當(dāng)然,上述關(guān)鍵詞的提取方式只是作為示例,在實施本發(fā)明實施例時,可以根據(jù)實際情況設(shè)置其他關(guān)鍵詞的提取方式,例如,基于分離模型的中文關(guān)鍵詞提取算法提取關(guān)鍵詞、基于高維聚類技術(shù)的中文關(guān)鍵詞提取算法提取關(guān)鍵詞、基于語義的中文文本關(guān)鍵詞提取(ske)算法提取關(guān)鍵詞、基于樸素貝葉斯模型的中文關(guān)鍵詞提取算法提取關(guān)鍵詞,等等,本發(fā)明實施例對此不加以限制。另外,除了上述關(guān)鍵詞的提取方式外,本領(lǐng)域技術(shù)人員還可以根據(jù)實際需要采用其它關(guān)鍵詞的提取方式,本發(fā)明實施例對此也不加以限制。
在一些通知消息的情景中,某些特定的詞匯使用指定的符號(如引號、括號等)進行標(biāo)識,因此,在通知消息中查找指定的符號,基于符號確定關(guān)鍵詞。
例如,某條通知消息為“臺風(fēng)‘妮妲’8月2日凌晨至中午將以臺風(fēng)或強臺風(fēng)級登陸廣東沿海,可能在珠江口附近登陸,給深圳帶來狂風(fēng)暴雨?!逼渲校付ǖ姆枮橐?,在引號中的詞(即妮妲)可以作為關(guān)鍵詞。
步驟103,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
在本發(fā)明實施例中,可以設(shè)置熱度條件,表征該關(guān)鍵詞的使用程度,如果關(guān)鍵詞滿足該熱度條件,表示該關(guān)鍵詞使用程度較高,用戶輸入該關(guān)鍵詞的概率較大。
在一個示例中,可以統(tǒng)計關(guān)鍵詞的頻次,即一段時間內(nèi)、該關(guān)鍵詞在計算設(shè)備中被提取的次數(shù)。
當(dāng)頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,可以確定關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
當(dāng)然,上述熱度條件只是作為示例,在實施本發(fā)明實施例時,可以根據(jù)實際情況設(shè)置其他熱度條件,例如,該關(guān)鍵詞來自特定的通知消息(如新聞應(yīng)用推送的新聞),等等,本發(fā)明實施例對此不加以限制。另外,除了上述熱度條件外,本領(lǐng)域技術(shù)人員還可以根據(jù)實際需要采用其它熱度條件,本發(fā)明實施例對此也不加以限制。
步驟104,依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
在具體實現(xiàn)中,可以在輸入法系統(tǒng)中設(shè)置一個或多個詞庫,該詞庫可以包括如下的一種或多種:
1、記載基礎(chǔ)字詞的系統(tǒng)詞庫。
2、記載擴展字詞的細胞詞庫(細胞詞庫中的字詞至少具有一個共同屬性)。
例如,記載某個游戲?qū)S米衷~的細胞詞庫、記載生物專用字詞的細胞詞庫等。
3、記載用戶個性化字詞(如自造詞)的用戶詞庫。
4、記載通訊錄信息的通訊錄詞庫。
當(dāng)然,上述詞庫只是作為示例,在實施本發(fā)明實施例時,可以根據(jù)實際情況設(shè)置其他詞庫,本發(fā)明實施例對此不加以限制。
在本發(fā)明實施例中,除了這些常用的詞庫之外,還設(shè)置了臨時詞庫,提取的關(guān)鍵詞可以作為詞條存儲至該臨時詞庫中。
所謂臨時詞庫,其本質(zhì)仍為詞庫,但是,相對于其他常用的詞庫的詞條,臨時詞庫中的詞條(即關(guān)鍵詞)具有臨時性,即滿足一定條件時,輸入法系統(tǒng)可以自動將該詞條(即關(guān)鍵詞)從該臨時詞庫中刪除。
為了避免重復(fù)存儲詞條(即關(guān)鍵詞),可以在除臨時詞庫之外的詞庫中查詢是否存儲有該關(guān)鍵詞。若是,則丟棄關(guān)鍵詞;若否,則將關(guān)鍵詞存儲在臨時詞庫中。
在具體實現(xiàn)中,可以對關(guān)鍵詞設(shè)置編碼信息,例如,拼音、筆畫等等。
在臨時詞庫中建立關(guān)鍵詞與編碼信息之間的映射關(guān)系。
例如,輸入法系統(tǒng)可以對“妮妲”確定對應(yīng)的拼音“nida”,作為其編碼信息,將“妮妲”于“nida”之間的映射關(guān)系保存到臨時詞庫中。
如果關(guān)鍵詞中存在多編碼的字(如多音字),則可以通過如下方式進行處理:
一、輸入法系統(tǒng)將包含多編碼的字的關(guān)鍵詞與其對應(yīng)的所有可能的編碼信息建立映射關(guān)系,并存儲到臨時詞庫中。
例如,關(guān)鍵詞為“調(diào)度指令”,“調(diào)”的讀音分別有“diao”與“tiao”,則輸入法系統(tǒng)可以將“調(diào)度指令”分別與“diaoduzhiling”、“tiaoduzhiling”建立映射關(guān)系,并存儲到臨時詞庫中。
二、輸入法系統(tǒng)將包含多編碼的字的關(guān)鍵詞的所有可能的編碼信息顯示給用戶,由用戶為該關(guān)鍵詞指定一個編碼信息,輸入法系統(tǒng)將該關(guān)鍵詞與用戶選擇的編碼信息建立映射關(guān)系,并存儲到臨時詞庫中。
例如,關(guān)鍵詞為“調(diào)度指令”,“調(diào)”的讀音分別有“diao”與“tiao”,則輸入法系統(tǒng)可以顯示“diaoduzhiling”、“tiaoduzhiling”給用戶,若用戶選擇了“diaoduzhiling”,則輸入法系統(tǒng)可以將“調(diào)度指令”分別與“diaoduzhiling”建立映射關(guān)系,并存儲到臨時詞庫中。
本發(fā)明實施例設(shè)置臨時詞庫,從具有時效性的文本信息中提取關(guān)鍵詞,在該關(guān)鍵詞滿足熱度條件時,將該關(guān)鍵詞存儲至臨時詞庫中,用戶輸入時可以直接作為候選項,避免用戶逐個字輸入,提高用戶的輸入效率。
參照圖2,示出了根據(jù)本發(fā)明另一個實施例的詞庫的生成方法的步驟流程圖,具體可以包括如下步驟:
步驟201,獲取具有時效性的文本信息;
步驟202,從所述文本信息中提取關(guān)鍵詞;
步驟203,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
步驟204,依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
步驟205,在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期。
在具體實現(xiàn)中,若關(guān)鍵詞來源于熱點事件的時事新聞等具有時效性的文本信息,當(dāng)該熱點事件過去之后,用戶討論該熱點事件的概率明顯減少,輸入該關(guān)鍵詞的概率明顯減少,因此,為了減少存儲空間的占用,可以針對該關(guān)鍵詞設(shè)置有效期,使得該關(guān)鍵詞在該有效期內(nèi)有效,超過該有效期則無效。
該有效期可以是默認(rèn)的值(如30天),也可以根據(jù)關(guān)鍵詞所屬文本信息的特征進行設(shè)置,本發(fā)明實施例對此不加以限制。
例如,如果關(guān)鍵詞“里約熱內(nèi)盧奧運會”來源于奧運會(特征)相關(guān)的新聞,而奧運會的會期一般為15天,因此,對關(guān)鍵詞“里約熱內(nèi)盧奧運會”可以設(shè)置比奧運會的會期稍長的時間作為有效期,如20天。
步驟206,在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期。
在具體實現(xiàn)中,若關(guān)鍵詞來源于熱點事件的時事新聞等具有時效性的文本信息,該關(guān)鍵詞的使用概率隨時間的增加而減少,因此,可以對該關(guān)鍵詞設(shè)置時效期,該時效期在有效期內(nèi),以對該關(guān)鍵詞展示的位置進行調(diào)整。
需要說明的是,時效期在有效期內(nèi),即時效期比有效期短。
步驟207,接收輸入的字符串。
在實際應(yīng)用中,在輸入法系統(tǒng)進行輸入的虛擬鍵盤、物理鍵盤等鍵盤可以包括九宮格鍵盤、全鍵盤(如qwerty鍵盤)等等。
這些鍵盤具有一個或多個按鍵,該按鍵經(jīng)常被復(fù)用,映射一個或多個字符,若按鍵被觸發(fā)(如按下、點擊、滑動等),可以將其映射的字符輸入至輸入法系統(tǒng),輸入法系統(tǒng)將這些字符組成字符串。
對于不同的語言,如中文、英文、日文等等,虛擬鍵盤、物理鍵盤等鍵盤的按鍵所映射的字符會有所不同,具體可以包括、但不限于數(shù)字字符、英文字符、中文字符(如拼音字符、筆畫字符等)和符號字符中的至少一個。
這些字符串可以顯示在輸入法系統(tǒng)界面中的編碼欄中,以提示用戶所輸入的字符串。
步驟208,在各個詞庫中查找與字符串匹配的候選項。
在中文、日語等語言里,作為基本語言單位的漢字、日文等文字一般不直接與鍵盤上的按鍵進行映射,因此,在輸入時一般需要進行字符串與詞條的轉(zhuǎn)換。
在具體實現(xiàn)中,可以在各個詞庫中查找與字符串匹配的編碼信息,提取編碼信息映射的關(guān)鍵詞,作為候選項。
需要說明的是,這些詞庫可以包括系統(tǒng)詞庫、細胞詞庫、用戶詞庫、通訊錄詞庫、臨時詞庫等等。
以漢字的拼音輸入為例,用戶將漢字的拼音通過鍵盤輸入至輸入法系統(tǒng)中,由輸入法系統(tǒng)進行解碼,具體可以包括如下步驟:
1、拼音切分
在此步驟中,輸入法系統(tǒng)可以將字符串切分為拼音的音節(jié)。
例如,將字符串“aoyunhui”切分為“ao’yun’hui”。
2、音節(jié)解碼
在此步驟中,輸入法系統(tǒng)可以在詞庫中查找音節(jié)對應(yīng)的關(guān)鍵詞。
例如,查找“ao’yun’hui”對應(yīng)的關(guān)鍵詞“奧運會”。
步驟209,當(dāng)確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序。
在具體實現(xiàn)中,若當(dāng)前時間在時效期內(nèi),用戶輸入該關(guān)鍵詞的概率較高,則可以提高關(guān)鍵詞的排序。
若當(dāng)前時間在時效期外,用戶輸入該關(guān)鍵詞的概率較低,可以降低關(guān)鍵詞的排序。
需要說明的是,除了時效期之外,還可以采用其他方式調(diào)整排序,例如,用戶屬性(提高與用戶屬性匹配的候選項的排序)、輸入環(huán)境(提高與輸入環(huán)境匹配的候選項的排序)、詞頻(詞頻越高、排序越高)等等,本發(fā)明實施例對此不加以限制。
步驟210,按照調(diào)整之后的排序顯示所述候選項。
在調(diào)整排序之后,則可以在候選欄中展示給用戶,待用戶選擇。
步驟211,若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞。
在具體實現(xiàn)中,如果用戶輸入編碼信息,則輸入法系統(tǒng)可以將相關(guān)的候選項提供用戶選擇。
如果用戶選定該候選項,則可以輸出該候選至其他應(yīng)用,將候選項輸出的過程可以稱之為上屏。
如果臨時詞庫中的關(guān)鍵詞在其有效期內(nèi)未上屏,此后上屏的概率會明顯下降,為了避免占用存儲空間,將其刪除。
步驟212,若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期。
步驟213,將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
如果該關(guān)鍵詞作為候選項顯示時,用戶通過點擊候選項、點擊候選項的編號對應(yīng)的按鍵等方式選中該關(guān)鍵詞,輸出該關(guān)鍵詞,實現(xiàn)上屏。
此時,可以將該關(guān)鍵詞從臨時詞庫轉(zhuǎn)移至其他指定的正式詞庫,例如,用戶詞庫。
在具體實現(xiàn)中,除了刪除該關(guān)鍵詞的有效期之外,還可以在臨時詞庫中解除關(guān)鍵詞與編碼信息之間的映射關(guān)系,在指定的詞庫中建立關(guān)鍵詞與編碼信息之間的映射關(guān)系。
如果將這些時事新聞的詞匯都更新至詞庫里,會占用大量的存儲空間,那么輸入法系統(tǒng)的詞庫容量將在數(shù)百萬的量級。
詞庫過大,同音字過多,候選項增加,這些詞匯本身在總體用戶中的使用概率比較低,不需要使用這些詞匯的用戶會受到干擾,導(dǎo)致用戶在輸入時的首選詞準(zhǔn)確率較低。
并且,容量大的詞庫會大幅占用cpu(centralprocessingunit,中央處理器)、內(nèi)存等計算設(shè)備的資源。
本發(fā)明實施例對臨時詞庫中的關(guān)鍵詞設(shè)置有效期,若關(guān)鍵詞在有效期內(nèi)未上屏,在臨時詞庫中刪除關(guān)鍵詞,通過有效期的上屏操作自動清理臨時詞庫中的關(guān)鍵詞,保證臨時詞庫的容量在較低的水平,進而保證輸入法系統(tǒng)的其他詞庫仍然在現(xiàn)有的詞庫容量級別上,大大減少了詞庫中關(guān)鍵詞的數(shù)量,保證用戶在輸入時的首選詞的準(zhǔn)確率,并且,保證cpu、內(nèi)存等計算設(shè)備的資源的占用在合理的水平。
對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實施例并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。
參照圖3,示出了根據(jù)本發(fā)明一個實施例的詞庫的生成裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:
文本信息獲取模塊301,適于獲取具有時效性的文本信息;
關(guān)鍵詞提取模塊302,適于從所述文本信息中提取關(guān)鍵詞;
條件滿足確定模塊303,適于確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
關(guān)鍵詞存儲模塊304,適于依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
在本發(fā)明的一個實施例中,所述文本信息獲取模塊301包括:
通知欄監(jiān)聽子模塊,適于對通知欄進行監(jiān)聽;
文本信息設(shè)置子模塊,適于當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
在本發(fā)明的一個實施例中,所述文本信息獲取模塊301包括:
文本信息讀取子模塊,適于在加載頁面信息時,從所述頁面信息中讀取文本信息。
在本發(fā)明的一個實施例中,所述關(guān)鍵詞提取模塊302包括:
符號查找子模塊,適于在所述通知消息中查找指定的符號;
關(guān)鍵詞確定子模塊,適于基于所述符號確定關(guān)鍵詞。
在本發(fā)明的一個實施例中,所述條件滿足確定模塊303包括:
頻次統(tǒng)計子模塊,適于統(tǒng)計所述關(guān)鍵詞的頻次;
頻次確定子模塊,適于在所述頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
在本發(fā)明的一個實施例中,所述關(guān)鍵詞存儲模塊304包括:
重復(fù)查詢子模塊,適于在除臨時詞庫之外的詞庫中查詢是否存儲有所述關(guān)鍵詞;若是,則調(diào)用丟棄子模塊,若否,則調(diào)用臨時詞庫存儲子模塊;
丟棄子模塊,適于丟棄所述關(guān)鍵詞;
臨時詞庫存儲子模塊,適于將所述關(guān)鍵詞存儲在臨時詞庫中。
參照圖4,示出了根據(jù)本發(fā)明另一個實施例的詞庫的生成裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:
文本信息獲取模塊401,適于獲取具有時效性的文本信息;
關(guān)鍵詞提取模塊402,適于從所述文本信息中提取關(guān)鍵詞;
條件滿足確定模塊403,適于確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
關(guān)鍵詞存儲模塊404,適于依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
有效期設(shè)置模塊405,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期;
時效期設(shè)置模塊406,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期,所述時效期在所述有效期內(nèi);
字符串接收模塊407,適于接收輸入的字符串;
候選項查找模塊408,適于在各個詞庫中查找與字符串匹配的候選項;
排序調(diào)整模塊409,適于在確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序;
候選項展示模塊410,適于按照調(diào)整之后的排序顯示所述候選項。
關(guān)鍵詞刪除模塊411,適于若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞;
有效期刪除模塊412,適于若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期;
關(guān)鍵詞轉(zhuǎn)移模塊413,適于將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
在本發(fā)明的一個實施例中,所述排序調(diào)整模塊409包括:
提高排序子模塊,適于若當(dāng)前時間在所述時效期內(nèi),提高所述關(guān)鍵詞的排序;
降低排序子模塊,適于若當(dāng)前時間在所述時效期外,降低所述關(guān)鍵詞的排序。
對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(dsp)來實現(xiàn)根據(jù)本發(fā)明實施例的詞庫的生成設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
本發(fā)明實施例公開了a1、一種詞庫的生成方法,包括:
獲取具有時效性的文本信息;
從所述文本信息中提取關(guān)鍵詞;
確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
a2、如a1所述的方法,所述獲取具有時效性的文本信息的步驟包括:
對通知欄進行監(jiān)聽;
當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
a3、如a1所述的方法,所述獲取具有時效性的文本信息的步驟包括:
當(dāng)加載頁面信息時,從所述頁面信息中讀取文本信息。
a4、如a2所述的方法,所述從所述文本信息中提取關(guān)鍵詞的步驟包括:
在所述通知消息中查找指定的符號;
基于所述符號確定關(guān)鍵詞。
a5、如a1所述的方法,所述確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件的步驟包括:
統(tǒng)計所述關(guān)鍵詞的頻次;
當(dāng)所述頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
a6、如a1或a2或a3或a4或a5所述的方法,所述依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中的步驟包括:
在除臨時詞庫之外的詞庫中查詢是否存儲有所述關(guān)鍵詞;
若是,則丟棄所述關(guān)鍵詞;
若否,則依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
a7、如a1或a2或a3或a4或a5所述的方法,還包括:
在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期;
若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞;
若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期;
將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
a8、如a1或a2或a3或a4或a5所述的方法,還包括:
在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期,所述時效期在所述有效期內(nèi);
接收輸入的字符串;
在各個詞庫中查找與字符串匹配的候選項;
當(dāng)確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序;
按照調(diào)整之后的排序顯示所述候選項。
a9、如a8所述的方法,所述按照所述時效期對所述關(guān)鍵詞調(diào)整排序的步驟包括:
若當(dāng)前時間在所述時效期內(nèi),提高所述關(guān)鍵詞的排序;
若當(dāng)前時間在所述時效期外,降低所述關(guān)鍵詞的排序。
本發(fā)明實施例公開了b10、一種詞庫的生成裝置,包括:
文本信息獲取模塊,適于獲取具有時效性的文本信息;
關(guān)鍵詞提取模塊,適于從所述文本信息中提取關(guān)鍵詞;
條件滿足確定模塊,適于確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件;
關(guān)鍵詞存儲模塊,適于依據(jù)所述熱度條件將所述關(guān)鍵詞存儲在臨時詞庫中。
b11、如b10所述的裝置,所述文本信息獲取模塊包括:
通知欄監(jiān)聽子模塊,適于對通知欄進行監(jiān)聽;
文本信息設(shè)置子模塊,適于當(dāng)監(jiān)聽到服務(wù)器推送的通知消息時,將所述通知消息設(shè)置為文本信息。
b12、如b10所述的裝置,所述文本信息獲取模塊包括:
文本信息讀取子模塊,適于在加載頁面信息時,從所述頁面信息中讀取文本信息。
b13、如b11所述的裝置,所述關(guān)鍵詞提取模塊包括:
符號查找子模塊,適于在所述通知消息中查找指定的符號;
關(guān)鍵詞確定子模塊,適于基于所述符號確定關(guān)鍵詞。
b14、如b10所述的裝置,所述條件滿足確定模塊包括:
頻次統(tǒng)計子模塊,適于統(tǒng)計所述關(guān)鍵詞的頻次;
頻次確定子模塊,適于在所述頻次在預(yù)設(shè)的時間段內(nèi)高于預(yù)設(shè)的頻次閾值,確定所述關(guān)鍵詞滿足預(yù)設(shè)的熱度條件。
b15、如b10或b11或b12或b13或b14所述的裝置,所述關(guān)鍵詞存儲模塊包括:
重復(fù)查詢子模塊,適于在除臨時詞庫之外的詞庫中查詢是否存儲有所述關(guān)鍵詞;若是,則調(diào)用丟棄子模塊,若否,則調(diào)用臨時詞庫存儲子模塊;
丟棄子模塊,適于丟棄所述關(guān)鍵詞;
臨時詞庫存儲子模塊,適于將所述關(guān)鍵詞存儲在臨時詞庫中。
b16、如b10或b11或b12或b13或b14所述的裝置,還包括:
有效期設(shè)置模塊,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置有效期;
關(guān)鍵詞刪除模塊,適于若所述關(guān)鍵詞在所述有效期內(nèi)未上屏,在所述臨時詞庫中刪除所述關(guān)鍵詞;
有效期刪除模塊,適于若所述關(guān)鍵詞在所述有效期內(nèi)上屏,刪除所述關(guān)鍵詞的有效期;
關(guān)鍵詞轉(zhuǎn)移模塊,適于將所述關(guān)鍵詞從所述臨時詞庫移至指定的詞庫。
b17、如b10或b11或b12或b13或b14所述的裝置,還包括:
時效期設(shè)置模塊,適于在所述臨時詞庫中,對所述關(guān)鍵詞設(shè)置時效期,所述時效期在所述有效期內(nèi);
字符串接收模塊,適于接收輸入的字符串;
候選項查找模塊,適于在各個詞庫中查找與字符串匹配的候選項;
排序調(diào)整模塊,適于在確定所述候選項為所述臨時詞庫的關(guān)鍵詞時,按照所述時效期對所述關(guān)鍵詞調(diào)整排序;
候選項展示模塊,適于按照調(diào)整之后的排序顯示所述候選項。
b18、如b17所述的裝置,所述排序調(diào)整模塊包括:
提高排序子模塊,適于若當(dāng)前時間在所述時效期內(nèi),提高所述關(guān)鍵詞的排序;
降低排序子模塊,適于若當(dāng)前時間在所述時效期外,降低所述關(guān)鍵詞的排序。