JP2019504413A - 絵文字を提案するためのシステムおよび方法 - Google Patents

絵文字を提案するためのシステムおよび方法 Download PDF

Info

Publication number
JP2019504413A
JP2019504413A JP2018534941A JP2018534941A JP2019504413A JP 2019504413 A JP2019504413 A JP 2019504413A JP 2018534941 A JP2018534941 A JP 2018534941A JP 2018534941 A JP2018534941 A JP 2018534941A JP 2019504413 A JP2019504413 A JP 2019504413A
Authority
JP
Japan
Prior art keywords
module
pictogram
user
pictograph
emoji
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018534941A
Other languages
English (en)
Inventor
ボッジャ,ニキル
カルップサミィ,サティーシュクマール
ワン,ピドン
カナン,シバサンカリ
ネドゥンチェジアン,アルン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MZ IP Holdings LLC
Original Assignee
MZ IP Holdings LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MZ IP Holdings LLC filed Critical MZ IP Holdings LLC
Publication of JP2019504413A publication Critical patent/JP2019504413A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本開示の実装形態は、テキストまたはその他のコンテンツを有する通信文に挿入するための絵文字を提案する方法、システム、および物品を対象とする。通信文に対応する複数の特徴量が得られて、複数の絵文字判定モジュールに提供される。絵文字セットおよび第1の信頼スコアが、各絵文字判定モジュールから受信され、少なくとも1つの分類器に提供される。提案された絵文字候補セットおよび第2の信頼スコアは、少なくとも1つの分類器から受信される。絵文字候補は、通信文に挿入される。

Description

