本文所述的發(fā)明總體上涉及表情符號。更具體的,本發(fā)明涉及用于在計算設備上的各種活動期間識別并建議表情符號的系統(tǒng)和方法。
背景技術:
最初,表情符號是由在計算機鍵盤(例如,字母、數(shù)字和符號)上常見的字符(例如,ASCII字符)表示的面部表情。這些原始表情符號一旦由作者放置在電子消息或電子發(fā)布(例如,電子公告板)中,則意味著在傳達作者的情緒或傳達/增強消息或發(fā)布的整體情緒。起初,這些表情符號僅限于表達情緒,例如,高興、憤怒、悲傷和冷漠。然而,逐漸地,這些基于字符的表情符號字符(以下稱為“字符表情符號”)的使用擴展到傳達含義和消息。
最終,表情符號在類型、可用性和用法方面進一步擴展。現(xiàn)今,表情符號包括字符表情符號和由圖形圖像表示的表情符號(以下稱為“圖形表情符號”)。隨著圖形表情符號的可用性,用戶可以描述更多數(shù)量的情緒、含義和消息,這對于曾經(jīng)的僅使用字符表情符號來說是不可能實現(xiàn)的?,F(xiàn)在字符和圖形表情符號通過各種數(shù)字設備(例如,移動通信設備和平板電腦)都可以加以使用,并且用于各種計算活動中,特別是與互聯(lián)網(wǎng)相關的計算設備活動。例如,當起草個人電子郵件時、當在互聯(lián)網(wǎng)上(例如,在社交網(wǎng)站或網(wǎng)絡論壇上)發(fā)布消息時、以及當在移動設備之間傳送消息時,通??蓱脠D形表情符號。通常,當用戶進行適用于表情符號的計算活動時,用戶可以從菜單或庫瀏覽并選擇用于在計算活動中使用的表情符號。
不幸的是,隨著圖形表情符號的出現(xiàn),用戶可以選擇的表情符號的數(shù)量已經(jīng)大大增加。幾乎每個可以想象的主題都存在圖形表情符號。由于表情符號的數(shù)量、用法、可用性和種類的擴增,當用戶參與適用表情符號的計算活動時,用戶瀏覽并選擇適合于給定的情境的表情符號可能是相當耗時的,并且有時極度的耗時。
技術實現(xiàn)要素:
本文所討論的各種實施例提供了一種用于識別并建議用于文本段的表情符號的系統(tǒng)和方法。一些系統(tǒng)和方法可在用戶在計算設備上的活動期間使用,所述計算設備上的活動包括但不限于:即時消息傳送、參與在線聊天室、起草電子郵件、發(fā)布網(wǎng)絡博客或在網(wǎng)絡論壇上發(fā)布消息。
示例性的方法包括從文本域接收一組段,分析一組段以確定與一組段相關的目標潛臺詞或目標含義的至少一個,以及識別一組候選表情符號,其中一組候選表情符號中的每個候選表情符號都具有候選表情符號和目標潛臺詞或目標含義中的至少一個之間的關聯(lián)。該方法還可包括在輸入光標的當前位置處呈現(xiàn)一組候選表情符號以供輸入選擇,為選自一組候選表情符號的一組表情符號接收輸入選擇,以及在輸入光標的當前位置處將一組選擇的表情符號插入文本域中。一組段可包括相對于輸入光標在文本域中的當前位置選擇的一個或多個感興趣的段,一組候選表情符號可包括一個或多個候選表情符號,以及一組選擇的表情符號可包括一個或多個選擇的表情符號。根據(jù)該實施例,分析一組段可包括對該組段的語義分析。
對于一些實施例來說,每個關聯(lián)可包括候選表情符號與目標潛臺詞或目標含義中的至少一個的統(tǒng)計使用率。此外,對于一些實施例來說,該方法還包括基于對于一組選擇的表情符號的輸入選擇更新候選表情符號的統(tǒng)計使用率。根據(jù)本實施例,統(tǒng)計使用率可基于單個用戶或多個用戶的使用率。
呈現(xiàn)所述一組表情符號以供輸入選擇可包括在輸入光標的當前位置處或附近顯示表情符號以供輸入選擇。呈現(xiàn)一組候選表情符號以供輸入選擇可包括在物理輸入設備或虛擬輸入設備(例如,屏幕鍵盤或投影鍵盤)上顯示該組候選表情符號以供輸入選擇,其中物理輸入設備和顯示的輸入界面被配置為執(zhí)行該輸入選擇。根據(jù)本實施例,虛擬輸入設備可通過也顯示文本域的顯示設備顯示。此外,虛擬輸入設備可在文本域附近顯示。
在一些實施例中,該方法還可包括使用語法分析識別該組段。每個感興趣的段可包括在輸入光標的當前位置之前或之后的單詞、句子片段、句子、短語或者段落中的至少一個。
在具體的實施例中,識別該組候選表情符號還可至少基于用戶偏好、用戶相關信息或接收者相關信息。用戶相關信息可包括用戶興趣、用戶種族、用戶宗教、用戶地理位置、用戶年齡、用戶關系狀態(tài)和用戶職業(yè)。接收者相關信息可包括接收者與用戶的關系、接收者興趣、接收者種族、接收者宗教、接收者地理位置、接收者年齡、接收者關系狀態(tài)和接收者職業(yè)。
示例性的系統(tǒng)包括處理器、顯示模塊、輸入模塊、段分析模塊、表情符號搜索模塊、表情符號建議模塊和表情符號選擇模塊。顯示模塊可被配置為顯示文本域和輸入文本域中的一個或多個段。
輸入模塊可被配置為從用戶接收段輸入并且將段輸入在輸入光標處輸入到所述文本域中。段分析模塊可被配置為從文本域接收一組段,其中該組段包括相對于輸入光標在文本域中的當前位置選擇的一個或多個感興趣的段。段分析模塊還可被配置為使用處理器分析該組段以確定與該組段相關的目標潛臺詞或目標含義中的至少一個。表情符號搜索模塊可被配置為識別一組候選表情符號,其中一組候選表情符號中的每個候選表情符號具有在候選表情符號與目標潛臺詞或目標含義中的至少一個之間的關聯(lián),并且其中該組候選表情符號包括一個或多個候選表情符號。表情符號建議模塊可被配置為通過顯示模塊在所述輸入光標的當前位置處呈現(xiàn)該組候選表情符號以進行輸入選擇。表情符號選擇模塊可被配置為從輸入模塊接收輸入選擇以從該組候選表情符號選擇一組選擇的表情符號,其中該組選擇的表情符號包括一個或多個選擇的表情符號。表情符號選擇模塊還可被配置為在輸入光標的當前位置處將該組選擇的表情符號插入到文本域中。
在一些實施例中,該系統(tǒng)還包括表情符號數(shù)據(jù)存儲器,其中表情符號數(shù)據(jù)存儲器包括能夠輸入到文本域中的一個或多個表情符號,以及其中表情符號搜索模塊還被配置為識別表情符號數(shù)據(jù)存儲器上的一組候選表情符號。
在各種實施例中,每個關聯(lián)可包括候選表情符號與目標潛臺詞或目標含義中的至少一個的統(tǒng)計使用率,并且表情符號選擇模塊還可被配置為基于對該組選擇的表情符號的輸入選擇更新候選表情符號的統(tǒng)計使用率。
在一些實施例中,通過所述顯示模塊呈現(xiàn)該組表情符號以供輸入選擇可包括在輸入光標的當前位置處或附近顯示表情符號以供輸入選擇。輸入模塊可包括物理輸入設備或虛擬輸入設備,其中物理輸入設備和虛擬輸入界面被配置為執(zhí)行所述輸入選擇。
在一個方面,本發(fā)明涉及一種計算機實現(xiàn)的方法。所述方法包括:確定文本域中的文本的第一情感;在所述文本域中的輸入光標的當前位置附近,從所述文本域中選擇第一文本;至少基于用戶對插入到具有相應的第二情感的相應的第二文本附近的表情符號的歷史選擇來識別一個或多個候選表情符號,其中,每個候選表情符號與指示該候選表情符號與所述第一文本和所述第一情感的相關性的各自的分數(shù)相關聯(lián);提供具有相應的最高分數(shù)的一個或多個候選表情符號以供用戶選擇;以及接收用戶對一個或多個提供的表情符號的選擇,并且在所述輸入光標的當前位置處將所選擇的表情符號插入到所述文本域中。
在某些實施例中,所述方法包括:接收由用戶提供的一個或多個用戶定義的表情符號,每個用戶定義的表情符號都包括所述表情符號的視覺表示,并且與相應的自然語言和相應的文本相關聯(lián)。所述方法還包括:為所述用戶提供信用賬戶以創(chuàng)建所述用戶定義的表情符號。例如,所述信用可以是用于電子游戲的虛擬資產(chǎn)??梢韵蛩鲇脩籼峁╆P于其他用戶對所述用戶定義的表情符號的使用的統(tǒng)計。
在一些實施方式中,所述候選表情符號中的一個是所述用戶定義的表情符號中的一個,并且具有高于其他候選表情符號的分數(shù)的相關聯(lián)的分數(shù)。提供供用戶選擇的候選表情符號可以包括:根據(jù)各自的分數(shù)對候選表情符號進行排序,并且根據(jù)所述順序提供候選表情符號。
所述方法還可以包括:確定所述第一文本是與品牌、產(chǎn)品和/或服務相關聯(lián)的文本,并且基于此識別用于所述品牌、所述產(chǎn)品和/或所述服務的候選表情符號。所述品牌、所述產(chǎn)品或所述服務的所述候選表情符號的相關分數(shù)可以高于其他候選表情符號的相關分數(shù)。在一些示例中,所述方法包括:基于所述第一和第二文本之間的距離、用戶選擇所述特定表情符號的歷史數(shù)量以及所述第一和第二情感之間的相似性,計算特定候選表情符號的分數(shù)。所述分數(shù)可以基于所述第一文本的自然語言與所述第二文本的自然語言之間的相似性。
在一些實施方式中,提供所述候選表情符號包括:在所述輸入光標的當前位置處或附近呈現(xiàn)所述候選表情符號以供用戶選擇。例如,所述第一文本可以包括在所述輸入光標的當前位置之前或之后的單詞、句子片段、句子、短語或段落中的至少一個。在一個示例中,識別所述候選表情符號還至少基于所述用戶的偏好、用戶相關信息或接收者相關信息。所述方法可以包括:提供應用程序接口,通過所述接口可以啟動對所述候選表情符號的識別。
在另一方面,一種系統(tǒng)包括可搜索的表情符號語料庫和被編程為提供應用程序接口的一個或多個計算機。所述應用程序接口被配置為執(zhí)行操作,所述操作包括:確定文本域中的文本的第一情感;在所述文本域中的輸入光標的當前位置附近,從所述文本域中選擇第一文本,其中,所選擇的文本包括一個或多個段;至少基于用戶對插入到具有相應的第二情感的相應的第二文本附近的表情符號的歷史選擇來識別所述語料庫中的一個或多個候選表情符號,其中,每個候選表情符號與指示該候選表情符號與所述第一文本和所述第一情感的相關性的各自的分數(shù)相關聯(lián);提供具有相應的最高分數(shù)的一個或多個候選表情符號以供用戶選擇;以及接收用戶對一個或多個提供的表情符號的選擇,并且在所述輸入光標的當前位置處將所選擇的表情符號插入到所述文本域中。
在一些示例中,所述表情符號的語料庫包括公共表情符號和私人表情符號。所述操作還可包括:接收由用戶提供的一個或多個用戶定義的表情符號,每個用戶定義的表情符號都包括所述表情符號的視覺表示,并且與相應的自然語言和相應的文本相關聯(lián)。在一個實施方式中,所述操作包括:為所述用戶定義的表情符號的創(chuàng)建而為所述用戶提供信用賬戶。例如,所述信用可以是用于電子游戲的虛擬資產(chǎn)或虛擬貨幣??梢韵蛩鲇脩籼峁╆P于其他用戶對所述用戶定義的表情符號的使用的統(tǒng)計。
在各種實現(xiàn)方式中,提供供用戶選擇的候選表情符號包括:根據(jù)各自的分數(shù)對候選表情符號進行排序,并且根據(jù)所述順序提供候選表情符號。所述操作還可以包括:確定所述第一文本是與品牌、產(chǎn)品和/或服務相關聯(lián)的文本,并且基于此識別用于所述品牌、所述產(chǎn)品和/或所述服務的候選表情符號。在一個示例中,所述操作還包括:基于所述第一和第二文本之間的距離、用戶選擇所述特定表情符號的歷史數(shù)量以及所述第一和第二情感之間的相似性,計算特定候選表情符號的分數(shù)。所述分數(shù)還基于所述第一文本的自然語言與所述第二文本的自然語言之間的相似性。
在某些例子中,提供所述候選表情符號包括:在所述輸入光標的當前位置處或附近呈現(xiàn)所述候選表情符號以供用戶選擇。所述第一文本可以包括在所述輸入光標的當前位置之前或之后的單詞、句子片段、句子、短語或段落中的至少一個。識別所述候選表情符號還至少基于所述用戶的偏好、用戶相關信息和/或接收者相關信息。所述操作還可以包括:提供應用程序接口,通過所述接口可以啟動對所述候選表情符號的識別。
在另一方面,本發(fā)明涉及一種存儲在一個或多個存儲介質(zhì)中用于控制數(shù)據(jù)處理設備的處理模式的計算機程序產(chǎn)品。所述計算機程序產(chǎn)品可由所述數(shù)據(jù)處理設備執(zhí)行以使所述數(shù)據(jù)處理設備執(zhí)行操作,所述操作包括:確定文本域中的文本的第一情感;在所述文本域中的輸入光標的當前位置附近,從所述文本域中選擇第一文本;至少基于用戶對插入到具有相應的第二情感的相應的第二文本附近的表情符號的歷史選擇來識別一個或多個候選表情符號,其中,每個候選表情符號與指示該候選表情符號與所述第一文本和所述第一情感的相關性的各自的分數(shù)相關聯(lián);提供具有相應的最高分數(shù)的一個或多個候選表情符號以供用戶選擇;以及接收用戶對一個或多個提供的表情符號的選擇,并且在所述輸入光標的當前位置處將所選擇的表情符號插入到所述文本域中。
通過以下結(jié)合以舉例方式示出根據(jù)各種實施例的特征的附圖的詳細說明,一些實施例的其他特征和方面將變得明顯。
附圖說明
參考以下附圖詳細描述各種實施例。附圖僅僅是為了說明的目的,并且僅僅示出了一些示例性的實施例。提供這些附圖是為了便于讀者理解各種實施例,而不應認為是對實施例的廣度、范圍或適用性的限制。
圖1示出了可以使用各種實施例的環(huán)境的示例。
圖2是根據(jù)一些實施例的示例性的表情符號建議系統(tǒng)的框圖。
圖3是根據(jù)一些實施例的用于識別并建議表情符號的示例性方法的流程圖。
圖4是根據(jù)一些實施例的使用客戶端—服務器架構(gòu)的示例性表情符號建議系統(tǒng)的框圖。
圖5示出了在消息傳送應用使用本發(fā)明的實施例的情況下,消息傳送應用的用戶界面。
圖6示出了在消息傳送應用使用本發(fā)明的實施例的情況下,消息傳送應用的用戶界面。
圖7是示例性數(shù)字設備的框圖。
圖8是用于基于在文本片段中的檢測到的情感插入表情符號的示例性方法的流程圖。
圖9是示例性的用戶定義表情符號系統(tǒng)的示意性框圖。
具體實施方式
本文描述的多個實施例涉及在計算設備的各種活動期間識別并建議表情符號的系統(tǒng)和方法,其中,所述計算設備的各種活動包括在文本域中鍵入字符。各種系統(tǒng)和方法可以通過分析存在于文本域中的段的上下文并基于上下文識別可用于輸入到文本域中的一個或多個候選表情符號來識別表情符號。隨后,用戶可從候選表情符號中選擇一個或多個表情符號并且可將選擇的表情符號輸入到文本域中??蛇x的,用戶可選擇完全忽略表情符號建議并繼續(xù)其在計算設備上的活動。如在本說明書中所使用的,“段(segment)”可包含表示單詞、短語、句子片段、句子或一段的一個或多個字符。
根據(jù)實施例,對文本域中存在的段的上下文的分析可以包括確定與那些段相關的潛臺詞或含義,這可能需要對那些段進行語義分析。此外,如本文所述,特定的候選表情符號和特定的潛臺詞或含義之間的關聯(lián)可以基于特定候選表情符號與特定潛臺詞或含義的(過去的)統(tǒng)計使用率。在各種實施例中,這種表情符號的使用率可以基于用戶對特定的表情符號與特定的潛臺詞或含義的個人使用率(例如,用戶在特定的潛臺詞或含義中選擇的建議表情符號),或者可以基于特定的表情符號與特定的潛臺詞或含義的團體使用率(例如,觀察到的用戶團體在社交網(wǎng)絡上發(fā)布消息時使用的某些表情符號)。
圖1示出了可使用各種實施例的環(huán)境100的示例。環(huán)境100包括平板計算設備104、連接至平板計算設備104的本地表情符號數(shù)據(jù)存儲器102、智能手機計算設備108、連接至智能手機計算設備108的本地表情符號數(shù)據(jù)存儲器106、臺式計算設備112、連接至臺式計算設備112的本地表情符號數(shù)據(jù)存儲器114、表情符號建議服務器116和連接至表情符號建議服務器116的本地表情符號數(shù)據(jù)存儲器118。環(huán)境100還包括通信網(wǎng)絡110,其中,平板計算設備104、智能手機計算設備108、臺式計算設備112和表情符號建議服務器116在該通信網(wǎng)絡110上通信。平板計算設備104、智能手機計算設備108、臺式計算設備112和表情符號建議服務器116是具有處理器和存儲器的數(shù)字設備的示例。各種實施例可使用的其他示例性數(shù)字設備包括膝上計算機、上網(wǎng)本、筆記本電腦、媒體設備、音樂播放設備個人數(shù)字助理(PDA)等等。圖7進一步描述了示例性的數(shù)字設備。
根據(jù)一些實施例,平板計算設備104、智能手機計算設備108和臺式計算設備112可以是使用用于識別并建議用于輸入的表情符號的系統(tǒng)和方法的示例性數(shù)字設備。例如,當用戶正在該計算設備上使用即時消息應用程序時,或當用戶通過該計算設備在網(wǎng)站論壇上發(fā)布消息時,該計算設備可利用某些實施例識別并建議表情符號。本領域的普通技術人員將會理解其他數(shù)字設備可結(jié)合本文所述的各種實施例使用。
在一些實施例中,表情符號建議服務器116可便于為使用數(shù)字設備的用戶識別并建議表情符號。如本文后面所述的,表情符號建議服務器116可確定段的上下文,可基于確定的上下文識別一個或多個候選表情符號,可向數(shù)字設備建議一個或多個候選表情符號,或者可執(zhí)行上述功能的一些結(jié)合。對于各種實施例來說,表情符號建議服務器116可以是在承載互聯(lián)網(wǎng)服務的服務器上運行的服務,其中表情符號建議服務器116向互聯(lián)網(wǎng)服務提供表情符號建議功能。例如,表情符號建議服務器116可以是在承載網(wǎng)站(例如,網(wǎng)站論壇或社交網(wǎng)絡網(wǎng)站)的網(wǎng)絡服務器上運行的服務,該網(wǎng)站由表情符號建議服務器116服務(即,由表情符號建議服務器116提供表情符號建議)。
根據(jù)本實施例,用于識別并建議表情符號的各種操作和部件可以是與使用表情符號建議的數(shù)字設備分離的,或者可以分布在兩個或更多數(shù)字設備之間的不同位置。例如,當在智能手機計算設備108上起草電子郵件時,用于識別、建議以及輸入表情符號的系統(tǒng)或方法可以完全嵌入于在智能手機計算設備108上存儲并運行的電子郵件應用中。在可替代的示例中,當使用平板計算設備104來準備在網(wǎng)站論壇上發(fā)布的消息時,用于識別、建議以及輸入表情符號的系統(tǒng)或方法可利用平板計算設備104確定當前準備的消息的上下文,利用表情符號建議服務器116識別要在當前準備的消息中使用的一個或多個候選表情符號,然后利用平板計算設備104顯示作為建議的表情符號的候選表情符號。
在識別并向數(shù)字設備建議表情符號期間,表情符號建議服務器116可使用遠程表情符號數(shù)據(jù)存儲器118。對于某些實施例來說,遠程表情符號數(shù)據(jù)存儲器118可包括可用于由表情符號建議服務器116建議的表情符號庫,以及庫中的表情符號和上下文(例如,潛臺詞和含義)之間的關聯(lián)。例如,遠程表情符號數(shù)據(jù)存儲器118可包括“笑臉”表情符號庫,以及“笑臉”表情符號和高興上下文之間的關聯(lián)。在另一示例中,遠程表情符號數(shù)據(jù)存儲器118可包括“舊金山”表情符號庫,以及“舊金山”表情符號和明確地或含蓄地引用舊金山城市的上下文之間的關聯(lián)。對于一些實施例來說,遠程表情符號數(shù)據(jù)存儲器118可包括給定的表情符號和給定的上下文(例如,潛臺詞或含義)之間的兩個或更多關聯(lián)。例如,遠程表情符號數(shù)據(jù)存儲器118可包括“皺眉”表情符號庫,“皺眉”表情符號和難過上下文之間的關聯(lián),以及“皺眉”表情符號和不高興上下文之間的關聯(lián)。本領域的技術人員將會理解,各種表情符號庫以及表情符號與上下文之間的各種關聯(lián)可存儲在遠程表情符號數(shù)據(jù)存儲器118上。
根據(jù)本實施例,表情符號庫可包括可由任何用戶使用或可由有限的用戶群限制使用(例如,基于額外費用、或僅某些用戶群可使用)的表情符號,用戶自定義或用戶上傳的表情符號,或用戶喜愛的表情符號。除了傳達作者的心情或情緒的字符和圖形表情符號之外,各種實施例的表情符號可包括與興趣、愛好、地理位置、事件、假日、季節(jié)、天氣等等相關的表情符號。存儲在表情符號建議數(shù)據(jù)存儲器118上的表情符號可包括字符表情符號、圖形表情符號、圖形的動畫表情符號和伴有聲音的表情符號。對于一些實施例來說,遠程表情符號數(shù)據(jù)存儲器118還可包括當識別出適于建議的表情符號時可被實施例利用的用戶偏好、用戶信息或接收者信息。例如,遠程表情符號數(shù)據(jù)存儲器118可存儲導致實施例在建議任何用戶通??捎玫谋砬榉栔敖ㄗh用戶定義的或用戶上傳的表情符號的用戶偏好。在另一示例中,遠程表情符號數(shù)據(jù)存儲器118可存儲導致實施例自動插入由實施例向用戶建議的第一表情符號或自動插入建議的在給定的上下文中使用率最高的表情符號的用戶偏好。
在一些實施例中,平板計算設備104、智能手機計算設備108和臺式計算設備112可各自連接至單獨的本地表情符號數(shù)據(jù)存儲器,該本地表情符號數(shù)據(jù)存儲器能夠存儲用戶自定義的表情符號、用戶喜愛的或偏好的表情符號、存儲在本地表情符號數(shù)據(jù)存儲器上的表情符號和上下文(例如,潛臺詞或含義)之間的關聯(lián)、關于識別和建議表情符號的用戶偏好、用戶相關信息或接收者相關信息。例如,平板計算設備104可連接至本地表情符號數(shù)據(jù)存儲器102,智能手機計算設備108可連接至本地表情符號數(shù)據(jù)存儲器106,以及臺式計算設備112可連接至本地表情符號數(shù)據(jù)存儲器114。
此外,本地表情符號數(shù)據(jù)存儲器102、106和114中的每一個均可由他們各自的計算設備使用,以在本地緩存以前建議的表情符號或者用戶以前選擇的建議的表情符號。在這種情況下,對于經(jīng)常出現(xiàn)的上下文,一些實施例可重復地建議相同的表情符號同時限制表情符號建議服務器116查詢建議的表情符號的次數(shù)。對于一些實施例來說,在本地表情符號數(shù)據(jù)存儲器102、106和114中緩存的表情符號可具有有效期,在有效期之后緩存的表情符號無效或被清除。一旦緩存中的表情符號項到期,一些實施例就重新開始向表情符號建議服務器116查詢建議的表情符號。
圖2是根據(jù)一些實施例的示例性表情符號建議系統(tǒng)200的框圖。表情符號建議系統(tǒng)200可包括顯示模塊202、輸入模塊204、段分析模塊206、表情符號搜索模塊208、表情符號建議模塊210、表情符號選擇模塊212和表情符號數(shù)據(jù)存儲器214。在一些實施例中,表情符號建議系統(tǒng)200還可包括存儲器和至少一個處理器,這便于包含在表情符號建議系統(tǒng)200中的各種模塊的操作。
顯示模塊202可顯示輸入欄(例如,文本域或文本框),用戶可使用輸入模塊204在輸入欄中輸入一個或多個段、字符表情符號或圖形表情符號。通常,當段和表情符號被輸入到輸入欄時,它們出現(xiàn)在輸入欄。如本文所提到的,“段”可包括表示單詞、短語、句子片段、句子或段落的一個或多個字符。作為輸入欄的部分,顯示模塊202可顯示輸入光標,其指示用戶的字符輸入接下來將要被輸入到什么位置或者表情符號接下來將要被輸入到什么位置。
如本文中所提到的,各種實施例可基于輸入光標在輸入欄內(nèi)的當前位置、輸入的當前段內(nèi)容、用戶相關信息、接受者相關信息、用戶偏好或它們的一些結(jié)合來建議表情符號。通常,一旦已經(jīng)識別到向用戶建議的一個或多個候選表情符號(例如,基于輸入欄的段內(nèi)容),就可通過顯示模塊202向用戶建議候選表情符號。具體地,顯示模塊202可針對用戶的選擇在輸入欄中的輸入光標的當前位置處或其附近顯示候選表情符號。根據(jù)本實施例,顯示模塊202可通過標注框在輸入欄處或其附近顯示候選表情符號。
對于一些實施例來說,顯示模塊202可形成為數(shù)字設備(例如,視頻顯示器或視頻投影機)的一部分,顯示模塊202可負責顯示數(shù)字設備的全部圖形輸出。在一些實施例中,顯示模塊202可顯示作為圖形用戶界面(GUI)的一部分的輸入欄。例如,輸入欄可以是在數(shù)字設備(例如,電子郵件客戶端,或即時消息應用)上運行的應用的圖形部件,或者可以是通過在數(shù)字設備上運行的應用而可視或可編輯的文件的圖形表示(例如,通過網(wǎng)頁瀏覽器示出的網(wǎng)頁的文本域或通過文字處理器示出的文件)。本領域普通技術人員將會理解,在不同實施例中,輸入欄的類型和尺寸可以不同。
輸入模塊204可從用戶接收用戶的字符輸入并將該字符輸入作為接收的字符輸入輸入至輸入欄內(nèi)。當字符輸入被輸入到輸入欄時,顯示模塊202可用該字符輸入更新輸入欄。此外,輸入模塊204還可接收針對根據(jù)各種實施例建議的表情符號的輸入選擇。通常,一旦選擇,就可將選擇的表情符號插入到輸入欄中的輸入光標的當前位置處。根據(jù)實施例,輸入模塊可包括外部連接至數(shù)字設備或物理嵌入到數(shù)字設備內(nèi)的物理輸入設備。物理輸入設備的示例可包括但不限于:鍵盤、觸控板或電腦鼠標。在一些實施例中,輸入模塊可包括可通過顯示模塊202提供(例如,顯示)給用戶的虛擬輸入設備,例如,激光投影鍵盤或屏幕鍵盤。在各種實施例中,當使用虛擬輸入設備時,該虛擬輸入設備可顯示在將要輸入段的輸入欄處或其附近。
如在圖6中進一步所述的,在一些實施例中,可通過輸入模塊204將建議的表情符號呈現(xiàn)給用戶。例如,當輸入模塊204包括物理鍵盤時,物理鍵盤可被配置為通過物理鍵盤顯示建議的表情符號。對于一些實施例來說,物理鍵盤可通過包括嵌入的顯示器的鍵或按鈕(例如,LCD按鈕),或通過嵌入在物理鍵盤表面上(例如,鍵盤的頂部)的顯示器顯示建議的表情符號。根據(jù)本實施例,建議的表情符號可通過物理鍵盤以顏色或灰度顯示。當通過物理鍵盤顯示建議的表情符號時,用戶可通過物理鍵盤的鍵或按鈕選擇一個或多個建議的表情符號。
在另一示例中,當輸入模塊204包括屏幕鍵盤(如在一些平板計算設備和智能手機計算設備上發(fā)現(xiàn)的那些)時,屏幕鍵盤的外觀可被重新配置為通過屏幕鍵盤顯示建議的表情符號。對于一些實施例來說,屏幕鍵盤的外觀可被重新配置以使屏幕鍵盤的某些按鈕被建議的表情符號按鈕代替,或者以使屏幕鍵盤增添額外的建議表情符號按鈕。一旦通過屏幕鍵盤呈現(xiàn),用戶就可使用建議的表情符號按鈕來從一個或多個建議的表情符號中選擇。
段分析模塊206可分析呈現(xiàn)在輸入欄中的一個或多個段并確定進行分析的段的上下文。如本文中所述,當識別要向用戶建議的候選表情符號時,可隨后使用由段分析模塊206確定的上下文。在各種實施例中,當確定輸入欄中的段的上下文時,段分析模塊206可僅分析輸入欄中感興趣的段。
在一些實施例中,段分析模塊206首先識別輸入欄中感興趣的段,然后分析那些感興趣的段以確定上下文。通常,感興趣的段是相對于輸入光標在輸入欄中的當前位置識別的。對于另一些實施例來說,當識別感興趣的段時,段分析模塊206可對當前呈現(xiàn)在輸入欄中的段進行語法分析。
根據(jù)本實施例,段分析模塊206可基于引導感興趣的段識別進程的條件或非條件規(guī)則識別感興趣的段。用于識別感興趣的段的示例性規(guī)則可包括:將剛好在輸入欄中的輸入光標的當前位置之前的句子片段或句子識別為感興趣的段。用于識別感興趣的段的另一示例性規(guī)則可包括:將剛好在輸入欄中的輸入光標的當前位置之后的句子片段或句子識別為感興趣的段。對于一些實施例來說,規(guī)則可與段分析模塊206執(zhí)行的語法分析結(jié)合使用以確定感興趣的段。
當識別到多于一個感興趣的段時,段分析模塊206可分析每個感興趣的段的上下文,或可分析除了最不重要的感興趣的段(例如,基于權重系統(tǒng),其中某些感興趣的段比其他感興趣的段更重要)之外的所有感興趣的段的上下文。此外,當識別出兩個或更多個感興趣的段時,可利用一個或多個規(guī)則來確定應該分析哪些感興趣的段。
段分析模塊206可從感興趣的段確定兩個或更多個上下文。在這種情況下,表情符號建議系統(tǒng)200可搜索與所有確定的上下文相關的候選表情符號,或可僅搜索與一個或多個最重要的上下文(例如,基于規(guī)則確定的)相匹配的候選表情符號。
為了確定一個或多個感興趣的段的上下文,段分析模塊206可對呈現(xiàn)在輸入欄中的感興趣的段進行語義分析。本領域的技術人員將會理解,可根據(jù)本領域已知的一個或多個技術對段進行語義分析。當對感興趣的一個或多個段的上下文進行分析時,段分析模塊206可確定感興趣的段的潛臺詞或含義。表情符號建議系統(tǒng)200基于識別的感興趣的潛臺詞或含義,識別出一個或多個候選表情符號以給出建議。感興趣的段的潛臺詞可識別感興趣的段的心情或情緒。感興趣的段的示例潛臺詞可包括但不限于高興、難過、冷漠、生氣、怨恨、悔悟或興奮。感興趣的段的含義可識別感興趣的段的明確含義。例如,在感興趣的段敘述“我剛剛得到一個新的工作!”的情況下,段分析模塊206可將感興趣的段的含義識別為“新的工作”。
應當注意到對于一些實施例來說,當用戶使用輸入模塊204向輸入欄添加字符或表情符號或者從輸入欄移除字符或表情符號時,段分析模塊206可實時或接近實時的識別并分析感興趣的段。
表情符號搜索模塊208可基于識別的感興趣的段的上下文搜索一個或多個候選表情符號。在一些實施例中,表情符號搜索模塊208可搜索表情符號數(shù)據(jù)存儲器214以查找與表情符號建議系統(tǒng)200識別的一個或多個上下文相關的表情符號。如本文中所述,表情符號數(shù)據(jù)存儲器214可包括可輸入到輸入欄中的表情符號,以及表情符號和一個或多個上下文之間的關聯(lián)。
如本文中所提到的,給定的表情符號和給定的上下文之間的關聯(lián)可包括給定的表情符號與給定的上下文的統(tǒng)計使用率。給定的表情符號和給定的上下文之間的關聯(lián)的強度可基于該統(tǒng)計使用率。此外,統(tǒng)計使用率可基于對給定的表情符號與給定的內(nèi)容的用戶的個人使用率,或者可基于用戶團體對給定的表情符號與給定的內(nèi)容的使用率(例如,給定的表情符號在社交網(wǎng)絡網(wǎng)站上給定的上下文中的使用率)。
通常,給定的表情符號與給定的上下文的使用率越高,給定的表情符號與給定的上下文之間的關聯(lián)就越強。對于一些實施例來說,表情符號與上下文之間的關聯(lián)強度可表示將表情符號建議給上下文的置信度。關聯(lián)強度也可用于從最高強度到最低強度按優(yōu)先次序列出并呈現(xiàn)一個或多個候選表情符號。
在一些實施例中,通過表情符號搜索引擎模塊208搜索一個或多個候選表情符號可考慮表情符號與上下文之間的關聯(lián)強度。例如,如果表情符號與目標上下文之間的關聯(lián)強度達到或超過預定閾值,則表情符號搜索引擎模塊208可僅識別一個表情符號作為候選表情符號。此外,當表情符號與目標上下文之間的關聯(lián)強度相對于其他潛在候選表情符號達到或超過閾值時,表情符號搜索引擎模塊208可僅識別一個表情符號作為候選表情符號。
如本文中所提到的,在各種實施例中,表情符號搜索模塊208可通過使用用戶偏好、用戶相關信息、接收者相關信息或它們的一些結(jié)合來進一步縮小候選表情符號的搜索范圍。用戶偏好的示例可包括但不限于,在建議其他類型的表情符號之前建議用戶自定義的表情符號的偏好,和忽略某些種類的表情符號的偏好(例如,僅建議與用戶年齡相當?shù)谋砬榉?。接收者相關信息的示例可包括但不限于,用戶興趣、用戶種族、用戶宗教、用戶地理位置、用戶年齡、用戶關系狀態(tài)和用戶職業(yè)。用戶相關信息的示例可包括但不限于,接收者與用戶的關系、接收者興趣、接收者種族、接收者宗教、接收者地理位置、接收者年齡、接收者的親屬狀態(tài)和接收者職業(yè)。在某些實施例中,當搜索一個或多個候選表情符號時,表情符號搜索模塊208可進一步考慮輸入欄接收字符或圖形表情符號的限制并相應地搜索候選表情符號。
表情符號建議模塊210可接收基于識別的感興趣的段的上下文定位的一個或多個候選表情符號,并向用戶呈現(xiàn)一個或多個候選表情符號以使用戶選擇。如本文中所提到的,在一些實施例中,表情符號建議模塊210可使用顯示模塊202在輸入光標在輸入欄中的當前位置或附近顯示一個或多個候選表情符號以進行輸入選擇。還如本文中所提到的,在各種實施例中,表情符號建議模塊210可使用輸入模塊202來通過物理輸入設備或虛擬輸入設備顯示一個或多個候選表情符號以進行輸入選擇。
表情符號選擇模塊212可從用戶接收向用戶建議的一個或多個候選表情符號的輸入選擇。在具體的實施例中,表情符號選擇模塊212可通過輸入模塊204接收對一個或多個候選表情符號的輸入選擇,并且表情符號選擇模塊212可將一個或多個選擇的表情符號輸入到輸入欄中。如本文中所提到的,表情符號選擇模塊212可在輸入光標的當前位置處輸入一個或多個選擇的表情符號。對于一些實施例來說,表情符號選擇模塊212可通過由一個或多個選擇的表情符號代替輸入欄內(nèi)的段或感興趣的段來將一個或多個選擇的表情符號輸入到輸入欄中。此外,一些實施例可使得用戶能夠設置表情符號選擇模塊212(例如,使用用戶偏好),以便模塊212基于某些準則而自動選擇建議的表情符號。例如,用戶可配置表情符號選擇模塊212以使得當建議表情符號時首先選中建議的表情符號。
在一些實施例中,在表情符號與上下文之間的關聯(lián)包括該表情符號與該上下文的統(tǒng)計使用率的情況下,表情符號選擇模塊212可基于從用戶接收的輸入選擇更新統(tǒng)計使用率信息。特別地,表情符號選擇模塊212可接收對于給定的上下文的一個或多個候選表情符號的輸入選擇,并且更新存儲在選擇的候選表情符號與它們各自的上下文使用率之間的統(tǒng)計使用率信息。根據(jù)本實施例,表情符號選擇模塊212可在表情符號數(shù)據(jù)存儲器214上更新統(tǒng)計使用率信息。
表情符號數(shù)據(jù)存儲器214可包括表情符號庫以及庫中的表情符號與上下文(例如,潛臺詞和含義)之間的關聯(lián),表情符號建議系統(tǒng)200進行建議時可使用該表情符號庫。當搜索與一個或多個特定的上下文關聯(lián)的一個或多個候選表情符號時,表情符號搜索模塊208可訪問表情符號數(shù)據(jù)存儲器214。如本文中所提到的,對于一些實施例來說,表情符號數(shù)據(jù)存儲器214可包括給定的表情符號和給定的上下文(例如,潛臺詞或含義)之間的兩個或更多個的關聯(lián)。此外,給定的表情符號和給定的上下文之間的關聯(lián)可包括給定的表情符號與給定的上下文的統(tǒng)計使用率。該統(tǒng)計使用率可反映表情符號和上下文之間的關聯(lián)強度。
存儲在表情符號數(shù)據(jù)存儲器214上的表情符號可包括字符表情符號、圖形表情符號、圖形的動畫表情符號和伴有聲音的表情符號。對于一些實施例來說,表情符號數(shù)據(jù)存儲器214還可包括用戶偏好、用戶信息或接收者信息,當識別適合于建議的表情符號時,其可被實施例使用。例如,表情符號數(shù)據(jù)存儲器214可存儲這樣的用戶偏好,即,其使得實施例在建議通常任何用戶可得到的表情符號之前建議用戶定義的或用戶上傳的表情符號。在另一示例中,表情符號數(shù)據(jù)存儲器214可存儲這樣的用戶偏好,即,其使得實施例自動插入由實施例向用戶建議的第一表情符號或自動插入建議的在給定的上下文中具有最高使用率的表情符號。
本領域的技術人員將會理解,各種表情符號庫以及表情符號與上下文之間的各種關聯(lián)可存儲在表情符號數(shù)據(jù)存儲器214上。
將要理解的是,“模塊”可包括軟件、硬件、固件和/或電路。在一個示例中,包括能夠由處理器執(zhí)行的指令的一個或多個軟件程序可執(zhí)行本文所述的模塊的一個或多個功能。在另一示例中,電路可執(zhí)行相同或相似的功能。可替換的實施例可包括更多、更少或功能上等價的模塊并且其仍然在本實施例的范圍之內(nèi)。例如,可以將各個模塊的功能不同地結(jié)合或分離。例如,各個模塊的功能可分布在駐留于表情符號建議服務器的一個或多個模塊之間,并且一個或多個模塊駐留于表情符號建議客戶端。
圖3是根據(jù)一些實施例用于識別并建議表情符號的示例性方法300的流程圖。在步驟302中,段分析模塊206可從可通過顯示模塊202顯示的輸入欄接收一個或多個段。如本文中所提到的,一旦接收到一個或多個段,段分析模塊206就可為了上下文分析的目的而識別感興趣的段。
在步驟304中,段分析模塊206可分析一個或多個段以確定段的一個或多個目標含義或一個或多個目標潛臺詞。段的目標潛臺詞和目標含義提供用于與段相關的一個或多個上下文。根據(jù)本實施例,段分析模塊206可僅分析已經(jīng)通過段分析模塊206識別為感興趣的段的那些段。
在步驟306中,表情符號搜索模塊208可識別與已經(jīng)通過段分析模塊206確定的、一個或多個目標上下文或一個或多個目標含義具有關聯(lián)的一個或多個候選表情符號。在一些實施例中,表情符號搜索模塊208可識別表情符號數(shù)據(jù)存儲器214中與目標潛臺詞或目標含義具有關聯(lián)的一個或多個候選表情符號。如本文中所提到的,每個關聯(lián)的強度可基于給定的表情符號與給定的上下文的統(tǒng)計使用率,并且當表情符號搜索模塊208識別一個或多個候選表情符號時可考慮該強度。
在步驟308中,表情符號建議模塊210可在輸入欄中的輸入光標的當前位置處向用戶呈現(xiàn)一個或多個候選表情符號以進行輸入選擇。如本文所述,可通過顯示模塊202向用戶顯示輸入欄和其中的輸入光標。對于一些實施例來說,表情符號建議模塊210可使用顯示模塊202向用戶呈現(xiàn)一個或多個候選表情符號以進行輸入選擇,并且可在輸入欄中的輸入光標的當前位置處或附近顯示候選表情符號。此外,表情符號建議模塊210可通過輸入模塊204的一個或多個輸入裝置向用戶呈現(xiàn)一個或多個候選表情符號以進行輸入選擇。例如,表情符號建議模塊210可通過物理輸入設備(如具有顯示器的物理鍵盤)或通過虛擬輸入設備(如屏幕鍵盤)向用戶呈現(xiàn)一個或多個候選表情符號。
在步驟310中,表情符號選擇模塊212可從用戶接收輸入選擇,以從一個或多個候選表情符號選擇一個或多個表情符號。對于一些實施例來說,表情符號選擇模塊212可從輸入模塊204接收輸入選擇。此外,一旦接收到輸入選擇,表情符號選擇模塊212就可基于輸入選擇更新表情符號數(shù)據(jù)存儲器214上的一個或多個候選表情符號的統(tǒng)計使用率信息,從而加強或減弱候選表情符號與特定的上下文之間的關聯(lián)。
在步驟312中,表情符號選擇模塊212可基于輸入選擇,在由表情符號選擇模塊212接收的輸入光標的當前位置處將一個或多個候選表情符號插入到文本域中。如本文中所提到的,在一些實施例中,將候選表情符號輸入到輸入欄中可包括:用選擇的表情符號代替輸入欄中的一個或多個段。
圖4是根據(jù)一些實施例的使用客戶端-服務器體系架構(gòu)的示例性表情符號建議系統(tǒng)400的框圖。表情符號建議系統(tǒng)400可包括表情符號建議客戶端402和表情符號建議服務器420。在一些實施例中,表情符號建議客戶端402可類似于圖7所述的數(shù)字設備,或類似于圖1所述的計算設備(即,平板計算設備104、智能手機計算設備108和臺式計算設備112),并且表情符號建議服務器420可類似于圖7所述的數(shù)字設備,或類似于圖1所述的表情符號建議服務器116。表情符號建議客戶端402和表情符號建議服務器420可通過通信網(wǎng)絡418彼此通信。
表情符號建議客戶端402可包括顯示模塊404、輸入模塊406、段分析模塊408、表情符號搜索模塊410、本地表情符號數(shù)據(jù)存儲器412、表情符號建議模塊414和表情符號選擇模塊416。表情符號建議服務器420可包括表情符號搜索引擎422和遠程表情符號數(shù)據(jù)存儲器424。
在表情符號建議客戶端402,顯示模塊404可顯示輸入欄,用戶可使用輸入模塊406將一個或多個段、字符表情符號或圖形表情符號輸入到輸入欄中。通常,當將段和表情符號輸入到輸入欄時,它們出現(xiàn)在輸入欄中。在設有輸入欄的情況下,顯示模塊404可在輸入欄中顯示輸入光標,其中,輸入光標表示用戶的字符輸入接下來將要輸入的位置或表情符號接下來可輸入的位置。
各種實施例可基于多種因素建議表情符號,所述因素包括:例如,輸入光標在輸入欄內(nèi)的當前位置、輸入的當前段的內(nèi)容、用戶相關信息、接收者相關信息、用戶偏好或它們的一些結(jié)合。一旦識別了候選表情符號,便可通過顯示模塊404向用戶建議所述候選表情符號。具體地,顯示模塊404可在輸入欄中的輸入光標的當前位置或附近顯示候選表情符號,以便用戶選擇。根據(jù)本實施例,顯示模塊404可通過標注框在輸入欄處或輸入欄附近顯示候選表情符號。
數(shù)字設備可通過顯示模塊404顯示數(shù)字設備的所有圖形輸出。在一些實施例中,顯示模塊404可將輸入欄顯示為圖形用戶界面(GUI)的一部分。根據(jù)本實施例,輸入欄可以是在數(shù)字設備上運行的應用的圖形部件,或者可以是通過在數(shù)字設備上運行的應用而可視或可編輯的文件的圖形表示。本領域的普通技術人員將會理解,在不同實施例中,輸入欄的類型和尺寸可以不同。
輸入模塊406可從用戶接收字符輸入并將該字符輸入作為接收的字符輸入輸入至輸入欄之內(nèi)。當字符輸入被輸入到輸入欄時,顯示模塊404可用該字符輸入更新輸入欄。此外,輸入模塊406還可接收針對根據(jù)各種實施例建議的表情符號的輸入選擇。通常,一旦選擇,就可將選擇的表情符號插入到輸入欄中的輸入光標的當前位置處。如本文中所提到的,輸入模塊可包括外部連接至數(shù)字設備或物理嵌入到數(shù)字設備中的物理輸入設備,或可通過顯示模塊404向用戶提供的虛擬輸入設備(如屏幕鍵盤)。在各種實施例中,當使用虛擬輸入設備時,該虛擬輸入設備可顯示在將要輸入段的輸入欄處或其附近。
對于一些實施例來說,可通過輸入模塊406將建議的表情符號呈現(xiàn)給用戶。例如,在輸入模塊406包括物理鍵盤的情況下,物理鍵盤可被配置為通過物理鍵盤顯示建議的表情符號。對于一些實施例來說,物理鍵盤可通過包括嵌入的顯示器的鍵或按鈕(例如,LCD按鈕),或通過嵌入在物理鍵盤表面上(例如,鍵盤的頂部)的顯示器顯示建議的表情符號。建議的表情符號可通過物理鍵盤以顏色或灰度顯示。當通過物理鍵盤顯示建議的表情符號時,用戶可通過物理鍵盤的鍵或按鈕選擇一個或多個建議的表情符號。
在一些實施例中,在輸入模塊406包括屏幕鍵盤的情況下,屏幕鍵盤的外觀可被重新配置為通過屏幕鍵盤顯示建議的表情符號。例如,屏幕鍵盤的外觀可被重新配置以使屏幕鍵盤的某些按鈕被建議的表情符號按鈕代替,或者以使屏幕鍵盤增添額外的建議的表情符號按鈕。一旦通過屏幕鍵盤呈現(xiàn),用戶就可使用建議的表情符號按鈕來從一個或多個建議的表情符號中選擇。
段分析模塊408可分析呈現(xiàn)在輸入欄中的一個或多個段并確定進行分析的段的上下文。如本文中所述,當識別要向用戶建議的候選表情符號時,可隨后使用由段分析模塊408確定的上下文。在各種實施例中,當確定輸入欄中的段的上下文時,段分析模塊408可首先識別輸入欄中感興趣的段,然后僅分析那些感興趣的段。
在一些實施例中,當識別感興趣的段時,段分析模塊408可對當前呈現(xiàn)在輸入欄中的段進行語法分析。此外,段分析模塊408可基于引導感興趣的段識別進程的條件或非條件規(guī)則識別感興趣的段。
為了確定一個或多個感興趣的段的上下文,段分析模塊408可對呈現(xiàn)在輸入欄中的感興趣的段進行語義分析。當分析一個或多個感興趣的段的上下文時,段分析模塊408可確定感興趣的段的潛臺詞或含義。感興趣的段的潛臺詞可識別用于感興趣的段的心情或情緒?;谧R別的感興趣的段的潛臺詞或含義,表情符號建議系統(tǒng)400可識別一個或多個候選表情符號以進行建議。
應當注意到對于一些實施例來說,當用戶使用輸入模塊408向輸入欄添加字符或表情符號或者從輸入欄移除字符或表情符號時,段分析模塊408可實時或接近實時地識別并分析感興趣的段。
表情符號搜索模塊410可基于識別的感興趣的段的上下文(例如,潛臺詞或含義)搜索一個或多個候選表情符號。在一些實施例中,當搜索與一個或多個特定的上下文相關的一個或多個候選表情符號時,表情符號搜索模塊410可訪問本地表情符號數(shù)據(jù)存儲器412。
根據(jù)本實施例,本地表情符號數(shù)據(jù)存儲器412可存儲用戶自定義的表情符號、用戶喜愛的或偏好的表情符號、存儲在本地表情符號存儲器上的表情符號和上下文(例如,潛臺詞或含義)之間的關聯(lián)、在識別和建議表情符號方面的用戶偏好、用戶相關信息或接收者相關信息。此外,可使用本地表情符號數(shù)據(jù)存儲器412在本地緩存以前建議的表情符號或用戶以前選擇的建議的表情符號。
在一些實施例中,表情符號搜索模塊410可利用表情符號建議服務器420搜索候選表情符號并向表情符號建議客戶端402提供候選表情符號。例如,表情符號建議服務器420可在遠程表情符號數(shù)據(jù)存儲器424上搜索候選表情符號,并向表情符號建議客戶端402上的表情符號搜索模塊410提供得到的候選表情符號。表情符號建議服務器420可使用表情符號搜索引擎422來在遠程表情符號數(shù)據(jù)存儲器424上搜索候選表情符號,從遠程表情符號數(shù)據(jù)存儲器424獲得候選表情符號,并向表情符號搜索模塊410提供候選表情符號。
遠程表情符號數(shù)據(jù)存儲器424可包括可用于向表情符號建議客戶端402建議的表情符號庫。遠程表情符號數(shù)據(jù)存儲器424還可包括庫中的表情符號與上下文之間的關聯(lián)。對于某些實施例來說,該關聯(lián)包括庫中的表情符號的給定表情符號與上下文的統(tǒng)計使用率。通常,該統(tǒng)計使用率可反映表情符號和上下文之間的關聯(lián)強度。
如本文中所提到的,存儲在遠程表情符號數(shù)據(jù)存儲器424上的表情符號可包括字符表情符號、圖形表情符號、圖形的動畫表情符號和伴有聲音的表情符號。對于一些實施例來說,遠程表情符號數(shù)據(jù)存儲器424還可包括用戶偏好、用戶信息或接收者信息,當識別適合于建議的表情符號時,其可被實施例使用。本領域的技術人員將會理解,各種表情符號庫以及表情符號與上下文之間的各種關聯(lián)可存儲在遠程表情符號數(shù)據(jù)存儲器424上。
表情符號建議模塊414可接收基于識別的感興趣的段的上下文定位的一個或多個候選表情符號,并向用戶呈現(xiàn)一個或多個候選表情符號以便用戶選擇。如本文中所提到的,在一些實施例中,表情符號建議模塊414可使用顯示模塊414在輸入欄中的輸入光標的當前位置處或附近顯示一個或多個候選表情符號以進行輸入選擇。還如本文中所提到的,在各種實施例中,表情符號建議模塊414可使用輸入模塊406來通過物理輸入設備或虛擬輸入設備顯示一個或多個候選表情符號以進行輸入選擇。
表情符號選擇模塊416可從用戶接收向用戶建議的一個或多個候選表情符號的輸入選擇。在具體的實施例中,表情符號選擇模塊416可通過輸入模塊404接收對一個或多個候選表情符號的輸入選擇,并且表情符號選擇模塊416可將一個或多個選擇的表情符號輸入到輸入欄中。表情符號選擇模塊416可在輸入光標的當前位置處輸入一個或多個選擇的表情符號。此外,表情符號選擇模塊416可通過由一個或多個選擇的表情符號代替輸入欄內(nèi)的段或感興趣的段來將一個或多個選擇的表情符號輸入到輸入欄中。一些實施例可使得用戶能夠設置表情符號選擇模塊416(例如,使用用戶偏好),以便模塊416基于某些準則自動選擇建議的表情符號。例如,用戶可配置表情符號選擇模塊416以使得當建議表情符號時首先選中建議的表情符號。
在一些實施例中,在表情符號與上下文之間的關聯(lián)包括該表情符號與該上下文的統(tǒng)計使用率的情況下,表情符號選擇模塊416可基于從用戶接收的輸入選擇更新統(tǒng)計使用率信息。特別地,表情符號選擇模塊416可接收對于給定的上下文的一個或多個候選表情符號的輸入選擇,并且更新存儲在選擇的候選表情符號與它們各自的上下文使用率之間的統(tǒng)計使用率信息。
根據(jù)本實施例,表情符號選擇模塊416可在本地表情符號數(shù)據(jù)存儲器412或遠程表情符號數(shù)據(jù)存儲器424上更新統(tǒng)計使用率信息。例如,如果通過表情符號選擇模塊416選擇的一個或多個候選表情符號是從表情符號建議服務器420提供的,則針對那些候選表情符號的統(tǒng)計使用率信息將在遠程表情符號數(shù)據(jù)存儲器424上更新。在另一示例中,如果通過表情符號選擇模塊416選擇的一個或多個候選表情符號是從本地表情符號數(shù)據(jù)存儲器412提供的,則針對那些候選表情符號的統(tǒng)計使用率信息將在本地表情符號數(shù)據(jù)存儲器412上更新。
圖5示出了在消息傳送應用使用實施例的情況下消息傳送應用的用戶界面500。在一些實施例中,用戶可利用用戶界面500通過網(wǎng)絡聊天從其他用戶接收消息并查看從其他用戶接收到的消息,以及編寫消息并通過網(wǎng)絡聊天將消息傳送給其他用戶。消息傳送應用可以是或者可包括即時消息傳送系統(tǒng)上的客戶端,其中消息傳送應用在用戶的本地數(shù)字設備上運行,如智能手機計算設備或膝上計算機。即時消息傳送系統(tǒng)可在另一數(shù)字設備(如服務器)上運行,其中消息傳送應用與即時消息傳送系統(tǒng)相配合。根據(jù)本實施例,消息傳送應用可作為獨立的應用程序,或作為小程序、插件程序或通過瀏覽器運行的腳本在數(shù)字設備上運行。
消息傳送應用的用戶界面500可包括會話窗口502、消息輸入欄504和發(fā)送按鈕514。對于一些實施例來說,會話窗口502可包括向網(wǎng)絡聊天提交的消息。因此,會話窗口502可包括其他人向網(wǎng)絡聊天提交的消息和用戶通過用戶界面500提交的消息。用戶可使用消息輸入欄504向網(wǎng)絡聊天提交消息。特別地,當用戶想要向網(wǎng)絡聊天提交消息時,用戶可將消息輸入到消息輸入欄504中并按下發(fā)送按鈕514。
消息輸入欄504可包括用戶準備向網(wǎng)絡聊天提交的消息并可被配置為接收用戶準備向網(wǎng)絡聊天提交的消息。消息輸入欄504可從用戶接收一個或多個段,或者可接收根據(jù)一些實施例輸入的一個或多個表情符號。消息輸入欄504還可包括輸入光標516。
當用戶在消息輸入欄504中準備消息時,各種實施例可建議在輸入光標516的當前位置處輸入的表情符號。例如,當用戶在消息輸入欄504中寫入“太好玩了”時,實施例可基于實施例對感興趣的段512(敘述了“太好玩”)的分析建議將“笑臉”圖形表情符號510輸入到輸入欄504中。本實施例可基于“笑臉”圖形表情符號510和感興趣的段512的上下文之間的關聯(lián)建議“笑臉”圖形表情符號510。一旦用戶選擇“笑臉”圖形表情符號510,本實施例就可將“笑臉”圖形表情符號510輸入到消息輸入欄504中。
同樣地,當用戶在消息輸入欄504中寫入“再次感謝讓我參觀你的城市”時,本實施例可基于對感興趣的段514的上下文分析建議多個圖形表情符號506。如本文中所提到的,本實施例可通過位于輸入光標516的當前位置處或附近的標注框508中顯示圖形表情符號506來呈現(xiàn)建議的圖形表情符號506。本實施例可基于對感興趣的段514(敘述了“你的城市”)的分析,建議與城市有關的圖形表情符號506。
圖6示出了在消息傳送應用使用實施例的情況下消息傳送應用的用戶界面600。和圖5類似,用戶可利用用戶界面600通過網(wǎng)絡聊天從其他用戶接收消息并查看從其他用戶接收到的消息,以及編寫消息并通過網(wǎng)絡聊天將消息傳送給其他用戶。消息傳送應用可以是或者可包括即時消息傳送系統(tǒng)上的客戶端,其中消息傳送應用在用戶的本地數(shù)字設備上運行,如智能手機計算設備或膝上計算機。即時消息傳送系統(tǒng)可在另一數(shù)字設備(如服務器)上運行,其中消息傳送應用與即時消息傳送系統(tǒng)相配合。根據(jù)本實施例,消息傳送應用可作為獨立的應用程序,或作為小程序、插件程序或通過瀏覽器運行的腳本在數(shù)字設備上運行。
消息傳送應用的用戶界面600可包括會話窗口602、消息輸入欄604、屏幕鍵盤606和發(fā)送按鈕616。對于一些實施例來說,會話窗口602可包括向網(wǎng)絡聊天提交的消息,其包括用戶通過用戶界面600提交的消息。用戶可使用消息輸入欄604向網(wǎng)絡聊天提交消息。具體地,當用戶想要向網(wǎng)絡聊天提交消息時,用戶可使用屏幕鍵盤606將消息輸入到消息輸入欄604中并按下發(fā)送按鈕616。
消息輸入欄604可包括用戶準備向網(wǎng)絡聊天提交的消息并可被配置為接收用戶準備向網(wǎng)絡聊天提交的消息。消息輸入欄604可從用戶接收用戶通過屏幕鍵盤606輸入的一個或多個段,或者可接收用戶通過屏幕鍵盤606選擇的一個或多個表情符號。消息輸入欄604還可包括輸入光標610。
屏幕鍵盤606可包括QWERTY鍵盤、隱藏屏幕鍵盤606(例如,當不使用時)的按鈕624、和表情符號菜單622。用戶可通過表情符號菜單622選擇一個或多個表情符號以在輸入光標610的當前位置處輸入到消息傳送輸入欄604中。表情符號菜單622可包括來自默認表情符號庫的表情符號或通過實施例建議的表情符號的選擇。左選擇按鈕618和右選擇按鈕620可允許用戶滾動并瀏覽可通過表情符號菜單622進行輸入選擇的表情符號。
當用戶在消息輸入欄604中準備消息時,各種實施例可建議在輸入光標610的當前位置處輸入的表情符號。例如,當用戶在消息輸入欄604中寫入“我從未想過足球”時,本實施例可基于實施例對感興趣的段612(敘述了“足球”)的分析,建議將“足球”圖形表情符號614輸入到輸入欄604中。本實施例可基于“足球”圖形表情符號614和感興趣的段612的上下文之間的關聯(lián)建議“足球”圖形表情符號614。一旦用戶選擇“足球”圖形表情符號614,本實施例就可將“足球”圖形表情符號614輸入到消息輸入欄604中。
類似地,當用戶在消息輸入欄604中寫入“50碼射門得分”時,本實施例可基于感興趣的段608的上下文分析,建議多個"射門得分"圖形表情符號。特別地,本實施例可通過在表情符號菜單622中顯示圖形表情符號來呈現(xiàn)“射門得分”圖形表情符號以用于進行輸入選擇,其中,在表情符號菜單622中顯示圖形表情符號可作為屏幕鍵盤606的一部分而顯示。
圖7是示例性的數(shù)字設備700的框圖。數(shù)字設備700包括通信連接至總線714的處理器702、存儲器系統(tǒng)704、存儲系統(tǒng)706、通信網(wǎng)絡接口708、I/O接口710和顯示界面712。處理器702被配置為執(zhí)行可執(zhí)行的指令(例如,程序)。在一些實施例中,處理器702包括電路或能夠處理可執(zhí)行的指令的任何處理器。
存儲器系統(tǒng)704是被配置為儲存數(shù)據(jù)的任何存儲器。存儲器系統(tǒng)704的一些示例為存儲設備,如RAM或ROM。存儲器系統(tǒng)704可包括隨機高速緩沖器。在各種實施例中,數(shù)據(jù)存儲在存儲器系統(tǒng)704中。存儲器系統(tǒng)704內(nèi)的數(shù)據(jù)可以清除或最終傳輸?shù)酱鎯ο到y(tǒng)706。
存儲系統(tǒng)706是被配置為檢索并儲存數(shù)據(jù)的任何非瞬時存儲器。存儲系統(tǒng)706的一些示例是閃存驅(qū)動器、硬盤驅(qū)動器、光盤驅(qū)動器和/或磁帶。在一些實施例中,數(shù)字設備700包括RAM形式的存儲器系統(tǒng)704和閃存數(shù)據(jù)形式的存儲系統(tǒng)706。存儲器系統(tǒng)704和存儲系統(tǒng)706都包括可存儲可通過包括處理器702的計算機處理器執(zhí)行的指令或程序的計算機可讀的介質(zhì)。
通信網(wǎng)絡接口(通信網(wǎng)絡接口)708可通過鏈路716連接至網(wǎng)絡(例如,通信網(wǎng)絡110)。例如,通信網(wǎng)絡接口708可支持在以太網(wǎng)連接、串行連接、并行連接或ATA連接上的通信。通信網(wǎng)絡接口708也可支持無線通信(例如,802.11alb/gin,WiMax)。對本領域的技術人員來說將顯而易見的是,通信網(wǎng)絡接口708可支持多種有線和無線標準。
可選的輸入/輸出(I/O)接口710是接收輸出數(shù)據(jù)和用戶輸入的任何設備??蛇x的顯示界面712是被配置為向顯示器輸出圖形和數(shù)據(jù)的任何設備。在一個示例中,顯示界面712是圖形適配器。將要理解的是,不是所有的數(shù)字設備700都包括I/O接口710或顯示界面712。
本領域的技術人員將理解,數(shù)字設備700的硬件元件不局限于在圖7中所示的那些。數(shù)字設備700可包括比所示的那些硬件元件更多或更少的硬件元件。此外,硬件元件可共享功能并仍在本文所述的各種實施例的范圍之內(nèi)。在一個示例中,編碼和/或解碼可通過處理器702和/或位于GPU(Le.,Nvidia)上的協(xié)處理器執(zhí)行。
上述功能和部件可由存儲在存儲介質(zhì)(如計算機可讀介質(zhì))上的指令組成。指令可由處理器獲得并執(zhí)行。指令的一些示例為軟件、程序代碼和固件。存儲介質(zhì)的一些示例為存儲設備、磁帶、磁盤、集成電路和服務器。當通過處理器執(zhí)行以指示處理器根據(jù)一些實施例運行時,指令是運行的。本領域的技術人員對指令、處理器和存儲介質(zhì)是熟悉的。
再次參考圖2,在各種實現(xiàn)方式中,表情符號建議系統(tǒng)200基于在用戶生成的文本中檢測到的情感向用戶建議表情符號。例如,段分析模塊206可以分析在輸入欄中存在的一個或多個段,并且確定所分析的段的情感。一般來說,情感可以涉及用戶的主觀印象(例如,感覺、態(tài)度、情緒和/或意見),而不是事實。例如,用戶可能支持或反對某事(例如,產(chǎn)品或政治觀點),可能喜歡或不喜歡某事,可能認為某事比別的更好等。表情符號建議系統(tǒng)200可以檢測這種用戶情感并至少部分地基于這種情感來識別用戶的候選表情符號。
在一些情況下,段分析模塊206識別輸入欄中的感興趣的段,然后分析那些感興趣的段以確定情感。通常,相對于輸入欄中的輸入光標的當前位置來標識感興趣的段。另外,對于一些實施方式來說,當識別感興趣的段時,段分析模塊206可以對當前存在于輸入欄中的段進行語法分析。
在識別出多于一個感興趣的段的情況下,段分析模塊206可分析每個感興趣的段的情感,或可分析除了最不重要的感興趣的段(例如,基于權重系統(tǒng),其中某些感興趣的段比其他段更重要)之外的其他所有段的情感。此外,一個或多個規(guī)則可以確定在識別兩個或更多個感興趣的段時應當分析哪些感興趣的段。
段分析模塊206可以從感興趣的段確定兩個或更多個情感(例如,“憤怒”和“悲傷”)。在這種情況下,表情符號建議系統(tǒng)200可以搜索與所有確定的情感相關的候選表情符號,或者可以僅搜索匹配一個或多個最重要情感(例如,基于規(guī)則確定)的候選表情符號。
為了確定一個或多個感興趣的段的情感,段分析模塊206可以對存在于輸入欄中的感興趣的段進行語義分析。本領域技術人員將理解,可以根據(jù)本領域中已知的一種或多種技術來執(zhí)行段的語義分析。當分析一個或多個感興趣的段的情感時,段分析模塊206可以識別感興趣的段的心情或情緒。感興趣的段的示例情感可以包括但不限于,幸福、悲傷、冷漠、憤怒、怨恨、悔恨、興奮、贊成、不贊成,同意和不同意。
為了確定一個或多個感興趣的段的情感,段分析模塊可以執(zhí)行情感分析或意見挖掘。一般來說,情感分析是指使用文本分析、統(tǒng)計、計算語言學和/或自然語言處理來定位和分析一個或多個感興趣的段中的主觀信息。情感分析的目標是識別作者或用戶例如關于感興趣的段中的某事(例如,主題或問題)的態(tài)度。該態(tài)度可以是用戶的情緒或情感狀態(tài)、用戶的預期情緒效果、或用戶對主題或問題的判斷或評價。
在某些情況下,情感分析用于識別文本段的極性(即,文本中表達的意見是正面的、負面的還是中性的)。情感分析可以利用分類器,例如最大熵和/或支持向量機(SVM),其可以或可以不使用中性類。
在各種實現(xiàn)方式中,段分析模塊206在用戶輸入文本段時監(jiān)視并查看該文本段,以實時或接近實時地評估用戶的情感。作為簡單的示例,當用戶輸入包括短語“我今天感到高興”的消息時,段分析模塊206可以識別用戶可能快樂并且向用戶建議供插入到文本中的適當?shù)谋砬榉?例如,笑臉)。類似地,當輸入包括短語“我感到心煩意亂”的消息時,段分析模塊206可以識別出用戶是悲傷或憤怒的,并向用戶建議供插入到文本中的適當?shù)谋砬榉?例如,悲傷或憤怒的表情)。
此外,當用戶輸入消息時,字和段可以被翻譯成由消息的預期接收者使用的一種或多種語言。翻譯消息(例如,實時地)可有助于消息的情感分析。例如,段分析模塊206可以能夠以一種語言(例如,英語)比另一種語言(例如,俄語)更容易地評估情感。
情感分析的一些實現(xiàn)方式利用尺度系統(tǒng),其中,通常與負面、中性或正面情感相關的段或術語與范圍從最負面到最正面的尺度數(shù)字(例如,-10到+10)相關。例如,段分析模塊206可以訪問或包括與情感相關的詞語庫,其中為每個詞語分配尺度數(shù)值。當用戶輸入具有高正值(例如,“愛”)的詞語時,段分析模塊206將識別用戶的情感可能是正面的。類似地,當用戶輸入具有負值(例如,“憎恨”)或中性值(例如,“無關”)的術語時,段分析模塊206將識別用戶的情感可能分別是負面或中性。在某些情況下,當在一個段中檢測到多于一個的情感時,段分析模塊206可以將段中的術語的數(shù)值相加以得到該段的總數(shù)值??倲?shù)值可以用于將段分類為例如負、中性的或正面。在一些情況下,當段的得分是高度負面或高度正面時,段分析模塊206可以識別段中的用戶情感是極端的,并且可以識別與極端情感相關聯(lián)的候選表情符號以便用戶插入。
在各種實施例中,當使用自然語言處理來分析感興趣的段時,段分析模塊206可檢查文本段以識別與用戶情感相關聯(lián)的概念或主題。例如,當用戶插入表示情感是正面的一個或多個詞時,段分析模塊206可以搜索文本的其他部分(例如,在情感詞之前或之后)以確定用戶情感為何是正面的。段分析模塊206可以識別例如正面用戶情感與在文本段中別處描述的特定概念(例如,人或?qū)ο?相關聯(lián)。在這種情況下,段分析模塊206可以將用戶情感與概念相關聯(lián)??梢韵蚋拍罱o出指示用戶情感和該概念之間的關系的分數(shù)。
在一些情況下,識別一個或多個感興趣的段的主觀性/客觀性,這可以涉及將給定文本(例如,感興趣的段)分類為客觀或主觀的。因為段的主觀性可能取決于上下文,并且因為目標工作可以包括主觀句子(例如,插入另一個人的意見),所以該任務可能對極性分類更具挑戰(zhàn)性。在一些實施例中,在對剩余文本的極性或情感進行分類之前忽略目標段。
段分析模塊206的一些實現(xiàn)方式利用基于特征/方面的情感分析,其中為實體(例如、汽車,商業(yè)或電子物品)的不同方面或特征確定觀點或情感。這種分析可以涉及幾個子問題,例如,識別實體、提取實體的特征/方面、以及將特征/方面的任何情感分類為正面、負面或中立。
參考圖8,在某些實現(xiàn)方式中,提供了一種用于在文本消息中建議和插入與檢測到的情感相對應的表情符號的方法800。該方法包括確定(步驟802)文本域中的文本情感,例如當用戶在文本域中輸入文本時,執(zhí)行該確定。從文本域中選擇(步驟804)文本(例如,段、句子片段或文本的其他部分),優(yōu)選地,在文本域中的輸入光標的當前位置附近選擇文本。識別(步驟806)一個或多個候選表情符號,其中每個候選表情符號與指示該候選表情符號與文本和情感的相關性的各自的分數(shù)(例如,數(shù)值)相關聯(lián)。至少基于用戶對插入到具有相應情感的其他文本(其可以與選擇的文本相同也可以不同)附近的表情符號的歷史選擇來識別候選表情符號。例如,該方法可以包括:查看用戶選擇的表情符號的歷史,并且基于先前由用戶選擇的用于與所選文本相似的文本和/或情感的表情符號來識別候選表情符號。該先前選擇的表情符號可以比先前沒有被選擇的其他表情符號具有更高的相應分數(shù)。然后提供(步驟808)具有相應的最高分數(shù)的一個或多個候選表情符號以供用戶選擇。在一些情況下,具有最高分數(shù)的候選表情符號可以與所選文本的情感相關聯(lián)和/或可以先前已經(jīng)被選擇插入到具有類似情感的文本中??梢愿鶕?jù)每個表情符號的各自的分數(shù)向用戶提供(例如,顯示)表情符號,以使得首先呈現(xiàn)(例如,在列表中)具有較高分數(shù)的表情符號。然后接收(步驟810)用戶對一個或多個提供的表情符號的選擇,并且在輸入光標的當前位置處或當前位置附近將所選擇的一個或多個表情符號插入到文本域中。
在一些實施方式中,通過計算分數(shù)來確定候選表情符號,所述分數(shù)至少部分基于所選擇的文本的自然語言和與用戶先前選擇的候選表情符號相關的文本的自然語言之間的差異。例如,如果自然語言相同,則可以給予候選表情符號較高的分數(shù)。同樣,如果所選擇的文本和與用戶先前選擇的候選表情符號相關的文本包括具有相同順序的相同單詞,則可以給予該候選表情符號較高的分數(shù)。
一般來說,某些技術可用于確定所選擇的文本和先前的文本片段或消息之間的差異。例如,在一些情況下,計算所選擇的文本和先前的文本段的漢明間距(hamming distance)。一般來說,漢明間距提供了將所選擇的文本轉(zhuǎn)換為先前文本段所需的最小數(shù)量的改變的指示。每個改變可以包括例如字符替換、字符刪除和/或字符添加。對于相等長度的字符串來說,漢明間距可以是相應字符或符號不同的位置的數(shù)量。一般來說,當所選擇的文本與先前文本段之間的差異小時,與在先前的文本段或消息中使用的表情符號相關的分數(shù)可以較高。高分數(shù)表示用戶可能想要考慮要插入到當前選擇的文本或消息中的表情符號。
在一些實施方式中,候選表情符號的分數(shù)基于可以被加權的一個或多個單獨分數(shù)的組合。例如,分數(shù)可以基于情感相似性、文本相似性(例如,漢明間距)、語言相似性等的單獨分數(shù)的組合(例如,加權和)。這種方法允許在計算分數(shù)時考慮文本段或消息的多于一個的特性。該方法還可以在計算分數(shù)時允許一些特征(例如,情感)的權重比其他特征(例如,文本相似性)的權重大。例如,可以通過本文所述的系統(tǒng)和方法的用戶和/或提供者來選擇特性的權重。這可以允許用戶更多的基于某些特性(例如,情感)而不是其他特性(例如,文本相似性)來接收表情符號建議。在一個示例中,候選表情符號的分數(shù)至少部分地基于候選表情符號已經(jīng)用于給定的文本段或消息(例如,給定的單詞或單詞序列)的次數(shù)。當對于給定文本來說,特定的候選表情符號比其他表情符號使用的更頻繁時(例如,用戶、一組用戶或所有用戶使用的),候選表情符號的分數(shù)可以較高。
在各種情況下,表情符號建議系統(tǒng)200至少部分地基于用戶的偏好、用戶相關信息和/或接收者相關信息來識別候選表情符號。例如,用戶可以指定偏好以使用他或她先前已經(jīng)使用或者具有某種類型(例如,面部表情)的表情符號。關于用戶的信息(例如,年齡、性別、教育背景、職業(yè)、愛好等)還可以用于識別與用戶的某些方面一致且用戶因此更可能使用的候選表情符號。例如,醫(yī)生可能更傾向于使用與醫(yī)學專業(yè)相關的表情符號。作為進一步的考慮,表情符號建議系統(tǒng)200可以考慮用戶消息的目標受眾,并基于受眾可能具有的任何預期的偏好來識別候選表情符號。例如,如果消息針對喜歡某種顏色(例如,粉紅色)的表情符號的人,則本系統(tǒng)和方法可以識別包括該特定顏色的候選表情符號。
參考圖9,在某些實施例中,提供了用戶定義表情符號系統(tǒng)900,其允許用戶定義(例如,繪制)表情符號、與其他用戶共享用戶定義的表情符號、接收共享用戶定義的表情符號的信用、接收有關其他人使用用戶定義的表情符號的信息。用戶定義的表情符可以包括視覺表示(例如,圖形圖像),并且與相應的自然語言和/或相應的文本相關聯(lián)。
用戶定義表情符號系統(tǒng)900包括使用戶能夠提交用戶定義的表情符號的表情符號提交模塊902。表情符號提交模塊902可以包括允許用戶繪制或以其他方式創(chuàng)建表情符號的圖像的繪圖工具。用戶可以提出表情符號的自然語言含義和/或建議表情符號的使用(例如,與饑餓結(jié)合使用)。在一些情況下,用戶可以創(chuàng)建表情符號,但選擇將表情符號限制為個人使用,而不是提交表情符號供其他用戶使用。用戶定義表情符號系統(tǒng)900可以使用戶能夠指定用戶定義的表情符號是僅被保留以供個人使用(即,私人表情符號)還是與其他用戶(即,公共表情符號)共享。
用戶定義表情符號系統(tǒng)900還包括表情符號信用模塊904,其允許用戶接收用于與其他用戶共享他們的用戶定義的表情符號的信用。例如,用戶定義表情符號系統(tǒng)900和/或表情符號信用模塊904可以與電子游戲或視頻游戲(例如,大規(guī)模多玩家在線游戲)交互和/或可訪問所述電子游戲或視頻游戲(例如,大規(guī)模多玩家在線游戲)。當用戶創(chuàng)建新的表情符號并提交該表情符號以供其他用戶使用時,表情符號信用模塊904可以向該用戶的帳戶提供信用。例如,作為提交用戶定義的表情符號的交換,用戶可以接收點、虛擬貨幣和/或在視頻游戲中使用的其他虛擬商品。
在用戶已經(jīng)提交了用戶定義的表情符號之后,統(tǒng)計模塊906允許用戶跟蹤其他人對表情符號的使用。統(tǒng)計模塊906可以向用戶通知表情符號已經(jīng)被使用的次數(shù)、表情符號的上一次使用以及表情符號已經(jīng)用于的各種語言。基于其他人對表情符號的使用程度,用戶的賬戶可以接收額外的信用。這樣的信用可以鼓勵用戶創(chuàng)建和共享其他人想要多次使用的高質(zhì)量的表情符號。
用戶定義表情符號系統(tǒng)900還可以利用或包括軟件開發(fā)工具包模塊908,其有助于創(chuàng)建如上所述的用于生成并提交用戶定義的表情符號、記入用戶賬戶、提供統(tǒng)計數(shù)據(jù)和提供表情符號建議的應用程序。例如,軟件開發(fā)工具包模塊908可以提供用于啟動候選表情符號的識別的應用程序界面。
有利地,用戶定義表情符號系統(tǒng)900便于通過眾包(crowd sourcing)進行表情符號的創(chuàng)建和分發(fā)。當用戶創(chuàng)建和提交新的用戶定義的表情符號時,可用的表情符號庫的大小和特異性增加。這使得表情符號建議系統(tǒng)200能夠向用戶提供更加容易滿足用戶的個人偏好并且更適合于在特定情況下使用的各種各樣的表情符號。例如,當用戶輸入文本“紅房子”時,用戶可能希望插入紅房子的表情符號,而不是具有不同顏色的房子的表情符號。
通過眾包進行的表情符號的創(chuàng)建和分發(fā)還允許用戶對用戶定義的表情符號和其他表情符號進行測試,從而識別更受歡迎或更高質(zhì)量并因此更可能被使用的表情符號。在某些情況下,更可能將流行的表情符號建議給用戶插入到文本消息中。例如,當用戶輸入文本消息時,本文描述的系統(tǒng)和方法可以向用戶建議其他用戶已流行使用的表情符號。
本系統(tǒng)和方法可以根據(jù)特定詞語和語言跟蹤表情符號的流行度。例如,當用戶在消息中輸入特定詞時,用戶定義表情符號系統(tǒng)900可以識別對該特定詞流行使用的表情符號,然后向用戶建議那些表情符號。對于翻譯成不同語言的同一個詞,流行的表情符號可能不同。因此,向用戶建議的流行表情符號的集合可以取決于用戶和/或消息的接收者所使用的特定語言。
在一個實施例中,用戶具有優(yōu)選表情符號的個性化庫,庫中的表情符號可以比其他表情符號(例如,通過眾包開發(fā)的表情符號)更頻繁地建議給用戶。優(yōu)選表情符號的個性化庫可以包括在一個或多個先前實例中用戶使用的表情符號。每次用戶選擇插入到消息中的表情符號時,可以自動生成和/或增強優(yōu)選表情符號的個性化庫。在一些實施方式中,用戶可以手動選擇表情符號以將其包括在他們的優(yōu)選表情符號的個性化庫中。
在某些實現(xiàn)方式中,本系統(tǒng)和方法便于創(chuàng)建、提交和使用與公司、品牌、產(chǎn)品和/或服務相關的表情符號。例如,公司可以創(chuàng)建和提交使用或包括公司的商標、服務標記和/或徽標的表情符號。當用戶將公司的名稱或公司的產(chǎn)品或服務輸入到消息中時,表情符號建議系統(tǒng)200可以向用戶自動建議將公司的一個或多個表情符號插入消息中。例如,當用戶輸入包括詞“iPhone”的消息時,表情符號建議系統(tǒng)200可以向用戶建議表示IPHONE的圖像或者IPHONE的制造商Apple Inc.的標志或商標的圖像。當用戶選擇插入消息中的公司表情符號時,表情符號信用模塊904可以貸記用戶的賬戶。替代地或另外地,公司表情符號的插入和/或提交可以使表情符號信用模塊904將資金從公司轉(zhuǎn)移到表情符號建議系統(tǒng)200的所有者或操作者。在這種情況下,資金可以表示在消息中呈現(xiàn)公司表情符號的廣告費。在某些情況下,公司的表情符號的插入可以自動地發(fā)生,例如,每當用戶創(chuàng)建包括對公司的名稱、產(chǎn)品、服務、商標或服務標記的引用的消息時。
使用或以其他方式與本文描述的系統(tǒng)和方法交互的公司可以對用戶可用于插入的表情符號的至少部分控制。例如,當用戶將公司的名稱輸入到消息中時,表情符號建議系統(tǒng)200可以僅向用戶呈現(xiàn)公司已經(jīng)批準的表情符號。在一些情況下,用戶可以能夠僅在公司名稱旁或在公司的產(chǎn)品和服務的名稱旁插入批準的公司徽標或商標。一般來說,插入和提交到用戶消息中的表情符號可以較小(例如,消息中的文本的大致尺寸)或較大(例如,占據(jù)幾行文本或更多),并且可以是動畫或非動畫的。
本文描述的各種實施例是示例性的。對于本領域技術人員顯而易見的是,在不背離本發(fā)明的更寬范圍的情況下,可以進行各種修改并且可以使用其他實施例。因此,示例性實施例的這些和其他變化旨在涵蓋在本發(fā)明的范圍內(nèi)。