(57)【要約】      （修正有）【課題】テキストにおける感情の分析に基づいて、エモティコンをテキストに挿入する方法等を提供する。【解決手段】方法は、テキストフィールドにおけるテキストの第１の感情を判断するステップと、テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストをテキストフィールドから選択するステップと、１つ以上の候補のエモティコンを識別するステップとを含む。候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、第１のテキストおよび第１の感情に対する関連性を示すそれぞれのスコアに関連付けられている。方法はさらに、ユーザ選択のために最高スコアを有する候補のエモティコンを提供するステップと、選択されたエモティコンを入力カーソルの現在位置におけるテキストフィールドに挿入するステップとを含む。【選択図】図８
2019153338.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実現される方法であって、
テキストフィールドにおけるテキストの第１の感情を判断するステップと、
前記テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストを前記テキストフィールドから選択するステップと、
１つ以上の候補のエモティコンを識別するステップとを含み、候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、前記第１のテキストおよび前記第１の感情に対する関連性を示すそれぞれのスコアに関連付けられており、前記方法はさらに、
ユーザ選択のためにそれぞれの最高スコアを有する１つ以上の候補のエモティコンを提供するステップと、
前記提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、前記選択されたエモティコンを前記入力カーソルの前記現在位置における前記テキストフィールドに挿入するステップとを含む、方法。
【請求項２】
ユーザによって提供される１つ以上のユーザ規定のエモティコンを受け取るステップをさらに含み、ユーザ規定のエモティコンは各々、前記エモティコンの視覚的表現を含み、それぞれの自然言語およびそれぞれのテキストに関連付けられている。請求項１に記載の方法。
【請求項３】
前記ユーザ規定のエモティコンの作成について前記ユーザのアカウントに課金するステップをさらに含む、請求項２に記載の方法。
【請求項４】
前記課金されるクレジットは、電子ゲームのための仮想資産である、請求項３に記載の方法。
【請求項５】
他のユーザによる前記ユーザ規定のエモティコンの使用に関する統計を前記ユーザに提供するステップをさらに含む、請求項２に記載の方法。
【請求項６】
前記候補のエモティコンのうちの１つは、前記ユーザ規定のエモティコンのうちの１つであって、他の候補のエモティコンのスコアよりも高い関連スコアを有する、請求項２に記載の方法。
【請求項７】
ユーザ選択のために前記候補のエモティコンを提供するステップは、前記それぞれのスコアに従って前記候補のエモティコンに順序を付け、前記順序に従って前記候補のエモティコンを提供するステップを含む、請求項１に記載の方法。
【請求項８】
前記第１のテキストがブランド、製品またはサービスに関連付けられたテキストであると判断し、前記判断に基づき、前記ブランド、前記製品または前記サービスについての候補のエモティコンを識別するステップをさらに含む、請求項１に記載の方法。
【請求項９】
前記ブランド、前記製品または前記サービスについての前記候補のエモティコンの前記関連スコアは、前記他の候補のエモティコンの前記関連スコアよりも高い、請求項８に記載の方法。
【請求項１０】
前記第１のテキストと前記第２のテキストとの間の距離、特定のエモティコンのユーザ選択の履歴番号、および、前記第１の感情と前記第２の感情との間の類似度に基づき、特定の候補のエモティコンのスコアを計算するステップをさらに含む、請求項１に記載の方
法。
【請求項１１】
前記スコアはさらに、前記第１のテキストの自然言語と前記第２のテキストの自然言語との間の類似度に基づいている、請求項１に記載の方法。
【請求項１２】
前記候補のエモティコンを提供するステップは、前記入力カーソルの前記現在位置に、または前記入力カーソルの前記現在位置の付近に、ユーザ選択のために、前記候補のエモティコンを提示するステップを含む、請求項１に記載の方法。
【請求項１３】
前記第１のテキストは、前記入力カーソルの前記現在位置の前または後に存在する単語、文の断片、文、句、または節のうち少なくとも１つを含む、請求項１に記載の方法。
【請求項１４】
前記候補のエモティコンを識別するステップはさらに、少なくとも、前記ユーザのプレファレンス、ユーザに関連する情報または受信者に関連する情報に基づいている、請求項１に記載の方法。
【請求項１５】
アプリケーションプログラミングインターフェイスを提供するステップをさらに含み、前記アプリケーションプログラミングインターフェイスを介して前記候補のエモティコンの識別が開始され得る、請求項１に記載の方法。
【請求項１６】
システムであって、
サーチ可能なエモティコンのコーパスと、
アプリケーションプログラミングインターフェイスを提供するようにプログラムされた１つ以上のコンピュータとを含み、前記アプリケーションプログラミングインターフェイスは以下の複数の動作を実行するように構成され、前記複数の動作は、
テキストフィールドにおけるテキストの第１の感情を判断する動作と、
前記テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストを前記テキストフィールドから選択する動作とを含み、前記選択されたテキストは１つ以上のセグメントを含み、前記複数の動作はさらに、
前記コーパスにおける１つ以上の候補のエモティコンを識別する動作を含み、候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、前記第１のテキストおよび前記第１の感情に対する関連性を示すそれぞれのスコアに関連付けられており、前記複数の動作はさらに、
ユーザ選択のためにそれぞれの最高スコアを有する候補のエモティコンのうち１つ以上を提供する動作と、
前記提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、前記選択されたエモティコンを前記入力カーソルの前記現在位置における前記テキストフィールドに挿入する動作とを含む、システム。
【請求項１７】
前記エモティコンのコーパスは公的なエモティコンおよび私的なエモティコンを含む、請求項１６に記載のシステム。
【請求項１８】
前記複数の動作はさらに、
ユーザによって提供される１つ以上のユーザ規定のエモティコンを受け取る動作を含み、ユーザ規定のエモティコンは各々、前記エモティコンの視覚的表現を含み、それぞれの自然言語およびそれぞれのテキストに関連付けられている、請求項１６に記載のシステム。
【請求項１９】
前記複数の動作はさらに、前記ユーザ規定のエモティコンの作成について前記ユーザの
アカウントに課金する動作を含む、請求項１８に記載のシステム。
【請求項２０】
前記課金されたクレジットは、電子ゲームのための仮想資産である、請求項１９に記載のシステム。
【請求項２１】
前記複数の動作はさらに、他のユーザによる前記ユーザ規定のエモティコンの使用に関する統計を前記ユーザに提供する動作を含む、請求項１８に記載のシステム。
【請求項２２】
ユーザ選択のために前記候補のエモティコンを提供する動作は、前記それぞれのスコアに従って前記候補のエモティコンに順序を付け、前記順序に従って前記候補のエモティコンを提供する動作を含む。請求項１６に記載のシステム。
【請求項２３】
前記複数の動作はさらに、
前記第１のテキストがブランド、製品またはサービスに関連付けられたテキストであると判断し、前記判断に基づき、前記ブランド、前記製品または前記サービスについての候補のエモティコンを識別する動作を含む、請求項１６に記載のシステム。
【請求項２４】
前記複数の動作はさらに、
前記第１のテキストと前記第２のテキストとの間の距離、特定のエモティコンのユーザ選択の履歴番号、および、前記第１の感情と前記第２の感情との間の類似度に基づき、特定の候補のエモティコンの前記スコアを計算する動作を含む、請求項１６に記載のシステム。
【請求項２５】
前記スコアはさらに、前記第１のテキストの自然言語と前記第２のテキストの自然言語との間の類似度に基づいている、請求項１６に記載のシステム。
【請求項２６】
前記候補のエモティコンを提供する動作は、前記入力カーソルの前記現在位置に、または前記入力カーソルの前記現在位置の付近に、ユーザ選択のために、前記候補のエモティコンを提示する動作を含む、請求項１６に記載のシステム。
【請求項２７】
前記第１のテキストは、前記入力カーソルの前記現在位置の前または後に存在する単語、文の断片、文、句、または節のうち少なくとも１つを含む、請求項１６に記載のシステム。
【請求項２８】
前記候補のエモティコンを識別する動作はさらに、少なくとも、前記ユーザのプレファレンス、ユーザに関連する情報または受信者に関連する情報に基づいている、請求項１６に記載のシステム。
【請求項２９】
前記複数の動作はさらに、アプリケーションプログラミングインターフェイスを提供する動作を含み、前記アプリケーションプログラミングインターフェイスを介して、前記候補のエモティコンの識別が開始され得る、請求項１６に記載のシステム。
【請求項３０】
データ処理装置の処理モードを制御するための、１つ以上の記憶媒体に記憶されたコンピュータプログラムプロダクトであって、前記コンピュータプログラムプロダクトは前記データ処理装置によって実行可能であって、前記データ処理装置に以下の複数の動作を実行させ、前記複数の動作は、
テキストフィールドにおけるテキストの第１の感情を判断する動作と、
前記テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストを前記テキストフィールドから選択する動作と、
１つ以上の候補のエモティコンを識別する動作とを含み、候補のエモティコンは各々、
それぞれの第２の感情を有するそれぞれの第２のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、前記第１のテキストおよび前記第１の感情に対する関連性を示すそれぞれのスコアに関連付けられており、前記複数の動作はさらに、
ユーザ選択のためにそれぞれの最高スコアを有する１つ以上の候補のエモティコンを提供する動作と、
前記提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、前記選択されたエモティコンを前記入力カーソルの前記現在位置における前記テキストフィールドに挿入する動作とを含む、コンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本願明細書において記載される発明は概してエモティコン（emoticon）に関する。より特定的には、本発明は、コンピューティングデバイス上でのさまざまなアクティビティの間にエモティコンを識別および提案するためのシステムおよび方法に関する。
【背景技術】
【０００２】
発明の背景
元々、エモティコンは、文字、数および記号のようなコンピュータキーボード上に一般的に見出される文字（例えばＡＳＣＩＩ文字）によって示される顔表現であった。これらの元々のエモティコンは、著者による電子メッセージまたは電子投稿（たとえば電子掲示板）中に配置されると、著者の気分を伝えるか、または当該メッセージもしくは投稿の全体的な感情を伝達する／高めるよう意図されていた。最初は、これらのエモティコンは、幸福、怒り、悲しみおよび無関心といった気分を表すことに制限されていた。しかしながら徐々に、これらの文字ベースのエモティコンキャラクタ（以下、「文字エモティコン」）の使用は、意味とメッセージとを伝達することへと拡大した。
【０００３】
最終的にエモティコンはさらに、タイプ、可用性、および使用において拡大した。今日、エモティコンは、文字エモティコンと、グラフィカルイメージによって示されるエモティコン（以下、「グラフィカルエモティコン」）とを含む。グラフィカルエモティコンの可用性により、ユーザは、文字エモティコンだけでは可能ではなかったより多くの気分、意味およびメッセージを表現することができる。ここで、文字エモティコンおよびグラフィカルエモティコンはともに、さまざまなデジタルデバイス（たとえばモバイルテレコミュニケーションデバイスおよびタブレット）を通じて利用可能であり、特にインターネットに関するさまざまなコンピューティングアクティビティにおいて用いられている。たとえば、グラフィカルエモティコンは、個人的な電子メールを作成する際、メッセージをインターネット上に投稿する際（たとえばソーシャルネットワーキングサイトまたはウェブフォーラム上）、およびモバイルデバイス同士の間でメッセージ通信を行う際の使用に一般に利用可能である。一般に、ユーザがエモティコンに適用可能なコンピューティングアクティビティを行なう際には、ユーザはメニューまたはライブラリを通じてエモティコンにアクセスし得る。ユーザは、当該メニューまたはライブラリから、コンピューティングアクティビティで使用されるエモティコンをブラウズおよび選択し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
グラフィカルエモティコンの出現により、ユーザが選ぶことができるエモティコンの数は膨大に増加したという問題がある。ほとんどすべての想像可能な事項に利用可能なグラフィカルエモティコンが存在する。エモティコンの数、使用、可用性および多様性の拡大により、エモティコンを適用可能なコンピューティングアクティビティに参加している際に所与のコンテキストについて、ブラウズして適切なエモティコンを選択することは、ユーザにとってかなり時間を浪費することであり得、時に閉口させられることである。
【０００５】
発明の概要
本願明細書において論じられるさまざまな実施の形態は、テキストのセグメントについてエモティコンを識別および提案するためのシステムおよび方法を提供する。いくつかのシステムおよび方法は、コンピューティングデバイス上でのユーザアクティビティの間に用いられ得る。ユーザアクティビティは、インスタントメッセージング、オンラインチャ
ットルームへの参加、電子メールの作成、ウェブブログの投稿、またはウェブフォーラムへの投稿を含むが、これらに限定されない。
【０００６】
例示的な方法は、セグメントのセットをテキストフィールドから受け取るステップと、上記セグメントのセットに関連付けられる目標サブテキストまたは目標意味のうち少なくとも１つを決定するよう上記セグメントのセットを分析するステップと、候補のエモティコンのセットを識別するステップとを含み、上記候補のエモティコンのセットにおける候補のエモティコンは各々、上記候補のエモティコンと上記目標サブテキストまたは上記目標意味のうち少なくとも１つとの間に関連性を有している。上記方法はさらに、エントリ選択のために入力カーソルの現在位置に上記候補のエモティコンのセットを提示するステップと、上記候補のエモティコンのセットからの選択されるエモティコンのセットについて、エントリ選択を受け取るステップと、上記選択されるエモティコンのセットを上記テキストフィールドにおける上記入力カーソルの現在位置に挿入するステップとを含んでもよい。上記セグメントのセットは上記テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含んでもよく、上記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでもよく、上記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含んでもよい。実施の形態に応じて、上記セグメントのセットを分析するステップは、上記セグメントのセットの意味分析を含んでもよい。
【０００７】
いくつかの実施の形態の場合、各関連性は、上記目標サブテキストまたは上記目標意味のうち少なくとも１つとの上記候補のエモティコンの統計的な使用を含んでもよい。さらに、いくつかの実施の形態の場合、上記方法は、上記選択されるエモティコンのセットについての上記エントリ選択に基づき、上記候補のエモティコンの上記統計的な使用を更新するステップをさらに含んでもよい。実施の形態に応じて、上記統計的な使用は単一のユーザまたは複数のユーザによる使用に基づいてもよい。
【０００８】
エントリ選択のために上記エモティコンのセットを提示するステップは、エントリ選択のために上記入力カーソルの現在位置または現在位置の近くに上記エモティコンを表示するステップを含んでもよい。エントリ選択のために上記候補のエモティコンのセットを提示するステップは、エントリ選択のために物理的な入力装置または仮想入力装置（たとえばオンスクリーンキーボードまたは投影されたキーボード）上に上記候補のエモティコンのセットを表示するステップを含んでもよく、上記物理的な入力装置および表示された入力インターフェイスは、上記エントリ選択を実行するように構成される。実施の形態に応じて、上記仮想入力装置は、上記テキストフィールドも表示している表示装置によって表示されてもよい。さらに、上記仮想入力装置は、上記テキストフィールドに極接近して表示されてもよい。
【０００９】
いくつかの実施の形態では、上記方法はさらに、構文分析を用いて上記セグメントのセットを識別するステップを含んでもよい。対象の各セグメントは、入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節のうち少なくとも１つを含んでもよい。
【００１０】
特定の実施の形態では、上記候補のエモティコンのセットを識別するステップはさらに、少なくともユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報に基づいてもよい。上記ユーザに関連する情報は、ユーザの興味と、ユーザの民族性と、ユーザの宗教と、ユーザの地理的位置と、ユーザの年齢と、ユーザの関係ステータスと、ユーザの職業とを含んでもよい。上記受信者に関連する情報は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含んでもよい。
【００１１】
例示的なシステムは、プロセッサと、表示モジュールと、入力モジュールと、セグメント分析モジュールと、エモティコン検索モジュールと、エモティコン提案モジュールと、エモティコン選択モジュールとを含む。上記表示モジュールは、テキストフィールドと上記テキストフィールドに入力される１つ以上のセグメントとを表示するように構成されてもよい。
【００１２】
上記入力モジュールは、セグメント入力をユーザから受け取り、上記セグメント入力を上記テキストフィールド内に入力カーソルにて入力するように構成されてもよい。セグメント分析モジュールは、セグメントのセットを上記テキストフィールドから受け取るように構成されてもよく、上記セグメントのセットは上記テキストフィールドにおける上記入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含む。上記セグメント分析モジュールはさらに、上記プロセッサを用いて、上記セグメントのセットに関連付けられる目標サブテキストまたは目標意味のうち少なくとも１つを決定するよう上記セグメントのセットを分析するように構成されてもよい。上記エモティコン検索モジュールは、候補のエモティコンのセットを識別するように構成されてもよく、上記候補のエモティコンのセットにおける候補のエモティコンは各々、上記候補のエモティコンと上記目標サブテキストまたは上記目標意味のうち少なくとも１つとの間に関連性を有しており、上記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでいる。上記エモティコン提案モジュールは、エントリ選択のために上記入力カーソルの現在位置に上記表示モジュールを通じて上記候補のエモティコンのセットを提示するように構成されてもよい。上記エモティコン選択モジュールは、上記候補のエモティコンのセットからの選択されるエモティコンのセットについて、上記入力モジュールからエントリ選択を受け取るように構成されてもよく、上記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含む。上記エモティコン選択モジュールはさらに、上記選択されるエモティコンのセットを上記テキストフィールドにおける上記入力カーソルの現在位置に挿入するように構成されてもよい。
【００１３】
いくつかの実施の形態では、上記システムは、上記テキストフィールドへのエントリが可能な１つ以上のエモティコンを含むエモティコンデータストアをさらに含み、上記エモティコン検索モジュールはさらに、上記エモティコンデータストア上の候補のエモティコンのセットを識別するように構成される。
【００１４】
さまざまな実施の形態では、各関連性は、上記目標サブテキストまたは上記目標意味のうち少なくとも１つとの上記候補のエモティコンの統計的な使用を含んでもよく、上記エモティコン選択モジュールはさらに、上記選択されるエモティコンのセットについての上記エントリ選択に基づき、上記候補のエモティコンの上記統計的な使用を更新するように構成されてもよい。
【００１５】
いくつかの実施の形態では、エントリ選択のために上記表示モジュールを通じて上記エモティコンのセットを提示することは、エントリ選択のために上記入力カーソルの現在位置または現在位置の近くに上記エモティコンを表示することを含んでもよい。上記入力モジュールは物理的な入力装置または仮想入力装置を含んでもよく、上記物理的な入力装置および仮想入力インターフェイスは、上記エントリ選択を実行するように構成される。
【００１６】
一局面においては、本発明はコンピュータによって実現される方法に関する。当該方法は、テキストフィールドにおけるテキストの第１の感情を判断するステップと、テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストを当該テキストフィールドから選択するステップと、１つ以上の候補のエモティコンを識別するステップとを含み、候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテ
キストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、第１のテキストおよび第１の感情に対する関連性を示すそれぞれのスコアに関連付けられている。当該方法はさらに、ユーザ選択のためにそれぞれの最高スコアを有する１つ以上の候補のエモティコンを提供するステップと、提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、選択されたエモティコンを入力カーソルの現在位置におけるテキストフィールドに挿入するステップとを含む。
【００１７】
いくつかの例においては、当該方法は、ユーザによって提供される１つ以上のユーザ規定のエモティコンを受け取るステップを含む。ユーザ規定のエモティコンは各々、エモティコンの視覚的表現を含み、それぞれの自然言語およびそれぞれのテキストに関連付けられている。当該方法はまた、ユーザ規定のエモティコンの作成についてユーザのアカウントに課金する（crediting）ステップを含み得る。課金されるクレジットは、たとえば、
電子ゲームのための仮想資産であってもよい。他のユーザによるユーザ規定のエモティコンの使用に関する統計がユーザに提供され得る。
【００１８】
いくつかの実現例においては、候補のエモティコンのうちの１つは、ユーザ規定のエモティコンのうちの１つであって、他の候補のエモティコンのスコアよりも高い関連スコアを有し得る。ユーザ選択のために候補のエモティコンを提供するステップは、それぞれのスコアに従って候補のエモティコンに順序を付け、当該順序に従って候補のエモティコンを提供するステップを含み得る。
【００１９】
当該方法はまた、第１のテキストがブランド、製品および／またはサービスに関連付けられたテキストであると判断し、当該判断に基づき、ブランド、製品および／またはサービスについての候補のエモティコンを識別するステップを含み得る。ブランド、製品またはサービスについての候補のエモティコンの関連スコアは、他の候補のエモティコンの関連スコアよりも高くてもよい。いくつかの例においては、当該方法は、第１のテキストと第２のテキストとの間の距離、特定のエモティコンのユーザ選択の履歴番号、および、第１の感情と第２の感情との間の類似度に基づき、特定の候補のエモティコンのスコアを計算するステップを含む。スコアは、第１のテキストの自然言語と第２のテキストの自然言語との間の類似度に基づいていてもよい。
【００２０】
いくつかの実現例においては、候補のエモティコンを提供するステップは、入力カーソルの現在位置に、または入力カーソルの現在位置の付近に、ユーザ選択ために、候補のエモティコンを提示するステップを含む。第１のテキストは、たとえば、入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節のうち少なくとも１つを含み得る。一例においては、候補のエモティコンを識別するステップはさらに、少なくともユーザのプレファレンス、ユーザに関連する情報および／または受信者に関連する情報に基づいている。当該方法はアプリケーションプログラミングインターフェイスを提供するステップを含み得る。当該アプリケーションプログラミングインターフェイスを介して、候補のエモティコンの識別が開始され得る。
【００２１】
別の局面においては、システムは、サーチ可能なエモティコンのコーパス（searchable
corpus of emoticons）と、アプリケーションプログラミングインターフェイスを提供するようにプログラムされた１つ以上のコンピュータとを含む。アプリケーションプログラミングインターフェイスは、以下の複数の動作を実行するように構成される。当該複数の動作は、テキストフィールドにおけるテキストの第１の感情を判断する動作と、テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストをテキストフィールドから選択する動作とを含む。選択されたテキストは１つ以上のセグメントを含む。当該複数の動作はさらに、コーパスにおける１つ以上の候補のエモティコンを識別する動作を含み、候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテ
キストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、第１のテキストおよび第１の感情に対する関連性を示すそれぞれのスコアに関連付けられている。当該複数の動作はさらに、ユーザ選択のためにそれぞれの最高スコアを有する候補のエモティコンのうち１つ以上を提供する動作と、提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、選択されたエモティコンを入力カーソルの現在位置におけるテキストフィールドに挿入する動作とを含む。
【００２２】
いくつかの例においては、エモティコンのコーパスは公的なエモティコンおよび私的なエモティコンを含む。当該複数の動作はまた、ユーザによって提供される１つ以上のユーザ規定のエモティコンを受け取る動作を含み得る。ユーザ規定のエモティコンは各々、エモティコンの視覚的表現を含み、それぞれの自然言語およびそれぞれのテキストに関連付けられている。一実現例においては、当該複数の動作は、ユーザ規定のエモティコンの作成についてユーザのアカウントに課金する動作を含む。当該課金されたクレジットは、たとえば、電子ゲームのための仮想資産または仮想貨幣であってもよい。他のユーザによるユーザ規定のエモティコンの使用に関する統計がユーザに提供され得る。
【００２３】
さまざまな実現例においては、ユーザ選択のために候補のエモティコンを提供する動作は、それぞれのスコアに従って候補のエモティコンに順序を付け、当該順序に従って候補のエモティコンを提供する動作を含む。当該複数の動作はまた、第１のテキストがブランド、製品および／またはサービスに関連付けられたテキストであると判断し、当該判断に基づき、ブランド、製品および／またはサービスについての候補のエモティコンを識別する動作を含み得る。一例においては、当該複数の動作はまた、第１のテキストと第２のテキストとの間の距離、特定のエモティコンのユーザ選択の履歴番号、および、第１の感情と第２の感情との間の類似度に基づき、特定の候補のエモティコンのスコアを計算する動作を含む。スコアは、第１のテキストの自然言語と第２のテキストの自然言語との間の類似度に基づいていてもよい。
【００２４】
いくつかの例においては、候補のエモティコンを提供する動作は、入力カーソルの現在位置に、または入力カーソルの現在位置の付近にユーザ選択のために候補のエモティコンを提示する動作を含む。第１のテキストは、入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節のうち少なくとも１つを含み得る。候補のエモティコンを識別する動作は、少なくともユーザのプレファレンス、ユーザに関連する情報および／または受信者に関連する情報に基づいていてもよい。当該複数の動作は、アプリケーションプログラミングインターフェイスを提供する動作を含み得る。当該アプリケーションプログラミングインターフェイスを介して、候補のエモティコンの識別が開始され得る。
【００２５】
別の局面においては、本発明は、データ処理装置の処理モードを制御するための、１つ以上の記憶媒体に記憶されたコンピュータプログラムプロダクトに関する。コンピュータプログラムプロダクトはデータ処理装置によって実行可能であって、データ処理装置に以下の複数の動作を実行させる。当該複数の動作は、テキストフィールドにおけるテキストの第１の感情を判断する動作と、テキストフィールドにおける入力カーソルの現在位置に近接する第１のテキストを当該テキストフィールドから選択する動作と、１つ以上の候補のエモティコンを識別する動作とを含み、候補のエモティコンは各々、それぞれの第２の感情を有するそれぞれの第２のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、第１のテキストおよび第１の感情に対する関連性を示すそれぞれのスコアに関連付けられており、当該複数の動作はさらに、ユーザ選択のためにそれぞれの最高スコアを有する１つ以上の候補のエモティコンを提供する動作と、提供されたエモティコンのうち１つ以上のエモティコンのユーザ選択を受け取って、選択されたエモティコンを入力カーソルの現在位置におけるテキストフィールドに挿入する動作とを
含む。
【００２６】
いくつかの実施の形態の他の特徴および局面は、添付の図面に関連して解釈される、さまざまな実施の形態に従って特徴を例示目的で記載する以下の詳細な説明から明らかになるであろう。
【００２７】
以下の図を参照してさまざまな実施の形態が詳細に記載される。添付の図面は、例示目的にのみ提供されており、単にいくつかの例示的な実施の形態を示す。これらの図面は、さまざまな実施の形態についての読者の理解を促進するために提供されており、実施の形態の広さ、範囲または適用可能性を限定するとは考えられるべきではない。
【図面の簡単な説明】
【００２８】
【図１】さまざまな実施の形態が用いられ得る環境の例を示す図である。
【図２】いくつかの実施の形態に従った例示的なエモティコン提案システムのブロック図である。
【図３】いくつかの実施の形態に従った、エモティコンを識別および提案するための例示的な方法のフローチャートである。
【図４】いくつかの実施の形態に従ったクライアントサーバアーキテクチャを用いる例示的なエモティコン提案システムのブロック図である。
【図５】ある実施の形態を利用するメッセージングアプリケーションのユーザインターフェイスを示す図である。
【図６】ある実施の形態を利用するメッセージングアプリケーションのユーザインターフェイスを示す図である。
【図７】例示的なデジタルデバイスのブロック図である。
【図８】テキストのセグメントにおける検出された感情に基づいてエモティコンを挿入するための例示的方法を示すフローチャートである。
【図９】ユーザ規定エモティコンシステムの例を示す概略的なブロック図である。
【発明を実施するための形態】
【００２９】
詳細な説明
本願明細書において記載される多くの実施の形態は、テキストフィールドへの文字のタイピングを伴う、コンピューティングデバイス上でのさまざまなアクティビティの間に、エモティコンを識別および提案するシステムおよび方法に関する。さまざまなシステムおよび方法が、テキストフィールドに存在するセグメントのコンテキストを分析するとともにそのコンテキストに基づいてテキストフィールドへのエントリに利用可能な１つ以上の候補のエモティコンを識別することにより、エモティコンを識別し得る。その後、ユーザは候補のエモティコンから１つ以上のエモティコンを選択し得、選択されるエモティコンは、テキストフィールドに入力され得る。随意では、ユーザは、エモティコンの提案を完全に無視するよう選択し、コンピューティングデバイス上の自身のアクティビティを継続し得る。この記載において使用されるように、「セグメント」は、単語、句、文の断片、文または節を示す１つ以上の文字を含み得る。
【００３０】
実施の形態によっては、テキストフィールドに存在するセグメントのコンテキストの分析は、それらのセグメントに関するサブテキストまたは意味を決定することを伴う可能性もあり、それらのセグメントの意味解析が必要となる可能性もある。さらに、本願明細書に記載されるように、特定の候補のエモティコンと特定のサブテキストまたは意味との間の関連性は、特定のサブテキストまたは意味を持つ特定の候補のエモティコンの（過去の）統計的な使用に基づき得る。さまざまな実施の形態では、このようなエモティコンの使用は、特定のサブテキストもしくは意味（たとえば特定のサブテキストもしくは意味における提案されるエモティコンのユーザの選択）との特定のエモティコンのユーザの個人的
な使用に基づき得るか、または特定のサブテキストもしくは意味を持つ特定のエモティコンのコミュニティの使用（たとえばユーザのコミュニティによるソーシャルネットワーク上の投稿において観察されたいくつかのエモティコンの使用）に基づき得る。
【００３１】
図１は、さまざまな実施の形態が用いられ得る環境１００の例を示す。環境１００は、タブレットコンピューティングデバイス１０４と、タブレットコンピューティングデバイス１０４に結合されたローカルのエモティコンデータストア１０２と、スマートフォンコンピューティングデバイス１０８と、スマートフォンコンピューティングデバイス１０８に結合されたローカルのエモティコンデータストア１０６と、デスクトップコンピューティングデバイス１１２と、デスクトップコンピューティングデバイス１１２に結合されたローカルのエモティコンデータストア１１４と、エモティコン提案サーバ１１６と、エモティコン提案サーバ１１６に結合されたローカルのエモティコンデータストア１１８とを含む。環境１００はさらに通信ネットワーク１１０を含む。通信ネットワーク１１０上で、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、デスクトップコンピューティングデバイス１１２およびエモティコン提案サーバ１１６が通信する。タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、デスクトップコンピューティングデバイス１１２、およびエモティコン提案サーバ１１６は、プロセッサおよびメモリを有するデジタルデバイスの例である。さまざまな実施の形態が用いられ得る他の例示的なデジタルデバイスは、ラップトップ、ネットブック、ノートブック、メディアデバイス、音楽デバイス、携帯情報端末（personal digital assistant：ＰＤＡ）などを含む。例示的なデジタルデバイスが、図７にさらに記載される。
【００３２】
いくつかの実施の形態に従うと、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、およびデスクトップコンピューティングデバイス１１２は、入力のためのエモティコンを識別および提案するためのシステムおよび方法を利用する例示的なデジタルデバイスであり得る。たとえば、このようなコンピューティングデバイスは、ユーザがこのようなコンピューティングデバイス上でインスタントメッセージングアプリケーションを使用している場合、またはユーザがこのようなコンピューティングデバイスを通じてウェブサイトフォーラムにメッセージを投稿している場合に、ある実施の形態を用いてエモティコンを識別および提案し得る。本願明細書において記載されるさまざまな実施の形態に関連して他のデジタルデバイスが用いられ得ることが当業者には理解されるであろう。
【００３３】
いくつかの実施の形態では、エモティコン提案サーバ１１６は、デジタルデバイスにてユーザのためにエモティコンの識別および提案を促進し得る。本願明細書において後述されるように、エモティコン提案サーバ１１６は、セグメントのコンテキストを決定し得るか、決定されたコンテキストに基づいて１つ以上の候補のエモティコンを識別し得るか、デジタルデバイスに１つ以上の候補のエモティコンを提案し得るか、またはそれらの何らかの組合せを行い得る。さまざまな実施の形態の場合、エモティコン提案サーバ１１６は、エモティコン提案サーバ１１６がインターネットサービスにエモティコンの提案機能性を提供する場合、インターネットサービスをホストするサーバ上で動作するサービスであり得る。たとえば、エモティコン提案サーバ１１６は、エモティコン提案サーバ１１６によってサービスが提供されている（すなわちエモティコン提案サーバ１１６によってエモティコンの提案が提供されている）ウェブサイト（たとえばウェブサイトフォーラムまたはソーシャルネットワーキングウェブサイト）をホストしているウェブサーバ上で動作するサービスであり得る。
【００３４】
実施の形態に応じて、エモティコンを識別および提案するためのさまざまな動作およびコンポーネントは、エモティコンの提案を利用するデジタルデバイスに分離されてもよく
、または２つ以上のデジタルデバイスの間で変動するレベルで分散されてもよい。たとえば、スマートフォンコンピューティングデバイス１０８上で電子メールを作成する際にエモティコンを識別、提案、および入力するためのシステムまたは方法は、スマートフォンコンピューティングデバイス１０８上に格納および動作される電子メールアプリケーションに完全に埋め込まれ得る。代替的な例においては、ウェブサイトフォーラムのためにメッセージ投稿を準備するようタブレットコンピューティングデバイス１０４を使用している間、エモティコンを識別、提案、および入力するためのシステムまたは方法は、タブレットコンピューティングデバイス１０４を利用して、現在準備されるメッセージのコンテキストを決定し、エモティコン提案サーバ１１６を利用して、現在準備されるメッセージにおいて使用される１つ以上の候補のエモティコンを識別し、次いで、タブレットコンピューティングデバイス１０４を利用して、提案されるエモティコンとして候補のエモティコンを提示し得る。
【００３５】
エモティコン提案サーバ１１６は、デジタルデバイスへのエモティコンの識別および提案の間、リモートのエモティコンデータストア１１８を利用し得る。ある実施の形態の場合、リモートのエモティコンデータストア１１８は、エモティコン提案サーバ１１６による提案に利用可能なエモティコンのライブラリと、当該ライブラリにおけるエモティコンとコンテキスト（たとえばサブテキストおよび意味）との間の関連性とを含み得る。たとえば、リモートのエモティコンデータストア１１８は、「幸せな顔」のエモティコンのライブラリと、「幸せな顔」のエモティコンと幸福なコンテキストとの間の関連性とを含み得る。別の例では、リモートのエモティコンデータストア１１８は、「サンフランシスコ」のエモティコンのライブラリと、「サンフランシスコ」のエモティコンとサンフランシスコの町を明示的または暗黙的に指すコンテキストとの間の関連性とを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア１１８は、所与のエモティコンと所与のコンテキスト（たとえばサブテキストまたは意味）との間の２つ以上の関連性を含み得る。たとえば、リモートのエモティコンデータストア１１８は、「しかめっ面」のエモティコンのライブラリと、「しかめっ面」のエモティコンと悲しいコンテキストとの間の関連性と、「しかめっ面」のエモティコンと不快なコンテキストとの間の関連性とを含み得る。さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性が、リモートのエモティコンデータストア１１８上に格納され得るということを当業者であれば理解するであろう。
【００３６】
実施の形態に応じて、エモティコンのライブラリは、任意のユーザによってアクセス可能なエモティコンか、（たとえば、プレミアムに基づくか、またはあるグループにのみアクセス可能であるといった）アクセスが制限された限定されたグループのユーザによってアクセス可能なエモティコンか、ユーザがカスタマイズしたエモティコンもしくはユーザがアップロードしたエモティコンか、または、ユーザのお気に入りであるエモティコンを含んでもよい。著者の気分または感情を伝える文字エモティコンおよびグラフィカルエモティコンに加えて、さまざまな実施の形態において使用されるエモティコンは、関心事、趣味、地理的な位置、イベント、休日、季節および天候などに関するエモティコンを含み得る。エモティコン提案データストア１１８上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア１１８はさらに、提案に好適なエモティコンを識別する際に実施の形態において利用され得るユーザプレファレンス、ユーザ情報または受信者情報を含み得る。たとえば、リモートのエモティコンデータストア１１８は、任意のユーザに一般に利用可能なエモティコンを提案する前に、ユーザ規定のエモティコンまたはユーザがアップロードしたエモティコンを実施の形態に提案させるユーザプレファレンスを格納し得る。別の例では、リモートのエモティコンデータストア１１８は、実施の形態によってユーザに提案された第１のエモティコンを実施の形態に自動的に挿入させるか、または所
与のコンテキストにおいてもっとも使用頻度が高い提案されたエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスを格納し得る。
【００３７】
いくつかの実施の形態では、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８およびデスクトップコンピューティングデバイス１１２は各々、別個のローカルのエモティコンデータストアに結合され得る。別個のローカルのエモティコンデータストアは、ユーザがカスタマイズしたエモティコン、ユーザのお気に入りもしくはユーザが好むエモティコン、ローカルのエモティコンデータストア上に格納されたエモティコンとコンテキスト（たとえばサブテキストまたは意味）との間の関連性、エモティコンの識別および提案に関してのユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報を格納可能である。たとえば、タブレットコンピューティングデバイス１０４は、ローカルのエモティコンデータストア１０２に結合され得、スマートフォンコンピューティングデバイス１０８は、ローカルのエモティコンデータストア１０６に結合され得、デスクトップコンピューティングデバイス１１２は、ローカルのエモティコンデータストア１１４に結合され得る。
【００３８】
さらに、ローカルのエモティコンデータストア１０２、１０６および１１４の各々は、それらのそれぞれのコンピューティングデバイスによって用いられて、以前に提案されたエモティコンまたは以前にユーザによって選択された提案されたエモティコンをローカルにキャッシュし得る。その際、いくつかの実施の形態は、当該提案されたエモティコンについてエモティコン提案サーバ１１６がクエリを受ける回数を制限しつつ、共通して発生するコンテキストについて同じエモティコンを繰り返し提案し得る。いくつかの実施の形態の場合、ローカルのエモティコンデータストア１０２、１０６および１１４にキャッシュされたエモティコンは、失効時間を有し得る。当該失効時間の後、キャッシュされたエモティコンは無効化またはパージされる。ひとたびキャッシュ中のエモティコンアイテムが失効すると、いくつかの実施の形態は、提案されるエモティコンについてエモティコン提案サーバ１１６にクエリを送ることを再開する。
【００３９】
図２は、いくつかの実施の形態に従った例示的なエモティコン提案システム２００のブロック図である。エモティコン提案システム２００は、表示モジュール２０２、入力モジュール２０４、セグメント分析モジュール２０６、エモティコン検索モジュール２０８、エモティコン提案モジュール２１０、エモティコン選択モジュール２１２、およびエモティコンデータストア２１４を含み得る。いくつかの実施の形態では、エモティコン提案システム２００はさらに、エモティコン提案システム２００に含まれるさまざまなモジュールの動作を促進するメモリおよび少なくとも１つのプロセッサを含み得る。
【００４０】
表示モジュール２０２は、テキストフィールドまたはテキストボックスのような入力フィールドを表示し得る。入力フィールドに、ユーザは入力モジュール２０４を使用して、１つ以上のセグメント、文字エモティコンまたはグラフィカルエモティコンを入力し得る。典型的に、セグメントおよびエモティコンは、入力フィールドに入力されると、入力フィールドに現われる。本願明細書において示されるように、「セグメント」は、単語、句、文の断片、文または節を示す１つ以上の文字を含み得る。入力フィールドの一部として、表示モジュール２０２は、ユーザの文字入力が次にどこに入力されるか、またはエモティコンが次にどこに入力されるかを示す入力カーソルを表示し得る。
【００４１】
本願明細書において示されるように、さまざまな実施の形態は、入力フィールド内の入力カーソルの現在位置、入力の現在のセグメント内容、ユーザに関連する情報、受信者に関連する情報、ユーザプレファレンスまたはそれらの何らかの組合せに基づき、エモティコンを提案し得る。一般に、ひとたび１つ以上の候補のエモティコンがユーザへの提案のために（たとえば、入力フィールドのセグメント内容に基づいて）識別されると、候補の
エモティコンは表示モジュール２０２を介してユーザに提案され得る。具体的には、表示モジュール２０２は、ユーザの選択のために、入力フィールドにおける入力カーソルの現在位置または当該現在位置の近くに、候補のエモティコンを表示し得る。実施の形態に応じて、表示モジュール２０２は、コールアウトボックスを介して、入力フィールドまたはその入力フィールドの近くに、候補のエモティコンを表示してもよい。
【００４２】
いくつかの実施の形態の場合、表示モジュール２０２は、デジタルデバイス（たとえばビデオディスプレイまたはビデオプロジェクタ）の一部を形成し得る。当該デジタルデバイスは、デジタルデバイスからのグラフィカル出力をすべて表示することを担い得る。いくつかの実施の形態では、表示モジュール２０２は、グラフィカルユーザインターフェイス（graphical user interface：ＧＵＩ）の一部として、入力フィールドを表示し得る。たとえば、入力フィールドは、デジタルデバイス上で動作するアプリケーションのグラフィカルコンポーネントであり得る（たとえば電子メールクライアントもしくはインスタントメッセージングアプリケーション）か、またはデジタルデバイス上で動作するアプリケーションを通じて閲覧可能もしくは編集可能である文書のグラフィカル表示であり得る（たとえば、ウェブブラウザを通じて示されるウェブページのテキストフィールドもしくはワードプロセッサを通じて示される文書）。当業者であれば、実施の形態同士の間で入力フィールドのタイプとサイズが多様になり得るということを理解するであろう。
【００４３】
入力モジュール２０４は、ユーザから文字入力を受け取り得るとともに、このような文字入力を受け取られたとおりに入力フィールドに入力し得る。文字入力が入力フィールドに入力されると、表示モジュール２０２は、当該文字入力で入力フィールドを更新し得る。さらに、さまざまな実施の形態に従うと、入力モジュール２０４は、提案されるエモティコンについてのエントリ選択を受け取り得る。一般に、選択に際して、選択されるエモティコンは、入力フィールドにおける入力カーソルの現在位置に挿入され得る。実施の形態に応じて、入力モジュールは、デジタルデバイスに外部的に結合されるかまたはデジタルデバイスに物理的に埋め込まれる物理的な入力装置を含んでもよい。物理的な入力装置の例は、キーボード、トラックパッドまたはコンピュータマウスを含み得るが、これらに限定されない。いくつかの実施の形態では、入力モジュールは、レーザ投射されたキーボードまたはオンスクリーンキーボードのような仮想入力装置を含み得る。仮想入力装置は、表示モジュール２０２を通じてユーザに提供され得る（すなわち表示され得る）。さまざまな実施の形態において、仮想入力装置が使用される際には、このような仮想入力装置は、セグメントが入力される入力フィールドまたはその入力フィールドの近くに表示され得る。
【００４４】
図６にさらに記載されるように、いくつかの実施の形態において、提案されるエモティコンは、入力モジュール２０４を通じてユーザに提示され得る。たとえば、入力モジュール２０４が物理的なキーボードを含む場合、物理的なキーボードは、提案されるエモティコンを当該物理的なキーボードを通じて表示するように構成され得る。いくつかの実施の形態の場合、物理的なキーボードは、埋め込まれたディスプレイ（たとえばＬＣＤボタン）を含むキーもしくはボタンによって、または物理的なキーボードの表面上（たとえばキーボードの頂部）に埋め込まれたディスプレイによって、提案されるエモティコンを表示し得る。実施の形態に応じて、提案されるエモティコンは、物理的なキーボードを通じてカラーまたはグレイスケールで表示されてもよい。提案されるエモティコンが物理的なキーボードを通じて表示される際、ユーザは、物理的なキーボードのキーまたはボタンを通じて、当該提案されるエモティコンの１つ以上を選択し得る。
【００４５】
別の例では、入力モジュール２０４が、（何らかのタブレットコンピューティングデバイスおよびスマートフォンコンピューティングデバイス上に存在するもののような）オンスクリーンキーボードを含む場合、オンスクリーンキーボードの外観は、オンスクリーン
キーボードを通じて、提案されるエモティコンを表示するよう再構成され得る。いくつかの実施の形態の場合、オンスクリーンキーボードの外観は、オンスクリーンキーボードのいくつかのボタンが、提案されるエモティコンボタンに置換されるように再構成され得るか、またはオンスクリーンキーボードが、付加的な提案されるエモティコンボタンで強化されるように再構成され得る。提案されるエモティコンボタンは、ひとたびオンスクリーンキーボードを通じて提示されると、１つ以上の提案されるエモティコンから選択するようユーザによって使用され得る。
【００４６】
セグメント分析モジュール２０６は、入力フィールドに存在する１つ以上のセグメントを分析し、分析されたセグメントについてコンテキストを決定し得る。本願明細書に記載されるように、セグメント分析モジュール２０６によって決定されたコンテキストはその後、ユーザに提案されるべき候補のエモティコンを識別する際に利用され得る。さまざまな実施の形態では、セグメント分析モジュール２０６は、入力フィールドにおけるセグメントのコンテキストを決定する際に、入力フィールドから対象のセグメントのみを分析し得る。
【００４７】
いくつかの実施の形態では、セグメント分析モジュール２０６はまず、入力フィールドにおける対象のセグメントを識別し、次いで、コンテキストを決定するよう対象のそれらのセグメントを分析する。一般に、対象のセグメントは、入力フィールドにおける入力カーソルの現在位置に関連して識別される。さらにいくつかの実施の形態の場合、セグメント分析モジュール２０６は、対象のセグメントを識別する際に、入力フィールドに現在存在するセグメントの構文分析を行ない得る。
【００４８】
実施の形態に応じて、セグメント分析モジュール２０６は、対象のセグメント識別プロセスをガイドする条件付きまたは非条件付きのルールに基づいて、対象のセグメントを識別してもよい。対象のセグメントを識別するための例示的なルールは、対象のセグメントとして、入力フィールドにおける入力カーソルの現在位置の直前の文の断片または文を識別することを含み得る。対象のセグメントを識別するための別の例示的なルールは、対象のセグメントとして、入力フィールドにおける入力カーソルの現在位置の直後の文の断片または文を識別することを含み得る。いくつかの実施の形態の場合、ルールは、対象のセグメントを決定するよう、セグメント分析モジュール２０６によって行なわれた構文分析に関連して利用され得る。
【００４９】
対象の２つ以上のセグメントが識別される場合、セグメント分析モジュール２０６は、対象のセグメントの各々のコンテキストを分析し得るか、または（たとえば、対象のあるセグメントが他のセグメントより重要性が高くなる重み付けシステムに基づいて）もっとも重要でない対象のセグメント以外のコンテキストを分析し得る。さらに１つ以上のルールは、対象の２つ以上のセグメントが識別される場合、対象のセグメントのうちどれを分析すべきかを決定し得る。
【００５０】
セグメント分析モジュール２０６は、対象のセグメントからの２つ以上のコンテキストを決定し得る。このような場合、エモティコン提案システム２００は、決定されたコンテキストのすべてに関連付けられる候補のエモティコンを検索し得るか、または（たとえばルールに基づいて決定された）もっとも重要なコンテキストのうち１つ以上にマッチする候補のエモティコンのみを検索し得る。
【００５１】
対象の１つ以上のセグメントのコンテキストを決定するために、セグメント分析モジュール２０６は、入力フィールドに存在する対象のセグメントを意味分析し得る。当業者であれば、このセグメントの意味分析は、当該技術において公知の１つ以上の技術に従って行なわれ得るということを理解するであろう。対象の１つ以上のセグメントのコンテキス
トを分析する場合、セグメント分析モジュール２０６は、対象のセグメントについてのサブテキストまたは意味を決定し得る。対象のセグメントについて識別されたサブテキストまたは意味に基づいて、エモティコン提案システム２００は、提案のために１つ以上の候補のエモティコンを識別し得る。対象のセグメントのサブテキストは、当該対象のセグメントについて気分または感情を識別し得る。対象のセグメントについての例示的なサブテキストは、幸福、悲しみ、無関心、怒り、憤慨、悔恨または興奮を含み得るがこれらに限定されない。対象のセグメントについての意味は、対象のセグメントについての明示的な意味を識別し得る。たとえば、対象のセグメントが「新しい仕事をゲットした！」と記載する場合、セグメント分析モジュール２０６は対象のセグメントについての意味を「新しい仕事」として識別し得る。
【００５２】
なお、いくつかの実施の形態の場合、セグメント分析モジュール２０６は、入力モジュール２０４を使用してユーザが文字またはエモティコンを加えるかまたは入力フィールドから文字またはエモティコンを取り除く際に、リアルタイムまたはほぼリアルタイムで対象のセグメントを識別および分析し得る。
【００５３】
エモティコン検索モジュール２０８は、対象のセグメントの識別されたコンテキスト（たとえばサブテキストまたは意味）に基づいて、１つ以上の候補のエモティコンを検索し得る。いくつかの実施の形態では、エモティコン検索モジュール２０８は、エモティコン提案システム２００によって識別された１つ以上のコンテキストに関連したエモティコンを求めて、エモティコンデータストア２１４を検索し得る。本願明細書に記載されるように、エモティコンデータストア２１４は、入力フィールドへの入力に利用可能なエモティコンと、エモティコンと１つ以上のコンテキストとの間の関連性とを含み得る。
【００５４】
本願明細書において示されるように、所与のエモティコンと所与のコンテキストとの間の関連性は、当該所与のコンテキストとの所与のエモティコンの統計的な使用を含み得る。所与のエモティコンと所与のコンテキストとの間の関連性の強さは、このような統計的な使用に基づき得る。さらに、統計的な使用は、所与の内容との所与のエモティコンのユーザ自身の使用に基づき得るか、またはユーザのコミュニティによる所与の内容との所与のエモティコンの使用（たとえばソーシャルネットワーキングウェブサイト上の所与のコンテキストにおける所与のエモティコンの使用）に基づき得る。
【００５５】
一般に、所与のコンテキストとの所与のエモティコンの使用が多くなるほど、当該所与のエモティコンと所与のコンテキストとの間の関連性が強くなる。いくつかの実施の形態の場合、エモティコンとコンテキストとの間の関連性の強さは、当該コンテキストについてのエモティコンを提案することにおける信頼性を示し得る。関連性の強さも、もっとも高い強さからもっとも低い強さまで１つ以上の候補のエモティコンに優先順位を付けて提示するよう使用され得る。
【００５６】
いくつかの実施の形態では、エモティコン検索エンジンモジュール２０８による１つ以上の候補のエモティコンの検索は、エモティコンとコンテキストとの間の関連性の強さを考慮し得る。たとえば、エモティコン検索エンジンモジュール２０８は、エモティコンと目標コンテキストとの間の関連性の強さが所定のしきい値に合致または超える場合、単にエモティコンを候補のエモティコンとして識別し得る。さらに、エモティコン検索エンジンモジュール２０８は、あるエモティコンと目標コンテキストとの間の関連性の強さが、他の潜在的な候補のエモティコンに対するしきい値に合致または越える場合に、単に当該エモティコンを候補のエモティコンとして識別し得る。
【００５７】
本願明細書において示されたように、さまざまな実施の形態において、エモティコン検索モジュール２０８は、ユーザプレファレンス、ユーザに関連する情報、受信者に関連す
る情報、またはそれらの何らかの組合せを用いることによって、候補のエモティコンの検索をさらに狭め得る。ユーザプレファレンスの例は、他のタイプのエモティコンの前に、ユーザがカスタマイズしたエモティコンを提案するプレファレンスと、あるカテゴリのエモティコンを無視するプレファレンス（たとえば、ユーザに関して年齢が適切であるエモティコンのみを提案する）とを含み得るがこれらに限定されない。受信者に関連する情報の例は、ユーザの興味、ユーザの民族性、ユーザの宗教、ユーザの地理的位置、ユーザの年齢、ユーザの関係ステータス、およびユーザの職業を含み得るがこれらに限定されない。ユーザに関連する情報の例は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含み得るがこれらに限定されない。ある実施の形態では、１つ以上の候補のエモティコンを検索する際、エモティコン検索モジュール２０８は、さらに、文字エモティコンまたはグラフィカルエモティコンを受け取る際に入力フィールドの制限を考慮し、それにしたがって候補のエモティコンを検索し得る。
【００５８】
エモティコン提案モジュール２１０は、対象のセグメントの識別されたコンテキストに基づいて位置特定された１つ以上の候補のエモティコンを受け取り、選択のためにユーザに当該１つ以上の候補のエモティコンを提示し得る。本願明細書に示されるように、いくつかの実施の形態において、エモティコン提案モジュール２１０は、エントリ選択のために１つ以上の候補のエモティコンを入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに表示するよう表示モジュール２０２を使用し得る。さらに本願明細書において示されるように、さまざまな実施の形態において、エモティコン提案モジュール２１０は、物理的な入力装置または仮想入力装置を通じて、エントリ選択のために１つ以上の候補のエモティコンを表示するよう入力モジュール２０２を使用し得る。
【００５９】
エモティコン選択モジュール２１２は、ユーザに提案される１つ以上の候補のエモティコンについてエントリ選択をユーザから受け取り得る。特定の実施の形態において、エモティコン選択モジュール２１２は、入力モジュール２０４を通じて１つ以上の候補のエモティコンについてエントリ選択を受け取り得、エモティコン選択モジュール２１２は、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。本願明細書において示されるように、エモティコン選択モジュール２１２は、入力カーソルの現在位置に、１つ以上の選択されるエモティコンを入力し得る。いくつかの実施の形態の場合、エモティコン選択モジュール２１２は、入力フィールド内のセグメントまたは対象のセグメントを１つ以上の選択されるエモティコンに置換することによって、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。さらに、いくつかの実施の形態は、エモティコン選択モジュール２１２が何らかのガイドラインに基づいて、提案されるエモティコンを自動選択するように（たとえばユーザプレファレンスを使用して）ユーザがエモティコン選択モジュール２１２を設定することを可能にし得る。たとえばユーザは、エモティコンの提案がなされると、第１の提案されたエモティコンが選択されるように、エモティコン選択モジュール２１２を構成し得る。
【００６０】
いくつかの実施の形態では、エモティコンとコンテキストとの間の関連性がこのようなコンテキストとのこのようなエモティコンの統計的な使用を含む場合、エモティコン選択モジュール２１２は、ユーザから受け取られたエントリ選択に基づいて、統計的使用情報を更新し得る。特に、エモティコン選択モジュール２１２は、所与のコンテキストについての１つ以上の候補のエモティコンのエントリ選択を受け取り、選択された候補のエモティコンとそれらの使用のそれぞれのコンテキストとの間で、格納された統計的使用情報を更新し得る。実施の形態に応じて、エモティコン選択モジュール２１２は、エモティコンデータストア２１４上の統計的使用情報を更新してもよい。
【００６１】
エモティコンデータストア２１４は、エモティコン提案システム２００による提案に利
用可能なエモティコンのライブラリと、ライブラリにおけるエモティコンとコンテキスト（たとえばサブテキストおよび意味）との間の関連性とを含み得る。エモティコン検索モジュール２０８は、１つ以上の特定のコンテキストに関連付けられる１つ以上の候補のエモティコンを検索する場合、エモティコンデータストア２１４にアクセスし得る。本願明細書において示されるように、いくつかの実施の形態の場合、エモティコンデータストア２１４は、所与のエモティコンと所与のコンテキスト（たとえばサブテキストまたは意味）との間の２つ以上の関連性を含み得る。さらに、所与のエモティコンと所与のコンテキストとの間の関連性は、所与のコンテキストとの所与のエモティコンの統計的な使用を含み得る。このような統計的な使用は、エモティコンとコンテキストとの間の関連性の強さを反映し得る。
【００６２】
エモティコンデータストア２１４上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、エモティコンデータストア２１４はさらに、提案に好適なエモティコンを識別する際に、実施の形態によって用いられ得るユーザプレファレンス、ユーザ情報、または受信者情報を含み得る。たとえば、エモティコンデータストア２１４は、任意のユーザに一般に利用可能なエモティコンを提案する前に、ユーザ規定のエモティコンまたはユーザがアップロードしたエモティコンを実施の形態に提案させるユーザプレファレンスを格納し得る。別の例では、エモティコンデータストア２１４は、実施の形態によってユーザに提案された第１のエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスか、または所与のコンテキストにおいてもっとも高い使用頻度を有する提案されるエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスを格納し得る。
【００６３】
当業者は、さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性が、エモティコンデータストア２１４上に格納され得るということを理解するであろう。
【００６４】
「モジュール」は、ソフトウェア、ハードウェア、ファームウェアおよび／または回路網を含み得るということが理解されるであろう。一例では、プロセッサによって実行可能な命令を含む１つ以上のソフトウェアプログラムが、本願明細書において記載されたモジュールの機能の１つ以上を実行し得る。別の例では、回路網が、同じまたは同様の機能を実行し得る。代替的な実施の形態は、より多い、より少ない、または機能的に等価なモジュールを含み得るとともに、これも本実施の形態の範囲内にあり得る。たとえば、さまざまなモジュールの機能は、異なって組み合わせられ得るかまたは分割され得る。たとえば、さまざまなモジュールの機能は、エモティコン提案サーバに存在する１つ以上のモジュールの間で分散され得、１つ以上のモジュールがエモティコン提案クライアントに存在する。
【００６５】
図３は、いくつかの実施の形態に従った、エモティコンを識別および提案するための例示的な方法３００のフローチャートである。ステップ３０２において、セグメント分析モジュール２０６は、表示モジュール２０２を通じて表示され得る入力フィールドから１つ以上のセグメントを受け取り得る。本願明細書において示されるように、１つ以上のセグメントを受け取る際、セグメント分析モジュール２０６は、コンテキスト分析の目的のために、対象のセグメントを識別し得る。
【００６６】
ステップ３０４では、セグメント分析モジュール２０６は、セグメントの１つ以上の目標サブテキストまたは１つ以上の目標意味を決定するよう１つ以上のセグメントを分析し得る。セグメントの目標サブテキストおよび目標意味は、セグメントに関連した１つ以上のコンテキストを提供する。実施の形態に応じて、セグメント分析モジュール２０６は、
セグメント分析モジュール２０６によって対象のセグメントとして識別されたセグメントのみを分析してもよい。
【００６７】
ステップ３０６では、エモティコン検索モジュール２０８は、１つ以上の目標コンテキストとの関連性を有する１つ以上の候補のエモティコンか、またはセグメント分析モジュール２０６によって決定され得た１つ以上の目標意味を識別し得る。いくつかの実施の形態では、エモティコン検索モジュール２０８は、目標サブテキストまたは目標意味と関連性とを有する、エモティコンデータストア２１４中の１つ以上の候補のエモティコンを識別し得る。本願明細書において示されるように、各関連性の強さは、所与のコンテキストとの所与のエモティコンの統計的な使用に基づき得るとともに、エモティコン検索モジュール２０８が１つ以上の候補のエモティコンを識別する際には、このような強さが考慮に入れられ得る。
【００６８】
ステップ３０８では、エモティコン提案モジュール２１０は、入力フィールドにおける入力カーソルの現在位置に、エントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得る。本願明細書に記載されるように、入力フィールドおよびその中の入力カーソルは、表示モジュール２０２を通じてユーザに表示され得る。いくつかの実施の形態の場合、エモティコン提案モジュール２１０は、表示モジュール２０２を使用して、エントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに候補のエモティコンを表示し得る。さらに、エモティコン提案モジュール２１０は、入力モジュール２０４の１つ以上の入力装置を通じてエントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得る。たとえば、エモティコン提案モジュール２１０は、ディスプレイを有する物理的なキーボードのような物理的な入力装置を通じてまたはオンスクリーンキーボードのような仮想入力装置を通じて、ユーザに１つ以上の候補のエモティコンを提示し得る。
【００６９】
ステップ３１０では、エモティコン選択モジュール２１２は、１つ以上の候補のエモティコンからの１つ以上の選択したエモティコンについて、ユーザからエントリ選択を受け取り得る。いくつかの実施の形態の場合、エモティコン選択モジュール２１２は、入力モジュール２０４からエントリ選択を受け取り得る。さらに、エントリ選択を受け取る際に、エモティコン選択モジュール２１２は、１つ以上の候補のエモティコンについて、エントリ選択に基づき、エモティコンデータストア２１４上で統計的使用情報を更新し得、これにより、候補のエモティコンと特定のコンテキストとの間の関連性を強くし得るかまたは弱くし得る。
【００７０】
ステップ３１２では、エントリ選択に基づき、エモティコン選択モジュール２１２は、テキストフィールドにおける入力カーソルの現在位置に、エモティコン選択モジュール２１２によって受け取られた１つ以上の候補のエモティコンを挿入し得る。本願明細書において示されるように、いくつかの実施の形態において、入力フィールドへの候補のエモティコンのエントリは、入力フィールドにおける１つ以上のセグメントを、選択されるエモティコンに置換することを伴い得る。
【００７１】
図４は、いくつかの実施の形態に従った、クライアントサーバアーキテクチャを使用する例示的なエモティコン提案システム４００のブロック図である。エモティコン提案システム４００は、エモティコン提案クライアント４０２およびエモティコン提案サーバ４２０を含み得る。いくつかの実施の形態では、エモティコン提案クライアント４０２は、図７に記載されるデジタルデバイスまたは図１に記載されるコンピューティングデバイス（すなわちタブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８およびデスクトップコンピューティングデバイス１１２）と同様であり得、エモティコン提案サーバ４２０は、図７に記載されるデジタルデバイスまたは図１
に記載されたエモティコン提案サーバ１１６と同様であり得る。エモティコン提案クライアント４０２およびエモティコン提案サーバ４２０は、通信ネットワーク４１８上で互いに通信し得る。
【００７２】
エモティコン提案クライアント４０２は、表示モジュール４０４、入力モジュール４０６、セグメント分析モジュール４０８、エモティコン検索モジュール４１０、ローカルのエモティコンデータストア４１２、エモティコン提案モジュール４１４、およびエモティコン選択モジュール４１６を含み得る。エモティコン提案サーバ４２０は、エモティコン検索エンジン４２２と、リモートのエモティコンデータストア４２４とを含み得る。
【００７３】
エモティコン提案クライアント４０２では、表示モジュール４０４は、ユーザが入力モジュール４０６を使用して、１つ以上のセグメント、文字エモティコンまたはグラフィカルエモティコンを入力し得る入力フィールドを表示し得る。典型的には、セグメントおよびエモティコンは、入力フィールドに入力されると、入力フィールドに現われる。当該入力フィールドにより、表示モジュール４０４は、入力フィールドに入力カーソルを表示し得る。入力フィールドでは、入力カーソルは、ユーザの文字入力が次にどこに入力されるか、またはエモティコンが次にどこに入力され得るかを示す。
【００７４】
さまざまな実施の形態は、たとえば、入力フィールドにおける入力カーソルの現在位置、入力の現在のセグメント内容、ユーザに関連する情報、受信者に関連する情報、ユーザプレファレンス、またはそれらの何らかの組合せを含む多くの要因に基づき、エモティコンを提案し得る。候補のエモティコンは、ひとたび識別されると、表示モジュール４０４を介してユーザに提案され得る。具体的には、表示モジュール４０４は、ユーザの選択のために、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに候補のエモティコンを表示し得る。実施の形態に応じて、表示モジュール４０４は、コールアウトボックスを介して、入力フィールドまたはその入力フィールドの近くに候補のエモティコンを表示してもよい。
【００７５】
表示モジュール４０４によって、デジタルデバイスは、デジタルデバイスからのすべてのグラフィカル出力を表示し得る。いくつかの実施の形態では、表示モジュール４０４は、グラフィカルユーザインターフェイス（ＧＵＩ）の一部として、入力フィールドを表示し得る。実施の形態に応じて、入力フィールドは、デジタルデバイス上で動作するアプリケーションのグラフィカルコンポーネントか、またはデジタルデバイス上で動作するアプリケーションを通じて閲覧可能もしくは編集可能である文書のグラフィカル表現であってもよい。入力フィールドは、実施の形態ごとに、タイプおよびサイズがさまざまに異なり得るということが当業者によって理解されるであろう。
【００７６】
入力モジュール４０６は、ユーザから文字入力を受け取り、このような文字入力を受け取られたとおりに入力フィールドに入力し得る。文字入力が入力フィールドに入力されると、表示モジュール４０４は、当該文字入力で入力フィールドを更新し得る。さらに、入力モジュール４０６は、さまざまな実施の形態に従って提案されるエモティコンについてのエントリ選択をさらに受け取り得る。一般に、選択の際、選択されるエモティコンは、入力フィールドにおける入力カーソルの現在位置に挿入され得る。本願明細書において示されるように、入力モジュールは、デジタルデバイスに外部から結合されるかもしくはデジタルデバイスに物理的に埋め込まれた物理的な入力装置か、または表示モジュール４０４によってユーザに提供され得るオンスクリーンキーボードのような仮想入力装置を含み得る。さまざまな実施の形態において、仮想入力装置が使用される場合、このような仮想入力装置は、セグメントが入力される入力フィールドまたはその入力フィールドの近くに表示され得る。
【００７７】
いくつかの実施の形態の場合、提案されるエモティコンは、入力モジュール４０６を通じてユーザに提示され得る。たとえば、入力モジュール４０６が物理的なキーボードを含む場合、物理的なキーボードは、物理的なキーボードを通じて、提案されるエモティコンを表示するように構成され得る。いくつかの実施の形態の場合、物理的なキーボードは、埋め込まれたディスプレイ（たとえばＬＣＤボタン）を含むキーまたはボタンによって、または物理的なキーボードの表面（たとえばキーボードの頂部）上に埋め込まれたディスプレイによって、提案されるエモティコンを表示し得る。提案されるエモティコンは、物理的なキーボードを通じてカラーまたはグレイスケールで表示され得る。提案されるエモティコンが物理的なキーボードを通じて表示される際、ユーザは、物理的なキーボードのキーまたはボタンを通じて、それらの提案されるエモティコンの１つ以上を選択し得る。
【００７８】
いくつかの実施の形態では、入力モジュール４０６がオンスクリーンキーボードを含む場合、オンスクリーンキーボードの外観は、提案されるエモティコンをオンスクリーンキーボードを通じて表示するよう再構成され得る。たとえば、オンスクリーンキーボードの外観は、オンスクリーンキーボードの何らかのボタンが提案されるエモティコンボタンに置換されるように、またはオンスクリーンキーボードが付加的な提案されるエモティコンボタンで増強されるように、再構成され得る。提案されるエモティコンボタンは、ひとたびオンスクリーンキーボードを通じて提示されると、１つ以上の提案されるエモティコンから選択するようユーザによって使用され得る。
【００７９】
セグメント分析モジュール４０８は、入力フィールドに存在する１つ以上のセグメントを分析し得、分析されたセグメントについてコンテキストを決定し得る。本願明細書に記載されるように、セグメント分析モジュール４０８によって決定されたコンテキストは、ユーザに提案される候補のエモティコンを識別する際に、その後用いられてもよい。さまざまな実施の形態では、入力フィールドにおけるセグメントのコンテキストを決定する際に、セグメント分析モジュール４０８はまず、入力フィールドにおける対象のセグメントを識別し、その後、それらの対象のセグメントのみを分析し得る。
【００８０】
いくつかの実施の形態では、セグメント分析モジュール４０８は、対象のセグメントを識別する際、入力フィールドに現在存在するセグメントの構文分析を行ない得る。さらに、セグメント分析モジュール４０８は、対象のセグメント識別プロセスをガイドする条件付きまたは非条件付きルールに基づき、対象のセグメントを識別し得る。
【００８１】
対象の１つ以上のセグメントのコンテキストを決定するよう、セグメント分析モジュール４０８は、入力フィールドに存在する対象のセグメントを意味分析し得る。対象の１つ以上のセグメントのコンテキストを分析する際、セグメント分析モジュール４０８は、対象のセグメントのサブテキストまたは意味を決定し得る。対象のセグメントのサブテキストは、当該対象のセグメントについて気分または感情を識別し得る。対象のセグメントについて識別されたサブテキストまたは意味に基づき、エモティコン提案システム４００は、提案のために１つ以上の候補のエモティコンを識別し得る。
【００８２】
なお、いくつかの実施の形態の場合、セグメント分析モジュール４０８は、ユーザが入力モジュール４０８を使用して文字またはエモティコンを入力フィールドに加えるか、または入力フィールドから文字またはエモティコンを取り除く際に、リアルタイムもしくはほぼリアルタイムで、対象のセグメントを識別および分析し得る。
【００８３】
エモティコン検索モジュール４１０は、対象のセグメントの識別されたコンテキスト（たとえばサブテキストまたは意味）に基づき、１つ以上の候補のエモティコンを検索し得る。いくつかの実施の形態では、１つ以上の特定のコンテキストに関連付けられる１つ以上の候補のエモティコンを検索する際、エモティコン検索モジュール４１０は、ローカル
のエモティコンデータストア４１２にアクセスし得る。
【００８４】
実施の形態に応じて、ローカルのエモティコンデータストア４１２は、ユーザがカスタマイズしたエモティコン、ユーザのお気に入りもしくはユーザが好むエモティコン、ローカルのエモティコン上に格納されたエモティコンとコンテキスト（たとえばサブテキストまたは意味）との間の関連性、エモティコンの識別および提案に関してのユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報を格納してもよい。さらに、ローカルのエモティコンデータストア４１２は、以前に提案されるエモティコンまたは以前にユーザが選択した提案されるエモティコンをローカルにキャッシュするよう用いられ得る。
【００８５】
いくつかの実施の形態では、エモティコン検索モジュール４１０は、エモティコン提案サーバ４２０を用いて、候補のエモティコンを検索してエモティコン提案クライアント４０２に提供し得る。たとえば、エモティコン提案サーバ４２０は、リモートのエモティコンデータストア４２４上の候補のエモティコンを検索し、得られた候補のエモティコンをエモティコン提案クライアント４０２上のエモティコン検索モジュール４１０に提供し得る。エモティコン提案サーバ４２０は、エモティコン検索エンジン４２２を使用して、リモートのエモティコンデータストア４２４上の候補のエモティコンを検索すること、リモートのエモティコンデータストア４２４から候補のエモティコンを抽出すること、およびエモティコン検索モジュール４１０に候補のエモティコンを提供することとを行う。
【００８６】
リモートのエモティコンデータストア４２４は、エモティコン提案クライアント４０２への提案に利用可能であるエモティコンのライブラリを含み得る。リモートのエモティコンデータストア４２４はさらに、ライブラリにおけるエモティコンとコンテキストとの間の関連性を含み得る。ある実施の形態の場合、上記関連性は、コンテキストとの、ライブラリにおけるエモティコンのうち所与のエモティコンの統計的な使用を含む。一般に、このような統計的な使用は、エモティコンとコンテキストとの間の関連性の強さを反映し得る。
【００８７】
本願明細書に示されるように、リモートのエモティコンデータストア４２４上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア４２４はさらに、提案に好適なエモティコンを識別する際に、実施の形態において用いられ得るユーザプレファレンス、ユーザ情報、または受信者情報を含み得る。当業者は、さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性がリモートのエモティコンデータストア４２４上に格納され得るということを理解するであろう。
【００８８】
エモティコン提案モジュール４１４は、対象のセグメントの識別されたコンテキストに基づいて位置特定された１つ以上の候補のエモティコンを受け取り、選択のためにユーザに当該１つ以上の候補のエモティコンを提示し得る。本願明細書に示されるように、いくつかの実施の形態において、エモティコン提案モジュール４１４は、エントリ選択のために１つ以上の候補のエモティコンを、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに表示するよう表示モジュール４１４を使用し得る。本願明細書において示されるように、さまざまな実施の形態では、エモティコン提案モジュール４１４は、物理的な入力装置または仮想入力装置を通じて、エントリ選択のために１つ以上の候補のエモティコンを表示するよう入力モジュール４０６を使用し得る。
【００８９】
エモティコン選択モジュール４１６は、ユーザに提案された１つ以上の候補のエモティコンについてエントリ選択をユーザから受け取り得る。特定の実施の形態において、エモ
ティコン選択モジュール４１６は、入力モジュール４０４を通じて１つ以上の候補のエモティコンについてエントリ選択を受け取り得、エモティコン選択モジュール４１６は、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。エモティコン選択モジュール４１６は、入力カーソルの現在位置に、１つ以上の選択されるエモティコンを入力し得る。さらに、エモティコン選択モジュール４１６は、入力フィールド内のセグメントまたは対象のセグメントを１つ以上の選択されるエモティコンに置換することによって、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。いくつかの実施の形態では、エモティコン選択モジュール４１６が何らかのガイドラインに基づいて、提案されるエモティコンを自動選択するように、エモティコン選択モジュール４１６を（たとえばユーザプレファレンスを使用して）ユーザが設定することを可能にし得る。たとえば、ユーザは、エモティコンの提案がなされると、第１の提案されたエモティコンが選択されるように、エモティコン選択モジュール４１６を構成し得る。
【００９０】
いくつかの実施の形態では、エモティコンとコンテキストとの間の関連性がこのようなコンテキストとのこのようなエモティコンの統計的な使用を含む場合、エモティコン選択モジュール４１６は、ユーザから受け取られたエントリ選択に基づいて、統計的使用情報を更新し得る。特に、エモティコン選択モジュール４１６は、所与のコンテキストについての１つ以上の候補のエモティコンのエントリ選択を受け取り、選択された候補のエモティコンとそれらの使用のそれぞれのコンテキストとの間で、格納された統計的使用情報を更新し得る。
【００９１】
実施の形態に応じて、エモティコン選択モジュール４１６は、ローカルのエモティコンデータストア４１２上またはリモートのエモティコンデータストア４２４上の統計的使用情報を更新してもよい。たとえば、エモティコン選択モジュール４１６を通じて選択された１つ以上の候補のエモティコンがエモティコン提案サーバ４２０から提供された場合、それらの候補のエモティコンについての統計的使用情報は、リモートのエモティコンデータストア４２４上で更新されることになる。別の例では、エモティコン選択モジュール４１６を通じて選択された１つ以上の候補のエモティコンがローカルのエモティコンデータストア４１２から提供された場合、それらの候補のエモティコンについての統計的使用情報は、ローカルのエモティコンデータストア４１２上で更新されることになる。
【００９２】
図５は、メッセージングアプリケーションのユーザインターフェイス５００を示す。当該メッセージングアプリケーションはある実施の形態を利用する。いくつかの実施の形態では、ユーザは、ユーザインターフェイス５００を用いて、オンラインチャット上で他のユーザから受け取られたメッセージを受け取ってレビューするとともに、オンラインチャット上で他のユーザへのメッセージを作成および送信し得る。メッセージングアプリケーションは、インスタントメッセージングシステム上のクライアントであり得るかまたは当該クライアントを含み得る。メッセージングアプリケーションは、スマートフォンコンピューティングデバイスまたはラップトップといった、ユーザにローカルなデジタルデバイス上で動作している。インスタントメッセージングシステムは、サーバのような別のデジタルデバイス上で動作し得、メッセージングアプリケーションはインスタントメッセージングシステムとインターフェイス接続する。実施の形態に応じて、メッセージングアプリケーションは、スタンドアロンアプリケーションとして、またはウェブブラウザを通じて動作するアプレット、プラグインもしくはスクリプトとしてデジタルデバイス上で動作してもよい。
【００９３】
メッセージングアプリケーションのユーザインターフェイス５００は、会話ペイン５０２、メッセージ入力フィールド５０４、および送信ボタン５１４を含み得る。いくつかの実施の形態については、会話ペイン５０２は、オンラインチャットに提出されたメッセージを含み得る。そのため、会話ペイン５０２は、他人からオンラインチャットに提出され
たメッセージと、ユーザインターフェイス５００を通じてユーザによって提出されたメッセージとを含み得る。ユーザは、メッセージ入力フィールド５０４を使用して、オンラインチャットへメッセージを提出し得る。特に、ユーザは、オンラインチャットにメッセージを提出することをユーザが所望がする場合に、メッセージ入力フィールド５０４へメッセージを入力し、送信ボタン５１４を押し得る。
【００９４】
メッセージ入力フィールド５０４は、オンラインチャットへの提出のためにユーザによって準備されたメッセージを含み得、当該メッセージを受け取るように構成され得る。メッセージ入力フィールド５０４は、ユーザから１つ以上のセグメントを受け取り得るか、または、いくつかの実施の形態に従って入力された１つ以上のエモティコンを受け取り得る。メッセージ入力フィールド５０４はさらに入力カーソル５１６を含み得る。
【００９５】
ユーザがメッセージ入力フィールド５０４におけるメッセージを準備する際、さまざまな実施の形態は、入力カーソル５１６の現在位置での入力のためにエモティコンを提案し得る。たとえば、ユーザがメッセージ入力フィールド５０４に「とても楽しかった」と書込んだ場合、実施の形態は、「とても楽し」を記載する対象のセグメント５１２の実施の形態の分析に基づき、入力フィールド５０４へのエントリのために「笑顔」のグラフィカルエモティコン５１０を提案し得る。実施の形態は、「笑顔」のグラフィカルエモティコン５１０と、対象のセグメント５１２のコンテキストとの間の関連性に基づいて、「笑顔」のグラフィカルエモティコン５１０を提案し得る。ひとたびユーザが「笑顔」のグラフィカルエモティコン５１０を選択すると、実施の形態は、メッセージ入力フィールド５０４に「笑顔」のグラフィカルエモティコン５１０を入力し得る。
【００９６】
同様に、ユーザが「ありがとう、あなたの町を案内してくれて」とメッセージ入力フィールド５０４に書込む場合、実施の形態は、対象のセグメント５１４のコンテキスト分析に基づいて、複数のグラフィカルエモティコン５０６を提案し得る。本願明細書において示されるように、実施の形態は、入力カーソル５１６の現在位置またはその現在位置の近くに位置決めされたコールアウトボックス５０８にグラフィカルエモティコン５０６を表示することによって、提案されたグラフィカルエモティコン５０６を提示し得る。「あなたの町」と記載する対象のセグメント５１４の分析に基づいて、実施の形態は、町に関するグラフィカルエモティコン５０６を提案し得る。
【００９７】
図６は、メッセージングアプリケーションのユーザインターフェイス６００を示す。当該メッセージングアプリケーションはある実施の形態を利用する。図５と同様に、ユーザは、ユーザインターフェイス６００を用いて、オンラインチャット上で他のユーザから受け取られたメッセージを受け取ってレビューするとともに、オンラインチャット上で他のユーザへのメッセージを作成および送信し得る。メッセージングアプリケーションは、インスタントメッセージングシステム上のクライアントであり得るかまたは当該クライアントを含み得る。メッセージングアプリケーションは、スマートフォンコンピューティングデバイスまたはラップトップといった、ユーザにローカルなデジタルデバイス上で動作している。インスタントメッセージングシステムは、サーバのような別のデジタルデバイス上で動作し得、メッセージングアプリケーションはインスタントメッセージングシステムとインターフェイス接続する。実施の形態に応じて、メッセージングアプリケーションは、スタンドアロンアプリケーションとして、またはウェブブラウザを通じて動作するアプレット、プラグインもしくはスクリプトとして、デジタルデバイス上で動作してもよい。
【００９８】
メッセージングアプリケーションのユーザインターフェイス６００は、会話ペイン６０２、メッセージ入力フィールド６０４、オンスクリーンキーボード６０６、および送信ボタン６１６を含み得る。いくつかの実施の形態の場合、会話ペイン６０２は、ユーザインターフェイス６００を通じてユーザによって提出されたメッセージを含む、オンラインチ
ャットに提出されたメッセージを含み得る。ユーザは、メッセージ入力フィールド６０４を使用して、オンラインチャットへメッセージを提出し得る。具体的には、ユーザは、オンラインチャットにメッセージを提出することをユーザが所望がする場合に、オンスクリーンキーボード６０６を用いてメッセージ入力フィールド６０４へメッセージを入力し、送信ボタン６１６を押し得る。
【００９９】
メッセージ入力フィールド６０４は、オンラインチャットへの提出のためにユーザによって準備されたメッセージを含み得、当該メッセージを受け取るように構成され得る。メッセージ入力フィールド６０４は、ユーザからオンスクリーンキーボード６０６を通じて１つ以上のセグメントを受け取り得るか、またはオンスクリーンキーボード６０６を通じて選択される１つ以上のエモティコンを受け取り得る。メッセージ入力フィールド６０４はさらに入力カーソル６１０を含み得る。
【０１００】
オンスクリーンキーボード６０６は、ＱＷＥＲＴＹキーボードと、（たとえば使用されていない場合に）視界からオンスクリーンキーボード６０６を隠すボタン６２４と、エモティコンメニュー６２２とを含み得る。エモティコンメニュー６２２を通じて、ユーザは、入力カーソル６１０の現在位置にて、メッセージ入力フィールド６０４へのエントリのために１つ以上のエモティコンを選択し得る。エモティコンメニュー６２２は、デフォルトのエモティコンライブラリまたは実施の形態によって提案されるエモティコンのセレクションからのエモティコンを含み得る。左の選択ボタン６１８および右の選択ボタン６２０により、ユーザは、エモティコンメニュー６２２を通じてエントリ選択に利用可能であるエモティコンをスクロールおよびブラウズすることが可能になる。
【０１０１】
ユーザがメッセージ入力フィールド６０４においてメッセージを準備する際、さまざまな実施の形態が、入力カーソル６１０の現在位置へのエントリのためにエモティコンを提案し得る。たとえば、ユーザがメッセージ入力フィールド６０４に「思いもしなかった、あのフットボール」と書込んだ場合、実施の形態は、「フットボール」を記載する対象のセグメント６１２の実施の形態の分析に基づき、入力フィールド６０４へのエントリのために「フットボール」のグラフィカルエモティコン６１４を提案し得る。実施の形態は、「フットボール」のグラフィカルエモティコン６１４と、対象のセグメント６１２のコンテキストとの間の関連性に基づいて、「フットボール」のグラフィカルエモティコン６１４を提案し得る。ひとたびユーザが「フットボール」のグラフィカルエモティコン６１４を選択すると、実施の形態は、メッセージ入力フィールド６０４に「フットボール」のグラフィカルエモティコン６１４を入力し得る。
【０１０２】
同様に、ユーザがメッセージ入力フィールド６０４に「５０ヤードのフィールドゴール」と書くと、実施の形態は、対象のセグメント６０８のコンテキスト分析に基づき、複数の「フィールドゴール」のグラフィカルエモティコンを提案し得る。特に、実施の形態は、オンスクリーンキーボード６０６の一部として表示され得るエモティコンメニュー６２２にグラフィカルエモティコンを表示することによって、エントリ選択のために「フィールドゴール」のグラフィカルエモティコンを提示し得る。
【０１０３】
図７は、例示的なデジタルデバイス７００のブロック図である。デジタルデバイス７００は、通信可能にバス７１４に結合されたプロセッサ７０２、メモリシステム７０４、ストレージシステム７０６、通信ネットワークインターフェイス７０８、Ｉ／Ｏインターフェイス７１０、および表示インターフェイス７１２を含む。プロセッサ７０２は、実行可能な命令（たとえばプログラム）を実行するように構成される。いくつかの実施の形態では、プロセッサ７０２は、実行可能な命令を処理することができる回路網または任意のプロセッサを含む。
【０１０４】
メモリシステム７０４は、データを格納するように構成される任意のメモリである。メモリシステム７０４のいくつかの例は、ＲＡＭまたはＲＯＭのようなストレージデバイスである。メモリシステム７０４は、ＲＡＭキャッシュを含み得る。さまざまな実施の形態では、データはメモリシステム７０４内に格納される。メモリシステム７０４内のデータは、消去されるかまたはストレージシステム７０６に最終的に転送され得る。
【０１０５】
ストレージシステム７０６は、データを抽出および格納するように構成された任意の非一時的なストレージである。ストレージシステム７０６のいくつかの例は、フラッシュドライブ、ハードドライブ、光学ドライブおよび／または磁気テープである。いくつかの実施の形態では、デジタルデバイス７００は、ＲＡＭの形態であるメモリシステム７０４と、フラッシュデータの形態であるストレージシステム７０６とを含む。メモリシステム７０４およびストレージシステム７０６はともに、プロセッサ７０２を含むコンピュータプロセッサによって実行可能である命令またはプログラムを格納し得るコンピュータ可読媒体を含む。
【０１０６】
通信ネットワークインターフェイス（ｃｏｍ．ネットワークインターフェイス）７０８は、リンク７１６を介してネットワーク（たとえば通信ネットワーク１１０）に結合され得る。通信ネットワークインターフェイス７０８は、たとえばイーサネット（登録商標）接続、シリアル接続、パラレル接続、またはＡＴＡ接続上の通信をサポートし得る。通信ネットワークインターフェイス７０８はさらに、無線通信（たとえば８０２．１１  ａｌｂ／ｇｉｎ、ＷｉＭａｘ）をサポートし得る。通信ネットワークインターフェイス７０８が多くの有線規格および無線規格をサポートし得るということは当業者に明らかであろう。
【０１０７】
随意の入出力（Ｉ／Ｏ）インターフェイス７１０は、ユーザから入力を受け取るとともにデータを出力する任意の装置である。随意の表示インターフェイス７１２は、ディスプレイにグラフィックスおよびデータを出力するように構成される任意の装置である。一例では、表示インターフェイス７１２は、グラフィックスアダプタである。すべてのデジタルデバイス７００が、Ｉ／Ｏインターフェイス７１０または表示インターフェイス７１２のいずれかを含むわけではないということが理解されるであろう。
【０１０８】
デジタルデバイス７００のハードウェア要素は、図７に示されたものに限定されないということが当業者によって理解されるであろう。デジタルデバイス７００は、示されたものよりも多いまたは少ないハードウェア要素を含んでもよい。さらに、ハードウェア要素は、機能性を共有し得るが、依然として、本願明細書で記載されるさまざまな実施の形態の範囲内にあり得る。一例では、エンコーディングおよび／またはデコーディングが、プロセッサ７０２および／またはＧＰＵ（Le., Nvidia）に配置されるコプロセッサによっ
て行なわれてもよい。
【０１０９】
上記の機能およびコンポーネントは、コンピュータ可読媒体のような記憶媒体上に格納される命令で構成され得る。命令は、プロセッサによって抽出および実行され得る。命令のいくつかの例は、ソフトウェア、プログラムコードおよびファームウェアである。記憶媒体のいくつかの例は、メモリデバイス、テープ、ディスク、集積回路およびサーバである。命令は、プロセッサによって実行された際には、プロセッサに指示していくつかの実施の形態に従って動作させるように実施可能である。当業者は、命令、プロセッサおよび記憶媒体に精通している。
【０１１０】
再び図２を参照すると、さまざまな実現例においては、エモティコン提案システム２００は、ユーザによって生成されたテキストにおける検出された感情に基づいてユーザにエモティコンを提案する。たとえば、セグメント分析モジュール２０６は、入力フィールド
に存在する１つ以上のセグメントを分析し、分析されたセグメントについての感情を判断し得る。一般に、感情は、事実ではなくユーザの主観的印象（たとえば気分、態度、感情および／または見解）に関連している場合がある。たとえば、ユーザは、或るもの（たとえば製品または政治的見解）に賛成であるかまたは反対である可能性があり、或るものを好むかまたは嫌う可能性があり、或るものが他のものよりも優れていると考える可能性等がある。エモティコン提案システム２００は、このようなユーザ感情を検出して、このような感情に少なくとも部分的に基づいてユーザについての候補のエモティコンを識別し得る。
【０１１１】
場合によっては、セグメント分析モジュール２０６は、入力フィールドにおける対象のセグメントを識別し、次いで、感情を判断するために対象のそれらセグメントを分析する。概して、対象のセグメントは、入力フィールドにおける入力カーソルの現在位置に関連付けて識別される。加えて、いくつかの実現例の場合、セグメント分析モジュール２０６は、対象のセグメントを識別する際に、入力フィールドに現在存在しているセグメントの構文分析を行ない得る。
【０１１２】
対象の２つ以上のセグメントが識別される場合、セグメント分析モジュール２０６は、対象のセグメントのうち各セグメントのコンテキストを分析し得るか、または（たとえば、対象のいくつかのセグメントが他のセグメントより重要性が高い場合には重み付けシステムに基づいて）もっとも重要性の低い対象のセグメント以外の感情を分析し得る。さらに１つ以上のルールは、対象の２つ以上のセグメントが識別される場合、対象のセグメントのうちどれを分析すべきかを決定し得る。
【０１１３】
セグメント分析モジュール２０６は、対象のセグメントから２つ以上の感情（たとえば、「怒り」および「悲しみ」）を判断し得る。このような場合、エモティコン提案システム２００は、決定された感情のすべてに関連付けられた候補のエモティコンを検索し得るか、または（たとえばルールに基づいて決定された）もっとも重要な感情のうち１つ以上にマッチする候補のエモティコンのみを検索し得る。
【０１１４】
対象の１つ以上のセグメントの感情を決定するために、セグメント分析モジュール２０６は、入力フィールドに存在する対象のセグメントを意味分析し得る。当業者であれば、このセグメントの意味分析は、当該技術において公知の１つ以上の技術に従って行なわれ得るということを理解するであろう。対象の１つ以上のセグメントの感情を分析する場合、セグメント分析モジュール２０６は、対象のセグメントについての気分または感情を決定し得る。対象のセグメントについての例示的な感情は、幸福、悲しみ、無関心、怒り、憤慨、悔恨、興奮、賛成、不賛成、合意、および不同意を含み得るが、これらに限定されない。
【０１１５】
対象の１つ以上のセグメントの感情を判断するために、セグメント分析モジュールは感情分析または見解調査を実行してもよい。一般に、感情分析は、対象の１つ以上のセグメントにおける主観的情報の位置を特定して分析するために、テキスト分析、統計、コンピューテーション言語学および／または自然言語処理を使用することを指している。感情分析の目的は、たとえば対象のセグメントにある何か（たとえばトピックまたは問題）に関する書き手またはユーザの態度を識別することである。この態度は、ユーザの感情状態もしくは情動状態、ユーザの意図した感情的効果、またはトピックもしくは問題についてのユーザの判断もしくは評価であり得る。
【０１１６】
いくつかの場合、感情分析は、テキストセグメントの対立性（polarity）（すなわち、テキスト内の表明された見解が肯定的か、否定的かまたは中立的であるかどうか）を識別するために用いられる。感情分析は、中立のクラスを利用する可能性もあるし利用しない
可能性もある最大エントロピーおよび／またはサポートベクトルマシン（support vector
machine：ＳＶＭ）などの選別器を利用してもよい。
【０１１７】
さまざまな実現例においては、セグメント分析モジュール２０６は、テキストセグメントがユーザによって入力されてユーザの感情がリアルタイムまたはほぼリアルタイムで評価される際に、テキストセグメントを監視およびレビューする。単純な例として、「今日は幸せな気分だ」という句を含むメッセージをユーザが入力すると、セグメント分析モジュール２０６は、ユーザが幸せである可能性が高いことを認識して、適切なエモティコン（たとえば笑顔）をテキストに挿入するようにユーザに提案し得る。同様に、「動揺している」という句を含むメッセージが入力されると、セグメント分析モジュール２０６は、ユーザが悲しんでいるかまたは怒っていることを認識し、適切なエモティコン（たとえば悲しい顔または怒り顔）をテキストに挿入するようユーザに提案し得る。
【０１１８】
さらに、ユーザがメッセージを入力したときに、単語およびセグメントが、メッセージの指定受信者によって用いられる１つ以上の言語に翻訳されてもよい。（たとえばリアルタイムで）メッセージが翻訳されると、メッセージの感情分析が容易になり得る。たとえば、セグメント分析モジュール２０６は、ある１つの言語（たとえば英語）では、別の言語（たとえばロシア語）よりも感情をより容易に評価することができるかもしれない。
【０１１９】
感情分析のいくつかの実現例ではスケーリングシステムを利用する。スケーリングシステムでは、否定的感情、中立的感情または肯定的感情に一般的に関連付けられているセグメントまたは言葉が、最も否定的から最も肯定的までの範囲にわたるスケール（たとえば−１０〜＋１０）の数に関連付けられている。たとえば、セグメント分析モジュール２０６は、感情に関連付けられた言葉のライブラリにアクセスし得るかまたは当該ライブラリを含み得る。各々の言葉には、このスケール上の数値が割当てられている。ユーザが高い正の値を有する言葉（たとえば「愛」）を入力すると、セグメント分析モジュール２０６は、ユーザの感情が肯定的である可能性あると認識するだろう。同様に、ユーザが負の数（たとえば、「憎悪」）または中立の値（たとえば、「無関心」）を有する言葉を入力すると、セグメント分析モジュール２０６は、ユーザの感情がそれぞれ否定的であるかまたは中立的である可能性があると認識するだろう。いくつかの場合、セグメントにおいて２つ以上の感情が検出される場合、セグメント分析モジュール２０６は、セグメントについての合計数値を得るためにセグメントにおける言葉についての数値を合計し得る。合計数値を用いて、セグメントが、たとえば否定的であるか中立的であるかまたは肯定的であると分類し得る。場合によっては、セグメントについてのスコアが非常に否定的であるかまたは非常に肯定的である場合、セグメント分析モジュール２０６は、セグメントにおけるユーザ感情が極端であることを認識し得るとともに、極端な感情に関連付けられた候補のエモティコンを、ユーザが挿入できるように識別し得る。
【０１２０】
さまざまな実施の形態においては、自然言語処理を用いて対象のセグメントを分析する場合、セグメント分析モジュール２０６は、テキストセグメントをレビューして、ユーザ感情に関連付けられた概念または主題を識別し得る。たとえば、感情が肯定的であることを示す１つ以上の単語をユーザが挿入したとき、セグメント分析モジュール２０６は、ユーザの感情がなぜ肯定的であるかを判断するために、（たとえば、感情的な単語の前または後にある）テキストの他の部分を探索してもよい。セグメント分析モジュール２０６は、たとえば、肯定的なユーザ感情がテキストセグメントのどこか他のところに記載されている特定の概念（たとえば人または物体）に関連付けられていることを識別してもよい。このような場合、セグメント分析モジュール２０６はユーザ感情を概念に関連付けてもよい。概念には、ユーザ感情と概念との関係を示すスコアが付与されてもよい。
【０１２１】
いくつかの状況においては、対象の１つ以上のセグメントの主観性／客観性が識別され
る。この場合、所与のテキスト（たとえば、対象のセグメント）を、客観的または主観的なものであると分類することを含み得る。セグメントの主観性がコンテキストに依存する可能性があり、かつ、客観的作用が主観的な文（たとえば別の人の見解の挿入）を含む可能性があるので、このタスクはよりその対立性の分類をより困難なものにする可能性がある。いくつかの実施の形態においては、客観的なセグメントは、残りのテキストの対立性または感情が分類される前には無視されている。
【０１２２】
セグメント分析モジュール２０６のいくつかの実現例は、特徴／局面ベースの感情分析を利用している。この場合、実体（たとえば自動車、ビジネスまたは電子製品）のさまざまな局面または特徴についての見解または感情が判断される。このような分析は、実体を識別すること、実体についての特徴／局面を抽出すること、特徴／局面についてのいずれかの感情を肯定的、否定的または中立的なものであると分類すること等の、いくつかの副次的問題を伴う可能性がある。
【０１２３】
図８を参照すると、いくつかの実現例においては、テキストメッセージにおいて検出された感情に対応するエモティコンを提案および挿入するための方法８００が提供される。当該方法は、たとえば、ユーザがテキストフィールドにテキストを入力している際にテキストフィールドにおけるテキストの感情を判断するステップ（ステップ８０２）を含む。好ましくはテキストフィールドにおける入力カーソルの現在位置に近いテキスト（たとえばセグメント、文の断片またはテキストの他の部分）がテキストフィールドから選択される（ステップ８０４）。１つ以上の候補のエモティコンが識別される（ステップ８０６）。候補のエモティコンは各々、テキストおよび感情に対する候補のエモティコンの関連性を示すそれぞれのスコア（たとえば数値）に関連付けられている。候補のエモティコンは、それぞれの感情を有する（選択されたテキストと同じであり得るかまたは異なり得る）他のテキストの近くに挿入するために、少なくともエモティコンの履歴ユーザ選択に基づいて、識別される。たとえば、当該方法は、ユーザによって選択されたエモティコンの履歴をレビューし、選択されたテキストと同様のテキストおよび／または感情とともに使用するために、ユーザによって以前に選択されたエモティコンに基づいて、候補のエモティコンを識別するステップを含み得る。以前に選択されたこのようなエモティコンは、以前には選択されていなかった他のエモティコンよりも高いそれぞれのスコアを有する可能性がある。次いで、それぞれの最高スコアを有する１つ以上の候補のエモティコンがユーザ選択のために提供される（ステップ８０８）。場合によっては、最高スコアを有する候補のエモティコンは、選択されたテキストの感情に関連付けられてもよく、および／または、同様の感情を有するテキストに挿入するために予め選択されていてもよい。エモティコンは、より高いスコアを有するエモティコンが（たとえばリストにおいて）最初に提示されるように、各々のエモティコンについてのそれぞれのスコアに従ってユーザに提供（たとえば表示）されてもよい。次いで、提供されたエモティコンのうち１つ以上のエモティコンについてのユーザによる選択が受け取られ（ステップ８１０）、１つ以上の選択されたエモティコンが、入力カーソルの現在位置にあるかまたは現在位置の近くにあるテキストフィールドに挿入される。
【０１２４】
いくつかの実現例においては、候補のエモティコンは、選択されたテキストの自然言語と候補のエモティコンについての先のユーザ選択に関連付けられたテキストの自然言語との差に少なくとも部分的に基づいているスコアを計算することによって判断される。たとえば、自然言語が同じである場合、候補のエモティコンにはより高いスコアを付与することができる。同様に、選択されたテキストと候補のエモティコンの先のユーザの選択に関連付けられたテキストとが同じ単語を同じ順序で含んでいる場合、候補のエモティコンにはより高いスコアを付与することができる。
【０１２５】
一般に、選択されたテキストと先のテキストセグメントまたはメッセージとの差を判断
するためにいくつかの技術が用いられる可能性がある。たとえば、場合によっては、選択されたテキストおよび先のテキストセグメントについてハミング距離が計算される。一般に、ハミング距離は、選択されたテキストを先のテキストセグメントに変換するのに必要な最少数の変更を示すものである。各々の変更は、たとえば、文字置換、文字消去および／または文字追加を含み得る。長さが等しいストリングの場合、ハミング距離は対応する文字または記号が異なっている箇所の数に相当し得る。一般に、選択されたテキストと先のテキストセグメントとの差がわずかである場合、先のテキストセグメントまたはメッセージにおいて用いられるエモティコンに関連付けられたスコアは高くなるかもしれない。高スコアは、ユーザが現在の選択されたテキストまたはメッセージに挿入すべきエモティコンを検討することを所望する可能性があるだろうことを示している。
【０１２６】
いくつかの実現例においては、候補のエモティコンについてのスコアは、重み付けされ得る１つ以上の個々のスコアの組合せに基づいている。たとえば、スコアは、感情類似度、テキスト類似度（たとえばハミング距離）、言語類似度などについての別個のスコアの組合せ（たとえば重み付けされた合計）に基づいていてもよい。このようなアプローチは、スコアを計算する際にテキストセグメントまたはメッセージの２つ以上の特徴を考慮に入れることを可能にする。当該アプローチはまた、スコアを計算する際に、いくつかの特徴（たとえば感情）を他の特徴（たとえばテキスト類似度）よりも重く重み付けすることを可能にし得る。特徴についての重みは、たとえば、この明細書中に記載されるシステムおよび方法のユーザおよび／またはプロバイダによって選択されてもよい。これにより、ユーザが、他の特徴（たとえばテキスト類似度）以外の何らかの特徴（たとえば感情）により大きく基づいたエモティコン提案を受け取ることが可能になり得る。一例においては、候補のエモティコンについてのスコアは、候補のエモティコンが所与のテキストセグメントまたはメッセージ（たとえば所与の単語または一連の単語）のために用いられた回数に少なくとも部分的に基づいている。特定の候補のエモティコンが所与のテキストのために（たとえばユーザ、ユーザのグループまたはすべてのユーザによって）他のエモティコンよりも頻繁に用いられていた場合、候補のエモティコンについてのスコアは高くなる可能性がある。
【０１２７】
さまざまな場合においては、エモティコン提案システム２００は、ユーザのプレファレンス、ユーザに関連する情報、および／または受信者に関連する情報に少なくとも部分的に基づいて候補のエモティコンを識別する。たとえば、ユーザは、彼または彼女が以前に用いたエモティコン、または何らかのタイプ（たとえば顔の表情）であるエモティコンを用いるためにプレファレンスを指定し得る。ユーザについての情報（たとえば年齢、性別、学歴、キャリア、趣味など）を用いることによっても、ユーザの何らかの局面と一致するものであってこのためにユーザが用いる可能性が高くなるであろう候補のエモティコンを識別することができる。たとえば、医師は、医療行為に関するエモティコンを用いる傾向がより高くなるだろう。さらなる検討例として、エモティコン提案システム２００は、ユーザのメッセージについての標的視聴者を考慮に入れて、視聴者が有する可能性のある予想されるいずれかのプレファレンスに基づいて候補のエモティコンを識別し得る。たとえば、メッセージが何らかの色（たとえばピンク）のエモティコンを好む人に向けられる場合、システムおよび方法はその特定の色を含む候補のエモティコンを識別し得る。
【０１２８】
図９を参照すると、いくつかの実施の形態においては、ユーザ規定エモティコンシステム９００が提供される。ユーザ規定エモティコンシステム９００は、ユーザが、エモティコンを規定する（たとえば描く）こと、ユーザ規定のエモティコンを他のユーザと共有すること、ユーザ規定のエモティコンを共有するためのクレジットを受け取ること、および、他者によるユーザ規定のエモティコンの使用に関する情報を受け取ることを可能にする。ユーザ規定のエモティコンは、視覚的表現（たとえばグラフィックイメージ）を含み得るものであって、それぞれの自然言語および／またはそれぞれのテキストに関連付けられ
得る。
【０１２９】
ユーザ規定エモティコンシステム９００は、ユーザ規定のエモティコンをユーザが提出することを可能にするエモティコン提出モジュール９０２を含む。エモティコン提出モジュール９０２は、ユーザがエモティコンについての画像を描くかまたは作成することを可能にする描画ツールを含み得る。ユーザは、エモティコンについての自然言語の意味および／または（たとえば、空腹に関連付けて使用するための）エモティコンについての示唆された使用を提案し得る。場合によっては、ユーザは、エモティコンを作成し得るが、他のユーザが使用するためのエモティコンを提出するのではなく、エモティコンを個人使用に制限することを選択してもよい。ユーザ規定エモティコンシステム９００は、ユーザが、ユーザ規定のエモティコンが個人使用のためにのみ保存されるべき（すなわち私的なエモティコン）であるか、または、他のユーザと共有されるべき（すなわち公的なエモティコン）であるかどうかを指定することを可能にし得る。
【０１３０】
ユーザ規定エモティコンシステム９００はまた、エモティコンクレジットモジュール９０４を含む。エモティコンクレジットモジュール９０４は、複数のユーザが、彼らのユーザ規定のエモティコンを他のユーザと共有するためのクレジットを受け取ることを可能にする。たとえば、ユーザ規定エモティコンシステム９００および／またはエモティコンクレジットモジュール９０４は、電子ゲームまたはビデオゲーム（たとえば多人数同時参加型のオンラインゲーム）と対話してもよく、および／または、当該電子ゲームまたはビデオゲームからアクセス可能であってもよい。ユーザが新しいエモティコンを作成し、そのエモティコンを他のユーザが使用できるように提出すると、エモティコンクレジットモジュール９０４はユーザのアカウントにクレジットを提供し得る。たとえば、ユーザ規定のエモティコンを提出するのと引換えに、ユーザは、ビデオゲームで使用されるポイント、仮想貨幣および／または他の仮想グッズを受け取り得る。
【０１３１】
ユーザ規定のエモティコンがユーザによって提出された後、統計モジュール９０６は、ユーザが他者によるエモティコンの使用を追跡することを可能にする。統計モジュール９０６は、エモティコンが用いられた回数、エモティコンが用いられた最後の時間、およびエモティコンを使用するのに用いられたさまざまな言語について、ユーザに通知し得る。他者によるエモティコンの使用の程度に基づいて、ユーザのアカウントは追加のクレジットを受け取り得る。このようなクレジットは、他者が複数回使用することを所望するであろう高品質のエモティコンを作成して共有するようにユーザを奨励するものとなり得る。
【０１３２】
ユーザ規定エモティコンシステム９００はまた、ソフトウェア開発キットモジュール９０８を利用し得るかまたは含み得る。ソフトウェア開発キットモジュール９０８は、この明細書中に記載されるように、ユーザ規定のエモティコンを生成して提出し、ユーザアカウントに課金し、統計を提供し、かつエモティコンを提案するためのアプリケーションの作成を容易にする。たとえば、ソフトウェア開発キットモジュール９０８は、候補のエモティコンの識別を開始するためのアプリケーションプログラミングインターフェイスを提供し得る。
【０１３３】
有利には、ユーザ規定エモティコンシステム９００は、クラウドソーシングによってエモティコンの作成および分布を容易にする。ユーザが新しいユーザ規定のエモティコンを作成して提出すると、利用可能なエモティコンのライブラリのサイズが大きくなり、その特異性が増す。これにより、エモティコン提案システム２００が、ユーザの個人的プレファレンスをより容易に満足させるとともに特定の環境で使用するのにより適した多種多様なエモティコンを、ユーザに対して提供することが可能となる。たとえば、ユーザが「赤色の家」というテキストを入力すると、このユーザは、異なる色の家のエモティコンではなく、赤色の家のエモティコンを挿入することを所望する可能性がある。
【０１３４】
クラウドソーシングによってエモティコンを作成して分布することにより、ユーザ規定のエモティコンおよび他のエモティコンをユーザがテストすることも可能となり、これにより、より人気があるかまたはより高品質であり、このため使用される可能性のより高いエモティコンを識別することが可能となる。いくつかの場合、人気のあるエモティコンが、テキストメッセージに挿入されるようにユーザに提案される可能性がより高くなる。たとえば、ユーザがテキストメッセージを入力しているときに、この明細書中に記載されるシステムおよび方法は、他のユーザによって人気のあることが判明したエモティコンを当該ユーザに提案してもよい。
【０１３５】
当該システムおよび方法は、特定の単語および言語に従ってエモティコンの人気度を追跡し得る。たとえば、ユーザがメッセージに特定の単語を入力すると、ユーザ規定エモティコンシステム９００は、その特定の単語に関して人気のあるエモティコンを識別して、それらのエモティコンをユーザに提案し得る。同じ単語を異なる言語に翻訳した場合、人気のあるエモティコンは違うものになる可能性がある。したがって、ユーザに対して提案された人気のあるエモティコンのセットは、メッセージのユーザおよび／または受信者によって用いられている特定の言語に依存する可能性がある。
【０１３６】
一実施の形態においては、ユーザは、たとえば、クラウドソーシングによって開発された他のエモティコンよりも頻繁にユーザに提案される可能性のある好ましいエモティコンについての個人専用のバンクを有する。好ましいエモティコンの個人専用のバンクは、ユーザによって１つ以上の前の事例において用いられたエモティコンを含み得る。好ましいエモティコンの個人専用のバンクは、メッセージに挿入すべきエモティコンをユーザが選択するたびに、自動的に生成および／または増大させてもよい。いくつかの実現例においては、ユーザは、彼らの好ましいエモティコンの個人専用のバンクに含めるようにエモティコンを手動で選択してもよい。
【０１３７】
いくつかの実現例においては、当該システムおよび方法は、会社、ブランド、製品および／またはサービスに関連付けられたエモティコンの作成、提出および使用を容易にする。たとえば、会社は、会社の商標、サービスマークおよび／またはロゴを用いるかまたは含むエモティコンを作成して提出し得る。ユーザが会社の名前または会社の製品もしくはサービスをメッセージに入力すると、エモティコン提案システム２００は、会社のエモティコンのうち１つ以上をメッセージに挿入するようにユーザに自動的に提案し得る。たとえば、ユーザが単語「ｉＰｈｏｎｅ」（登録商標）を含むメッセージを入力すると、エモティコン提案システム２００は、ＩＰＨＯＮＥの画像またはＩＰＨＯＮＥの製造業者であるアップル社（Apple Inc.,）についてのロゴもしくは商標を示すエモティコンをユーザ
に提案し得る。ユーザがメッセージに挿入するための会社のエモティコンを選択すると、エモティコンクレジットモジュール９０４はユーザのアカウントに課金し得る。代替的には、または、付加的には、会社のエモティコンを挿入および／または提出することにより、エモティコンクレジットモジュール９０４に、会社からエモティコン提案システム２００の所有者またはオペレータへの資金を転送を実行させてもよい。このような場合、資金は、メッセージに会社のエモティコンを提示させるための広告料金を意味する可能性もある。場合によっては、たとえば、ユーザが会社の名前、製品、サービス、商標またはサービスマークに言及しているメッセージを作成するたびに、会社のエモティコンの挿入が自動的に行なわれてもよい。
【０１３８】
この明細書中に記載されるシステムおよび方法を用いるかまたは相互に影響を受ける会社は、ユーザが挿入するのに利用可能なエモティコンを少なくとも部分的に制御し得る。たとえば、ユーザがメッセージに会社の名前を入力すると、エモティコン提案システム２００は、会社によって承認されたエモティコンだけをユーザに提示し得る。いくつかの場
合には、ユーザは、会社の名前の隣に、または会社の製品およびサービスの名前の隣に、承認された会社のロゴまたは商標だけを挿入することができるだろう。一般に、ユーザメッセージに挿入されて提出されたエモティコンは、小さい（たとえばメッセージにおけるテキストとほぼ同じサイズ）かまたは大きい（たとえば、テキストのうち何行か以上を占める）場合があり、アニメーション化されている可能性もあれば、アニメーション化されていない可能性もある。
【０１３９】
さまざまな実施の形態が、例として本願明細書において記載されている。さまざまな変更例が実施され得るとともに、他の実施の形態が本発明のより広い範囲から逸脱することなく使用され得ることは当業者にとって明らかであろう。したがって、例示的な実施の形態に対するこれらおよび他の変形例は、本発明によってカバーされるように意図されている。
【図１】
2019153338.tif 000003
【図２】
2019153338.tif 000004
【図３】
2019153338.tif 000005
【図４】
2019153338.tif 000006
【図５】
2019153338.tif 000007
【図６】
2019153338.tif 000008
【図７】
2019153338.tif 000009
【図８】
2019153338.tif 000010
【図９】
2019153338.tif 000011
【手続補正書】
【提出日】令和1年5月20日(2019.5.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによって実現される方法であって、
第１のユーザによって提出された第１のテキストを受け取るステップと、
複数の異なる以前に提出されたテキストの各々について、前記以前に提出されたテキストに対する前記第１のテキストのテキスト類似度に基づいてテキスト類似度スコアを計算し、前記第１のテキストの感情と前記以前に提出されたテキストの感情との間の類似度に基づいて感情類似度スコアを計算するステップと、
前記テキスト類似度スコアおよび前記感情類似度スコアに基づいて、前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択するステップと、
前記選択されたテキストの各々について、前記選択されたテキストへの挿入のためにユーザによって以前に選択されたエモティコンを識別するステップと、
前記第１のユーザによる選択のために前記識別されたエモティコンを提供するステップとを含む、方法。
【請求項２】
前記第１のユーザによる前記識別されたエモティコンのうちの１つの選択を受け取るステップと、
前記選択されたエモティコンを前記第１のテキストに挿入するステップとをさらに含む、請求項１に記載の方法。
【請求項３】
前記選択されたエモティコンは、前記第１のテキストにおける入力カーソルの現在位置において挿入される、請求項２に記載の方法。
【請求項４】
前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択するステップは、
前記以前に提出されたテキストについて計算された類似度スコアの組合せに基づいて、前記以前に提出されたテキストの各々についての組み合わされたスコアを生成するステップと、
前記組み合わされたスコアに基づいて、前記以前に提出されたテキストのうち１つ以上を選択するステップとを含む、請求項１に記載の方法。
【請求項５】
類似度スコアの前記組合せは重み付けされた組合せである、請求項４に記載の方法。
【請求項６】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算するステップは、前記特定のテキストと前記第１のテキストとの間の編集間隔を計算するステップを含む、請求項１に記載の方法。
【請求項７】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算するステップは、前記特定のテキストにおける複数の単語が、前記特定のテキストにおいて現われるのと同じ順序で前記第１のテキストにおいて現われるかどうかを判断するステップを含む、請求項１に記載の方法。
【請求項８】
前記第１のテキストの言語と第２のテキストの言語との間の類似度に基づいて言語類似度スコアを計算するステップをさらに含む、請求項１に記載の方法。
【請求項９】
特定の識別されたエモティコンは、視覚的表現を含むとともにそれぞれの感情に関連付けられているユーザ規定のエモティコンである、請求項１に記載の方法。
【請求項１０】
システムは、
以下の複数の動作を実行するようにプログラムされた１つ以上のコンピュータを含み、前記以下の複数の動作は、
第１のユーザによって提出された第１のテキストを受け取る動作と、
複数の異なる以前に提出されたテキストの各々について、前記以前に提出されたテキストに対する前記第１のテキストのテキスト類似度に基づいてテキスト類似度スコアを計算し、前記第１のテキストの感情と前記以前に提出されたテキストの感情との間の類似度に基づいて感情類似度スコアを計算する動作と、
前記テキスト類似度スコアおよび前記感情類似度スコアに基づいて、前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択する動作と、
前記選択されたテキストの各々について、前記選択されたテキストへの挿入のためにユーザによって以前に選択されたエモティコンを識別する動作と、
前記第１のユーザによる選択のために前記識別されたエモティコンを提供する動作とを含む、システム。
【請求項１１】
前記以下の複数の動作はさらに、
前記第１のユーザによる前記識別されたエモティコンのうちの１つの選択を受け取る動作と、
前記選択されたエモティコンを前記第１のテキストに挿入する動作とを含む、請求項１０に記載のシステム。
【請求項１２】
前記選択されたエモティコンは、前記第１のテキストにおける入力カーソルの現在位置において挿入される、請求項１１に記載のシステム。
【請求項１３】
前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択する動作は、
前記以前に提出されたテキストについて計算された類似度スコアの組合せに基づいて、前記以前に提出されたテキストの各々についての組み合わされたスコアを生成する動作と、
前記組み合わされたスコアに基づいて、前記以前に提出されたテキストのうち１つ以上を選択する動作とを含む、請求項１０に記載のシステム。
【請求項１４】
類似度スコアの前記組合せは重み付けされた組合せである、請求項１３に記載のシステム。
【請求項１５】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算する動作は、前記特定のテキストと前記第１のテキストとの間の編集間隔を計算する動作を含む、請求項１０に記載のシステム。
【請求項１６】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算する動作は、前記特定のテキストにおける複数の単語が、前記特定のテキストにおいて現われるのと同じ順序で前記第１のテキストにおいて現われるかどうかを判断する動作を含む、請求項１０に記載のシステム。
【請求項１７】
前記以下の複数の動作はさらに、前記第１のテキストの言語と第２のテキストの言語との間の類似度に基づいて言語類似度スコアを計算する動作を含む、請求項１０に記載のシステム。
【請求項１８】
特定の識別されたエモティコンは、視覚的表現を含むとともにそれぞれの感情に関連付けられているユーザ規定のエモティコンである、請求項１０に記載のシステム。
【請求項１９】
コンピュータによって実行されると以下の複数の動作を前記コンピュータに実行させる命令が格納された非一時的な機械読取り可能媒体を含む物品であって、前記以下の複数の動作は、
第１のユーザによって提出された第１のテキストを受け取る動作と、
複数の異なる以前に提出されたテキストの各々について、前記以前に提出されたテキストに対する前記第１のテキストのテキスト類似度に基づいてテキスト類似度スコアを計算し、前記第１のテキストの感情と前記以前に提出されたテキストの感情との間の類似度に基づいて感情類似度スコアを計算する動作と、
前記テキスト類似度スコアおよび前記感情類似度スコアに基づいて、前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択する動作と、
前記選択されたテキストの各々について、前記選択されたテキストへの挿入のためにユーザによって以前に選択されたエモティコンを識別する動作と、
前記第１のユーザによる選択のために前記識別されたエモティコンを提供する動作とを含む、物品。
【請求項２０】
前記以下の複数の動作はさらに、
前記第１のユーザによる前記識別されたエモティコンのうちの１つの選択を受け取る動作と、
前記選択されたエモティコンを前記第１のテキストに挿入する動作とを含む、請求項１９に記載の物品。
【請求項２１】
前記選択されたエモティコンは、前記第１のテキストにおける入力カーソルの現在位置において挿入される、請求項２０に記載の物品。
【請求項２２】
前記以前に提出されたテキストのうち、前記第１のテキストに対して最も近い類似度を有する１つ以上を選択する動作は、
前記以前に提出されたテキストについて計算された類似度スコアの組合せに基づいて、前記以前に提出されたテキストの各々についての組み合わされたスコアを生成する動作と、
前記組み合わされたスコアに基づいて、前記以前に提出されたテキストのうち１つ以上を選択する動作とを含む、請求項１９に記載の物品。
【請求項２３】
類似度スコアの前記組合せは重み付けされた組合せである、請求項２２に記載の物品。
【請求項２４】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算する動作は、前記特定のテキストと前記第１のテキストとの間の編集間隔を計算する動作を含む、請求項１９に記載の物品。
【請求項２５】
特定の以前に提出されたテキストと前記第１のテキストとの間の前記テキスト類似度スコアを計算する動作は、前記特定のテキストにおける複数の単語が、前記特定のテキストにおいて現われるのと同じ順序で前記第１のテキストにおいて現われるかどうかを判断する動作を含む、請求項１９に記載の物品。
【請求項２６】
前記以下の複数の動作はさらに、前記第１のテキストの言語と第２のテキストの言語との間の類似度に基づいて言語類似度スコアを計算する動作を含む、請求項１９に記載の物品。
【外国語明細書】
2019153338000001.pdf