関連出願の相互参照
本願は、2015年12月29日に出願された米国仮出願第62/272,324号の優先権を主張するものであり、そのすべての記載内容を、引用により本明細書に援用する。
背景
本開示は、言語判断に関し、特に、絵文字を提案するためのシステムおよび方法に関する。
一般に、絵文字は、通常、情動、考え、または観念を伝えるために電子メッセージおよび通信文で使用される画像、図記号、または表意文字である。絵文字は、いろいろなデジタル装置(たとえば、携帯通信デバイスおよびタブレット・コンピューティング・デバイス)を通じて利用することができ、個人の電子メールを書くとき、インターネット上に(たとえば、ソーシャルネットワーキングサイトまたはウェブフォーラム上に)メッセージを投稿するとき、およびモバイル機器間でメッセージを送るときに使用されることが多い。
近年、ユーザが選択できる絵文字の数は、非常に増えている。考えられるほとんどすべての内容に対して絵文字が利用可能である。絵文字の数、使用、利用可能性、および多様性の拡大によって、ユーザが絵文字を適用できるコンピューティングアクティビティに参加しているときに、ある文脈にふさわしい絵文字を検索して選択することは、時間がかかり、時に、手に負えないだろう。
概要
本明細書に記載のシステムおよび方法の実装形態は、文書および電子通信文に挿入するまたはコンテンツを置き換えるための1つ以上の絵文字をユーザに提案するために使用され得る。コンテンツは、テキスト(たとえば、単語、句、略語、文字、および/または記号)、絵文字、画像、音声、映像、およびそれらの組み合わせを含み得る。これに代えて、本明細書に記載のシステムおよび方法の実装形態は、ユーザ入力を必要としないで、自動的に絵文字をコンテンツに挿入するまたはコンテンツの一部を絵文字に置き換えるために使用され得る。たとえば、コンテンツは、ユーザによってキー入力または入力されると、システムによって分析され得、この分析に基づいて、システムは、リアルタイムまたはほとんどリアルタイムでユーザに絵文字提案を提供できる。ある絵文字提案は、選択された場合にコンテンツに挿入されるまたはコンテンツの一部を置き換える1つ以上の絵文字を含み得る。次に、ユーザは、絵文字提案のうちの1つを選択してもよく、この提案の絵文字は、コンテンツでのふさわしい位置(たとえば、現在の入力カーソル位置またはその近く)に挿入され得る、またはコンテンツの一部を置き換え得る。
さまざまな例において、システムおよび方法は、絵文字の確率または信頼スコアを判断するために、1つ以上の絵文字判定方法および分類器を使用する。信頼スコアは、ユーザが絵文字を特定のコンテンツに挿入したい、または特定のコンテンツ(または、その一部)を絵文字に置き換えたい尤度を表す。たとえば、最も高い信頼スコアを有する絵文字が、テキストメッセージへの挿入の可能性のために、ユーザに提案され得る。いくつかの場合において、各絵文字判定方法は、可能性のある絵文字に関連付けられた確率のセットまたはベクトルを出力する。分類器は、コンテンツに対する提案セットを判断するために、絵文字判定方法からの出力を組み合わせることができる。各提案は、1つ以上の絵文字を含み得る。メッセージ用に選ばれる特定の絵文字判定方法(複数可)および分類器(複数可)は、予測される正確さ、信頼スコア、ユーザ嗜好、メッセージの言語分野、および/またはその他の適する要因によって異なり得る。検出方法(複数可)および/または分類器(複数可)の他の選択方法も可能である。
いくつかの例において、本明細書に記載のシステムおよび方法は、コンテンツをリアルタイムで絵文字に変換する。このプロセスを、「絵文字化」と称する。ユーザがコンテンツを入力すると、たとえば、コンテンツは、絵文字提案を識別および提供するために、分析され得る。ユーザは、メッセージを入力またはキー入力する際に絵文字提案を提供されながら、テキストと絵文字との組み合わせを通して互いにコミュニケーションを取ってもよい。テキストと絵文字との組み合わせによって、さまざまなクライアントで使用するためのメッセージングプラットフォームとして機能でき、且つ、ゲーム、テキストメッセージング、およびチャットルームコミュニケーションを含むさまざまな用途のための、新しいコミュニケーションの基本的な枠組みがもたらされる。
ユーザは、絵文字付きメッセージと絵文字なしメッセージとの間で切替えるオプションを持つことができる。たとえば、ユーザは、プレーンテキストと絵文字付きテキスト文字(つまり、「絵文字化された」バージョンのテキスト)との間で切替える「絵文字化」コマンドを、テキストメッセージングシステムにおいて選択できる。切替え機能は、ユーザ嗜好に順応し得、これによって、プレーンテキストと絵文字付きテキストとのいずれかをより簡単に選べるようになる。また、この機能は、より大部分のコンテンツ(たとえば、全テキストメッセージ会話)において、コンテンツを絵文字に変換する(つまり、絵文字化する)ためにも使用され得る。これは、コンテンツのより小さい部分(たとえば、個々の単語または文)が絵文字に変換される場合に生成される出力とは異なる出力を生成する(たとえば、会話のトピックについてのより多くの情報を与える)可能性がある。また、絵文字は、翻訳することが難しいメッセージに対する言語翻訳の代わりとして、または、特定のメッセージについての翻訳品質が受け入れられるものではなかった場合にも使用され得る。
絵文字の挿入または使用は、ゲーム環境に特に適し得る。特定のゲームにとって、チャットコミュニケーションは、プレーヤをつなぎ留めておく重要な機能である。絵文字をコミュニケーションプロトコルとして使用することによって、ゲーム体験を高め、プレーヤを、ゲームおよび他のプレーヤとのコミュニケーションにより引き込むことができる。
一態様において、本明細書に記載の主題は、絵文字を提案する方法で実施される。方法は、1つ以上のコンピュータによって実行される、ユーザからの通信文に対応する複数の特徴量を取得するステップと、特徴量を複数の絵文字判定モジュールに提供するステップと、絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信するステップとを含み、第1の信頼スコアの各々は、セットに含まれる異なる絵文字に関連付けられ、関連付けられた絵文字をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供するステップと、少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信するステップとを含み、第2の信頼スコアの各々は、提案されたセットに含まれる異なる絵文字候補に関連付けられ、関連付けられた絵文字候補をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字候補のうちの少なくとも1つを通信文に挿入するステップを含む。
いくつかの例において、複数の特徴量は、通信文における現在のカーソル位置、通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好、および/またはデモグラフィック情報を含む。絵文字判定モジュールは、文法誤り訂正モジュール、統計的機械翻訳モジュール、辞書ベースのモジュール、情報抽出モジュール、自然言語処理モジュール、キーワードマッチングモジュール、および/または有限状態トランスデューサ・モジュールを含み得る。一例において、辞書ベースのモジュールは、通信文に含まれる単語の少なくとも一部を、少なくとも1つの対応する絵文字にマッピングするように構成される。
いくつかの実装形態において、自然言語処理モジュールは、辞書ベースのモジュールによって提供された単語と絵文字とのマッピングを拡張するために、パーサ、形態素解析部、および/または意味解析部を備える。これに代えて、または、これに加えて、キーワードマッチングモジュールは、通信文に含まれる少なくとも1つのキーワードを探索し、少なくとも1つのキーワードを、絵文字に関連付けられた少なくとも1つのタグにマッチングさせるように構成され得る。いくつかの例において、第1の信頼スコアおよび/または第2の信頼スコアは、ユーザ嗜好、言語分野、デモグラフィック情報、ユーザおよびユーザコミュニティのうちの少なくとも一方による絵文字の前の使用、および/または通信文と共通する単語、句、文脈、および感情のうちの少なくとも1つを有する前の通信文における絵文字の前の使用に基づき得る。
いくつかの実装形態において、少なくとも1つの分類器は、教師あり学習モデル、部分教師あり学習モデル、教師なし学習モデル、および/または補間モデルを備える。絵文字候補のうちの少なくとも1つは、現在のカーソル位置に挿入され得、通信文に含まれる少なくとも1つの単語を置き換え得る。いくつかの場合において、絵文字候補のうちの少なくとも1つを挿入するステップは、提案された絵文字候補セットにおいて、最も高い第2の信頼スコアを有する最適な絵文字を識別するステップを含む。また、方法は、提案された絵文字候補セットからの絵文字候補のうちの少なくとも1つのユーザ選択を受信するステップと、ユーザ選択に基づいて、利用履歴をビルドするステップとを含み得る。また、いくつかの例において、方法は、ユーザ嗜好および/またはデモグラフィック情報に基づいて、少なくとも1つの分類器を選択するステップも含み得る。複数の絵文字判定モジュールは、動作を同時に行うことができる。
方法は、2つ以上の単語ベクトル表現間のコサイン類似度を計算することによって、辞書ベースのモジュール用の辞書を拡張するステップを含み得る。たとえば、方法は、2つ以上の単語についてのベクトル表現を取得するステップと、ベクトル表現についてのコサイン類似度を計算するステップと、単語および/または句間のコサイン類似度に基づいて、辞書(たとえば、辞書ベースのモジュール用の)を拡張するステップとを含み得る。
別の態様において、本明細書に記載の主題は、動作を実行するようにプログラムされた1つ以上のプロセッサを備えるシステムに具体化され得、当該動作は、ユーザからの通信文に対応する複数の特徴量を取得する動作と、特徴量を複数の絵文字判定モジュールに提供する動作と、絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信する動作とを含み、第1の信頼スコアの各々は、セットに含まれる異なる絵文字に関連付けられ、関連付けられた絵文字をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供する動作と、少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信する動作とを含み、第2の信頼スコアの各々は、提案されたセットに含まれる異なる絵文字候補に関連付けられ、関連付けられた絵文字候補をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字候補のうちの少なくとも1つを通信文に挿入する動作を含む。
いくつかの例において、複数の特徴量は、通信文における現在のカーソル位置、通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好、および/またはデモグラフィック情報を含む。絵文字判定モジュールは、文法誤り訂正モジュール、統計的機械翻訳モジュール、辞書ベースのモジュール、情報抽出モジュール、自然言語処理モジュール、キーワードマッチングモジュール、および/または有限状態トランスデューサ・モジュールを含み得る。一例において、辞書ベースのモジュールは、通信文に含まれる単語の少なくとも一部を、少なくとも1つの対応する絵文字にマッピングするように構成される。
いくつかの実装形態において、自然言語処理モジュールは、辞書ベースのモジュールによって提供された単語と絵文字とのマッピングを拡張するために、パーサ、形態素解析部、および/または意味解析部を備える。これに代えて、または、これに加えて、キーワードマッチングモジュールは、通信文に含まれる少なくとも1つのキーワードを探索し、少なくとも1つのキーワードを、絵文字に関連付けられた少なくとも1つのタグにマッチングさせるように構成され得る。いくつかの例において、第1の信頼スコアおよび/または第2の信頼スコアは、ユーザ嗜好、言語分野、デモグラフィック情報、ユーザおよびユーザコミュニティのうちの少なくとも一方による絵文字の前の使用、および/または通信文と共通する単語、句、文脈、および感情のうちの少なくとも1つを有する前の通信文における絵文字の前の使用に基づき得る。
いくつかの実装形態において、少なくとも1つの分類器は、教師あり学習モデル、部分教師あり学習モデル、教師なし学習モデル、および/または補間モデルを備える。絵文字候補のうちの少なくとも1つは、現在のカーソル位置に挿入され得、通信文に含まれる少なくとも1つの単語を置き換え得る。いくつかの場合において、絵文字候補のうちの少なくとも1つを挿入する動作は、提案された絵文字候補セットにおいて、最も高い第2の信頼スコアを有する最適な絵文字を識別する動作を含む。また、方法は、提案された絵文字候補セットからの絵文字候補のうちの少なくとも1つのユーザ選択を受信する動作と、ユーザ選択に基づいて、利用履歴をビルドする動作とを含み得る。また、いくつかの例において、方法は、ユーザ嗜好および/またはデモグラフィック情報に基づいて、少なくとも1つの分類器を選択する動作も含み得る。複数の絵文字判定モジュールは、動作を同時に行うことができる。
別の態様において、本明細書に記載の主題は、物品に具体化され得る。物品は、実行可能な命令を含む非一時的なコンピュータ読み取り可能な媒体を備える。実行可能な命令は、動作を行うようにプログラムされた1つ以上のプロセッサによって実行可能であり、当該動作は、ユーザからの通信文に対応する複数の特徴量を取得する動作と、特徴量を複数の絵文字判定モジュールに提供する動作と、絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信する動作とを含み、第1の信頼スコアの各々は、セットに含まれる異なる絵文字に関連付けられ、関連付けられた絵文字をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供する動作と、少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信する動作とを含み、第2の信頼スコアの各々は、提案されたセットに含まれる異なる絵文字候補に関連付けられ、関連付けられた絵文字候補をユーザが通信文に挿入したいであろう尤度を表し、さらに、絵文字候補のうちの少なくとも1つを通信文に挿入する動作を含む。
いくつかの例において、複数の特徴量は、通信文における現在のカーソル位置、通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好、および/またはデモグラフィック情報を含む。絵文字判定モジュールは、文法誤り訂正モジュール、統計的機械翻訳モジュール、辞書ベースのモジュール、情報抽出モジュール、自然言語処理モジュール、キーワードマッチングモジュール、および/または有限状態トランスデューサ・モジュールを含み得る。一例において、辞書ベースのモジュールは、通信文に含まれる単語の少なくとも一部を、少なくとも1つの対応する絵文字にマッピングするように構成される。
いくつかの実装形態において、自然言語処理モジュールは、辞書ベースのモジュールによって提供された単語と絵文字とのマッピングを拡張するために、パーサ、形態素解析部、および/または意味解析部を備える。これに代えて、または、これに加えて、キーワードマッチングモジュールは、通信文に含まれる少なくとも1つのキーワードを探索し、少なくとも1つのキーワードを、絵文字に関連付けられた少なくとも1つのタグにマッチングさせるように構成され得る。いくつかの例において、第1の信頼スコアおよび/または第2の信頼スコアは、ユーザ嗜好、言語分野、デモグラフィック情報、ユーザおよび/またはユーザコミュニティによる絵文字の前の使用、および/または通信文と共通する単語、句、文脈、および/または感情を有する前の通信文における絵文字の前の使用に基づき得る。
いくつかの実装形態において、少なくとも1つの分類器は、教師あり学習モデル、部分教師あり学習モデル、教師なし学習モデル、および/または補間モデルを備える。絵文字候補のうちの少なくとも1つは、現在のカーソル位置に挿入され得、通信文に含まれる少なくとも1つの単語を置き換え得る。いくつかの場合において、絵文字候補のうちの少なくとも1つを挿入する動作は、提案された絵文字候補セットにおいて、最も高い第2の信頼スコアを有する最適な絵文字を識別する動作を含む。また、方法は、提案された絵文字候補セットからの絵文字候補のうちの少なくとも1つのユーザ選択を受信する動作と、ユーザ選択に基づいて、利用履歴をビルドする動作とを含み得る。また、いくつかの例において、方法は、ユーザ嗜好および/またはデモグラフィック情報に基づいて、少なくとも1つの分類器を選択する動作も含み得る。複数の絵文字判定モジュールは、動作を同時に行うことができる。
本発明のある態様について説明する実施形態の要素は、本発明の別の態様のさまざまな実施形態において使用され得る。たとえば、ある独立請求項に従属する従属請求項の特徴は、その他の独立請求項のうちのいずれかに記載の装置、システム、および/または方法において使用され得ると考えられる。
ユーザの通信文に挿入するための絵文字を提案するための例示的なシステムの概略図である。 ユーザの通信文に挿入するための絵文字を提案する例示的な方法のフロー図である。 例示的な絵文字判定モジュールの概略図である。 例示的な絵文字分類器モジュールの概略図である。 絵文字提案システムアーキテクチャの概略図である。
詳細な説明
一般に、本明細書に記載のシステムおよび方法は、コンテンツに挿入するまたはコンテンツの1つ以上の部分を置き換えるための絵文字をユーザに提案するために使用され得る。あるコンテンツは、電子文書、電子メッセージ、または他の電子通信文内にあり得る。通信文は、テキストコンテンツおよび、必要であれば、たとえば、画像、絵文字、音声記録、マルチメディア、GIF、映像、および/またはコンピュータ命令など、ほかの種類のコンテンツを含み得る。
図1は、あるコンテンツについての絵文字を識別するための例示的なシステム100を示す図である。サーバシステム112は、メッセージ分析機能および絵文字提案機能を提供する。サーバシステム112は、たとえば、1つ以上の地理的位置における1つ以上のデータセンター114でデプロイできるソフトウェアコンポーネントおよびデータベースを備える。サーバシステム112のソフトウェアコンポーネントは、絵文字判定モジュール116と、絵文字分類器モジュール118と、マネージャモジュール120とを含み得る。ソフトウェアコンポーネントは、同じまたは個々のデータ処理装置上で実行できるサブコンポーネントを含み得る。サーバシステム112のデータベースは、訓練データ122と、辞書124と、チャット履歴126と、ユーザ情報128とを含み得る。データベースは、1つ以上の物理的な格納システムに存在し得る。ソフトウェアコンポーネントおよびデータについては、以下でさらに説明する。
ユーザがサーバシステム112とやりとりできるように、エンドユーザ・アプリケーションとして、ウェブベースのアプリケーションなどのアプリケーションが提供され得る。エンドユーザ・アプリケーションは、パーソナルコンピュータ134、スマートフォン136、タブレットコンピュータ138、およびラップトップコンピュータ140などのクライアントデバイスのユーザによって、ネットワーク132(たとえば、インターネット)を通じてアクセスされ得る。他のクライアントデバイスも可能である。代替的な例において、辞書124、チャット履歴126、および/またはユーザ情報128、またはそれらの一部は、1つ以上のクライアントデバイス上に格納され得る。これに加えて、または、これに代えて、システム100のソフトウェアコンポーネント(たとえば、絵文字判定モジュール116、絵文字分類器モジュール118、および/またはマネージャモジュール120)またはそれらの一部は、1つ以上のクライアントデバイス上に存在し得る、または1つ以上のクライアントデバイス上で動作を実行するために使用され得る。
図1は、データベース(たとえば、訓練データ122、辞書124、チャット履歴126、およびユーザ情報128)と通信できるものとして、絵文字分類器モジュール118およびマネージャモジュール120を示す。訓練データ122のデータベースは、一般に、1つ以上の絵文字判定方法および/または分類器を訓練するために使用され得る訓練データを含む。訓練データは、たとえば、単語または句(または、その他のコンテンツ)のセットを、この単語または句を置き換え得る、および/またはこの単語または句に挿入され得る好ましい絵文字と合わせて含み得る。訓練データは、たとえば、ユーザが生成した絵文字を、このような絵文字のための記述タグと合わせて含み得る。さらに、これらの絵文字とタグとの組み合わせは、特定の組み合わせが他と比べて関連性があるまたは世間に広まっていると評価するかもしれないユーザからのユーザ定義の重みを含み得る。辞書124のデータベースは、単語、句、またはそれらの一部を、1つ以上の絵文字に結びつける辞書を含んでもよい。辞書は、2つ以上の言語を網羅してもよく、および/または、複数の言語(たとえば、言語ごとに別々の辞書)を網羅するために、複数の辞書が辞書124のデータベースに含まれてもよい。チャット履歴126のデータベースは、ユーザ間でやり取りされた前の通信文(たとえば、テキストメッセージ)を格納してもよい。これに代えて、または、これに加えて、チャット履歴126のデータベースは、たとえば、自動システム112によって提案された1つ以上の絵文字提案および/または結果として生じた絵文字をユーザが選択したかどうかを含む、ユーザによる絵文字の過去の使用についての情報を含み得る。絵文字提案のランク順位に基づいた選択に関係する情報が格納されてもよい。ユーザ情報128のデータベースは、送信者および受信者の両方を含むユーザのデモグラフィック情報(たとえば、年齢、人種、民族性、性別、収入、居住地など)を含んでもよい。ユーザ情報128のデータベースは、絵文字が使用されるまたは使用されない場合を定める設定、自動絵文字挿入についての好み、および/またはユーザが持てる好ましい絵文字の種類(たとえば、顔の表情や動物)など、ユーザの絵文字の特定の好みを含んでもよい。一般に、絵文字分類器モジュール118は、絵文字判定モジュール116から入力を受信し、および/またはマネージャモジュール120は、絵文字分類器モジュール118から入力を受信する。
図2は、通信文に挿入するための絵文字を提案するためにシステム100を利用する、例示的な方法200を示す。方法200は、ユーザの通信文(たとえば、電子メッセージ)と関連する特徴量を取得するステップ(ステップ202)から始まる。特徴量は、たとえば、コンテンツにおけるカーソル位置、通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好(たとえば、絵文字が使用される好みの場合、好みの特定の絵文字、絵文字の好みの種類、または絵文字の好みのカテゴリ)、および/またはデモグラフィック情報(たとえば、ユーザおよび/または受信者の年齢、性別、民族性、収入、または市民権)を含み得る。他の適する特徴量も可能である。特徴量は、絵文字判定モジュール116に提供される(ステップ204)。絵文字判定モジュール116は、通信文にふさわしいと思われる絵文字候補を識別するために、複数の絵文字判定方法を採用することが好ましい。絵文字判定モジュール116からの出力は、絵文字分類器モジュール118に提供される(ステップ206)。絵文字分類器モジュール118では、1つ以上の分類器が絵文字判定モジュールからの出力を処理し、通信文に対して提案された絵文字を提供する(ステップ208)。提案された絵文字は、マネージャモジュール120の支援で識別され得る。マネージャモジュール120は、たとえば、言語分野(たとえば、ゲーム、ニュース、議会議事録、政治、健康、旅行、ウェブページ、新聞記事、およびミニブログメッセージ)、通信文に使用される言語、1つ以上のユーザ嗜好など、さまざまな要因に基づいて、使用する特定の絵文字判定方法および/または分類器を選択できる。言語分野は、たとえば、特定の種類の主題および/または特定のコミュニケーションシステムのユーザに特有または共通の単語、句、文構造、または文体を定義または含んでもよい。たとえば、ゲーマーは、ゲーム環境において互いにコミュニケーションをとるときに、特有の専門用語、俗語、または文構造を使用する一方、新聞記事または議会議事録は、構成がしっかりした文および/または別の専門用語を用いたよりフォーマルな口調であるだろう。最後に、提案された絵文字のうちの少なくとも1つが通信文に挿入される(ステップ210)。絵文字は、通信文に自動的に挿入され得、および/または挿入するためにユーザによって選択され得る。挿入された絵文字は、通信文の1つ以上の単語または句を置き換え得る。
いくつかの実装形態において、1つ以上の分類器から提案された絵文字は、演算された信頼スコアに応じて、マネージャモジュール120によって選択され得る。たとえば、分類器は、提案された絵文字または絵文字セットごとに信頼スコアを演算できる。信頼スコアは、提案のうちの少なくとも1つをユーザが通信文に挿入したいという予測尤度を示し得る。これに加えて、または、これに代えて、特定の分類器の出力は、ユーザまたはコンテンツに関連する言語分野に応じて選択され得る。たとえば、ユーザメッセージがコンピュータゲーム環境で始まった場合、最も正確な絵文字提案を与えるものとして、特定の分類器の出力が選択され得る。同様に、メッセージがスポーツを背景に始まった(たとえば、スポーツ競技に関する)場合、スポーツの言語分野によりふさわしいとして、別の分類器の出力が選択され得る。他のあり得る言語分野は、たとえば、ニュース、議会議事録、政治、健康、旅行、ウェブページ、新聞記事、ミニブログメッセージ、および他の適する言語分野を含み得る。一般に、特定の絵文字判定方法、または絵文字判定方法の組み合わせ(たとえば、分類器からの)は、他の言語分野と比べて、特定の言語分野について正確であり得る。いくつかの実装形態において、言語分野は、メッセージにおける、分野固有の語彙からの単語の存在に基づいて判断され得る。たとえば、コンピュータゲームについての分野固有の語彙は、ゲーマーによって使用される共通の俗語を含むだろう。いくつかの場合において、特定の言語分野において、ある単語列または文字列が出現する可能性が高い場合、この言語分野が選択されるように、言語分野のプロファイルを作成するために単語列または文字列が形作られる。これに代えて、または、これに加えて、言語分野は、コミュニケーションシステムが使用されている環境(たとえば、ゲーム、スポーツ、ニュースなど)に応じて判断されてもよい。
図3を参照すると、絵文字判定モジュール116は、絵文字提案を識別するためのさまざまな方法を行う複数のモジュールを含み得る、または利用できる。絵文字判定モジュールは、たとえば、文法誤り訂正モジュール302、統計的機械翻訳モジュール304、辞書ベースのモジュール306、品詞(POS:Part−Of−Speech)タグ付けモジュール308、情報抽出モジュール310、自然言語処理モジュール312、キーワードマッチングモジュール314、および/または有限状態トランスデューサ(FST:Finite State Transducer)モジュール316を含めることができる。
Figure 2019504413
いくつかの実装形態において、文法誤り訂正モジュール302は、複数の分類器を採用できる。一例において、文法誤り訂正モジュール302は、注釈付き訓練データを使用して訓練される教師あり分類器を使用できる。分類器をさらに訓練するために、クラウドソーシングから得たデータが使用され得る。例として、ユーザは、クラウドソーシングに参加して訓練データを提供することで、インセンティブ(たとえば、オンラインゲームで使用するための仮想アイテムまたは仮想通貨)が与えられ得る。絵文字に変換され得るまたは「絵文字化」され得るコンテンツは、考慮されるべきである。または、この訓練プロセスについて優先されるべきである。たとえば、「I am good」は、訓練には役立たないかもしれないが、「I am good lol」は、訓練に役立つ可能性があり、優先されるべきである。
Figure 2019504413
Figure 2019504413
Figure 2019504413
いくつかの例において、たとえば、クライアントデバイスのユーザによって単語がキー入力されていると、単語列または他の文の断片をクライアントデバイスからサーバに提供するために、同期型パイプラインが確立および構成され得る。パイプラインは、クライアントデバイスとサーバとの間のデータ転送のためのセキュアで効率のよい機構を提供できる。最適なデータ転送を行うために、サーバのpingの頻度が限定され得る。一例において、句テーブルがクライアントデバイスにダウンロードされ得、絵文字化を行うために、格子復号化が使用され得る。クライアント側でのメモリ最適化および/または復号化最適化は、このような場合に役立つだろう。
SMTモジュール304は、プレーンテキストを一端に、絵文字化されたテキストを他端に有するパラレルコーパスを用いて訓練され得る。このように作られた句テーブルは、単語/句と絵文字とのペアを抽出するため、および/または(たとえば、辞書ベースのモジュール306で使用するための)絵文字提案用の1つ以上の辞書を強化するために使用され得る。ある場合において、この手法は、絵文字提案についてのF1スコアを13%改善させた。
Figure 2019504413
いくつかの例において、単語間、句間、および絵文字間の関係を判断または識別するために、深層学習ベースのアルゴリズム(たとえば、WORD2VECまたはその他の適するアルゴリズム)が使用され得る。深層学習ベースのアルゴリズムは、単語をベクトル空間にマッピングできる。ベクトル空間では、各単語がベクトルによって表される。ベクトルの長さは、任意の適した長さが可能であるが、たとえば、約40、約50、または約60であり得る。単語間の関係を判断するために、これらの単語を表すベクトルのドット積が計算され得る。2つの単語(たとえば、「happy」および「glad」)が類似する場合、たとえば、2つの単語のベクトルは、ベクトル空間において、2つのベクトルのドット積が正になるように一列に並べられる。いくつかの例において、2つの一列に並べられたベクトルのドット積も+1に近い大きさを有するように、ベクトルは、1に近い大きさを有するように正規化される。実質的に直交する正規化されたベクトル(たとえば、互いに関係のない単語)は、ゼロに近いドット積の大きさを有し得る。同様に、反対の意味を持つ単語では、正規化されたベクトルのドット積は、−1に近いだろう。
深層学習ベースのアルゴリズムは、単語/句と絵文字とのペアからなる1つ以上の辞書を強化するものとして使用され得、および/または1つ以上の既存の辞書を拡張または向上させるために使用され得る。たとえば、辞書に存在しない新しい単語をユーザが入力したとき、この新しい単語に類似する対応する単語を辞書から見つけるために、このアルゴリズムが使用され得、類似性に基づいて、対応する単語に関連する絵文字がユーザに勧められ得る。これに代えて、または、これに加えて、辞書ベースのモジュール306で使用するための、より完全および/または正確な辞書をビルドするために、このアルゴリズムが使用され得る。このアルゴリズムは、新しい単語と、すでに辞書に存在して絵文字と対応付けられている既存の単語との類似点および相違点に基づいて新しい単語を辞書に追加する、および、絵文字をこの新しい単語に対応付けるために使用され得る。
単語群間の類似点および相違点が判断できるように(たとえば、ドット積計算を使用して)、句、文、またはその他の単語群に対して、同様のベクトル表現手法が使用され得る。ベクトルは、単語、句、文、文書、またはその他の単語群の数的表現であり得る。たとえば、メッセージm1「Can one desire too much a good thing?」およびメッセージm2「Good night、good night! Parting can be such a sweet thing」は、表1に示すように、特徴空間の行列(can、one、desire、too、much、a、good、thing、night、parting、be、such、sweet)に配置できる。
Figure 2019504413
この例において、2つのメッセージm1ならびにm2、および/またはメッセージm1ならびにm2に存在する単語を表すベクトルを生成するために、表1の2列目および3列目が使用され得る。メッセージm1は、たとえば、表1の2列目の値を含むベクトル[1111111100000]によって表すことができる。メッセージm2は、表1の3列目の値を含むベクトル[1000012121111]によって表すことができる。これに加えて、メッセージm1に含まれる単語「good」は、メッセージm1およびm2に存在する単語の数に等しい長さ(つまり、13)のベクトル[0000001000000]によって表すことができる。また、このベクトルは、m1のベクトルにおける「good」の位置に対応する要素7に、1という値を有し、m1のベクトルにおける他の単語の位置に対応するすべての他の位置に、ゼロという値を有する。同様に、メッセージm2に含まれる単語「good」は、ベクトル[0000002000000]によって表すことができ、ここで、2という値は、単語「good」がメッセージm2に2回出現することを示す。メッセージm1に含まれる単語「night」は、ベクトル[0000000000000]によって表すことができ、ここで、すべての要素がゼロであることは、「night」がメッセージm1に存在しないことを示す。メッセージm2に含まれる単語「night」は、ベクトル[0000000020000]によって表すことができ、ここで、2という値は、単語「night」がメッセージm2に2回出現することを示す。単語ベクトルを使用した、単語または単語群の他の表現も可能である。たとえば、メッセージは、メッセージに含まれるすべての単語の和によってではなく、メッセージに含まれるすべての単語のベクトルの平均(「平均表現ベクトル」)によって表すことができる。
Figure 2019504413
曖昧性の除去を行うために、POS(品詞)タグ付けモジュール308が使用され得る。たとえば、辞書ベースのモジュール306に含まれる辞書は、名詞句、動詞句、形容詞などのPOSタグ、および/またはPOSタグの総数(たとえば、単語ごと)およびPOSタグの有効なセット(つまり、単語が絵文字化され得るタグのセット)などの追加情報を含むように変更され得る。これによって、文または句に含まれる単語を、絵文字化できるかどうかについて選別することができる。名詞句は、品詞(Part of Speech(POS))タガーによって正常に識別されると、句レベルでまとめられて、関連性のある絵文字に置き換えられる可能性がある。例として、文「The Police Car sped along the road」では、POSタガーは、「The Police Car」および「the road」を名詞句であると識別し、「sped along」を動詞句であると識別するだろう。次に、システムおよび方法は、PoliceおよびCarに対して2つの別々の絵文字を識別するのではなく、Police Carを描写した1つの絵文字を選択してもよい。
曖昧性除去の次のレベルとして、同じPOSタグを有する単語は、複数の非類似の意味を持ち得る。たとえば、「I think she is right」および「walk at your right hand side」における用語「right」は、形容詞であるが、別の意味であり、各句において違う形に絵文字化され得る。このような場合は、たとえば、英語のチャット履歴から文脈を表す単語を識別することによって処理され得る。文脈情報が(たとえば、手作業で集めることによって)辞書に追加される、または別の辞書として作成されてもよい。文脈的手法は、包含および除外の両方(つまり、その有/無が絵文字化を決定する単語)を処理する。最も頻繁に同時に出現する単語の文脈情報が集められて格納され得る。
Figure 2019504413
また、絵文字化は、情報抽出モジュール310を使用して行うこともできる。情報抽出モジュール310は、探索・抽出ツールとして動作し、ランクベースの情報の抽出および検索技術を使用する。この手法のいくつかの例は、高速オートコンプリートを行うためにアプリケーションプログラム・インターフェース(API)を利用し得る既存の検索エンジン(たとえば、LUCENE/SOLR、およびSPHINX)が使用する手法と同様であり得る。このような手法は、一般に、特定のフォーマットのデータを必要とする。たとえば、SOLRは、文書探索により適しているが、うまくスケールする一方、SPHINXは、オートコンプリートにより適しているが、うまくスケールしない。新たな検索語について一致する文書がすぐに見つかるように、通常の検索エンジンは、検索語に対応する文書をインデックスする。このようなインデックスは、個々の語が文書に出現する頻度をリストにするまたは含み、ある検索語の頻度が高いことは、関連性一致を示す。単語および絵文字の文脈において同様の手法が使用できる。たとえば、ある絵文字が、ある単語の文脈に複数回出現する場合、この単語と絵文字とは同じ意味で使用できる確率が高い。よって、絵文字が、この単語または句と合わせて頻繁に使用されていた、またはこの単語または句の代わりに頻繁に使用されていた場合、情報抽出モジュール310は、この単語または句に対してこの絵文字を提案してもよい。一例において、メッセージングプラットフォーム(たとえば、ゲームプラットフォーム)について、特定の絵文字がさまざまな単語または句とともに使用される頻度を識別するために、メッセージングプラットフォーム用のテキストメッセージを集めたものが、情報抽出モジュール310を使用して探索され得る。
絵文字化のために、自然言語処理(NLP:Natural Language Processing)モジュール312を使用することもできる。一般に、NLPモジュール312は、チャットメッセージの隠れた意味および構造を得るために、たとえば、パーサ、形態素解析部、感情分析部、意味解析部など、NLPツールを採用する。次に、このような情報は、データとそれぞれタグ付けされた絵文字に文をマッチングさせるために使用され得る。たとえば、さまざまな程度の情動が示されていると、感情分析部は、情動の極みを識別できる。次に、「I am happy」および「I am very happy」のようなケースが識別され、表されている情動の高いまたは低い度合いをより良く表すために、それぞれ異なる絵文字が割り当てられ得る。NLPモジュール312は、コンテンツを分析して、たとえば、文法、名前が付く物、情動、感情、および/または俗語を探索できる。コンテンツに一致または対応する絵文字が識別される。
Figure 2019504413
一般に、キーワードマッチングモジュール314に使われる技術は、辞書ベースのモジュール306に使われる技術とは異なる。辞書マッチングは、一般に、単語と絵文字との1対1対応の静的リストをビルドすることに依存する。キーワードマッチングは、「cop」および「police」などの複数のキーワードが互いに関連付けられてから、対応する絵文字に関連付けられてもよいという点で辞書を強化するものである。さまざまな例において、辞書マッチングは、policeに対して1つのエントリを有し、policeに対して絵文字を有してもよい。対照的に、キーワードマッチングは、「cop」および「police」が同一であると教えてもよく、これによって、辞書が取り扱う範囲が改善される。
有限状態トランスデューサ(FST)モジュール316は、絵文字化に対しても使用することができ、辞書ベースの方法など、他の方法の文脈情報欠如の問題を解決するのに役立てることができる。FSTは、NLP、たとえば、自動音声認識(ASR)および機械翻訳(MT)において、特定のアプリケーションを有する。FSTは、一般に、高速で動作し、リアルタイムまたはほぼリアルタイムで絵文字を勧めることに適している。FSTは、通常、状態遷移に基づいて動作する。生成プロセスは、文においてこれまで見られた単語または絵文字(たとえば、ユーザの部分入力)に基づく。次に、訓練用コーパスから学習した遷移確率に基づいて、文における次のステップまたは状態が生成される。いくつかの例において、FSTが使用する状態遷移は、SMTモジュール304に含まれる、隠れマルコフモデルが使用するものと同様である。しかしながら、差別化要因は、バイリンガルデータ(言語−絵文字)を用いて訓練された状態遷移をSMTモジュール304が使用するのに対し、状態遷移を学習するために、単一言語データをFSTモジュール316が使用することである。単一言語データは、絵文字化されたテキストを訓練データとして含み、状態遷移は、実質上、または、先行する単語/絵文字に続く単語/絵文字の確率に基づく。それゆえ、生成モデル(Generative Model)は、連続の確率に基づく。FSTモジュール316は、単語または句の後に挿入される可能性が高い絵文字を、この単語または句に続く絵文字の前の使用に基づいて予測するために使用され得る。
絵文字判定モジュール116は、ユーザの通信文に挿入するのに適し得る絵文字を識別するために、その絵文字判定モジュールのうちの1つ以上を使用する(任意の1つ以上の絵文字判定モジュールを使用できるが、たとえば、辞書ベースのモジュール306およびPOSタグ付けモジュール308)。一例において、各絵文字判定モジュールは、確率または信頼スコアのベクトルを提供する。各確率または信頼スコアは、1つ以上の絵文字候補に関連付けられてもよく、ユーザが通信文に絵文字を挿入したいであろう尤度を表してもよい。これに代えて、または、これに加えて、確率または信頼スコアは、絵文字と通信文との相関関係を示してもよい。それぞれ異なる方法が採用されていることと、通信文に含まれる利用可能な情報により、各絵文字判定モジュールからの信頼スコアは、一致していない場合がある。
Figure 2019504413
絵文字を提案するために、絵文字分類器モジュール118を用いて、絵文字判定モジュール116に含まれるさまざまな絵文字判定モジュールからの出力が組み合わされ得る、または処理され得る。複数の絵文字判定モジュールからの出力は、1つの組み合わされた出力として、または、複数の出力(たとえば、使用された各モジュールまたは方法からの別個の出力)として、絵文字分類器モジュール118に提供され得る。一般に、絵文字を提案するために、絵文字分類器モジュール118は、絵文字判定モジュール(複数可)からの出力を受信し、さまざまな技術を用いてこの出力を処理する。訓練データは、本明細書に記載するように、絵文字分類器モジュール118に含まれる1つ以上の分類器を訓練するために使用されてもよい。
図4を参照すると、絵文字分類器モジュール118は、補間モジュール402と、サポートベクターマシン(SVM)モジュール404と、線形SVMモジュール406とを含めることができる。他の分類器または分類器モジュールも使用できる。
補間モジュール402は、2つ以上の絵文字判定方法からの結果の補間(たとえば、線形補間またはその他の適する補間)を行うために使用され得る。たとえば、絵文字の提案セットは、キーワードマッチングモジュール314およびSMTモジュール304からの結果の間を補完することによって決定され得る。特定の句と絵文字とのマッピングは、語の頻度に基づく、キーワードマッチングモジュール314からのスコアkと、たとえば、HMM出力確率に基づく、SMTモジュール304からのスコアsとを有し得る。次に、これらのスコアは正規化され得(たとえば、モジュールごとの最大可能スコアが1に等しくなるように)、補間され得、組み合わされたスコアが生成される。
一般に、2つ以上の値間を補完するための最適な重みは、試行錯誤によって数的に決定され得る。あるメッセージセットに対する最適な重みセットを識別するために、それぞれ異なる重みが試され得る。いくつかの場合において、重みは、メッセージに含まれる単語または文字の数に応じて異なり得る。これに代えて、または、これに加えて、重みは、メッセージの言語分野によって異なり得る。たとえば、ゲーム環境にとって最適な重みは、スポーツ環境にとって最適な重みとは異なり得る。
SVM(サポートベクターマシン)モジュール404は、単語/句と絵文字との組み合わせを分析してパターンを認識する教師あり学習モデルであり得、またはこの教師あり学習モデルを含めることができる。たとえば、SVMモジュール404は、多クラスSVM分類器であり得る。SVM分類器は、ラベル付けされた訓練データを用いて訓練されることが好ましい。訓練されたモデルは、入力用の予測器として動く。絵文字判定の場合において選択された特徴量は、たとえば、単語列または句列であり得る。入力された訓練用ベクトルは、多次元空間にマッピングされ得る。次に、SVM分類器は、カーネルを使用して、これらの次元間の最適な分離超平面を識別し得、これによって、絵文字を予測する特徴的な能力が分類器に与えられる。カーネルは、たとえば、線形カーネル、多項式カーネル、または放射基底関数(RBF:Radial Basis Function)カーネルであり得る。他の適するカーネルも可能である。SVM分類器にとって好ましいカーネルは、RBFカーネルである。訓練データを用いてSVM分類器を訓練した後、分類器は、すべてのあり得る絵文字の中で、最適な絵文字セットを出力するために使用され得る。
線形SVMモジュール406は、大規模な線形分類器であり得、またはこの線形分類器を含めることができる。線形カーネルを有するSVM分類器は、線形回帰など、他の線形分類器よりもよく動作する場合がある。線形SVMモジュール406は、SVMモジュール404とカーネルレベルで異なる。多項式モデルが線形モデルよりもよく動作する場合もあれば、線形モデルが多項式モデルよりもよく動作する場合もある。最適なカーネルは、メッセージデータの言語分野および/またはデータの性質によって異なり得る。
本明細書に記載のシステムおよび方法によって使用される他のあり得る分類器は、たとえば、決定木学習、相関ルール学習、人工ニューラルネットワーク、帰納論理プログラミング、ランダムフォレスト、勾配ブースティング法、サポートベクターマシン、クラスタリング、ベイズのネットワーク、強化学習、表現学習、類似度・計量学習、およびスパース辞書学習などが挙げられる。これらの分類器のうちの1つ以上、またはその他の分類器は、絵文字分類器モジュール118に組み込まれ得、および/または絵文字分類器モジュール118の一部を形成し得る。
さまざまな実装形態において、分類器は、絵文字判定方法のうちの1つ以上によって生成された確率または信頼スコアを、入力として受信する。確率または信頼スコアは、ユーザメッセージに含まれる単語または句を、ユーザが挿入したい絵文字であり得る1つ以上の絵文字に相関させ得る。使用中の分類器(複数可)によっては、分類器は、現在のカーソル位置、ユーザメッセージに含まれる単語または句、ユーザによって送信または受信された前のメッセージまたは前のコンテンツ、ユーザ嗜好、および/またはユーザのデモグラフィック情報を入力として受信することもできる。一般に、分類器は、この入力を、最もありそうな単語と絵文字とのマッピングを判断するために、信頼スコアとともに使用する。
図1を再び参照すると、ある通信文について、通信文に挿入するための絵文字を提案するために、マネージャモジュール120は、特定の絵文字判定方法、分類器、および/または絵文字判定方法の組み合わせからの出力を選択できる。マネージャモジュール120は、たとえば、言語分野、通信文の長さ、または、ユーザ嗜好に従って、選択することができる。マネージャモジュール120は、たとえば、分類器によって判断された信頼スコアに応じて、特定の分類器を選択できる。たとえば、マネージャモジュール120は、その予測において最も信頼度がある分類器からの出力を選択できる。いくつかの例において、マネージャモジュール120は、文法誤り訂正モジュール302、辞書ベースのモジュール306、品詞タグ付けモジュール308、および/または自然言語処理モジュール312からの出力の組み合わせを選択する。これに代えて、または、これに加えて、マネージャモジュール120は、統計的機械翻訳モジュール304および有限状態トランスデューサ・モジュール316からの出力の組み合わせを選択できる。マネージャモジュール120は、補間モジュール402など、絵文字分類器モジュール118からの1つ以上の分類器を使用して、これらのモジュールからの出力を組み合わせることができる。サポートベクターマシン分類器(たとえば、サポートベクターマシン・モジュール404または線形サポートベクターマシン・モジュール406における)は、(たとえば、マルチプレーヤオンラインゲームのプレーヤについての)ユーザ情報またはユーザ嗜好を、絵文字判定モジュール116からの1つ以上の信頼スコアと紐付けするのに有用であり得る。
分類器用の訓練データは、たとえば、それぞれ異なる絵文字判定方法からの出力ベクトル、および、たとえば、異なるメッセージ長さ、異なる言語分野、および/または異なる言語のコンテンツにとって正しいまたは最適な絵文字の指示であり得る、またはそれらを含み得る。訓練データは、最も正確または最も好ましい絵文字が既知である大量のメッセージを含み得る。
文法誤り訂正方法302および統計的機械翻訳方法304など、特定の絵文字判定方法は、コンテンツを絵文字に変換するための統計的方法で有り得、またはこのような統計的方法を利用し得る。訓練データは、統計的方法を実現するために集められて利用され得る。
初期のテストデータ収集フェーズにおいて、それぞれ異なる絵文字化方法を評価するために、テストセットに含まれる任意の適する数のメッセージが使用されてよいが、少なくとも2000通のメッセージからなるテストセットが集められて使用され得る。評価において、文法誤り訂正と同じ評価指標が使用され得る。第2フェーズにおいて、統計的絵文字化方法用に、訓練データが集められ得る。第3フェーズにおいて、それぞれ異なる言語用に大量の訓練データを集めるために、クラウドソーシングが使用され得る。
一実装形態において、訓練データを集めるために、ウェブページが作成され得る。チャットメッセージデータベースから選択された特定のロー(raw)チャットメッセージを保存するために、データベーステーブルが使用され得る。ユーザがウェブページにログインすると、コンテンツがユーザに示され得、ユーザは、コンテンツをその絵文字化された形に変換するかを聞かれ得る。ウェブページは、絵文字化プロセスにおいてユーザを支援するために、絵文字の仮想キーボードを表示することが好ましい。ユーザからの絵文字化されたメッセージは、データベースに格納される。一般に、ウェブページによって、統計的技術を採用する絵文字判定方法用に、訓練データが集めることができる。
ウェブページ上でユーザが絵文字化するためのロー(raw)メッセージを得るために、絵文字化辞書に含まれる英語と絵文字とのペアごとに英語の句が収集され得る。次に、チャットログデータベースの英語のチャットメッセージに含まれる句の探索が行われ得る。
一般に、クラウドソーシング技術は、ユーザに、使用頻度の高いコンテンツを絵文字パターンとマッチングさせるために(たとえば、チャットルームまたはゲーム環境内で)使用され得る。クラウドソーシングは、逆に使用されてもよい。たとえば、1つ以上の絵文字がユーザに提示され得、次に、ユーザが、絵文字に対応するコンテンツを提案する。
これに代えて、または、これに加えて、他のユーザと共有できる新しい絵文字を作成するために、クラウドソーシングが使用され得る。たとえば、ゲーム環境において、ゲーム操作者は、ゲーム経済を支配しており、巨大なプレーヤベース(player base)にアクセスできる。これによって、ゲーム操作者は、絵文字作成のためにクラウドソーシングを利用できるようになる。プレーヤには、メッセージに挿入するための絵文字を設計、作成、および、他のプレーヤと共有するためのツールへのアクセスが与えられ得る。ツールによって、プレーヤは、予め定義されたグラフィカル要素を組み合わせるおよび/または自由形式で絵文字を描くことによって、絵文字を作成できるようになる。プレーヤは、ゲーム環境に使用するのに有用、おもしろい、および/または関連性があると思うユーザ作成の絵文字を、投票で選ぶおよび/または承認することができる。これによって、絵文字の採用プロセスが向上し、より高くランク付けされた絵文字が、プレーヤによってより簡単に採用されるようになる。
絵文字作成プロセスは、インセンティブが与えられ得る。たとえば、ゲームプレーヤーは、絵文字を作成して提出するおよび/または自身の絵文字が他のプレーヤによって使用されると、賞品を得ることができる。賞品は、ほとんどすべての形で有り得、たとえば、クーポンならびに値引きなどの金銭的インセンティブ、および、ゲームで使用するための仮想アイテムまたは仮想通貨などのゲームに関係するインセンティブを含む。このような報酬は、プレーヤが絵文字を作成し、ゲームコミュニティとその絵文字を共有する動機を与える。たとえば、季節的なコンピュータ対戦(PvE:Player versus Environment)イベント用に絵文字が必要となったときに、インセンティブによって絵文字がより素早く作成されるようになり得る。
一般に、ユーザによる絵文字の作成は、ゲーム環境に限られない。チャットルームまたはその他のコミュニケーションシステムのユーザは、絵文字作成ツールが与えられ、自身の絵文字を他人と共有でき得る。このようなクラウドソーシングの努力にも、インセンティブが与えられ、ユーザは、絵文字作成と引き換えに、特定の報酬(たとえば、クーポン、値引き、および他の金銭的インセンティブ)を得る。
本明細書に記載の絵文字化システムおよび方法の実装形態は、IOSキーボード、ANDROID(登録商標)キーボード、および/またはUNICODE(たとえば、http://unicode.org/emojiから入手可能)を含むさまざまなソースからの絵文字を利用できる。
図5は、絵文字提案システム500用の例示的なアーキテクチャである。システム500は、ネットワーク(たとえば、ネットワーク132)を通じてサーバモジュール504とやり取する複数のクライアントデバイス502を含む。サーバモジュール504は、分散ストレージモジュール506を含み、分散ストレージモジュール506は、システム500の基礎として機能する。分散ストレージモジュール506は、絵文字とキーワードとのマップに関連性のあるデータ、プレーヤ使用情報、プレーヤ基本設定、および絵文字を提案するのに有用なその他の情報を格納する、サーバ側データストア(たとえば、分散データベース)である。分散ストレージモジュール506は、訓練データ122、辞書124、チャット履歴126、および/またはユーザ情報128のデータベースであり得、それらを含み得、またはそれらの一部を形成し得る。分散ストレージモジュール506は、格納されているデータの量が記憶容量に近づいていると、システム管理者にスケーリング通知508を提供する、またはアラートを出すことができる。サーバモジュール504は、サーバシステム112と同じまたは同様であり得、および/またはサーバシステム112の構成要素の一部またはすべてを備え得る。クライアントデバイス502は、たとえば、パーソナルコンピュータ、スマートフォンまたはその他のモバイル機器、タブレットコンピュータ、およびラップトップコンピュータを含み得る。クライアントデバイス502は、クライアントデバイス134、136、138、および140のうちの1つ以上と同じまたは同様であり得る。
また、システム500は、分散ストレージモジュール506への不正アクセスを防ぐ1つ以上の認証・レート限定モジュール510を備える。同時に、最も関連性のある絵文字をユーザに供給するために、このユーザにのみ関連性のあるデータは、認証・レート限定モジュール510を通じてアクセスされる。認証・レートモジュール510は、トランザクションを記録するためにログ512を保持し、エラーをシステム管理者に通知するために、緊急事態通知514を提供する。
また、システム500は、ロードバランサ516を含む。ロードバランサ516は、クライアントデバイス502とサーバモジュール504との間のインタフェースとして機能する。ロードバランサ516は、複数のクライアントデバイス502からの同時発生した要求を処理して、各クライアントデバイス502が確実に待ち行列に入れられてサーバモジュール504にきちんとルーティングされるようにする。
各クライアントデバイス502は、ローカルキャッシュモジュール518と、キー入力推測モジュール520と、テキスト変形モジュール522とを備える。ローカルキャッシュモジュール518は、最も使用頻度の高い絵文字、または絵文字とキーワードとのマップを、各クライアントデバイス上のキーボードに供給する。ローカルキャッシュモジュール518は、たとえば、ハッシュマップ、ELASTICSEARCH、および/またはSQLiteで有り得、または、それらを利用できる。キー入力推測モジュール520およびテキスト変形モジュール522は、単語または句をデコードし、絵文字に相当するものを見つけるために使用され得る。たとえば、キー入力推測モジュール520は、ユーザメッセージの最初の部分に基づいて、ユーザが次に入力する単語または句を予測できる。キー入力推測モジュールは、たとえば、本明細書に記載のFSTモジュール316および/またはRNNLM言語モデルを使用または備えることができる。テキスト変形モジュール522は、形式ばらないコンテンツを変形させるために使用され得る。たとえば、テキスト変形モジュール522は、絵文字提案を見つけるためにコンテンツが分析される前に、頭字語、略語、チャット語、および/または下品な言葉を、より形式ばった単語または句に変換できる。いくつかの実装形態において、キー入力推測モジュール520および/またはテキスト変形モジュール522は、サーバモジュール504で実現される。たとえば、これらのモジュールは、分散ストレージモジュール506と認証・レートモジュール510との間またはそれらの近くに置かれ得る。
また、クライアントデバイス502およびサーバモジュール504は、プレーヤが新しい絵文字を作成してユーザコミュニティと共有できるようにするクラウドソーシング要素を含み得る。ユーザは、クライアントデバイス502上のクラウドソーシング・クライアントモジュール524を使用して、新しい絵文字を描くまたは作成することができる。ユーザが作成した絵文字は、分散ストレージモジュール506にユーザが作成した絵文字が格納されるサーバモジュール504に転送され得る。クラウドソーシング・トランザクションは、あるユーザが作成した絵文字がユーザの認証情報とともに格納されるように、1つ以上のクラウドソーシング認証モジュール526を経由することが好ましい。このような情報は、のちに、プレーヤが作成した絵文字が認証され、絵文字を作成したことに対する報酬がユーザに与えられたときに使用され得る。クラウドソーシング・ロードバランサモジュール528は、クラウドソーシングログ530を維持し、緊急事態通知532を提供する。
いくつかの実装形態において、本明細書に記載の絵文字化システムおよび方法は、ユーザがメッセージをキー入力または入力すると、リアルタイムで絵文字を提案する。リアルタイムの提案は、ユーザのクライアントデバイス上に絵文字をキャッシュ保存することによって容易にされ得る。これに代えて、または、これに加えて、絵文字判定モジュール116、絵文字分類器モジュール118、および/またはマネージャモジュール120は、クライアントデバイス上に格納され得、これらのデバイスによって実行され得る。いくつかの例において、絵文字用キーボードは、元のクライアントキーボードの代わりに使用され得る。絵文字用キーボードは、プレーヤが、単語の代わりに絵文字を選べるようにし、および/またはコンテンツ用キーボードの上に絵文字の代用を表示する。
絵文字化システムおよび方法は、ELASTICSEARCHまたはその他の適するサーバから絵文字提案をフェッチするように構成され得る。これは、効果的だが、絵文字提案を得るためにサーバ要求が必要なため、レスポンスタイムの観点からいえば、概ね効率的ではない。絵文字提案をするために、たとえば、約2500個以上のコンテンツの、絵文字とのアラインメントが使用され得る。
この少量のデータの場合、たとえば、クライアント側のオートコンプリート索引付け環境を使用してELASTICSEARCHをシミュレーションすることが、好ましい実装形態である。これによって、ELASTICSEARCHサーバに対してHTTP要求を行うことを回避でき、絵文字提案をするときのレスポンスタイムが概ね向上する。
単語/句と絵文字との間の抽出されたマッピングは、文書であると考えら得、または文書を形成し得、たとえば、JSONフォーマットなど、適するフォーマットに出力され得る。マッピングは、(たとえば、クライアントデバイス上の)提案モジュールが提案を行うためにこのマッピングを使用できるように、クライアントに毎回プッシュされる、または、更新がプッシュされた場合にのみクライアント側に格納されることが好ましい。
クライアント側では、文書インデキシングシステムが、2つのコンポーネントを有する。一方のコンポーネントは、入力提案語を部分入力から得るものである。他方のコンポーネントは、提案語をコンテンツにマッピングして、絵文字マッピング文書にするものである。コンテンツに含まれる入力用語を有する接頭辞木として、入力語提案システムが形作られ、サーバ側からロードされたJSONファイルに含まれる絵文字マッピング文書になり得る。第2インデックスは、語の文書への逆インデックスであることが好ましい。あり得る固有の入力語セットごとに、入力語に対応する文書がマッピングされる。
また、クライアント側では、上記インデックスを利用して、テキストまたはその他のコンテンツをユーザが入力した場合に、あり得る提案を判断するように、オートコンプリートシステムが構成される。システムは、ユーザから部分入力を受信し、部分入力で終わる、あらゆる絵文字化可能なコンテンツ(つまり、1つ以上の絵文字に変換できるコンテンツ)を判断し、対応するコンテンツを、絵文字がマッピングされた文書にする。提案は句レベルで取得できるため、絵文字化可能なコンテンツが実際に開始するインデックス参照を格納することは難しいだろう。具体的には、ユーザは、いつでも戻って入力を変更でき、これによって、すべてのその他の単語についてのインデックス参照も変更され得る。また、システムは、入力におけるすべての文字位置に、開始インデックスオフセットを維持できる。開始インデックスオフセットは、その特定の位置で最長の絵文字化可能なコンテンツを得るために使用され得る。また、関連性のない提案をフィルタ処理して取り除くために、システムは、言語モデルベースのフィルタリングを使用できる。言語モデルは、n−gram→(lm_value、back_off_weight)値の単純なハッシュマップとしてクライアント側に格納され得る。たとえば、現在のインデックス位置にある単語および先行する単語が、それらの出現する確率を測定するために、言語モデル確率分布(lm_value)と比較され得る。直接一致が見つからなかった場合、back_off_weight値がフォールバック機構として使用される。小さいlm_valueとの一致は、選択プロセスから無視され得、これにより、結果として生じる一致の選択の自由がフィルタ処理して取り除かれる。
一般に、提案を作成するためのクライアント側インデキシングシステムのレスポンスタイムは、たとえば、ELASTICSEARCH要求と比較して、かなり速くあるべきである。表2は、クライアント側システムおよびサーバ側システムが評価されたテストの結果を示す。ELASTICSEARCHサーバは、ローカルホストマシンにおいてホストされていた。2800個の例を評価するためのレスポンスタイムが表に設けられている。クライアント側実装形態のレスポンスタイムは、サーバ側実装形態のレスポンスタイムの約半分であった。そのため、クライアント側のインデックスおよびオートコンプリートは、サーバ側実装形態よりも速いように思われる。
Figure 2019504413
絵文字化の目標は、コンテンツ・トークン(複数可)を、元の入力コンテンツと同じ意味を伝える絵文字に変換することである。高水準のシステム設計の観点からいえば、一般に、これをする2つの方法がある。1つの手法は、ユーザがコンテンツを完全に入力するまで待機してから、辞書ベースの方法および/または統計的方法を使用して入力コンテンツを絵文字化することである。第2の手法は、ユーザが入力文字をキー入力するプロセスにあるときに絵文字が提案されるオートコンプリート動作として、絵文字化を扱うことである。第1の手法の利点は、絵文字化動作が最後に一度だけ行われることである。しかしながら、第1の手法では、入力コンテンツがどのように絵文字化されるべきかをユーザがほとんどまたは全く操作できない。第2の手法の利点は、ユーザが、絵文字化プロセスをより多く操作できることである。第2の手法の主な課題は、不完全なユーザ入力に対して、同程度に短い時間で絵文字を提案することである。
ユーザがコンテンツを入力している間に絵文字を提案する1つの方法は、検索語が評価され、入力された検索語に基づいて提案一覧が作られる、インオーダークエリオートコンプリート法を行うことである。ユーザが探索クエリ「j wein」をキー入力した場合、結果は、「j weiner」、「j weiner and associates」、「j weiner photography」などのような提案の一覧を含み得る。このような提案は、完全な検索語を、インデックスされた結果とマッチングして、上位にランクされたものをポピュレートすることによって得られる。これらのウェブ探索システムのうちのいくつかは、自動スペル修正も含む。
ユーザがコンテンツを入力している間に絵文字を提案する別の方法は、アウトオブオーダー部分オートコンプリートを行うことである。この方法は、絵文字提案の一覧を作るために、検索語は評価しないが、各語の接頭辞のみを評価する。ユーザが「j wein」をキー入力した場合、結果は、「Jeff Weiner」、「Jeff Weinberger」などのような提案の一覧になる。これらの結果を得るために、検索語「j wein」は、インデックスされた探索ログに含まれるすべての検索語と接頭辞マッチングされ、最高位にランク付けされたものが読み出される。
本明細書に記載の絵文字化システムおよび方法のユーザは、概ね、たまたま検索語の接頭辞であった1文字または2文字を入力するのではなく、完全な単語または変更された形の単語を、次の単語に移動する前に入力する。そのため、オートコンプリーションの問題は、「インオーダークエリオートコンプリート」方法と同様である。
上述のシステムにおいて、完全なユーザ入力は、検索語であるとみなされ得、それに基づいて、探索結果が最終候補リストに載せられ得る。ユーザが検索語を入力した場合、現在の単語に先行する単語が関連付けられ得、インデックスされたオートコンプリートログでいくつかヒットし得る。入力は、通常の探索クエリのように、お互い厳密に関係しない連続する単語を有する完全な自然言語であり得る。自然言語のクエリを受信すると、GOOGLEは、ユーザがキー入力している探索クエリの最多の接頭辞および接尾辞のマッチに基づいて、提案の一覧を提供し、すべての語がGOOGLE検索の語彙における有効な個々の語であっても、GOOGLEは何も提案しない場合がある。
しかしながら、本明細書に記載の絵文字化システムでは、完全な句に対して提案できる絵文字がない場合であっても、句に含まれる少しの単語についての絵文字マッピングがあり得る。システムは、絵文字化可能な単語または句の位置を特定して、多くの利用可能な提案の中から提案をランク付けすることができる。たとえば、ユーザが、検索ボックスに「police gear」をキー入力した場合、単語「police man」および「sports gear」に対する絵文字提案が別々に利用可能かもしれないが、完全な句「police gear」に対しては、絵文字提案がないかもしれない。「police gear」に対する具体的な絵文字がないとユーザが知っていた場合、ユーザは、「police」を入力した後に、警察の絵文字を選べたかもしれない。そのため、ユーザが「gear」をキー入力した場合、最近の絵文字化可能なコンテンツ(たとえば、単語「police」)に対する提案、およびキー入力されている現在の単語(たとえば、「gear」)に対する提案を考慮に入れる方がよい。この単純な例は、バイグラムに基づくが、任意の長さの句にも、同じ問題が広がり得る。
いくつかの絵文字提案は、ELASTICSEARCHのオートコンプリートツールを使用して提供され得る。このツールは、有限状態トランスデューサ(FST)を保持する。FSTは、探索時間中ではなく、再インデックス中に毎回更新され得る。また、このツールは、すべての単語のedge n−gramを転置インデックステーブルに格納する。ツールは、たとえば、JAVA(登録商標)ベースのツールであってもよい。
また、絵文字提案は、CLEOと称される別のJAVA(登録商標)ベースのツールを使用しても提供され得る。このツールは、結果を探索するために、探索クエリのedge n−gramのインデックスを保持し、無効な結果をフィルタ処理して取り除くために、ブルームフィルタを使用する。いくつかの例において、CLEOツールおよび/またはELASTICSEARCHオートコンプリートツールは、FSTベースの方法および文法誤り訂正方法を含む、本明細書に記載のその他の方法およびモジュールの実装形態である、またはそれらによって使用される。
いくつかの実装形態において、ユーザクエリのログをインデックスすることは、オートコンプリートシステムの重要な部分である。絵文字化システムおよび方法は、すべてのユーザレスポンスに対して、インデックスをリアルタイムまたはほぼリアルタイムで再計算するできることが好ましい。インデックス処理は、検索語のマッピングを完了するための部分的な検索語を含み、絵文字提案のマッピングのための完全な検索語がそれに続く。
本明細書に記載のシステムおよび方法の例は、大型コーパスで集められた統計データに基づいて、特定の順序で単語が出現する確率を計算するための統計的言語モデルを使用できる。言語モデルは、たとえば、「the cow jumped over the moon」の確率が、「jumped the moon over the cow」の確率よりも大きいと判断するために使用され得る。
いくつかの例において、言語モデルは、ユーザがすでに行った部分入力(たとえば、単語または文の始まり)に基づいて、ユーザがキー入力または入力を行う単語またはその他のコンテンツを予測するために使用され得る。ユーザが単語のキー入力を開始すると、たとえば、言語モデルは、部分的にキー入力された単語に基づいて、絵文字を予測または提案できる。言語モデルは、あり得る提案の群からの絵文字提案をランク付けすることが好ましく、最高位にランク付けされた提案は、ユーザによって選択される可能性のために、カーソル位置またはその近くに提示され得る。このようなランク付けの正確さは、利用可能な訓練データおよび/または使用される特定の言語モデルに基づいて異なり得る。ユーザ入力を予測するおよび/または絵文字を提案する目的のための好ましい言語モデルは、再帰型ニューラルネットワークベースの言語モデル(RNNLM)である、またはそれを含む。
RNNLM言語モデルは、一般に、人工ニューラルネットワークである、または人工ニューラルネットワークを含み、データに含まれる連続した情報を利用する。入力の各要素は、同じ一連のアクションを体験し得るが、出力は、すでに行われた前の演算によって異なり得る。モデルは、入力状態および出力状態とは別に、たとえば、各段階の隠れ状態を使用して、ある程度まで処理された情報を記憶することが好ましい。理論上は、再帰型ニューラルネットワークには、隠れ状態の無限の層があり得る。
旧来のニューラルネットワークは、1つの入力層(たとえば、入力の表現)と、1つ以上の隠れ層(たとえば、層間で変形が生じるブラックボックス)と、1つの出力層(たとえば、モデル入力に基づく、モデル出力の表現)とを有し得る。RNNLMは、統計的言語モデルを訓練するために1つの(隠れ)層の再帰型ニューラルネットワークを使用できる特有のニューラルネットワークである。RNNLMは、次の単語が出現する確率を予測するために、前の単語および前の隠れ状態を利用できる。現在の隠れ状態は、入力された要素ごとに、これまでに処理された情報を用いて更新され得る。訓練は、たとえば、確率的勾配降下法(SGD)アルゴリズム(または、その他の適するアルゴリズム)を用いて行うことができ、前の隠れ状態からの反復(recurrent)重みは、たとえば、通時的誤差逆伝播法(BPTT: Back−Propagation Through Time)アルゴリズム(または、その他のふさわしいアルゴリズム)を用いて行うことができる。ユーザが入力する次の有力な単語または句を予測することによって、RNNLMは、予測された次の単語または句に関係する1つ以上の絵文字を提案できる。
絵文字化システムおよび方法を評価するために、一連の実験が行われた。一実験において、検索語の絵文字へのマッピングは、ELASTICSEARCHにおいてインデックスされた。また、ユーザによってキー入力されている部分入力に対する絵文字を提案するために、ELASTICSEARCH REST APIにアクセスするシステムも実装された。検索語を絵文字結果にマッピングするために、ELASTICSEARCHは、メモリ内のFSTおよび逆インデックス処理を使用できる。
使用中のランキング機構に基づいて、3つの異なるバージョンの絵文字提案システムが開発された。ランク付けを使用しない第1のバージョンでは、ユーザからの部分入力が、入力として、ELASTICSEARCHインデキシングシステムに直接与えられる。そして次に、そのシステムは、あり得る入力クエリに部分入力をマッピングして、提案の一覧を返す。重複する提案は解消され、この提案一覧にランク付けは適用されない。方法は、一般に、すべての部分入力に対して絵文字を提案するので、再現率は良いが、適合率は悪い。
第2の、出力された提案一覧は、入力クエリの頻度に基づいてランク付けまたは採点されているが、頻度ベースのランク付けバージョンは、1番目のバージョンと同様である。重複する絵文字提案は、頻度が低い(たとえば、あまり一般的でない)入力クエリを取り除くことによって解消される。一実装形態において、ELASTICSEARCHインデキシングシステムへのあらゆる入力クエリが読み出され、チャットコーパスにおけるこの入力クエリの頻度が計算される。絵文字提案は、計算された頻度スコアに基づいてランク付けされることが好ましい。1番目のバージョンと比較すると、この方法は、概ね、高いランク付けならびに同等の適合率および再現率を実現する。
第3の、言語モデルベースのランク付けバージョンにおいて、tri−gram言語モデルは、チャットコーパスから訓練され、訓練された言語モデルは、ELASTICSEARCHからの出力絵文字提案をフィルタ処理するために使用される。ユーザによってキー入力された最も新しい文字を含む、完全なユーザ入力を考慮する。最近の部分入力についてのあらゆるELASTICSEARCH入力クエリが演算される。この入力クエリと共に、最近のtri−gramが、文として考慮され、訓練されたtri−gram言語モデルを使用して採点される。絵文字提案は、それらの尤度に基づいてランク付けされる。ふさわしい閾値レベルが設定され、文の尤度が閾値を下回る場合、提案は、無視される。いくつかの例において、1番目、2番目、および3番目のバージョンの絵文字提案システムは、たとえば、文法誤り訂正方法、NLP方法、POS方法、および/または辞書方法など、上述の絵文字判定方法およびモジュールのうちの1つ以上を利用する。
提案された絵文字の正しさまたは正確さを評価することは、きわめて主観的なタスクである。絵文字提案の正しさを評価する上での2つの重要な要因は、適合率および再現率である。適合率は、一般に、無関係な絵文字提案および/または提案における絵文字の不適当なランク付けによる、ユーザが経験する混乱および/またはイライラを測定する。再現率は、一般に、絵文字提案がされた回数およびユーザが提案に対して肯定的に応じた回数を測定する。
絵文字提案によってユーザをイライラさせてしまう3つの主な要因または問題がある。1つの要因は、絵文字提案の不足である。たとえば、あるユーザ入力に対して絵文字提案がない、または正確な絵文字提案が受けられないと、ユーザは、イライラする可能性がある。ユーザのイライラの一因となる別の要因は、ふさわしくないまたは不正確な絵文字が絵文字提案セットに含まれることである。たとえば、提案された絵文字のすべてまたは一部がユーザ入力に無関係であると、ユーザは、イライラする可能性がある。ユーザのイライラにつながり得るさらなる要因は、絵文字提案セットにおける、不正確またはふさわしくない絵文字のランク付けである。上位にランク付けされた絵文字を、ユーザがより簡単にアクセスまたは識別できる、絵文字提案セットの最上部に置くことが目標である。しかしながら、最高位にランク付けされた絵文字が不正確または不適切であると、ユーザは、イライラする可能性がある。ユーザは、一般に、セットにおいて最高位にランク付けされた絵文字を選ぶ傾向がある。
絵文字提案が原因でユーザが経験するイライラを測定するために、特定の評価指標が使用され得る。一例において、上述のイライラの要因に対して異なる罰則値が与えられ、この罰則値は、1つの提案についての総計の罰則を計算するために使用される。ユーザのイライラレベルは、ユーザ入力の長さに応じて異なる可能性があるので、罰則値は、ユーザ入力の長さに応じて演算またはスケールされてもよい。たとえば、ユーザは、非常に長いユーザ入力の後に間違った絵文字が提案されると、よりイライラし、短いまたは部分的なユーザ入力の後に間違った絵文字が提案されると、それほどイライラしない。
一例において、総計の罰則は、すべてのテスト例の全体にわたる、提案なしに対する罰則(つまり、絵文字提案を提供しないことに関連する罰則)、間違った提案に対する罰則(つまり、間違った絵文字提案を提供することに関連する罰則)、およびランクベースの罰則(つまり、提案された絵文字の正しくない順序付けに関連する罰則)の合計から判断される。提案なしに対する罰則は、たとえば、2.0×長さ係数であり得る。間違った提案に対する罰則は、たとえば、1.0×正しい提案よりも高くランク付けされたすべての間違った提案についての長さ係数、および、たとえば、0.0×正しい提案よりも低くランク付けされたすべての間違った提案についての長さ係数であり得る。これらの罰則についての他の適する値も可能である。ランクベースの罰則は、たとえば、(correct_emoji_suggestion_rank−1)/(提案数)×長さ係数)であり得る。正しい提案が最高位にランク付けされているときおよび/または正しい絵文字提案がないとき、ランクベースの罰則は、ゼロであることが好ましい。後者の場合、「提案なしに対する罰則」によってイライラ問題が解決される。長さ係数は、(たとえば、単語の)現在の部分的なユーザ入力の長さから、提案についての最小閾値長さを引いたものであり得る。
いくつかの実装形態において、ユーザ入力のうちの1つの文字から絵文字を提案するのではなく、ユーザ入力の最小限のわずかな文字を受信した後でのみ、絵文字が提案される。絵文字を提案するための最小閾値は、2文字よりも多い文字数の入力クエリだけが絵文字提案を受信するように、2文字であることが好ましいが、最小閾値についての他の文字長さも可能である。
タグ付けされた情報と共に、2800個の例からなるデータセットが作成され、本明細書に記載の、ランク付け方法なし、頻度ベースの方法、および言語モデルベースのランク付け方法を評価するために使用された。実験の結果が表3に提示されており、ランク付け方法なし、および頻度ベースの方法は、最小閾値による測定またはその他のフィルタリング基準がないので、より良い再現率を実現していることが示されている。比較すると、言語モデルベースのランク付け方法のほうが、可能性の低い提案をフィルタ処理して取り除くために、閾値による剪定が適用されるので、再現率が低い。また、結果は、言語モデルベースのランク付け方法が、他の2つの方法と比較すると、より高い適合率およびより低いイライラの罰則を実現することを示す。イライラのほとんどは、間違った提案によるものであったので、言語モデルベースのランク付け方法についてのイライラの罰則は、より低い。
Figure 2019504413
いくつかの実装形態において、本明細書に記載のシステムおよび方法は、複数のユーザ用のサービスとして絵文字提案を利用可能にさせるのに適する。このようなサービスは、システムおよび方法が絵文字を提案する速さによって、および、システムおよび方法の、多種多様なクライアントからのサービス要求に基づいて複数の絵文字判定方法および分類器を利用する能力によって可能になるおよび/または強化される。
絵文字の標準表現は、数年前までなかった。IOSバージョン5.0よりも前、IOSデバイスにおける絵文字は、SOFTBANKの文字セットマッピングを用いる3バイトのUTF−8を用いてエンコードされていた。IOSバージョン5.0において、IOSデバイスは、統一(Unified)エンコーディングを使用し始めた。統一エンコーディングは、大企業間で合意された、絵文字を表すための基準である。この新しいフォーマットを用いると、絵文字は、すべて、4バイトのUTF−8エンコーディングを用いてエンコードされる。
UNICODEグリフ(つまり、レンダリングされた文字)をUNICODEコードポイントにマッピングすることは、一般に、プログラミング言語に依存しない。コードポイントは、可変長であり、2〜4バイトの任意の大きさを占め得る。プログラミング言語は、コードポイントをそれぞれ違うように処理してもよい。
たとえば、PYTHON2.7を用いると、1つのUNICODEオブジェクトをループすることによって、一度に1つのUNICODEコードポイントが得られる。PYTHON2.7は、ASCII文字をサポートするように、4バイトのUNICODE範囲表現をサポートしない。そのため、UTF−8エンコーディングされたUNICODE文字列に含まれる4バイトのUNICODEコードポイントの範囲に一致するようにUNICODEの正規表現を書くことは、可能ではないだろう。しかし、PYTHON2.7は、UTF−8エンコーディングされたUNICODE文字列のための、2バイトのUNICODE表現をサポートしていない。PYTHON2.7において、UTF−8エンコーディングされた文字列をループすることによって、一度に1バイトが読まれる。
この情報を前提に、サンプルチャットデータセットに対するPYTHON2.7 UNICODE判定処理を評価するための実験が行われた。実験では、UTF−8エンコーディングされたUNICODEコードポイントが、上位または下位サロゲートの範囲内のバイトを有するとき、そのバイト自体がUNICODE文字を表すことはできないことが示された。現在のバイトが、代用のサロゲートペアを有するバイトと組み合わされるとき、意味をなすUNICODE表現が形成され得る。UNICODE文字‘¥uFFFF’よりも上のUNICODEコードポイントのほとんどは、絵文字およびピクチャ文字である。中国語、日本語、および韓国語(CJK)、ならびに他の言語のスクリプトが利用されるとき、すべてのコードポイントを絵文字に近づけないことが好ましい。
プログラミング言語としてPYTHON2.7を用いると、絵文字を判定するための正確な手法は、2ステップで済むはずである。まず、UTF−8エンコーディングされたUNICODE文字列の各UNICODEバイトを反復する。1バイト以上を用いてUNICODEコードポイントがエンコードされた場合、バイトの各々は、バイトの中にサロゲートペアを有する。バイトがサロゲートペアを有さない場合、バイト自体がUNICODEコードポイントであるはずである。第2に、範囲および現在のUNICODEコードポイントをエンコードし、現在のUNICODEコードポイントがその範囲に収まるかどうかをチェックする(たとえば、単純な論理比較を用いて)。
対照的に、C++のICU(International Components for Unicode)のAPIは、UNICODE範囲表現のサポートが非常に充実している。UNICODE範囲の表現は、ハイフンを使用したASCII範囲の表現と同様に書かれ得る。
絵文字は、2バイトおよび4バイトのUNICODE範囲に広がる。絵文字は、以下の表4に挙げる文字の範囲を含む。
Figure 2019504413
IOSおよびANDROID(登録商標)用キーボードで利用可能な絵文字の標準一覧は、約900個の絵文字を含む。本明細書に記載のシステムおよび方法の実装形態は、より多くの絵文字を利用し、これによって、より広範囲の表現、イベント、および、ゲームまたはチャットセッションの間にコミュニケーションを取るためにゲームプレーヤーおよび他のユーザが使用できる言語を可能にする。いくつかの場合において、絵文字は、各絵文字が何を表すかを表すコンテンツとタグ付けされ得る。タグ付けによって、ユーザにとって利用可能であり得る絵文字一覧の形成が容易になる。たとえば、ゲームとの関連性に基づいて、ゲームプレーヤー間のコミュニケーションに適する絵文字を識別するために、絵文字タグが使用され得る。
いくつかの例において、本明細書に記載のシステムおよび方法は、ユーザの通信文に挿入するための絵文字以外の非語表現項目を提案するために使用され得る。他の非語表現項目は、たとえば、GIF(graphics interchange format)ファイルおよびステッカーを含み得る。このような非語表現項目は、1つ以上の単語に対応付けられ得る記述タグを含み得る。好ましい実装形態において、絵文字判定モジュール116および/または絵文字分類器モジュール118を含む、システムおよび方法は、絵文字に加えて、GIF、ステッカー、および/またはその他の非語表現項目を提案するように構成される。
本明細書に記載の主題および動作の実装形態は、本明細書に開示の構造およびその構造的均等物を含む、デジタル電子回路で、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェア、またはそれらのうちの1つ以上の組み合わせで実現され得る。本明細書に記載の主題の実装形態は、データ処理装置による実行のためにまたはデータ処理装置の動作を制御するために実行されるコンピュータ記憶媒体上で符号化された1つ以上のコンピュータプログラム、つまり、コンピュータプログラム命令の1つ以上のモジュールとして実現できる。これに代えて、またはこれに加えて、プログラム命令は、人為的に生成された伝播信号、たとえば、データ処理装置による実行のために適切な受信装置に送信するための情報を符号化するために生成された、機械生成される電気信号、光信号、または電磁信号上に符号化され得る。コンピュータ記憶媒体は、コンピュータ読み取り可能な記憶装置、コンピュータ読み取り可能な記憶基板、ランダムもしくはシリアルアクセスメモリアレイまたはデバイス、またはそれらのうちの1つ以上の組み合わせで有り得、またはそれらに含まれ得る。また、コンピュータ記憶媒体は、伝播信号ではないが、コンピュータ記憶媒体は、人為的に生成された伝播信号に符号化されたコンピュータプログラム命令の送信元または宛先であり得る。また、コンピュータ記憶媒体は、1つ以上の別々の物理コンポーネントまたは媒体(たとえば、複数のCD、ディスク、またはその他の記憶装置)で有り得、またはそれらに含まれ得る。
本明細書に記載の動作は、データ処理装置によって、1つ以上のコンピュータ読み取り可能な記憶装置上に格納されたデータまたは他のソースから受信されたデータに対して行われる動作として実現できる。
用語「データ処理装置」は、一例として、プログラマブルプロセッサ、コンピュータ、SoC(system on a chip)、または前述のうちの複数もしくは組み合わせを含む、データを処理するためのあらゆる種類の装置、機器、および機械を包含する。装置は、専用の論理回路、たとえば、FPGA(フィールド・プログラマブル・ゲート・アレイ)またはASIC(特定用途向け集積回路)を含めることができる。また、装置は、ハードウェアに加えて、当該コンピュータプログラムの実行環境を作るコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォーム実行時環境、仮想マシン、またはそれらのうちの1つ以上の組み合わせを構成するコードを含めることができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッド・コンピューティングインフラストラクチャなど、さまざまな異なるコンピューティングモデル・インフラストラクチャを実現できる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイラ言語もしくはインタプリタ言語、宣言型言語もしくは手続き型言語など、任意の形式のプログラミング言語で書かれ得、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境で使用するのに適したその他の構成単位としてなど、任意の形態にデプロイされ得る。コンピュータプログラムは、ファイルシステムにおけるファイルに相当し得るが、そうである必要はない。プログラムは、その他のプログラムまたはデータ(たとえば、マークアップ言語の文書に格納された1つ以上のスクリプト)を保持するファイルの一部、当該プログラムに専用の1つのファイル、または複数の連携ファイル(たとえば、1つ以上のモジュール、サブプログラム、またはコードの部分を格納するファイル)に格納され得る。コンピュータプログラムは、1つコンピュータ上、または1つのサイトもしくは複数のサイトにまたがって分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるようにデプロイされ得る。
本明細書に記載のプロセスおよび論理フローは、入力データを操作するおよび出力を生成することによってアクションを行うために、1つ以上のコンピュータプログラムを1つ以上のプログラム可能なプロセッサが実行することによって実行され得る。また、プロセスおよび論理フローは、専用の論理回路、たとえば、FPGA(フィールド・プログラマブル・ゲート・アレイ)またはASIC(特定用途向け集積回路)によって実行され得、装置は、このような専用の論理回路として実現され得る。
コンピュータプログラムの実行に適したプロセッサは、一例として、汎用および特定用途向けマイクロプロセッサの両方、および任意の種類のデジタルコンピュータの1つ以上のプロセッサを含む。一般に、プロセッサは、ROM(Read−Only Memory)、RAM(Random Access Memory)、またはその両方から命令およびデータを受け取る。コンピュータの必須の構成要素は、命令に応じてアクションを行うためのプロセッサと、命令およびデータを格納するための1つ以上のメモリ素子である。一般に、コンピュータは、データを格納するための1つ以上の大容量記憶装置、たとえば、磁気ディスク、光磁気ディスク、光ディスク、またはソリッドステート・ドライブを備える、または、このような1つ以上の大容量記憶装置との間でデータの受信、送信、もしくはその両方を行うために操作可能に接続される。しかしながら、コンピュータは、このような機器を有する必要はない。また、コンピュータは、別の機器、たとえば、一例を挙げると、携帯電話、携帯情報端末(PDA)、携帯オーディオもしくはビデオプレーヤ、ゲーム機、GPS(Global Positioning System)受信機、またはポータブル記憶装置(たとえば、USB(ユニバーサルシリアルバス)フラッシュドライブ)に組み込まれ得る。コンピュータプログラム命令およびデータを格納するのに適したデバイスは、全ての形態の不揮発性メモリ、媒体、およびメモリ素子を含み、一例として、EPROM、EEPROM、およびフラッシュメモリ素子などの半導体メモリ素子、内蔵ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD−ROMおよびDVD−ROMディスクなどが挙げられる。プロセッサおよびメモリは、専用の論理回路によって補われ得る、またはこれに内蔵され得る。
ユーザとのやり取りを行うために、本明細書に記載の本発明の主題の実装形態は、ブラウン管(CRT)または液晶ディスプレイ(LCD)モニタなど、ユーザに情報を表示するためのディスプレイ装置と、マウスまたはトラックボール、タッチパッド、またはスタイラスなど、ユーザがコンピュータに入力を行えるキーボードおよびポインティングデバイスとを有するコンピュータ上に実現され得る。ユーザとのやり取りを行うために、その他の種類のデバイスを使用することもできる。たとえば、ユーザに返されるフィードバックは、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなど、任意の形式の感覚フィードバックで有り得、ユーザからの入力は、音響入力、音声入力、触覚入力を含む、任意の形式で受信され得る。これに加えて、コンピュータは、ユーザが使用する機器と文書を送受信することによって、たとえば、ユーザのクライアント装置上のウェブブラウザから受信した要求に応答してこのウェブブラウザにウェブページを送信することによって、ユーザとやり取りすることができる。
本明細書に記載の本発明の主題の実装形態は、データサーバなど、バックエンド・コンポーネントを備えるコンピュータシステム、アプリケーションサーバなど、ミドルウェア・コンポーネントを備えるコンピュータシステム、本明細書に記載の本発明の主題の実施形態とユーザがやり取りできるグラフィカルユーザーインターフェースまたはウェブブラウザを有するクライアントコンピュータなど、フロントエンド・コンポーネントを備えるコンピュータシステム、または、1つ以上のこのようなバックエンド・コンポーネント、ミドルウェア・コンポーネント、フロントエンド・コンポーネントの任意の組み合わせを備えるコンピュータシステムで実現され得る。システムの構成要素は、通信ネットワークなど、デジタルデータ通信の任意の形態または媒体によって相互接続され得る。通信ネットワークは、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(たとえば、インターネット)、ならびにピアツーピアネットワーク(たとえば、アドホック・ピアツーピアネットワーク)などがある。
コンピュータシステムは、クライアントとサーバとを含めることができる。クライアントおよびサーバは、一般に、互いから離れており、通常、通信ネットワークを通じてやり取りを行う。クライアントとサーバとの関係は、それぞれのコンピュータ上で動作し、互いにクライアントとサーバとの関係を有するコンピュータプログラムによって成り立つ。いくつかの実装形態において、サーバは、クライアントデバイスにデータ(たとえば、HTMLページ)を送信する(たとえば、クライアントデバイスとやり取りしているユーザにデータを表示する、またはこのユーザからのユーザ入力を受信する目的のために)。クライアントデバイスにおいて生成されたデータ(たとえば、ユーザインタラクションの結果)は、サーバにおいて、クライアントデバイスから受信され得る。
本明細書は、多くの具体的な実装形態の詳細を含むが、これらは、発明または請求の範囲の限定として解釈されるべきではなく、むしろ、特定の発明の特定の実装形態に特有の特徴の説明であると解釈されるべきである。別々の実装形態の枠内で本明細書に記載されたいくつかの特徴も、1つの実装形態に組み合わせて実現され得る。その逆に、1つの実装形態の枠内で記載されたさまざまな特徴は、別々の複数の実装形態または任意の適した部分的な組み合わせで実現され得る。また、特徴は、いくつかの組み合わせで動作するものとして上述され、そのように初めに特許請求され得たが、特許請求された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから削除され得、特許請求された組み合わせは、部分的な組み合わせまたは部分的な組み合わせの変形例を対象としてもよい。
同様に、動作を特定の順番で図面に示したが、所望の結果を実現するために、このような動作が示された特定の順番または順序で行われる必要がある、または、図示した動作のすべてが行われる必要があると理解されるべきではない。いくつかの状況では、多重タスク処理および並列処理が有利であり得る。たとえば、複数の絵文字判定方法を同時に実行ために、並列処理が行われ得る。また、上述の実装形態におけるさまざまなシステム構成要素を分離することは、すべての実装形態においてこのような分離が必要であると理解されるべきではなく、記載のプログラムコンポーネントおよびシステムは、一般に、1つのソフトウェアプロダクトに一体化され得る、または複数のソフトウェアプロダクトにパッケージ化され得ると理解されるべきである。
このように、本発明の主題についての具体的な実装形態を説明した。その他の実装形態は、添付の特許請求の範囲に含まれる。場合によっては、請求項に記載されたアクションは、異なる順序で実行され得、それでもなお所望の結果を実現し得る。これに加えて、添付の図面に示したプロセスは、所望の結果を実現するために必ずしも図示した特定の順番または順序である必要はない。いくつかの実装形態において、多重タスク処理および並列処理が有利になり得る。

Claims (20)

  1. コンピュータにより実現される、絵文字を提案する方法であって、前記方法は、
    ユーザからの通信文に対応する複数の特徴量を取得するステップと、
    前記特徴量を複数の絵文字判定モジュールに提供するステップと、
    前記絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信するステップとを含み、前記第1の信頼スコアの各々は、前記セットに含まれる異なる絵文字に関連付けられ、前記関連付けられた絵文字を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供するステップと、
    前記少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信するステップとを含み、第2の信頼スコアの各々は、前記提案されたセットに含まれる異なる絵文字候補に関連付けられ、前記関連付けられた絵文字候補を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字候補のうちの少なくとも1つを前記通信文に挿入するステップを含む、方法。
  2. 前記複数の特徴量は、前記通信文における現在のカーソル位置、前記通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好、およびデモグラフィック情報のうちの少なくとも1つを含む、請求項1に記載の方法。
  3. 前記絵文字判定モジュールは、文法誤り訂正モジュール、統計的機械翻訳モジュール、辞書ベースのモジュール、品詞タグ付けモジュール、情報抽出モジュール、自然言語処理モジュール、キーワードマッチングモジュール、および有限状態トランスデューサ・モジュールのうちの少なくとも1つを含む、請求項1に記載の方法。
  4. 前記辞書ベースのモジュールは、前記通信文に含まれる単語の少なくとも一部を、少なくとも1つの対応する絵文字にマッピングするように構成される、請求項3に記載の方法。
  5. 前記自然言語処理モジュールは、
    前記辞書ベースのモジュールによって提供された単語と絵文字とのマッピングを拡張するために、パーサ、形態素解析部、および意味解析部のうちの少なくとも1つを備える、請求項3に記載の方法。
  6. 前記キーワードマッチングモジュールは、前記通信文に含まれる少なくとも1つのキーワードを探索し、前記少なくとも1つのキーワードを、絵文字に関連付けられた少なくとも1つのタグにマッチングさせるように構成される、請求項3に記載の方法。
  7. 前記第1の信頼スコアおよび前記第2の信頼スコアのうちの少なくとも一方は、(i)ユーザ嗜好、(ii)言語分野、(iii)デモグラフィック情報、(iv)前記ユーザおよびユーザコミュニティのうちの少なくとも一方による絵文字の前の使用、および(v)前記通信文と共通する単語、句、文脈、および感情のうちの少なくとも1つを有する前の通信文における絵文字の前の使用、のうちの少なくとも1つに基づく、請求項1に記載の方法。
  8. 前記少なくとも1つの分類器は、教師あり学習モデル、部分教師あり学習モデル、教師なし学習モデル、および補間モデルのうちの少なくとも1つを備える、請求項1に記載の方法。
  9. 前記絵文字候補のうちの少なくとも1つは、前記現在のカーソル位置に挿入され、前記通信文に含まれる少なくとも1つの単語を置き換える、請求項1に記載の方法。
  10. 前記絵文字候補のうちの少なくとも1つを挿入するステップは、
    前記提案された絵文字候補セットにおいて、最も高い第2の信頼スコアを有する最適な絵文字を識別するステップを含む、請求項1に記載の方法。
  11. 前記提案された絵文字候補セットからの前記絵文字候補のうちの少なくとも1つのユーザ選択を受信するステップと、
    前記ユーザ選択に基づいて、利用履歴をビルドするステップとをさらに含む、請求項1に記載の方法。
  12. 前記ユーザ嗜好および前記デモグラフィック情報のうちの少なくとも一方に基づいて、前記少なくとも1つの分類器を選択するステップをさらに含む、請求項1に記載の方法。
  13. 動作を実行するようにプログラムされた1つ以上のプロセッサを備え、前記動作は、
    ユーザからの通信文に対応する複数の特徴量を取得する動作と、
    前記特徴量を複数の絵文字判定モジュールに提供する動作と、
    前記絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信する動作とを含み、前記第1の信頼スコアの各々は、前記セットに含まれる異なる絵文字に関連付けられ、前記関連付けられた絵文字を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供する動作と、
    前記少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信する動作とを含み、第2の信頼スコアの各々は、前記提案されたセットに含まれる異なる絵文字候補に関連付けられ、前記関連付けられた絵文字候補を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字候補のうちの少なくとも1つを前記通信文に挿入する動作を含む、システム。
  14. 前記複数の特徴量は、前記通信文における現在のカーソル位置、前記通信文からの1つ以上の単語、前の通信文からの1つ以上の単語、ユーザ嗜好、およびデモグラフィック情報のうちの少なくとも1つを含む、請求項13に記載のシステム。
  15. 前記絵文字判定モジュールは、文法誤り訂正モジュール、統計的機械翻訳モジュール、辞書ベースのモジュール、情報抽出モジュール、自然言語処理モジュール、キーワードマッチングモジュール、および有限状態トランスデューサ・モジュールのうちの少なくとも1つを含む、請求項13に記載のシステム。
  16. 前記第1の信頼スコアおよび前記第2の信頼スコアのうちの少なくとも一方は、(i)ユーザ嗜好、(ii)言語分野、(iii)デモグラフィック情報、(iv)前記ユーザおよびユーザコミュニティのうちの少なくとも一方による絵文字の前の使用、および(v)前記通信文と共通する単語、句、文脈、および感情のうちの少なくとも1つを有する前の通信文における絵文字の前の使用、のうちの少なくとも1つに基づく、請求項13に記載のシステム。
  17. 前記少なくとも1つの分類器は、教師あり学習モデル、部分教師あり学習モデル、教師なし学習モデル、および補間モデルのうちの少なくとも1つを備える、請求項13に記載のシステム。
  18. 前記絵文字候補のうちの少なくとも1つは、前記現在のカーソル位置に挿入され、前記通信文に含まれる少なくとも1つの単語を置き換える、請求項13に記載のシステム。
  19. 前記絵文字候補のうちの少なくとも1つを挿入する動作は、
    前記提案された絵文字候補セットにおいて、最も高い第2の信頼スコアを有する最適な絵文字を識別する動作を含む、請求項13に記載のシステム。
  20. 実行可能な命令を含む非一時的なコンピュータ読み取り可能な媒体を備え、前記実行可能な命令は、動作を行うための1つ以上のプロセッサによって実行可能であり、前記動作は、
    ユーザからの通信文に対応する複数の特徴量を取得する動作と、
    前記特徴量を複数の絵文字判定モジュールに提供する動作と、
    前記絵文字判定モジュールの各々から、絵文字セットおよび第1の信頼スコアからなる出力を受信する動作とを含み、前記第1の信頼スコアの各々は、前記セットに含まれる異なる絵文字に関連付けられ、前記関連付けられた絵文字を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字判定モジュールからの出力を、少なくとも1つの分類器に提供する動作と、
    前記少なくとも1つの分類器から、提案された絵文字候補セットおよび第2の信頼スコアを受信する動作とを含み、第2の信頼スコアの各々は、前記提案されたセットに含まれる異なる絵文字候補に関連付けられ、前記関連付けられた絵文字候補を前記ユーザが前記通信文に挿入したいであろう尤度を表し、さらに、
    前記絵文字候補のうちの少なくとも1つを前記通信文に挿入する動作を含む、物品。
JP2018534941A 2015-12-29 2016-12-20 絵文字を提案するためのシステムおよび方法 Pending JP2019504413A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562272324P 2015-12-29 2015-12-29
US62/272,324 2015-12-29
PCT/US2016/067723 WO2017116839A1 (en) 2015-12-29 2016-12-20 Systems and methods for suggesting emoji

Publications (1)

Publication Number Publication Date
JP2019504413A true JP2019504413A (ja) 2019-02-14

Family

ID=57777720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018534941A Pending JP2019504413A (ja) 2015-12-29 2016-12-20 絵文字を提案するためのシステムおよび方法

Country Status (7)

Country Link
US (1) US20170185581A1 (ja)
EP (1) EP3398082A1 (ja)
JP (1) JP2019504413A (ja)
CN (1) CN108701125A (ja)
AU (1) AU2016383052A1 (ja)
CA (1) CA3009758A1 (ja)
WO (1) WO2017116839A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020149310A (ja) * 2019-03-13 2020-09-17 日本電気株式会社 処理装置、処理方法及びプログラム
KR20210042406A (ko) * 2020-02-28 2021-04-19 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 이모티콘 패키지 생성 방법, 장치, 설비 및 매체
JP2022046442A (ja) * 2020-09-10 2022-03-23 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 推薦表情の確定方法、装置、デバイス及びコンピュータ記憶媒体
JP7480232B2 (ja) 2021-08-26 2024-05-09 株式会社カカオ 端末の動作方法及び端末

Families Citing this family (208)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
EP3809407A1 (en) 2013-02-07 2021-04-21 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9043196B1 (en) 2014-07-07 2015-05-26 Machine Zone, Inc. Systems and methods for identifying and suggesting emoticons
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9679024B2 (en) * 2014-12-01 2017-06-13 Facebook, Inc. Social-based spelling correction for online social networks
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10846475B2 (en) * 2015-12-23 2020-11-24 Beijing Xinmei Hutong Technology Co., Ltd. Emoji input method and device thereof
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US20170193291A1 (en) * 2015-12-30 2017-07-06 Ryan Anthony Lucchese System and Methods for Determining Language Classification of Text Content in Documents
US10055489B2 (en) * 2016-02-08 2018-08-21 Ebay Inc. System and method for content-based media analysis
US11494547B2 (en) * 2016-04-13 2022-11-08 Microsoft Technology Licensing, Llc Inputting images to electronic devices
CN105763431B (zh) * 2016-05-06 2019-03-26 腾讯科技(深圳)有限公司 一种信息推送方法、装置及系统
US20170344224A1 (en) * 2016-05-27 2017-11-30 Nuance Communications, Inc. Suggesting emojis to users for insertion into text-based messages
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10546061B2 (en) * 2016-08-17 2020-01-28 Microsoft Technology Licensing, Llc Predicting terms by using model chunks
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10185701B2 (en) * 2016-10-17 2019-01-22 Microsoft Technology Licensing, Llc Unsupported character code detection mechanism
US11550751B2 (en) * 2016-11-18 2023-01-10 Microsoft Technology Licensing, Llc Sequence expander for data entry/information retrieval
US10466978B1 (en) 2016-11-30 2019-11-05 Composable Analytics, Inc. Intelligent assistant for automating recommendations for analytics programs
US11616745B2 (en) * 2017-01-09 2023-03-28 Snap Inc. Contextual generation and selection of customized media content
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10049103B2 (en) * 2017-01-17 2018-08-14 Xerox Corporation Author personality trait recognition from short texts with a deep compositional learning approach
US11295121B2 (en) * 2017-04-11 2022-04-05 Microsoft Technology Licensing, Llc Context-based shape extraction and interpretation from hand-drawn ink input
US10754441B2 (en) * 2017-04-26 2020-08-25 Microsoft Technology Licensing, Llc Text input system using evidence from corrections
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10311144B2 (en) * 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10540018B2 (en) * 2017-06-05 2020-01-21 Facebook, Inc. Systems and methods for multilingual emoji search
US10788900B1 (en) * 2017-06-29 2020-09-29 Snap Inc. Pictorial symbol prediction
US10650095B2 (en) * 2017-07-31 2020-05-12 Ebay Inc. Emoji understanding in online experiences
US10936970B2 (en) 2017-08-31 2021-03-02 Accenture Global Solutions Limited Machine learning document processing
US10261991B2 (en) * 2017-09-12 2019-04-16 AebeZe Labs Method and system for imposing a dynamic sentiment vector to an electronic message
WO2019060351A1 (en) 2017-09-21 2019-03-28 Mz Ip Holdings, Llc SYSTEM AND METHOD FOR USING LOW MEMORY CONSUMPTION DATA STRUCTURES FOR FRIMOUSSES SUGGESTIONS
US10593087B2 (en) 2017-10-23 2020-03-17 Paypal, Inc. System and method for generating emoji mashups with machine learning
US11145103B2 (en) * 2017-10-23 2021-10-12 Paypal, Inc. System and method for generating animated emoji mashups
CN107943317B (zh) * 2017-11-01 2021-08-06 北京小米移动软件有限公司 输入方法及装置
CN109814730B (zh) * 2017-11-20 2023-09-12 北京搜狗科技发展有限公司 输入方法和装置、用于输入的装置
US10348659B1 (en) * 2017-12-21 2019-07-09 International Business Machines Corporation Chat message processing
JP7225541B2 (ja) * 2018-02-02 2023-02-21 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
WO2019156508A1 (en) * 2018-02-08 2019-08-15 Samsung Electronics Co., Ltd. Method and electronic device for rendering background in image
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
CN110300218A (zh) * 2018-03-23 2019-10-01 中兴通讯股份有限公司 性能调整方法及装置、终端、存储介质、电子装置
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10970329B1 (en) * 2018-03-30 2021-04-06 Snap Inc. Associating a graphical element to media content item collections
US20190325201A1 (en) * 2018-04-19 2019-10-24 Microsoft Technology Licensing, Llc Automated emotion detection and keyboard service
US10699104B2 (en) * 2018-05-03 2020-06-30 International Business Machines Corporation Image obtaining based on emotional status
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10740680B2 (en) * 2018-05-15 2020-08-11 Ringcentral, Inc. System and method for message reaction analysis
US10540585B2 (en) * 2018-05-23 2020-01-21 Google Llc Training sequence generation neural networks using quality scores
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CN110634172A (zh) * 2018-06-25 2019-12-31 微软技术许可有限责任公司 生成用于演示的幻灯片
CN109088811A (zh) * 2018-06-25 2018-12-25 维沃移动通信有限公司 一种信息发送方法及移动终端
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US20200104427A1 (en) * 2018-09-28 2020-04-02 Microsoft Technology Licensing, Llc. Personalized neural query auto-completion pipeline
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
CN109388404B (zh) * 2018-10-10 2022-10-18 北京如布科技有限公司 一种路径解码方法、装置、计算机设备及存储介质
CN109510897B (zh) * 2018-10-25 2021-04-27 维沃移动通信有限公司 一种表情图片管理方法及移动终端
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
CN109359302B (zh) * 2018-10-26 2023-04-18 重庆大学 一种领域化词向量的优化方法及基于其的融合排序方法
CN109508399A (zh) * 2018-11-20 2019-03-22 维沃移动通信有限公司 一种表情图像处理方法、移动终端
US10902661B1 (en) 2018-11-28 2021-01-26 Snap Inc. Dynamic composite user identifier
US10871877B1 (en) * 2018-11-30 2020-12-22 Facebook, Inc. Content-based contextual reactions for posts on a social networking system
US11763089B2 (en) * 2018-12-13 2023-09-19 International Business Machines Corporation Indicating sentiment of users participating in a chat session
CN109783709B (zh) * 2018-12-21 2023-03-28 昆明理工大学 一种基于马尔可夫决策过程和k-最近邻强化学习的排序方法
KR102171810B1 (ko) * 2018-12-28 2020-10-30 강원대학교산학협력단 다차원 임베딩을 이용한 시퀀스 데이터 태깅 방법 및 장치
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11132511B2 (en) * 2019-02-05 2021-09-28 International Business Machines Corporation System for fine-grained affective states understanding and prediction
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
WO2020190103A1 (en) * 2019-03-20 2020-09-24 Samsung Electronics Co., Ltd. Method and system for providing personalized multimodal objects in real time
CN111756917B (zh) * 2019-03-29 2021-10-12 上海连尚网络科技有限公司 信息交互方法、电子设备和计算机可读介质
USD913314S1 (en) 2019-04-22 2021-03-16 Facebook, Inc. Display screen with an animated graphical user interface
USD914051S1 (en) 2019-04-22 2021-03-23 Facebook, Inc. Display screen with an animated graphical user interface
USD930695S1 (en) 2019-04-22 2021-09-14 Facebook, Inc. Display screen with a graphical user interface
USD912693S1 (en) 2019-04-22 2021-03-09 Facebook, Inc. Display screen with a graphical user interface
USD914049S1 (en) 2019-04-22 2021-03-23 Facebook, Inc. Display screen with an animated graphical user interface
USD913313S1 (en) 2019-04-22 2021-03-16 Facebook, Inc. Display screen with an animated graphical user interface
USD914058S1 (en) 2019-04-22 2021-03-23 Facebook, Inc. Display screen with a graphical user interface
USD912697S1 (en) 2019-04-22 2021-03-09 Facebook, Inc. Display screen with a graphical user interface
CN110336733B (zh) * 2019-04-30 2022-05-17 上海连尚网络科技有限公司 一种呈现表情包的方法与设备
CN112400165A (zh) 2019-05-01 2021-02-23 微软技术许可有限责任公司 利用无监督学习来改进文本到内容建议的方法和系统
US11030402B2 (en) * 2019-05-03 2021-06-08 International Business Machines Corporation Dictionary expansion using neural language models
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
WO2020232279A1 (en) * 2019-05-14 2020-11-19 Yawye Generating sentiment metrics using emoji selections
WO2020227968A1 (en) * 2019-05-15 2020-11-19 Beijing Didi Infinity Technology And Development Co., Ltd. Adversarial multi-binary neural network for multi-class classification
US10817142B1 (en) 2019-05-20 2020-10-27 Facebook, Inc. Macro-navigation within a digital story framework
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US10757054B1 (en) 2019-05-29 2020-08-25 Facebook, Inc. Systems and methods for digital privacy controls
US11388132B1 (en) * 2019-05-29 2022-07-12 Meta Platforms, Inc. Automated social media replies
CN110189742B (zh) * 2019-05-30 2021-10-08 芋头科技(杭州)有限公司 确定情感音频、情感展示、文字转语音的方法和相关装置
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
CN110232116B (zh) * 2019-05-31 2021-07-27 腾讯科技(深圳)有限公司 回复语句中的表情添加的方法及装置
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
USD912700S1 (en) 2019-06-05 2021-03-09 Facebook, Inc. Display screen with an animated graphical user interface
USD914739S1 (en) 2019-06-05 2021-03-30 Facebook, Inc. Display screen with an animated graphical user interface
USD914705S1 (en) 2019-06-05 2021-03-30 Facebook, Inc. Display screen with an animated graphical user interface
USD924255S1 (en) 2019-06-05 2021-07-06 Facebook, Inc. Display screen with a graphical user interface
USD917533S1 (en) 2019-06-06 2021-04-27 Facebook, Inc. Display screen with a graphical user interface
USD916915S1 (en) 2019-06-06 2021-04-20 Facebook, Inc. Display screen with a graphical user interface
USD914757S1 (en) 2019-06-06 2021-03-30 Facebook, Inc. Display screen with an animated graphical user interface
USD918264S1 (en) 2019-06-06 2021-05-04 Facebook, Inc. Display screen with a graphical user interface
CN110297928A (zh) * 2019-07-02 2019-10-01 百度在线网络技术(北京)有限公司 表情图片的推荐方法、装置、设备和存储介质
US20210005316A1 (en) * 2019-07-03 2021-01-07 Kenneth Neumann Methods and systems for an artificial intelligence advisory system for textual analysis
CN110311858B (zh) * 2019-07-23 2022-06-07 上海盛付通电子支付服务有限公司 一种发送会话消息的方法与设备
CN110417641B (zh) * 2019-07-23 2022-05-17 上海盛付通电子支付服务有限公司 一种发送会话消息的方法与设备
EP3783537A1 (en) * 2019-08-23 2021-02-24 Nokia Technologies Oy Controlling submission of content
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US10825449B1 (en) * 2019-09-27 2020-11-03 CrowdAround Inc. Systems and methods for analyzing a characteristic of a communication using disjoint classification models for parsing and evaluation of the communication
WO2021061435A1 (en) 2019-09-27 2021-04-01 Apple Inc. User interfaces for customizing graphical objects
CN110717109B (zh) * 2019-09-30 2024-03-15 北京达佳互联信息技术有限公司 推荐数据的方法、装置、电子设备及存储介质
US11082375B2 (en) * 2019-10-02 2021-08-03 Sap Se Object replication inside collaboration systems
CN110765300B (zh) * 2019-10-14 2022-02-22 四川长虹电器股份有限公司 一种基于emoji的语义解析方法
US11138386B2 (en) * 2019-11-12 2021-10-05 International Business Machines Corporation Recommendation and translation of symbols
US11115356B2 (en) * 2019-11-14 2021-09-07 Woofy, Inc. Emoji recommendation system and method
CN111241398B (zh) * 2020-01-10 2023-07-25 百度在线网络技术(北京)有限公司 数据预取方法、装置、电子设备及计算机可读存储介质
CN111258435B (zh) * 2020-01-15 2024-05-07 北京达佳互联信息技术有限公司 多媒体资源的评论方法、装置、电子设备及存储介质
US11727270B2 (en) * 2020-02-24 2023-08-15 Microsoft Technology Licensing, Llc Cross data set knowledge distillation for training machine learning models
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11209964B1 (en) * 2020-06-05 2021-12-28 SlackTechnologies, LLC System and method for reacting to messages
US11159458B1 (en) * 2020-06-10 2021-10-26 Capital One Services, Llc Systems and methods for combining and summarizing emoji responses to generate a text reaction from the emoji responses
US11275776B2 (en) 2020-06-11 2022-03-15 Capital One Services, Llc Section-linked document classifiers
US11941565B2 (en) 2020-06-11 2024-03-26 Capital One Services, Llc Citation and policy based document classification
US20220269354A1 (en) * 2020-06-19 2022-08-25 Talent Unlimited Online Services Private Limited Artificial intelligence-based system and method for dynamically predicting and suggesting emojis for messages
US11609640B2 (en) * 2020-06-21 2023-03-21 Apple Inc. Emoji user interfaces
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN112231212B (zh) * 2020-10-16 2023-05-09 湖南皖湘科技有限公司 一种检测程序代码语法错误的方法
US11044218B1 (en) * 2020-10-23 2021-06-22 Slack Technologies, Inc. Systems and methods for reacting to messages
US11232406B1 (en) * 2021-01-21 2022-01-25 Atlassian Pty Ltd. Creating tracked issue using issue-creation emoji icon
CN114816599B (zh) * 2021-01-22 2024-02-27 北京字跳网络技术有限公司 图像显示方法、装置、设备及介质
KR20220130952A (ko) * 2021-03-19 2022-09-27 현대자동차주식회사 이모지 생성 장치, 차량 및 이모지 생성 방법
US11568587B2 (en) * 2021-03-30 2023-01-31 International Business Machines Corporation Personalized multimedia filter
US11531406B2 (en) * 2021-04-20 2022-12-20 Snap Inc. Personalized emoji dictionary
US11888797B2 (en) * 2021-04-20 2024-01-30 Snap Inc. Emoji-first messaging
US11593548B2 (en) 2021-04-20 2023-02-28 Snap Inc. Client device processing received emoji-first messages
WO2022256584A1 (en) * 2021-06-03 2022-12-08 Twitter, Inc. Labeling messages on a social messaging platform using message response information
US11765115B2 (en) 2021-07-29 2023-09-19 Snap Inc. Emoji recommendation system using user context and biosignals
CN113761204B (zh) * 2021-09-06 2023-07-28 南京大学 一种基于深度学习的emoji文本情感分析方法及系统
US11657558B2 (en) 2021-09-16 2023-05-23 International Business Machines Corporation Context-based personalized communication presentation
WO2023048374A1 (en) * 2021-09-21 2023-03-30 Samsung Electronics Co., Ltd. A method and system for predicting response and behavior on chats
US11841898B2 (en) * 2021-12-01 2023-12-12 Whitestar Communications, Inc. Coherent pictograph organizer based on structuring pattern markers for hierarchal pictograph presentation
US11902231B2 (en) * 2022-02-14 2024-02-13 International Business Machines Corporation Dynamic display of images based on textual content
CN114553810A (zh) * 2022-02-22 2022-05-27 广州博冠信息科技有限公司 表情图片合成方法及装置、电子设备
US20230318992A1 (en) * 2022-04-01 2023-10-05 Snap Inc. Smart media overlay selection for a messaging system
DE102022110951A1 (de) 2022-05-04 2023-11-09 fm menschenbezogen GmbH Vorrichtung zur Auswahl einer Trainings- und/oder Nutzungsempfehlung und/oder einer Charakterisierung
WO2024054271A1 (en) * 2022-09-05 2024-03-14 Google Llc System(s) and method(s) for causing contextually relevant emoji(s) to be visually rendered for presentation to user(s) in smart dictation

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805911A (en) * 1995-02-01 1998-09-08 Microsoft Corporation Word prediction system
US8843482B2 (en) * 2005-10-28 2014-09-23 Telecom Italia S.P.A. Method of providing selected content items to a user
US8584031B2 (en) * 2008-11-19 2013-11-12 Apple Inc. Portable touch screen device, method, and graphical user interface for using emoji characters
US8738362B2 (en) * 2010-09-28 2014-05-27 International Business Machines Corporation Evidence diffusion among candidate answers during question answering
US9092425B2 (en) * 2010-12-08 2015-07-28 At&T Intellectual Property I, L.P. System and method for feature-rich continuous space language models
US20120278164A1 (en) * 2011-02-23 2012-11-01 Nova Spivack Systems and methods for recommending advertisement placement based on in network and cross network online activity analysis
US20130159919A1 (en) * 2011-12-19 2013-06-20 Gabriel Leydon Systems and Methods for Identifying and Suggesting Emoticons
GB201322037D0 (en) * 2013-12-12 2014-01-29 Touchtype Ltd System and method for inputting images/labels into electronic devices
US9613023B2 (en) * 2013-04-04 2017-04-04 Wayne M. Kennard System and method for generating ethnic and cultural emoticon language dictionaries
US20150100537A1 (en) * 2013-10-03 2015-04-09 Microsoft Corporation Emoji for Text Predictions
US10013601B2 (en) * 2014-02-05 2018-07-03 Facebook, Inc. Ideograms for captured expressions
US9043196B1 (en) * 2014-07-07 2015-05-26 Machine Zone, Inc. Systems and methods for identifying and suggesting emoticons

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020149310A (ja) * 2019-03-13 2020-09-17 日本電気株式会社 処理装置、処理方法及びプログラム
JP7293743B2 (ja) 2019-03-13 2023-06-20 日本電気株式会社 処理装置、処理方法及びプログラム
KR20210042406A (ko) * 2020-02-28 2021-04-19 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 이모티콘 패키지 생성 방법, 장치, 설비 및 매체
KR102598496B1 (ko) 2020-02-28 2023-11-03 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 이모티콘 패키지 생성 방법, 장치, 설비 및 매체
JP2022046442A (ja) * 2020-09-10 2022-03-23 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 推薦表情の確定方法、装置、デバイス及びコンピュータ記憶媒体
JP7251025B2 (ja) 2020-09-10 2023-04-04 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド 推薦表情の確定方法、装置、デバイス及びコンピュータ記憶媒体
JP7480232B2 (ja) 2021-08-26 2024-05-09 株式会社カカオ 端末の動作方法及び端末

Also Published As

Publication number Publication date
AU2016383052A1 (en) 2018-06-28
WO2017116839A1 (en) 2017-07-06
CA3009758A1 (en) 2017-07-06
US20170185581A1 (en) 2017-06-29
CN108701125A (zh) 2018-10-23
EP3398082A1 (en) 2018-11-07

Similar Documents

Publication Publication Date Title
JP2019504413A (ja) 絵文字を提案するためのシステムおよび方法
US11487986B2 (en) Providing a response in a session
US11580350B2 (en) Systems and methods for an emotionally intelligent chat bot
US10592607B2 (en) Iterative alternating neural attention for machine reading
Montejo-Ráez et al. Ranked wordnet graph for sentiment polarity classification in twitter
US11068519B2 (en) Conversation oriented machine-user interaction
JP5379138B2 (ja) 領域辞書の作成
CN112236766A (zh) 用个性化和上下文的通信内容帮助用户
US20220012296A1 (en) Systems and methods to automatically categorize social media posts and recommend social media posts
CN106095845B (zh) 文本分类方法和装置
JP5710581B2 (ja) 質問応答装置、方法、及びプログラム
CN111414561B (zh) 用于呈现信息的方法和装置
US20230306205A1 (en) System and method for personalized conversational agents travelling through space and time
Veenhoven et al. Using translated data to improve deep learning author profiling models
CN107111607A (zh) 用于语言检测的系统和方法
Caicedo et al. Bootstrapping semi-supervised annotation method for potential suicidal messages
Ganguli et al. Deep insights of erroneous bengali–english code-mixed bilingual language
Ling Coronavirus public sentiment analysis with BERT deep learning
Li et al. Twitter sentiment analysis of the 2016 US Presidential Election using an emoji training heuristic
Shenoy et al. Design of chatbot using natural language processing
CN110023931A (zh) 用于语言检测的系统和方法
US20230289377A1 (en) Multi-channel feedback analytics for presentation generation
Mihi et al. Automatic sarcasm detection in Arabic tweets: resources and approaches
Li et al. Advances in Sentiment Analysis: Techniques, Applications, and Challenges
Baviskar et al. Deep Learning in Social Media Analysis: Machine and Deep Learning Models for Social Media Analysis in Politics