JP6701206B2 - ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別すること - Google Patents

ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別すること Download PDF

Info

Publication number
JP6701206B2
JP6701206B2 JP2017535358A JP2017535358A JP6701206B2 JP 6701206 B2 JP6701206 B2 JP 6701206B2 JP 2017535358 A JP2017535358 A JP 2017535358A JP 2017535358 A JP2017535358 A JP 2017535358A JP 6701206 B2 JP6701206 B2 JP 6701206B2
Authority
JP
Japan
Prior art keywords
dialogue
hypothesis
natural language
domain
responses
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.)
Active
Application number
JP2017535358A
Other languages
English (en)
Other versions
JP2018506113A5 (ja
JP2018506113A (ja
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2018506113A publication Critical patent/JP2018506113A/ja
Publication of JP2018506113A5 publication Critical patent/JP2018506113A5/ja
Application granted granted Critical
Publication of JP6701206B2 publication Critical patent/JP6701206B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • 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/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • 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/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3335Syntactic pre-processing, e.g. stopword elimination, stemming
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/3349Reuse of stored results of previous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • 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/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Description

[0001]言語理解アプリケーション(たとえば、デジタルアシスタントアプリケーション)は、音声言語入力を解釈するために少なくとも何らかのコンテキスト言語理解を必要とする。この点について、デジタルアシスタントアプリケーションは、特定のドメインおよび/またはタスクを有する音声言語入力を解釈するエクスペリエンスを有し得る。たとえば、デジタルアシスタントアプリケーションは、カレンダーイベントに関係する音声言語入力を解釈するとき、正確な結果を与え得る。しかしながら、デジタルアシスタントアプリケーションが音声言語入力をどのように扱うべきかを知らないシナリオでは、バックエンドソリューション(たとえば、Web)が、ユーザーに結果を与えるために使用され得る。所与の音声言語入力について、デジタルアシスタントアプリケーションを使用すべき時と、バックエンドソリューションを使用すべき時とを判断することは困難であり得る。いくつかの場合には、ユーザーの要求を満たすために、デジタルアシスタントアプリケーションを使用すべき時と、バックエンドソリューションを使用すべき時とを判断するために、決定論的なハードコードされたルールが使用され得る。これらのルールをクラフティング(crafting)し、実装すること、ならびにそれらの精度を評価することのコストは高い。さらに、ハードコードされたルールは、ロケール拡大(たとえば、新しいおよび/または異なる言語を解釈すること)のために十分にスケーリングしない。さらに、バックエンドソリューションを使用すべきと判断されたとき、音声言語入力はバックエンドソリューションに「そのまま」送られ、受信された音声言語入力に基づいて結果が与えられる。したがって、コミュニティに一般に知られているように、ハードコードされたルールは「きめが粗く」、全体的ユーザーエクスペリエンスは準最適である。
[0002]実施形態が製作されたのは、これらおよび他の一般的な考慮事項に関してである。また、比較的特定の問題について説明したが、実施形態は、背景技術において識別された特定の問題を解決することに限定されるべきでないことを理解されたい。
[0003]要約すれば、本開示は、一般に、あいまいな表現を弁別することに関する。より詳細には、本開示は、ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別するための方法およびシステムに関する。たとえば、自然言語表現は音声認識コンポーネントによって受信され得る(may be received;受けることができる)。自然言語表現は、テキストの単語、用語、および句のうちの少なくとも1つを含み得る。自然言語表現からの対話仮説セットが、コンテキスト情報を使用することによって作成され得る。いくつかの場合には、対話仮説セットは少なくとも2つの対話仮説を有する。対話仮説セットのための複数の対話応答が生成され得る。対話仮説セットは、複数の対話応答の分析に基づいてランク付けされ得る。対話仮説セットをランク付けすることに基づいてアクションが実施され得る。
[0004]本発明の概要は、発明を実施するための形態において以下でさらに説明する概念の選択を簡略化された形で紹介するために与えるものである。本発明の概要は、請求する主題の主要な特徴または本質的特徴を識別するものではなく、請求する主題の範囲を限定するために使用されるものでもない。
[0005]以下の図を参照しながら非限定的で非網羅的な例について説明する。
[0006]例示的な一実施形態による、あいまいな表現を弁別するためのクライアントコンピューティングデバイスにおいて実装される例示的な動的システムを示す図である。 [0007]例示的な一実施形態による、あいまいな表現を弁別するためのサーバーコンピューティングデバイスにおいて実装される例示的な動的システムを示す図である。 [0008]例示的な一実施形態による、あいまいな表現を弁別するための対話コンポーネントの例示的なブロック図である。 [0009]例示的な一実施形態による、あいまいな表現を弁別するための例示的な方法を示す図である。 [0010]例示的な一実施形態による、あいまいな表現を弁別するように対話コンポーネントをトレーニングするための例示的な方法を示す図である。 [0011]例示的な一実施形態による、あいまいな表現を弁別するための例示的な方法を示す図である。 [0012]本開示の実施形態がそれを用いて実施され得るコンピューティングデバイスの例示的な物理的コンポーネントを示すブロック図である。 [0013]本開示の実施形態がそれを用いて実施され得るモバイルコンピューティングデバイスの簡略ブロック図である。 本開示の実施形態がそれを用いて実施され得るモバイルコンピューティングデバイスの簡略ブロック図である。 [0014]本開示の実施形態が実施され得る分散コンピューティングシステムの簡略ブロック図である。 [0015]本開示の1つまたは複数の実施形態を実行するためのタブレットコンピューティングデバイスを示す図である。
[0016]以下の発明を実施するための形態では、本出願の一部を形成する添付の図面を参照し、それらの図面には、特定の態様または例を説明のために示す。本開示の趣旨または範囲から逸脱することなく、これらの態様は組み合わせられ得、他の態様が利用され得、構造的変更が行われ得る。態様は、方法、システムまたはデバイスとして実施され得る。したがって、態様は、ハードウェア実装形態、完全にソフトウェアの実装形態、またはソフトウェア態様とハードウェア態様とを組み合わせる実装形態の形態をとり得る。したがって、以下の発明を実施するための形態は限定的な意味にとられるべきではなく、本開示の範囲は添付の特許請求の範囲およびそれらの均等物によって定義される。
[0017]本開示は、概して、あいまいな要求を弁別するための教師ありおよび教師なし機械学習技法を使用することに関する。あいまいな要求を弁別するための既存の技法は、クラフティングし、実装するためにコストがかかる決定論的なハードコードされたルールに依拠する。たとえば、音声言語入力にどのように応答すべきかを判断するために、時間とともにシステムによって受信されたデータ(たとえば、音声言語入力)に基づいて、所定のルールが書かれ、現在のシステム中で実装され得る。しかしながら、あいまいな要求を弁別するために、ハードコードされたルールを使用することは、複数のドメインとの自然重複により、良好な信頼性をもって行うことが困難である。さらに、あいまいな要求を弁別するために、ハードコードされたルールを使用することは、準最適なユーザーエクスペリエンスを与え得る。したがって、本明細書で説明する態様は、あいまいな要求を動的に弁別するための機械学習ベースの技法を含む。そのような機械学習ベースの技法は、特定のユーザー音声言語入力(たとえば、要求)に最も良く応答するためにどのユーザーエクスペリエンスを使用すべきかを判断することを可能にする。たとえば、あいまいな要求を、関連する結果をユーザーに与えるクエリに動的に変換するために、様々なソースからの情報が使用され得る。様々なソースからの情報に基づいて、あいまいな要求を、関連する結果をユーザーに与えるクエリに動的に変換することは、システムおよび/またはシステムに関連するアプリケーション(たとえば、デジタルアシスタントアプリケーション)とのより良いユーザーエクスペリエンスを生じ得る。さらに、あいまいな要求を弁別することは、システムおよび/またはアプリケーションが与えなければならない明瞭化要求および/または応答の数を低減し得る。したがって、より少数の計算が、クライアントおよび/またはサーバーコンピューティングデバイスによって必要とされ得る。
[0018]図1を参照すると、あいまいな要求を弁別するための動的システム100の一態様が示されている。態様では、動的システム100は、クライアントコンピューティングデバイス104上に実装され得る。基本構成では、クライアントコンピューティングデバイス104は、入力要素と出力要素の両方を有するハンドヘルドコンピューターである。クライアントコンピューティングデバイス104は、コンテキスト言語理解のための動的システム100を実装するための任意の好適なコンピューティングデバイスであり得る。たとえば、クライアントコンピューティングデバイス104は、携帯電話、スマートフォン、タブレット、ファブレット、スマートウォッチ、ウェアラブルコンピューター、パーソナルコンピューター、デスクトップコンピューター、ラップトップコンピューターなどのうちの少なくとも1つであり得る。このリストは、例にすぎず、限定的と見なされるべきではない。コンテキスト言語理解のための動的システム100を実装するための任意の好適なクライアントコンピューティングデバイスが利用され得る。
[0019]態様では、動的システム100は、音声認識コンポーネント110と、言語理解コンポーネント120と、対話コンポーネント130と、バックエンドエンジン140とを含み得る。様々なコンポーネントは、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアとの組合せを使用して実装され得る。動的システム100は、自然言語表現を処理するように構成され得る。この点について、動的システム100は、あいまいな要求を弁別することを可能にし得る。一例では、自然言語表現は、音声言語入力(たとえば、ユーザークエリおよび/または要求)の形態の句、単語、および/または用語を含み得る。別の例では、自然言語表現は、テキスト言語入力(たとえば、ユーザークエリおよび/または要求)の形態の句、単語、および/または用語を含み得る。この点について、自然言語表現は、あいまいであり、および/または不足している情報を有し得る。たとえば、自然言語表現「明日はいかがですか」は、独立して分析されるとき、あいまいである。
[0020]動的システム100は、異なるシナリオにおいて自然言語表現を処理するように構成され得る。たとえば、動的システム100は、シングルターンシナリオおよび/またはマルチターンシナリオにおいて自然言語表現を処理し得る。シングルターンシナリオは、音声言語入力/自然言語表現が、ユーザーと動的システム100との間のセッション中に独立して処理されるシナリオであり得る。シングルターンシナリオは、現在処理されている自然言語表現からの情報のみが、あいまいな要求を弁別するために利用されることを示し得る。マルチターンシナリオは、2つ以上の音声言語入力/自然言語表現が、ユーザー102と動的システム100との間のセッション中に処理されるシナリオである。いくつかの場合には、各自然言語表現はセッション中にターンとして解釈され得る。ターンは、自然言語表現と動的システム100による応答/アクションの両方を含み得る。すなわち、第1のターンは、自然言語表現と動的システム100による応答/アクションの両方を含み得る。他の態様では、マルチターンシナリオは、セッションの複数のターンからの情報が、予測を行うために、および/またはあいまいな要求を弁別するために利用され得ることを示す。セッションは、ユーザーと動的システム100のアプリケーション(たとえば、デジタルアシスタントアプリケーション)との間の会話を含み得る。セッションは、アプリケーションがアクティブ化され、ユーザーが話し始めたときに開始し、アプリケーションが非アクティブ化されたときに終了し得る。
[0021]上記で説明したように、動的システム100は、音声認識コンポーネント110と、言語理解コンポーネント120と、対話コンポーネント130と、バックエンドエンジン140とを含み得る。態様では、音声認識コンポーネント110は、「自動音声認識」(ASR)、「コンピューター音声認識」、および「音声テキスト化」(STT)など、当業者に知られている標準的な音声認識技法を含み得る。いくつかの場合には、音声認識コンポーネント110は、「テキスト音声化」(TTS)など、当業者に知られている標準的なテキスト音声化技法を含み得る。音声認識コンポーネント110が1つまたは複数の様々な異なるタイプの音声認識および/またはテキスト認識コンポーネントを含み得ることを、当業者は認識されよう。いくつかの場合には、音声認識コンポーネント110は、自然言語表現を受信し、受信した自然言語表現の複数のnベスト表象を出力するように構成される。たとえば、音声認識コンポーネント110は、自然言語表現「時間通り5時20分ですか(is the five twenty on time)」を受信し、「時間通り5時20分ですか」を含む第1の表象と、「BE520は時間通りですか(is BE five twenty on time)」を含む第2の表象とを出力し得る。この点について、自然言語表現が、たとえば、公共輸送サービスを指すのか、フライト「BE520」を指すのかに関するあいまいさがあり得る。nベスト表象は、単一のASR、SST、またはTTSを使用するか、あるいは複数のASR、SST、またはTTSを使用して生成され得る。自然言語表現のnベスト表象は、自然言語表現の表象中のあいまいさを弁別するためにさらに処理され得、これについては以下で詳細に説明する。
[0022]態様では、言語理解コンポーネント120は、トレーニング目的のためのサポートベクターマシン、条件付き確率場および/または畳み込み非リカレントニューラルネットワークなどの標準的な音声言語理解モデルを含み得る。サポートベクターマシン、条件付き確率場、および畳み込みニューラルネットワークなどの様々な異なる標準的な言語理解モデルが、本明細書で開示する異なる態様によって採用され得ることを、当業者は認識されよう。この点について、言語理解コンポーネント120は、音声認識コンポーネント110からnベスト表象を受信し、音声認識コンポーネント110からの受信したnベスト表象に基づいて予測を行うように構成され得る。たとえば、言語理解コンポーネント120は、(たとえば、サポートベクターマシンを使用する)ドメインおよび意図予測と、(たとえば、条件付き確率場を使用する)スロットタグ付けとを実施し得る。一態様では、ドメイン予測は、自然言語表現を、言語理解コンポーネント120のサポートされるドメインに分類することを含み得る。ドメインは、場所、リマインダー、カレンダー、天気、コミュニケーションなどの一般に知られているトピックを指すことがある。たとえば、自然言語表現「ポートランドへの運転方向を案内してください」では、言語理解コンポーネント120は、特徴「ポートランド」を抽出し、自然言語表現を、言語理解コンポーネント120のサポートされるドメイン「場所」に分類し得る。
[0023]一態様では、意図予測は、自然言語表現を介してユーザー102の意図を判断することを含み得る。たとえば、自然言語表現「ポートランドへの運転方向を案内してください」では、言語理解コンポーネント120は、ユーザー102の意図が、たとえば「get_route」などの意図分類であると判断し得る。一態様では、スロットタグ付けは、自然言語表現に対してスロット検出を実施することを含み得る。ある場合には、スロット検出は、スロットタイプ(たとえば、言語理解コンポーネント120によってサポートされるスロットタイプ)を自然言語表現からの意味論的に読み込まれた単語で埋めることを含み得る。たとえば、自然言語表現「午後2時から午後4時まで」では、スロットタグ付けは、スロットタイプ「start_time」を「午後2時」で埋め、スロットタイプ「end_type」を「午後4時」で埋めることを含み得る。
[0024]上記で説明したように、動的システム100は、シングルターンシナリオとマルチターンシナリオの両方を含む様々なシナリオにおいて自然言語表現を処理し得る。この点について、言語理解コンポーネント120は、現在処理されている自然言語表現からの情報と、現在処理されている自然言語表現からのコンテキスト情報とを使用して自然言語表現を評価し得る。コンテキスト情報は、セッション中の各ターンから抽出された情報を含み得る。たとえば、抽出された情報は、ドメイン予測と、意図予測と、前のターン(たとえば、現在のセッションからの前の自然言語表現/要求)から予測されたスロットタイプ(たとえば、結果)とを含み得る。別の場合には、コンテキスト情報は、動的システム100による前のターンに対する応答を含み得る。たとえば、前のターンに対する応答は、動的システム100がユーザーからの前の要求にどのように応答したか(たとえば、動的システムがユーザーに対して何を出力したか/言ったか)、クライアントコンピューティングデバイス104のディスプレイ上に配置されたアイテム、クライアントコンピューティングデバイス104のディスプレイ上に配置されたテキストなどを含み得る。別の場合には、コンテキスト情報はクライアントコンテキストを含み得る。たとえば、クライアントコンテキストは、クライアントコンピューティングデバイス104上の連絡先リスト、クライアントコンピューティングデバイス104上のカレンダー、GPS情報(たとえば、クライアントコンピューティングデバイス104のロケーション)、現在時間(たとえば、朝、夜、会議中、ワークアウト中、運転など)などを含み得る。別の場合には、コンテキスト情報はナレッジコンテンツを含み得る。たとえば、ナレッジコンテンツは、自然言語表現からの特徴を記憶されたデータとマッピングするナレッジデータベースを含み得る。一例として、ベルビューにあるレストランの名前である「ジョンハウイー」は、ナレッジデータベースではレストランにマッピングされ得る。また別の場合には、コンテキスト情報は、上記で説明したコンテキスト情報の任意の組合せを含む。
[0025]態様では、言語理解コンポーネント120は、上記で説明したコンテキスト情報を使用して、(たとえば、サポートベクターマシンを使用する)ドメインおよび意図予測と、(たとえば、条件付き確率場を使用する)スロットタグ付けとを実施し得る。たとえば、セッションの第1のターンは、自然言語表現「明日の天気はどうですか」を含み得る。この例では、言語理解コンポーネント120はドメイン分類を「天気」として予測し得る。同じセッションの第2のターンは、自然言語表現「この週末はどうですか」を含み得る。この例では、言語理解コンポーネント120はドメイン分類を「天気」として予測し得る。たとえば、言語理解コンポーネント120は、第2のターン「この週末はどうですか」のドメイン分類を予測するために、第1のターン「明日の天気はどうですか」と、第1のターンの予測されたドメイン分類「天気」とを評価し得る。この点について、同じセッションの第1のターンが、天気に関する要求であり、「天気」ドメイン分類を有することに基づいて、言語理解コンポーネント120は、表現「この週末はどうですか」が第1の表現「明日の天気はどうですか」に関係すると予測し、したがって、ドメインを「天気」として分類し得る。
[0026]別の例では、セッションの第1のターンは、自然言語表現「ポートランドへの運転方向を案内してください」を含み得る。この例では、言語理解コンポーネント120は、ドメイン分類を「場所」として予測し、ユーザーの意図分類を「get_route」として予測し得る。同じセッションの第2のターンは、自然言語表現「バンクーバーはどうですか」を含み得る。この例では、言語理解コンポーネント120は、ドメイン分類を「場所」として予測し、ユーザーの意図分類を「get_route」として予測し得る。説明したように、言語理解コンポーネント120は、第1のセッション中の第2のターン「バンクーバーはどうですか」からユーザー102の意図分類を「get_route」として予測するために、第1のセッション中の第1のターンからのコンテキスト情報を使用する。
[0027]また別の例では、セッションの第1のターンは、自然言語表現「ジェイソンとの会議を作成してください」を含み得る。この例では、言語理解コンポーネント120は、ドメイン分類を「カレンダー」として予測し、ユーザー102の意図分類を「create_meeting」として予測し得る。同じセッションの第2のターンは、自然言語表現「午後2時から午後4時まで」を含み得る。この例では、言語理解コンポーネント120は、ドメイン分類を「カレンダー」として予測し、スロットタイプを「start_time=2pm」および「end_time=4pm」として予測し得る。説明したように、言語理解コンポーネント120は、第1のセッション中の第2のターン「午後2時から午後4時まで」のためのスロットタイプを「start_time=2pm」および「end_time=4pm」として予測するために、第1のセッション中の第1のターンからのコンテキスト情報を使用する。
[0028]態様では、言語理解コンポーネント120によって判断されたプレディケーションは、処理のために対話コンポーネント130に送られ得る。この点について、対話コンポーネント130は、各自然言語表現のための対話仮説セットを作成し、各自然言語表現についてどんな応答/アクションをとるべきかを判断するように構成され得、これについては、図3に関して以下で詳細に説明する。対話コンポーネント130は、処理のために情報の組合せを受信し得る。たとえば、対話コンポーネント130は、入力コンテキスト(たとえば、コンテキスト情報)と、動的システム100によって受信された自然言語表現と、言語理解コンポーネント120によって行われた予測とを受信し得る。入力コンテキストは、クライアント情報(たとえば、クライアントのデバイスのタイプ)と、上記で説明したコンテキスト情報とを含み得る。
[0029]対話コンポーネント130が処理のために情報の組合せを受信したとき、対話コンポーネント130は対話仮説セットを作成し得る。対話仮説セットは、自然言語表現に基づいて少なくとも2つの対話仮説を含み得る。いくつかの場合には、対話仮説セットは任意の数の対話仮説を含み得る。ある場合には、対話仮説は、言語理解コンポーネント120から受信された予測に基づいて作成され得る。たとえば、言語理解コンポーネント120は、自然言語表現「ジェイソンとの会議を作成してください」が、ジェイソンとの会議を作成するようにとの要求であり、「カレンダー」ドメインにカテゴリー分類されることを予測し得る。したがって、対話コンポーネント130は、同様の仮説を作成し、処理のために自然言語表現「ジェイソンとの会議を作成してください」をカレンダードメインコンポーネントに送り得る。別の場合には、対話仮説は、動的システム100中の他のコンポーネントから受信された情報(たとえば、コンテキスト情報)の組合せに基づいて作成され得る。たとえば、言語理解コンポーネント120は、自然言語表現「私のフットボールチームは昨日どうでしたか」を扱わないことがある。したがって、対話コンポーネント130は、同様の仮説を作成し、処理のために自然言語表現「私のフットボールチームは昨日どうでしたか」をWebドメインコンポーネントに送り得る。Webドメインコンポーネントは、Webドメイン仮説セットを作成するために情報の組合せを利用し得る。Webドメイン仮説セットは、複数のクエリの各クエリが異なる表現を含むように、自然言語表現と情報の組合せとを使用して作成された複数のクエリを含み得、これについては、図3において以下で詳細に説明する。
[0030]態様では、対話コンポーネント130は、各自然言語表現についてどんな応答/アクションをとるべきかを判断し得る。この点について、対話コンポーネント130は、仮説を使用してクエリを実施することに応答して返された応答を分析することによって、対話仮説セット中の仮説をランク付けし得、これについては、図3に関して詳細に説明する。クエリは、バックエンドエンジン140を使用することによって実施され得る。バックエンドエンジン140は、テキストおよび/またはキーワード自然言語表現/クエリを受信し、処理するのに適した任意のバックエンドエンジンを含み得る。一例では、バックエンドエンジン140は、Bing、Google、Yahooなどの検索エンジンを含み得る。別の例では、バックエンドエンジン140は、場所、リマインダー、カレンダー、天気、コミュニケーションなどのドメイン固有検索エンジンを含み得る。ある場合には、バックエンドエンジン140は対話コンポーネント130に配置され得る。他の場合には、バックエンドエンジン140は、対話コンポーネント130と通信しているサーバーコンピューティングデバイスに配置され得る。他の場合には、バックエンドエンジン140の一部分は対話コンポーネント130に配置され得、バックエンドエンジン140の一部分は任意の組合せでサーバーコンピューティングデバイスに配置され得る。
[0031]図2に、本明細書で開示する1つまたは複数の態様による、あいまいな要求を弁別するための動的システム200を示す。態様では、動的システム200は、サーバーコンピューティングデバイス204上に実装され得る。サーバーコンピューティングデバイス204は、ネットワーク205を通してクライアントコンピューティングデバイス104におよびそれからデータを与え得る。一態様では、ネットワーク205は、インターネットなど、分散コンピューティングネットワークである。態様では、その動的システム200は、複数のサーバーコンピューティングデバイス204など、2つ以上のサーバーコンピューティングデバイス204上に実装され得る。図2に示されているように、動的システム200は、音声認識コンポーネント210と、言語理解コンポーネント220と、対話コンポーネント230と、バックエンドエンジン240とを含み得る。動的システム200は、自然言語表現を処理するように構成され得る。この点について、動的システム200はあいまいな要求を弁別し得る。音声認識コンポーネント210、言語理解コンポーネント220、対話コンポーネント230、およびバックエンドエンジン240は、図1に関して上記で説明した音声認識コンポーネント110、言語理解コンポーネント120、対話コンポーネント130、およびバックエンドエンジン140と同様に構成され得る。この点について、動的システム200は、図1の動的システム100に関する上記の態様で説明したすべての機能を含み得る。
[0032]上記で説明したように、サーバーコンピューティングデバイス204は、ネットワーク205を通してクライアントコンピューティングデバイス104におよびそれからデータを与え得る。データは、データを送信するのに適した任意のネットワーク上で通信され得る。いくつかの態様では、ネットワーク205は、インターネットなどのコンピューターネットワークである。この点について、ネットワーク205は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ワイヤレスおよびワイヤード伝送媒体とを含み得る。他のタイプのネットワークが本明細書で開示する態様とともに採用され得ることを、当業者は諒解されよう。この点について、自然言語表現は、クライアントコンピューティングデバイス104において受信され、サーバーコンピューティングデバイス204において統計的システム200によって処理するためにネットワーク205上で送信され得る。動的システム(たとえば、動的システム100および動的システム200)コンポーネント(たとえば、音声認識コンポーネント110/210、言語理解コンポーネント120/220、対話コンポーネント130/230、およびバックエンドエンジン140/240)は、任意の組合せで、クライアントコンピューティングデバイス104、サーバーコンピューティングデバイス204、および/またはクライアントコンピューティングデバイス104とサーバーコンピューティングデバイス204の両方に配置され得ることが諒解される。たとえば、一態様では、クライアントコンピューティングデバイス104は、音声認識コンポーネント110と言語理解コンポーネント120とを含み得、サーバーコンピューティングデバイス204は、一構成では対話コンポーネント230とバックエンドエンジン240とを含み得る。これは、例にすぎず、限定的と見なされるべきではない。あいまいな要求を弁別するためのクライアントコンピューティングデバイス104とサーバーコンピューティングデバイス204とにおける動的システムコンポーネントの任意の好適な組合せが利用され得る。
[0033]図3に、本開示の1つまたは複数の態様による、あいまいな要求を弁別するための対話コンポーネント130/230の例示的なブロック図を示す。上記で説明したように、対話コンポーネント130は、たとえば、各自然言語表現のための対話仮説セットを作成し、各自然言語表現についてどんな応答/アクションをとるべきかを判断するように構成され得る。この点について、図3に示されているように、対話コンポーネント130/230は、仮説準備コンポーネント310と、シャローアンサー(shallow answer)コンポーネント320と、フォールバッククエリコンポーネント330と、ドメインコンポーネント340A〜340Nと、仮説およびランク付け選択コンポーネント(HRS)350と、バックエンドエンジン360とを含み得る。上記で説明したように、対話コンポーネント130は、処理のために情報の組合せを受信し得る。たとえば、対話コンポーネント130は、入力コンテキストと、動的システム100によって受信された自然言語表現と、言語理解コンポーネント120によって行われた予測と(たとえば、上記で説明したようなコンテキスト情報)を受信し得る。入力コンテキストは、クライアント情報(たとえば、クライアントのデバイスのタイプ)と、上記で説明したコンテキスト情報とを含み得る。この点について、仮説準備コンポーネント310、シャローアンサーコンポーネント320、フォールバッククエリコンポーネント330、ドメインコンポーネント340A〜340N、ならびに仮説およびランク付け選択コンポーネント(HRS)350は、処理のために情報の組合せを受信するように構成され得る。
[0034]一態様では、仮説準備コンポーネント310は、受信した情報に基づいて仮説セットを作成するように構成される。上記で説明したように、対話仮説セットは、自然言語表現に基づいて少なくとも2つの対話仮説を含み得る。いくつかの場合には、対話仮説セットは任意の数の対話仮説を含み得る。ある場合には、対話仮説は、言語理解コンポーネント120から受信された予測に基づいて作成され得る。たとえば、言語理解コンポーネント120は、自然言語表現「ジェイソンとの会議を作成してください」が、ジェイソンとの会議を作成するようにとの要求であり、「カレンダー」ドメインにカテゴリー分類されることを予測し得る。したがって、仮説準備コンポーネント310は、同様の仮説を作成し、処理のために自然言語表現「ジェイソンとの会議を作成してください」をカレンダードメインコンポーネントに送り得る。別の場合には、対話仮説は、動的システム100中の他のコンポーネントから受信された情報の組合せに基づいて作成され得る。たとえば、言語理解コンポーネント120は、自然言語表現「私のフットボールチームは昨日どうでしたか」を扱わないことがある。したがって、仮説準備コンポーネント310は、同様の仮説を作成し、処理のために自然言語表現「私のフットボールチームは昨日どうでしたか」をWebドメインコンポーネントに送り得る。
[0035]言語理解コンポーネント120が、自然言語表現を扱わず、処理のために自然言語表現をWebドメインコンポーネントに送る例では、Webドメインコンポーネントは、バックエンドエンジン360に送られるべきフォールバッククエリを作成し得る。たとえば、セッションの第1のターンは、セッションが含み得る自然言語表現「私の近くのレストランを見つけてください」を含み得る。自然言語表現「私の近くのレストランを見つけてください」は場所ドメインコンポーネントによって扱われ得る。セッションの第2のターンは、自然言語表現「イタリアンのもののみを教えてください」を含み得る。自然言語表現「イタリアンのもののみを教えてください」は場所ドメインコンポーネントによって扱われ得る。セッションの第3のターンは、自然言語表現「どれがキッズフレンドリーですか」を含み得る。場所ドメインコンポーネントは、自然言語表現「どれがキッズフレンドリーですか」を扱うことができないことがある。したがって、対話コンポーネント130/230は、バックエンドエンジン360によって扱われるべきフォールバッククエリを作成し得る。対話コンポーネント130/230は、バックエンドエンジン360によって生成される改善された検索結果を可能にするためにクエリを作成し得る。たとえば、対話コンポーネント130/230は、セッションのすべての前および現在のターンを連結することによって第1のクエリを作成し得る。上記で説明した例を使用すると、第1のクエリは、「私の近くのレストランを見つけてください イタリアンのものを教えてください どれがキッズフレンドリーですか」であり得る。別の例では、対話コンポーネント130/230は、セッションの前および現在のターンから実施されたストップワード削除分析を連結することによって第2のクエリを作成し得る。上記で説明したのと同じ例を使用すると、第2のクエリは、「私の近くのレストラン イタリアンのもののみを教えてください キッズフレンドリー」であり得る。また別の例では、対話コンポーネント130/230は、セッションの前および現在のターンから抽出された意味論的エンティティを連結することによって第3のクエリを作成し得る。ある場合には、意味論的エンティティは、自然言語表現の任意の部分、自然言語表現の分類、および/または意味を有すると判断された自然言語表現を処理することからの結果であり得る。上記で説明したのと同じ例を使用すると、第3のクエリは、「レストラン ベルビューWA イタリアン フード ファミリー」であり得る。この点について、対話コンポーネント130/230が、検索を実施するためにバックエンドエンジン360を使用するとき、より関連する結果が返されることを可能にするために、自然言語表現「そのまま」以外のクエリが作成される。
[0036]一態様では、ドメインコンポーネント340A〜340Nは、デジタルアシスタントアプリケーションによって扱われるドメインとWebドメインとを含み得る。デジタルアシスタントアプリケーションによって扱われるドメインは、場所、リマインダー、カレンダー、天気、コミュニケーションなどを含み得る。たとえば、ドメインコンポーネント340Aは、カレンダードメインコンポーネントであり得、カレンダードメイン仮説を処理し得る。別の例では、ドメインコンポーネント340Bは、天気ドメインコンポーネントであり得、天気ドメイン仮説を処理し得る。また別の例では、ドメインコンポーネント340Nは、Webドメインコンポーネントであり得、Webドメイン仮説を処理し得る。ドメインコンポーネント340A〜340Nは任意のタイプのドメインコンポーネントであり得、対話コンポーネント130/230は任意の数のドメインコンポーネント340A〜340Nを含み得ることが諒解されよう。ドメインコンポーネント340Aがカレンダードメインコンポーネントである例では、ドメインコンポーネント340Aが仮説準備コンポーネント310からカレンダードメイン仮説を受信したとき、ドメインコンポーネント340Aは、仮説に基づいて会議をスケジュールし得る。たとえば、カレンダードメイン仮説が「明日の午後2時から午後4時までのジェイソンとの会議をスケジュールしてください」である場合、ドメインコンポーネント340Aは、この会議を明日の午後2時から午後4時のためのユーザーのカレンダーに追加し得る。
[0037]別の例では、仮説がWebドメイン仮説であるとき、Webドメインコンポーネント340Nは、Webドメイン仮説と、異なるソースからの情報の組合せとを受信し得る。この点について、Webドメインコンポーネント340Nは、Webドメイン仮説中のあいまいな情報を弁別するために、異なるソースからの情報の組合せを使用し得る。一例では、Webドメイン仮説は、「ブロンコスはそのときどこと対戦しますか」であり得る。Webドメインコンポーネント340NがWebドメイン仮説/クエリ「ブロンコスはそのときどこと対戦しますか」を使用して検索を実施することの代わりに、Webドメインコンポーネント340Nは、作成されたWebドメイン仮説のWebドメイン仮説セットを作成するために、受信された情報の組合せを使用し得る。一例では、Webドメインコンポーネント340Nは、Webドメイン仮説セットを作成するために、現在のセッションからの前のターンを使用し得る。たとえば、現在のセッションの第1のターンは、「明日の天気はどのようですか」であり得る。この点について、Webドメインコンポーネント340Nは、「ブロンコスは明日どこと対戦しますか」などの第1の作成されたWebドメイン仮説を作成するために、第1のターンと、判断されたスロットタイプ「時間=明日」とを使用し得る。説明したように、Webドメインコンポーネント340Nは、あいまいな句「そのとき」を、判断されたスロットタイプ「時間=明日」と置き換えた。別の例では、Webドメインコンポーネント340Nは、第2の作成されたWebドメイン仮説「明日の天気はどのようですか ブロンコスはそのときどこと対戦しますか」を作成するために、現在のセッションの第1のターンをWebドメイン仮説と組み合わせ得る。また別の例では、Webドメインコンポーネント340Nは、第3の作成されたWebドメイン仮説「天気 明日 ブロンコス」を作成するために、第1のターンと現在のWebドメイン仮説とからの意味論的エンティティのみを組み合わせ得る。
[0038]いくつかの態様では、Webドメイン仮説セットはシャローアンサーコンポーネント320に送られ得る。シャローアンサーコンポーネント320は、Webドメイン仮説セット中のWebドメイン仮説の各々に対するアンサーを与え得る。たとえば、各Webドメイン仮説は、Webドメイン仮説を使用してクエリを実施するために、シャローアンサーコンポーネント320に送られ得る。いくつかの場合には、Webドメイン仮説の各々に対するアンサーは、受信される頻度であるクエリタイプのための特殊な結果を含み得る。たとえば、頻繁なクエリタイプは、天気に関するクエリを含み得る。この例では、アンサーは、天気に関係する特殊な結果を含み得る。したがって、シャローアンサーコンポーネント320がWebドメイン仮説を使用してクエリを実施するとき、シャローアンサーコンポーネント320によって返されるアンサーは特殊な結果に基づき得る。たとえば、Webドメイン仮説が、頻繁にクエリされる用語/エンティティを含む場合、返されるアンサーは特殊な結果を含み得る。別の例では、Webドメイン仮説が、頻繁にクエリされる用語/エンティティを含まない場合、返されるアンサーは特殊な結果を含まないことがある(たとえば、返される結果は有用でないことがある)。この点について、シャローアンサーコンポーネント320からのアンサーは、Webドメイン仮説セット中のどのWebドメイン仮説が最良の/最も関連する結果を返すかを示し得る。
[0039]ある場合には、各Webドメイン仮説に対する結果は、どの結果が最良であるかを判断するために人間によってレビューされ得る。この点について、HRSコンポーネント350は、ドメイン仮説からのどの特徴が最も関連する検索結果と相関するかを学習し得る。たとえば、ドメイン仮説について抽出された特徴は、信頼性スコア、(たとえば、もしあれば)返された結果の数、特殊な結果の存在または不在などを含み得る。したがって、人間が、ドメイン仮説のセットのうちのドメイン仮説に対する最も関連する結果を判断したとき、HRSコンポーネント350は、最も関連する結果を生成したドメイン仮説に関連する特徴をどのように使用すべきかを学習し得る。
[0040]別の場合には、ログ記録されたクエリおよびそれらの対応する検索結果が、各Webドメイン仮説の結果と比較され得る。たとえば、上記で説明した例を使用すると、セッションの第1のターンは、「明日の天気はどのようですか」であり得る。セッションの第2のターンは、「ブロンコスはそのときどこと対戦しますか」であり得る。対話コンポーネント130は、第2のターン「ブロンコスはそのときどこと対戦しますか」を扱うことができないことがあり、このクエリをバックエンドエンジン360に送り得る。バックエンドエンジン360は、あいまいさ「そのとき」を弁別することができないことがある。この点について、ユーザーは、再クエリし、「ブロンコスは明日どこと対戦しますか」のような何かを言わなくてはならないことがある。対話コンポーネント130は、このクエリをバックエンドエンジン360に送り、関連する結果を入手し得る。自然言語表現とそれらの対応するクエリ結果とのこれらのセッションはログ記録され得る。したがって、HRSコンポーネント350は、セッションの2つのターンが極めて類似している時と、セッションのターンがセッションの再クエリである時とを判断するために、ログ記録されたデータを分析し得る。たとえば、HRSコンポーネント350は、セッションの2つのターン間の語彙類似性を識別し得る。別の例では、HRSコンポーネント350は、第2のターンの結果の数および/または品質が第1のターンよりも良好であることを識別し得る。語彙類似性とともに、より関連する結果は、ターンが再クエリであることを示し得る。したがって、HRSコンポーネント350は、関連する検索結果を入手するために、どんな情報/特徴が前のターンから現在のターンに引き継がれるべきかを判断し得る。すなわち、HRSコンポーネント350は、どんな特徴が、セッションの再クエリに対して生成された結果と等価な結果を生成するかを学習し得る。したがって、関連する検索結果を与えるために、どんな情報が前のターンから現在のターンに引き継がれるべきかを判断するために機械学習技法が使用される。いくつかの場合には、機械学習技法は、アノテーション付きトレーニングセットを用いたトレーニングを通して開発されてきた、人工ニューラルネットワーク、ベイズ分類器、および/または遺伝的導出アルゴリズムを含み得る。
[0041]態様では、HRSコンポーネント350は、「Nベスト」リスト、優先キュー、ガウス分布、および/またはヒストグラム(たとえば、それぞれの対話仮説の仮説スコアにおける傾向を識別するヒストグラム)などのランク付け技法を含み得る。上記で説明したように、HRSコンポーネント350は、対話仮説セットの対話仮説から特徴を抽出し、特徴をスコアリングし、ランク付けし得る。ある場合には、対話仮説から抽出された特徴は、少なくとも、予測されたドメイン分類のための信頼性スコアと、予測された意図分類のための信頼性スコアと、予測されたスロットタイプのためのスロットカウントとを含み得る。別の場合には、対話仮説から抽出された特徴は、対話仮説に関連する特徴を含み得る。たとえば、抽出された特徴は、返されたWeb結果の数と、返されたディープリンクの数と、トリガーされたアンサーの数と、抑圧されたアンサーの数とを含み得る。また別の場合には、対話仮説から抽出された特徴は、自然言語表現からの単語数と、自然言語表現からのテキストと、セッション中の複数のターンからの組み合わせられたテキストとを含み得る。本明細書で説明する特徴の任意の組合せが対話仮説から抽出され得ることが諒解される。
[0042]ある場合には、スコアは、対話仮説の間の条件付き確率分布に基づいた弁別手法を使用して、計算され、ランク付けされ得る。別の場合には、スコアは、潜在的対話仮説の同時確率分布を伴う生成手法を使用して、計算され、ランク付けされ得る。上記で説明したように、HRSコンポーネント350は、ドメインコンポーネント340A〜340Nからの対話仮説と、シャローアンサーコンポーネント320からのシャローアンサーと、異なるソースからの情報の組合せと、バックエンドエンジン360からの結果とを受信し得る。この点について、対話仮説から抽出された特徴は、各対話仮説について受信された結果を分析することによって、スコアリングされ、ランク付けされる。たとえば、第1の対話仮説が第2の対話仮説よりも関連する結果を返すと判断された場合、第1の対話仮説から抽出された特徴は、第2の対話仮説からの特徴よりも高くスコアリングされ、ランク付けされることになる。
[0043]いくつかの場合には、HRSコンポーネント350は、同様である2つの対話仮説のためのスコアを計算し得る。したがって、どの対話仮説が最も高くランク付けされるべきかに関するあいまいさがあり得る。あいまいさの場合、あいまいさを弁別するために、フォールバッククエリが使用され得る。たとえば、フォールバッククエリコンポーネント330は、あいまいさを弁別するために使用され得るフォールバッククエリのセットを含み得る。たとえば、フォールバッククエリは、「すみません、よく聞こえませんでした」、「すみません、意味がわかりません」などのクエリを含み得る。他の場合には、どの対話仮説が最も高くランク付けされるべきかに関するあいまいさがあるとき、HRSコンポーネント350は、差が極めて小さい場合でも、最も高いスコアをもつ対話仮説を選ぶことを決定し得る。他の場合には、どの対話仮説が最も高くランク付けされるべきかに関するあいまいさがあるとき、HRSコンポーネント350は、「何がしたいのかよくわかりません。5ガイズバーガーレストランの営業時間を調べたいのですか?」などのあいまいさ除去質問をクライアントコンピューティングデバイス104のユーザーに送り得る。ユーザーがはいと答えた場合、HRSコンポーネント350は、その答えに関連する対話仮説を最高としてランク付けし得る。ユーザーがいいえと答えた場合、HRSコンポーネント350は、一般Web検索クエリをバックエンドエンジン360に送り得る。別の場合には、どの対話仮説が最も高くランク付けされるべきかに関するあいまいさがあるとき、HRSコンポーネント350は、2つの対話仮説間のあいまいさを除去するためにユーザーに質問し得る。たとえば、HRSコンポーネント350は、「意味するところにより近いものを教えてください:『ブロンコスの明日の天気』、または『ブロンコスは明日どこと対戦しますか』」などの質問をクライアントコンピューティングデバイス104のユーザーに質問を送り得る。
[0044]図4に、本開示の1つまたは複数の実施形態による、あいまいな要求を弁別するための方法を示す。方法400は動作402において開始し、自然言語表現が受信される。たとえば、自然言語表現は、たとえば、デジタルアシスタントアプリケーションのユーザーの意図および/または最終的な目的を判断するために、処理のために動的システムによって受信され得る。一例では、自然言語表現は、音声言語入力(たとえば、ユーザークエリおよび/または要求)の形態の句、単語、および/または用語を含み得る。この点について、自然言語表現は、あいまいであり、および/または不足している情報を有し得る。たとえば、自然言語表現「明日はいかがですか」は、独立して分析されるとき、あいまいである。
[0045]自然言語表現が動的システムにおいて受信されたとき、フローは動作404に進み、コンテキスト情報を使用して対話仮説セットが作成される。ある場合には、コンテキスト情報は、セッション中の各ターンから抽出された情報を含み得る。たとえば、抽出された情報は、ドメイン予測と、意図予測と、前のターン(たとえば、現在のセッションからの前の自然言語表現/要求)から予測されたスロットタイプ(たとえば、結果)とを含み得る。別の場合には、コンテキスト情報は、動的システムによる前のターンに対する応答を含み得る。たとえば、前のターンに対する応答は、動的システムがユーザーからの前の要求にどのように応答したか(たとえば、動的システムがユーザーに対して何を出力したか/言ったか)、クライアントコンピューティングデバイスのディスプレイ上に配置されたアイテム、クライアントコンピューティングデバイスのディスプレイ上に配置されたテキストなどを含み得る。別の場合には、コンテキスト情報はクライアントコンテキストを含み得る。たとえば、クライアントコンテキストは、クライアントコンピューティングデバイス上の連絡先リスト、クライアントコンピューティングデバイス上のカレンダー、GPS情報(たとえば、クライアントコンピューティングデバイスのロケーション)、現在時間(たとえば、朝、夜、会議中、ワークアウト中、運転など)などを含み得る。別の場合には、コンテキスト情報はナレッジコンテンツを含み得る。たとえば、ナレッジコンテンツは、自然言語表現からの特徴を記憶されたデータとマッピングするナレッジデータベースを含み得る。一例として、「ジョンハウイー」は、ナレッジデータベースではレストランにマッピングされ得る。この点について、各対話仮説が、コンテキスト情報からの様々な特徴を含む異なる表現からなるように、複数の対話仮説が、受信された自然言語表現のために生成され得る。
[0046]コンテキスト情報を使用して対話仮説セットが作成された後、フローは動作406に進み、対話仮説セットのための複数の対話応答が生成される。たとえば、対話仮説セット中の各対話仮説は、クエリ結果の対応するセットを有し得る。ある場合には、複数の対話応答は、対話仮説をWebバックエンドエンジンに送ることによって生成され得る。別の場合には、複数の対話応答はドメイン固有コンポーネントによって生成され得る。たとえば、対話仮説は、天気ドメインを示す特徴を含み得る。この場合、対話仮説は天気ドメインバックエンドエンジンに送られ得る。別の場合には、複数の対話応答は、ドメイン固有コンポーネントとWebバックエンドエンジンとによって生成され得る。この点について、複数の応答は、ドメイン固有コンポーネントとWebバックエンドエンジンの両方からの結果を含み得る。
[0047]対話仮説セットのための複数の対話応答が生成されたとき、フローは動作408に進み、対話仮説セットがランク付けされる。たとえば、対話仮説セット中の対話仮説から特徴が抽出され得る。抽出された特徴のためのスコアが計算され得る。この点について、抽出された特徴は、計算されたスコアに基づいてランク付けされ得る。次に、対話仮説セット中のどの対話仮説が最も関連する結果を返すかが判断され得る。他の場合には、最高ランクの対話仮説のためのどのバックエンドエンジンが、結果を生成するために使用すべき最良のバックエンドエンジンであるかが判断され得る。ある場合には、対話仮説から抽出された特徴は、各対話仮説について受信された結果を分析することによって、スコアリングされ、ランク付けされる。たとえば、第1の対話仮説が第2の対話仮説よりも関連する結果を返すと判断された場合、第1の対話仮説から抽出された特徴は、第2の対話仮説からの特徴よりも高くスコアリングされ、ランク付けされることになる。
[0048]対話仮説セットがランク付けされたとき、フローは動作410に進み、ランク付けに基づいたアクションが実施される。ある場合には、実施されるアクションは、結果を求めてWebバックエンドエンジンをクエリするために最高ランクの対話仮説を使用することと、結果をクライアントコンピューティングデバイスのユーザーに送ることとを含み得る。いくつかの例では、クライアントコンピューティングデバイスのユーザーは、検索結果を取得するために使用されるクエリを識別することができる。したがって、ユーザーは、検索結果を取得するために使用されるクエリが、ユーザーの元の自然言語表現/要求とは異なること、および同じセッション中のユーザーの前の要求から抽出された特徴を含み得ることを確かめ得る。他の場合には、どの対話仮説が最も高くランク付けされるべきかに関するあいまいさがあり得る。この場合、実施されるアクションは、フォールバッククエリを使用することを含み得る。たとえば、フォールバッククエリは、「すみません、よく聞こえませんでした」、「すみません、意味がわかりません」などのクエリを含み得る。他の場合には、実施されるアクションは、一般Web検索クエリをバックエンドエンジンに送ることを含み得る。
[0049]図5に、本開示の1つまたは複数の実施形態による、あいまいな要求を弁別するように対話コンポーネントをトレーニングするための方法を示す。方法500は動作502において開始し、コンテキスト情報を使用して対話仮説セットが作成される。ある場合には、コンテキスト情報は、セッション中の各ターンから抽出された情報を含み得る。たとえば、抽出された情報は、ドメイン予測と、意図予測と、前のターン(たとえば、現在のセッションからの前の自然言語表現/要求)から予測されたスロットタイプ(たとえば、結果)とを含み得る。別の場合には、コンテキスト情報は、動的システムによる前のターンに対する応答を含み得る。たとえば、前のターンに対する応答は、動的システムがユーザーからの前の要求にどのように応答したか(たとえば、動的システムがユーザーに対して何を出力したか/言ったか)、クライアントコンピューティングデバイスのディスプレイ上に配置されたアイテム、クライアントコンピューティングデバイスのディスプレイ上に配置されたテキストなどを含み得る。別の場合には、コンテキスト情報はクライアントコンテキストを含み得る。たとえば、クライアントコンテキストは、クライアントコンピューティングデバイス上の連絡先リスト、クライアントコンピューティングデバイス上のカレンダー、GPS情報(たとえば、クライアントコンピューティングデバイスのロケーション)、現在時間(たとえば、朝、夜、会議中、ワークアウト中、運転など)などを含み得る。別の場合には、コンテキスト情報はナレッジコンテンツを含み得る。たとえば、ナレッジコンテンツは、自然言語表現からの特徴を記憶されたデータとマッピングするナレッジデータベースを含み得る。一例として、「ジョンハウイー」は、ナレッジデータベースではレストランにマッピングされ得る。この点について、各対話仮説が、コンテキスト情報からの様々な特徴を含む異なる表現からなるように、複数の対話仮説が、受信された自然言語表現のために生成され得る。
[0050]コンテキスト情報を使用して対話仮説セットが作成された後、フローは動作504に進み、対話仮説セットのための複数の対話応答が生成される。たとえば、対話仮説セット中の各対話仮説は、クエリ結果の対応するセットを有し得る。ある場合には、複数の対話応答は、対話仮説をWebバックエンドエンジンに送ることによって生成され得る。別の場合には、複数の対話応答はドメイン固有コンポーネントによって生成され得る。たとえば、対話仮説は、天気ドメインを示す特徴を含み得る。この場合、対話仮説は天気ドメインバックエンドエンジンに送られ得る。別の場合には、複数の対話応答は、ドメイン固有コンポーネントとWebバックエンドエンジンとによって生成され得る。この点について、複数の応答は、ドメイン固有コンポーネントとWebバックエンドエンジンの両方からの結果を含み得る。
[0051]複数の対話応答が生成されたとき、フローは動作506に進み、複数の対話応答は、複数のログ記録された対話応答と比較される。ある場合には、ログ記録された応答は、(作成された対話仮説から生成された応答とは対照的に)自然言語表現から生成された応答を含み得る。たとえば、セッションの第1のターンは、自然言語表現「明日の天気はどのようですか」を含み得、セッションの第2のターンは、自然言語表現「ブロンコスはそのときどこと対戦しますか」を含み得る。この場合、ユーザーは、関連する結果を入手するために再クエリしなければならないことがある。したがって、セッションの第3のターンは、自然言語表現「ブロンコスは明日どこと対戦しますか」を含み得る。セッションからのすべてのデータはログ記録され得る。たとえば、第1のターン、第2のターン、および第3のターンならびにそれらの対応する応答がログ記録され得る。したがって、一例では、ユーザーが再クエリしなければならなかった第3のターンからの結果は、結果間の類似性を判断するために対話仮説の結果と比較され得る。
[0052]動作508において、複数の対話応答のうちのどれが、ログ記録された対話応答に一致するかが判断される。対話応答が、ログ記録された応答に一致すると判断されたとき、フローは動作510に進み、ログ記録された応答に一致する対話応答に対応する対話仮説にラベルが付けられる。たとえば、ラベルは、対話仮説を作成するために前のターンから引き継がれた特徴が、引き継ぐべき有効な特徴であることを対話コンポーネントに示し得る。すなわち、それらの特徴を引き継ぐことは、関連する応答を生成することを可能にし得る。一例では、ラベルは「真」ラベルであり得る。いくつかの場合には、2つ以上の対話仮説にラベルが付けられ得る。たとえば、ログ記録された応答および/または複数のログ記録された対話応答に一致する2つ以上の対話応答があり得る。この場合、ログ記録された対話応答および/または複数のログ記録された対話応答に一致する対話応答と対応する対話仮説にラベルが付けられ得る。ログ記録された応答に一致する対話応答に対応する対話仮説にラベルが付けられた後、対話仮説は記憶され得る(たとえば、動作512)。対話応答が、ログ記録された応答に一致しないと判断されたとき、フローは動作512に進み、ログ記録された応答に一致しない対話応答に対応する対話仮説が記憶される。
[0053]図6に、本開示の1つまたは複数の態様による、あいまいな要求を弁別するための例示的な方法を示す。方法600は動作602において開始し、自然言語表現が受信される。たとえば、自然言語表現は、たとえば、デジタルアシスタントアプリケーションのユーザーの意図および/または最終的な目的を判断するために、処理のために動的システムによって受信され得る。一例では、自然言語表現は、音声言語入力(たとえば、ユーザークエリおよび/または要求)の形態の句、単語、および/または用語を含み得る。この点について、自然言語表現は、あいまいであり、および/または不足している情報を有し得る。たとえば、自然言語表現「明日はいかがですか」は、独立して分析されるとき、あいまいである。
[0054]自然言語表現が動的システムにおいて受信されたとき、フローは動作604に進み、コンテキスト情報を使用して対話仮説セットが作成される。ある場合には、コンテキスト情報は、セッション中の各ターンから抽出された情報を含み得る。たとえば、抽出された情報は、ドメイン予測と、意図予測と、前のターン(たとえば、現在のセッションからの前の自然言語表現/要求)から予測されたスロットタイプ(たとえば、結果)とを含み得る。別の場合には、コンテキスト情報は、動的システムによる前のターンに対する応答を含み得る。たとえば、前のターンに対する応答は、動的システムがユーザーからの前の要求にどのように応答したか(たとえば、動的システムがユーザーに対して何を出力したか/言ったか)、クライアントコンピューティングデバイスのディスプレイ上に配置されたアイテム、クライアントコンピューティングデバイスのディスプレイ上に配置されたテキストなどを含み得る。別の場合には、コンテキスト情報はクライアントコンテキストを含み得る。たとえば、クライアントコンテキストは、クライアントコンピューティングデバイス上の連絡先リスト、クライアントコンピューティングデバイス上のカレンダー、GPS情報(たとえば、クライアントコンピューティングデバイスのロケーション)、現在時間(たとえば、朝、夜、会議中、ワークアウト中、運転など)などを含み得る。別の場合には、コンテキスト情報はナレッジコンテンツを含み得る。たとえば、ナレッジコンテンツは、自然言語表現からの特徴を記憶されたデータとマッピングするナレッジデータベースを含み得る。一例として、「ジョンハウイー」は、ナレッジデータベースではレストランにマッピングされ得る。この点について、各対話仮説が、コンテキスト情報からの様々な特徴を含む異なる表現からなるように、複数の対話仮説が、受信された自然言語表現のために生成され得る。
[0055]コンテキスト情報を使用して対話仮説セットが作成された後、フローは動作606に進み、対話仮説セットのための複数の対話応答が生成される。たとえば、対話仮説セット中の各対話仮説は、クエリ結果の対応するセットを有し得る。ある場合には、複数の対話応答は、対話仮説をWebバックエンドエンジンに送ることによって生成され得る。別の場合には、複数の対話応答はドメイン固有コンポーネントによって生成され得る。たとえば、対話仮説は、天気ドメインを示す特徴を含み得る。この場合、対話仮説は天気ドメインバックエンドエンジンに送られ得る。別の場合には、複数の対話応答は、ドメイン固有コンポーネントとWebバックエンドエンジンとによって生成され得る。この点について、複数の応答は、ドメイン固有コンポーネントとWebバックエンドエンジンの両方からの結果を含み得る。
[0056]対話仮説セットのための複数の対話応答が生成されたとき、フローは動作608に進み、対話仮説セットがランク付けされる。たとえば、対話仮説セット中の対話仮説から特徴が抽出され得る。抽出された特徴のためのスコアが計算され得る。この点について、抽出された特徴は、計算されたスコアに基づいてランク付けされ得る。次に、対話仮説セット中のどの対話仮説が最も関連する結果を返すかが判断され得る。他の場合には、最高ランクの対話仮説のためのどのバックエンドエンジンが、結果を生成するために使用すべき最良のバックエンドエンジンであるかが判断され得る。ある場合には、対話仮説から抽出された特徴は、各対話仮説について受信された結果を分析することによって、スコアリングされ、ランク付けされる。たとえば、第1の対話仮説が第2の対話仮説よりも関連する結果を返すと判断された場合、第1の対話仮説から抽出された特徴は、第2の対話仮説からの特徴よりも高くスコアリングされ、ランク付けされることになる。
[0057]動作610において、対話仮説セットのランク付けがあいまいであるかどうかが判断される。たとえば、2つまたはそれ以上の対話仮説が同様のスコアを有し得、したがって、最も高いスコアをもつ対話仮説に関するあいまいさがある。対話仮説セットのランク付けがあいまいであると判断されたとき、フローは動作612に進み、フォールバッククエリが使用される。たとえば、フォールバッククエリは、「すみません、よく聞こえませんでした」、「すみません、意味がわかりません」などのクエリを含み得る。対話仮説セットのランク付けがあいまいでないと判断されたとき、フローは動作614に進み、ランク付けに基づいてアクションが実施される。たとえば、実施されるアクションは、結果を求めてWebバックエンドエンジンをクエリするために最高ランクの対話仮説を使用することと、結果をクライアントコンピューティングデバイスのユーザーに送ることとを含み得る。別の例では、実施されるアクションは、一般Web検索クエリをバックエンドエンジンに送ることを含み得る。
[0058]図7〜図10および関連する説明は、本開示の態様が実施され得る様々な動作環境の説明を与える。ただし、図7〜図10に関して図示および説明されるデバイスおよびシステムは、例および例示のためのものであり、本明細書で説明する、本開示の実施形態を実施するために利用され得る膨大な数のコンピューティングデバイス構成を限定するものではない。
[0059]図7は、本開示の態様がそれを用いて実施され得るコンピューティングデバイス700の物理的コンポーネント(たとえば、ハードウェア)を示すブロック図である。以下で説明するコンピューティングデバイスコンポーネントは、本明細書で開示する方法400〜600を採用するために実行され得る、たとえばクライアントおよび/またはコンピューターの、デジタルアシスタントアプリケーション713のためのコンピューター実行可能命令、たとえばクライアントの、コンテキスト言語理解モジュール711のための実行可能命令を有し得る。基本構成では、コンピューティングデバイス700は、少なくとも1つの処理ユニット702とシステムメモリ704とを含み得る。コンピューティングデバイスの構成およびタイプに応じて、システムメモリ704は、限定はしないが、揮発性ストレージ(たとえば、ランダムアクセスメモリ)、不揮発性ストレージ(たとえば、読み取り専用メモリ)、フラッシュメモリ、またはそのようなメモリの任意の組合せを含み得る。システムメモリ704は、オペレーティングシステム705と、図1〜図3に関する、あいまいな要求を弁別するアプリケーション、および特にデジタルアシスタントアプリケーション713または対話モジュール711など、ソフトウェアアプリケーション720を実行するのに好適な1つまたは複数のプログラムモジュール706とを含み得る。オペレーティングシステム705は、たとえば、コンピューティングデバイス700の動作を制御するのに好適であり得る。さらに、本開示の実施形態は、グラフィックスライブラリ、他のオペレーティングシステム、または他のアプリケーションプログラムとともに実施され得、特定の適用例またはシステムに限定されない。この基本構成は、破線708内のコンポーネントによって図7に示されている。コンピューティングデバイス700は追加の特徴または機能を有し得る。たとえば、コンピューティングデバイス700は、たとえば、磁気ディスク、光ディスク、またはテープなどの追加のデータストレージデバイス(リムーバブルおよび/または非リムーバブル)をも含み得る。そのような追加のストレージは、リムーバブルストレージデバイス709および非リムーバブルストレージデバイス710によって図7に示されている。
[0060]上述のように、いくつかのプログラムモジュールおよびデータファイルがシステムメモリ704に記憶され得る。処理ユニット702上で実行する間、プログラムモジュール706(たとえば、対話モジュール711またはデジタルアシスタントアプリケーション713)は、本明細書で説明するように、限定はしないが、態様を含むプロセスを実施し得る。本開示の態様に従って使用され得る、および特にコンテキスト言語理解のための、他のプログラムモジュールは、シングルターンモデル、マルチターンモデル、組合せモデル、最終モデル、および/またはコンピューター支援アプリケーションプログラムなどを含み得る。
[0061]さらに、本開示の実施形態は、個別電子素子を備える電気回路、論理ゲートを含んでいるパッケージ化または集積電子チップ、マイクロプロセッサを利用する回路中で、あるいは電子素子またはマイクロプロセッサを含んでいる単一のチップ上で実施され得る。たとえば、本開示の実施形態はシステムオンチップ(SOC)を介して実施され得、図7に示されたコンポーネントの各々または多くは単一の集積回路上に集積され得る。そのようなSOCデバイスは、1つまたは複数の処理ユニットと、グラフィックスユニットと、通信ユニットと、システム仮想化ユニットと、様々なアプリケーション機能とを含み得、それらのすべては単一の集積回路としてチップ基板上に集積される(または「焼き込まれる」)。SOCを介して動作するとき、プロトコルを切り替えるクライアントの能力に関する、本明細書で説明する機能は、単一の集積回路(チップ)上にコンピューティングデバイス600の他のコンポーネントとともに集積された特定用途向け論理を介して動作させられ得る。本開示の実施形態はまた、限定はしないが、機械、光、流体、および量子技術を含む、たとえば、AND、OR、およびNOTなどの論理演算を実施することが可能な他の技術を使用して実施され得る。さらに、本開示の実施形態は、汎用コンピューター内であるいは他の回路またはシステム中で実施され得る。
[0062]コンピューティングデバイス700はまた、キーボード、マウス、ペン、サウンドまたはボイス入力デバイス、タッチまたはスワイプ入力デバイスなど、1つまたは複数の入力デバイス712を有し得る。ディスプレイ、スピーカー、プリンターなどの(1つまたは複数の)出力デバイス714も含まれ得る。上述のデバイスは例であり、他のものが使用され得る。コンピューティングデバイス700は、他のコンピューティングデバイス718との通信を可能にする1つまたは複数の通信接続716を含み得る。好適な通信接続716の例としては、限定はしないが、RF送信機、受信機、および/またはトランシーバ回路、ユニバーサルシリアルバス(USB)、パラレル、および/またはシリアルポートがある。
[0063]本明細書で使用するコンピューター可読媒体という用語はコンピューター記憶媒体を含み得る。コンピューター記憶媒体は、コンピューター可読命令、データ構造、またはプログラムモジュールなど、情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含み得る。システムメモリ704、リムーバブルストレージデバイス709、および非リムーバブルストレージデバイス710は、すべてコンピューター記憶媒体例(たとえば、メモリストレージ)である。コンピューター記憶媒体は、RAM、ROM、電気的消去可能読み取り専用ROM(EEPROM)、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは情報を記憶するために使用され得、コンピューティングデバイス700によってアクセスされ得る他の製造品を含み得る。いかなるそのようなコンピューター記憶媒体もコンピューティングデバイス700の一部であり得る。コンピューター記憶媒体は、搬送波あるいは他の伝搬または変調されたデータ信号を含まない。
[0064]通信媒体は、コンピューター可読命令、データ構造、プログラムモジュール、あるいは、搬送波または他のトランスポート機構など、変調されたデータ信号中の他のデータによって実施され得、任意の情報配信媒体を含む。「変調されたデータ信号」という用語は、信号中の情報を符号化するような様式で設定または変更された1つまたは複数の特性を有する信号を表し得る。限定ではなく例として、通信媒体は、ワイヤードネットワークまたは直接ワイヤード接続などのワイヤード媒体、ならびに音響、無線周波数(RF)、赤外線、および他のワイヤレス媒体などのワイヤレス媒体を含み得る。
[0065]図8Aおよび図8Bに、本開示の実施形態がそれを用いて実施され得るモバイルコンピューティングデバイス800、たとえば、携帯電話、スマートフォン、(スマートウォッチなどの)ウェアラブルコンピューター、タブレットコンピューター、ラップトップコンピューターなどを示す。いくつかの態様では、クライアントはモバイルコンピューティングデバイスであり得る。図8Aを参照すると、態様を実装するためのモバイルコンピューティングデバイス800の一態様が示されている。基本構成では、モバイルコンピューティングデバイス800は、入力要素と出力要素の両方を有するハンドヘルドコンピューターである。モバイルコンピューティングデバイス800は、一般に、ディスプレイ805と、ユーザーが情報をモバイルコンピューティングデバイス800に入力することを可能にする1つまたは複数の入力ボタン810とを含む。モバイルコンピューティングデバイス800のディスプレイ805は入力デバイス(たとえば、タッチスクリーンディスプレイ)としても機能し得る。含まれる場合、オプションの側面入力要素815がさらなるユーザー入力を可能にする。側面入力要素815は、ロータリースイッチ、ボタン、または他のタイプの手動入力要素であり得る。代替態様では、モバイルコンピューティングデバイス800は、より多いまたはより少ない入力要素を組み込み得る。たとえば、ディスプレイ805は、いくつかの実施形態ではタッチスクリーンでないことがある。また別の代替実施形態では、モバイルコンピューティングデバイス800は、携帯電話など、ポータブル電話システムである。モバイルコンピューティングデバイス800はまた、オプションのキーパッド835を含み得る。オプションのキーパッド835は、物理的キーパッド、またはタッチスクリーンディスプレイ上に生成される「ソフト」キーパッドであり得る。様々な実施形態では、出力要素は、グラフィカルユーザーインターフェイス(GUI)を示すためのディスプレイ805、ビジュアルインジケーター820(たとえば、発光ダイオード)、および/またはオーディオトランスデューサー825(たとえば、スピーカー)を含む。いくつかの態様では、モバイルコンピューティングデバイス800は、ユーザーに触覚フィードバックを与えるための振動トランスデューサーを組み込む。また別の態様では、モバイルコンピューティングデバイス800は、信号を外部デバイスに送るかまたはそれから信号を受信するための、オーディオ入力(たとえば、マイクジャック)、オーディオ出力(たとえば、ヘッドフォンジャック)、およびビデオ出力(たとえば、HDMI(登録商標)ポート)など、入力および/または出力ポートを組み込む。
[0066]図8Bは、モバイルコンピューティングデバイスの一態様のアーキテクチャを示すブロック図である。すなわち、モバイルコンピューティングデバイス800は、いくつかの態様を実装するためにシステム(たとえば、アーキテクチャ)802を組み込むことができる。一実施形態では、システム802は、1つまたは複数のアプリケーション(たとえば、ブラウザー、電子メール、カレンダー機能(calendaring)、連絡先マネージャー、メッセージングクライアント、ゲーム、およびメディアクライアント/プレーヤー)を実行することが可能な「スマートフォン」として実装される。いくつかの態様では、システム802は、統合された携帯情報端末(PDA)およびワイヤレス電話など、コンピューティングデバイスとして統合される。
[0067]1つまたは複数のアプリケーションプログラム866は、メモリ862に読み込まれ、オペレーティングシステム864上でまたはそれに関連して実行され得る。アプリケーションプログラムの例としては、電話ダイヤラープログラム、電子メールプログラム、個人情報管理(PIM)プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザープログラム、メッセージングプログラムなどがある。システム802はまた、メモリ862内に不揮発性ストレージ領域868を含む。不揮発性ストレージ領域868は、システム802が電源を切断された場合に失われるべきでない永続情報を記憶するために使用され得る。アプリケーションプログラム866は、電子メールまたは電子メールアプリケーションによって使用される他のメッセージなど、不揮発性ストレージ領域868中の情報を使用し、それに記憶し得る。また、同期アプリケーション(図示せず)がシステム802上に常駐し、不揮発性ストレージ領域868に記憶された情報を、ホストコンピューターにおいて記憶された対応する情報と同期させておくために、ホストコンピューター上に常駐する対応する同期アプリケーションと対話するようにプログラムされる。諒解されるべきであるように、本明細書で説明するようにカレンダーイベントを作成するための命令(たとえば、および/またはオプションでカレンダーイベント作成モジュール711)を含む、他のアプリケーションが、メモリ862に読み込まれ、モバイルコンピューティングデバイス800上で実行され得る。
[0068]システム802は、1つまたは複数のバッテリーとして実装され得る電源870を有する。電源870は、バッテリーを補足または再充電する、ACアダプターまたは電力供給されるドッキングクレイドルなど、外部電源をさらに含み得る。
[0069]システム802は、無線周波数通信を送信および受信する機能を実施する無線機872をも含み得る。無線機872は、通信キャリアまたはサービスプロバイダーを介して、システム802と「外界」との間のワイヤレス接続を可能にする。無線機872へのおよびそれからの送信は、オペレーティングシステム864の制御下で行われる。言い換えれば、無線機872によって受信された通信は、オペレーティングシステム864を介してアプリケーションプログラム866に配布され得、その逆も同様である。
[0070]ビジュアルインジケーター820が、ビジュアル通知を与えるために使用され得、および/またはオーディオインターフェイス874が、オーディオトランスデューサー825を介して可聴通知を生成するために使用され得る。図示の実施形態では、ビジュアルインジケーター820は発光ダイオード(LED)であり、オーディオトランスデューサー825はスピーカーである。これらのデバイスは、電源870に直接結合され得、したがって、アクティブ化されたとき、それらのデバイスは、プロセッサ860および他のコンポーネントがバッテリー電力を温存するために停止することがあっても、通知機構によって規定された継続時間の間オンにとどまる。LEDは、デバイスの電源投入ステータスを示すために、ユーザーがアクションをとるまで無期限にオンにとどまるようにプログラムされ得る。オーディオインターフェイス874は、ユーザーに可聴信号を与え、ユーザーから可聴信号を受信するために使用される。たとえば、オーディオトランスデューサー825に結合されることに加えて、オーディオインターフェイス874は、電話会話を可能にするためになど、可聴入力を受信するためにマイクにも結合され得る。本開示の実施形態によれば、マイクは、以下で説明するように、通知の制御を可能にするためのオーディオセンサーとしても働き得る。システム802は、静止画像、ビデオストリームなどを記録するために、オンボードカメラ830の動作を可能にするビデオインターフェイス876をさらに含み得る。
[0071]システム802を実装するモバイルコンピューティングデバイス800は、追加の特徴または機能を有し得る。たとえば、モバイルコンピューティングデバイス800は、磁気ディスク、光ディスク、またはテープなどの追加のデータストレージデバイス(リムーバブルおよび/または非リムーバブル)をも含み得る。そのような追加のストレージは、不揮発性ストレージ領域868によって図8Bに示されている。
[0072]モバイルコンピューティングデバイス800によって生成またはキャプチャされ、システム802を介して記憶されたデータ/情報は、上記で説明したように、モバイルコンピューティングデバイス800上にローカルに記憶され得、あるいはデータは、無線機872を介して、またはモバイルコンピューティングデバイス800と、モバイルコンピューティングデバイス800に関連する別個のコンピューティングデバイス、たとえば、インターネットなど、分散コンピューティングネットワーク中のサーバーコンピューターとの間のワイヤード接続を介して、デバイスによってアクセスされ得る任意の数の記憶媒体に記憶され得る。諒解されるべきであるように、そのようなデータ/情報は、無線機872を介してまたは分散コンピューティングネットワークを介して、モバイルコンピューティングデバイス800を介してアクセスされ得る。同様に、そのようなデータ/情報は、電子メールおよび共同的データ/情報共有システムを含む、よく知られているデータ/情報転送および記憶手段に従って、記憶および使用のためにコンピューティングデバイス間で容易に転送され得る。
[0073]図9に、上記で説明したように、コンピューティングデバイス904、タブレット906、またはモバイルデバイス908など、リモートソースからコンピューティングシステムにおいて受信されたデータを処理するためのシステムのアーキテクチャの一態様を示す。サーバーデバイス902において表示されるコンテンツは、異なる通信チャネルまたは他のストレージタイプに記憶され得る。たとえば、様々なドキュメントは、ディレクトリサービス922、Webポータル924、メールボックスサービス926、インスタントメッセージングストア928、またはソーシャルネットワーキングサイト930を使用して記憶され得る。デジタルアシスタントアプリケーション713は、サーバー902と通信するクライアントによって採用され得る。サーバー902は、ネットワーク915を通して、パーソナルコンピューター904、タブレットコンピューティングデバイス906および/またはモバイルコンピューティングデバイス908(たとえば、スマートフォン)などのクライアントコンピューティングデバイスにおよびそれからデータを与え得る。例として、図1〜図3に関して上記で説明したコンピューターシステムは、パーソナルコンピューター904、タブレットコンピューティングデバイス906および/またはモバイルコンピューティングデバイス908(たとえば、スマートフォン)中に埋め込まれ得る。コンピューティングデバイスのこれらの実施形態のいずれも、グラフィック発信側システムにおいて前処理されるべき、または受信側コンピューティングシステムにおいて後処理されるべき使用可能なグラフィカルデータを受信することに加えて、ストア916からコンテンツを取得し得る。
[0074]図10に、本明細書で開示する1つまたは複数の態様を実行し得る例示的なタブレットコンピューティングデバイス1000を示す。さらに、本明細書で説明する態様および機能は、アプリケーション機能、メモリ、データ記憶および取得ならびに様々な処理機能が、インターネットまたはイントラネットなど、分散コンピューティングネットワーク上で互いからリモートで動作させられ得る、分散型システム(たとえば、クラウドベースコンピューティングシステム)上で動作し得る。様々なタイプのユーザーインターフェイスおよび情報が、オンボードコンピューティングデバイスディスプレイを介して、または1つまたは複数のコンピューティングデバイスに関連するリモートディスプレイユニットを介して表示され得る。たとえば、様々なタイプのユーザーインターフェイスおよび情報は、様々なタイプのユーザーインターフェイスおよび情報がその上に投影される壁面上で表示され、対話され得る。本発明の実施形態がそれを用いて実施され得る多数のコンピューティングシステムとの対話は、キーストローク入力、タッチスクリーン入力、ボイスまたは他のオーディオ入力、関連するコンピューティングデバイスが、コンピューティングデバイスの機能を制御するためのユーザージェスチャーをキャプチャし、解釈するための検出(たとえば、カメラ)機能を装備している場合のジェスチャー入力などを含む。
[0075]例の中でも、本開示は、自然言語表現を受信することであって、自然言語表現が、テキストの単語、用語、および句のうちの少なくとも1つを含む、受信することと、コンテキスト情報を使用することによって自然言語表現からの対話仮説セットを作成することであって、対話仮説セットが少なくとも2つの対話仮説を有する、作成することと、対話仮説セットのための複数の対話応答を生成することと、複数の対話応答の分析に基づいて対話仮説セットをランク付けすることと、対話仮説セットをランク付けすることに基づいてアクションを実施することとを含む、あいまいな要求を弁別するためのシステムを提示する。さらなる例では、自然言語表現は、音声言語入力およびテキスト入力のうちの少なくとも1つである。さらなる例では、コンテキスト情報は、前に受信した自然言語表現から抽出された情報、前に受信した自然言語表現に対する応答、クライアントコンテキスト、およびナレッジコンテンツのうちの少なくとも1つを含む。さらなる例では、前に受信した自然言語表現から抽出された情報は、少なくともドメイン予測と、意図予測と、スロットタイプとを含む。さらなる例では、対話仮説セットを作成することは、自然言語表現から少なくとも1つの特徴を抽出することと、少なくとも2つの対話仮説を生成することであって、対話仮説セットの各対話仮説が、少なくとも1つの抽出された特徴を有する異なる自然言語表現を含む、生成することとを含む。さらなる例では、対話仮説セットのための複数の対話応答を生成することは、対話仮説セットの各対話仮説のための複数の応答を生成することを含む。さらなる例では、対話仮説セットのための複数の対話応答を生成することは、対話仮説をWebバックエンドエンジンに送ること、および対話仮説をドメイン固有コンポーネントに送ることのうちの少なくとも1つを含む。さらなる例では、複数の対話応答の分析に基づいて対話仮説セットをランク付けすることは、対話仮説セット中の少なくとも2つの対話仮説から特徴を抽出することと、抽出された特徴のためのスコアを計算することであって、計算されたスコアが対話仮説セット内の対話仮説ランクを示す、計算することとを含む。さらなる例では、複数の対話応答の分析に基づいて対話仮説セットをランク付けすることは、複数の対話応答を複数のログ記録された対話応答と比較することを含む。さらなる例では、対話仮説セットをランク付けすることに基づいてアクションを実施することは、結果を求めてWebバックエンドエンジンをクエリするために最高ランクの対話仮説を使用することと、結果をクライアントコンピューティングデバイスのユーザーに送ることとを含む。
[0076]本明細書で開示するさらなる態様は、複数の自然言語表現を受信するための音声認識コンポーネントであって、複数の自然言語表現が、テキストの単語、用語、および句のうちの少なくとも1つを含む、音声認識コンポーネントと、複数の自然言語表現から第1のフォールバッククエリを作成することであって、第1のフォールバッククエリを作成することが、複数の自然言語表現を連結することを含む、作成することと、少なくとも1つのフォールバッククエリから検索結果を生成するために少なくとも1つのフォールバッククエリをバックエンドエンジンに送ることとを行うための対話コンポーネントとを含む例示的なシステムを提供する。さらなる例では、本システムは、バックエンドエンジンから検索結果を受信するための対話コンポーネントをさらに含む。さらなる例では、本システムは、複数の自然言語表現に対してストップワード削除分析を実施するための対話コンポーネントをさらに含む。さらなる例では、本システムは、複数の自然言語表現から第2のフォールバッククエリを作成するための対話コンポーネントをさらに含み、第2のフォールバッククエリを作成することは、複数の自然言語表現に対して実施されたストップワード削除分析を連結することを含む。さらなる例では、本システムは、複数の自然言語表現から意味論的エンティティを抽出するための対話コンポーネントをさらに含む。さらなる例では、本システムは、複数の自然言語表現から第3のフォールバッククエリを作成するための対話コンポーネントをさらに含み、第3のフォールバッククエリを作成することは、複数の自然言語表現から抽出された意味論的エンティティを連結することを含む。
[0077]本明細書で開示する追加の態様は、あいまいな要求を弁別するように対話コンポーネントをトレーニングするための例示的なシステムおよび方法を提供し、本方法は、
コンテキスト情報を使用することによって自然言語表現からの対話仮説セットを作成するステップであって、対話仮説セットが少なくとも2つの対話仮説を有する、作成するステップと、対話仮説セットのための複数の対話応答を生成するステップと、複数の対話応答を複数のログ記録された対話応答と比較するステップと、複数の対話応答のうちの少なくとも1つが、ログ記録された対話応答のうちの少なくとも1つに一致するかどうかを判断するステップと、複数の対話応答のうちの少なくとも1つが、ログ記録された対話応答のうちの少なくとも1つに一致すると判断されたとき、少なくとも1つのログ記録された対話応答に一致する少なくとも1つの対話応答に対応する対話仮説セット中の2つの対話仮説のうちの少なくとも1つにラベルを付けるステップとを含む。さらなる例では、複数のログ記録された対話応答は、自然言語表現から生成された複数の応答を含む。さらなる例では、対話仮説セットを作成するステップは、自然言語表現から少なくとも1つの特徴を抽出するステップと、少なくとも2つの対話仮説を生成するステップであって、対話仮説セットの各対話仮説が、少なくとも1つの抽出された特徴を有する異なる自然言語表現を含む、生成するステップとを含む。さらなる例では、少なくとも1つのログ記録された対話応答に一致する少なくとも1つの対話応答に対応する対話仮説セット中の2つの対話仮説のうちの少なくとも1つにラベルを付けるステップは、少なくとも1つの抽出された特徴を有する自然言語表現が、関連する応答を生成するために使用され得ることを示す。
[0078]本開示の態様について、たとえば、本開示の態様による方法、システム、およびコンピュータープログラム製品のブロック図ならびに/または動作図を参照しながら上記で説明した。ブロック中で言及された機能/行為は、フローチャートに示された順序以外で行われ得る。たとえば、連続して示された2つのブロックは、事実上、実質的に同時に実行され得、またはブロックは、関与する機能/行為に応じて、時々逆順で実行され得る。
[0079]本出願で提供される1つまたは複数の態様の説明および例示は、請求する本開示の範囲をいかなる形でも限定または制限するものではない。本出願で提供される態様、例、および詳細は、所有権(possession)を伝え、請求する開示の最良の形態を他者が製作および使用することを可能にするのに十分であると考えられる。請求する開示は、本出願で提供されるいかなる態様、例、または詳細にも限定されると解釈されるべきではない。組合せで図示および説明されているか、別々に図示および説明されているかにかかわらず、(構造的および方法論的の両方の)様々な特徴は、特徴の特定のセットをもつ実施形態を作り出すために選択的に含められるかまたは省略されるものとする。本出願の説明および例示を提供された当業者は、請求する開示のより広い範囲から逸脱しない、本出願で具現化された一般的な発明的概念のより広範な態様の趣旨内に入る変形形態、変更形態、および代替態様を想定し得る。

Claims (21)

  1. 少なくとも1つのプロセッサと、
    少なくとも1つのプロセッサに、あいまいな要求を弁別するための方法を実施させるプログラムを記憶したメモリと
    を含むシステムであって、前記方法は、
    自然言語表現を受けるステップであって、前記自然言語表現は、テキストの単語、用語、および句のうちの少なくとも1つを含む、ステップと、
    対話仮説セットを、前記自然言語表現から、コンテキスト情報を使用することによって作成するステップであって、前記対話仮説セットが、第1ドメインに対応する第1対話仮説と、第2ドメインに対応する第2対話仮説とを含む、ステップと、
    第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントから、前記対話仮説セットのための複数の対話応答を生成するステップと、
    機械学習技法により、前記第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントを、前記複数の前記対話応答の分析に基づいてランク付けするステップと、
    最も高くランク付けされたドメインエンジンコンポーネントを用いてアクションを実施するステップと
    を含む、システム。
  2. 請求項1に記載のシステムであって、前記自然言語表現は、音声言語入力およびテキスト入力のうちの少なくとも1つである、システム。
  3. 請求項1または2に記載のシステムであって、前記コンテキスト情報は、前に受けた自然言語表現から抽出された情報と、前に受けた自然言語表現に対する応答と、クライアントコンテキストと、ナレッジコンテンツとのうちの少なくとも1つを含む、システム。
  4. 請求項3に記載のシステムであって、前記前に受けた自然言語表現から抽出された前記情報は、少なくとも、ドメイン予測と、意図予測と、スロットタイプとを含む、システム。
  5. 請求項1から4のいずれか一項に記載のシステムであって、前記対話仮説セットを作成するステップは、
    少なくとも1つの特徴を前記自然言語表現から抽出するステップと、
    少なくとも2つの対話仮説を生成するステップであって、前記対話仮説セットの各対話仮説は、少なくとも1つの抽出された特徴を含む異なる自然言語表現を含む、ステップと
    を含む、システム。
  6. 請求項1から5のいずれか一項に記載のシステムであって、前記対話仮説セットのための複数の対話応答を生成するステップは、前記対話仮説セットの各対話仮説について複数の応答を生成するステップを含む、システム。
  7. 請求項1から6のいずれか一項に記載のシステムであって、前記対話仮説セットのための複数の対話応答を生成するステップは、対話仮説をWebバックエンドエンジンに送るステップと、対話仮説をドメイン固有コンポーネントに送るステップとのうちの少なくとも1つを含む、システム。
  8. 請求項1から7のいずれか一項に記載のシステムであって、ランク付けする前記ステップは、
    特徴を、前記対話仮説セット中の対話仮説から抽出するステップと、
    抽出された前記特徴のためのスコアを計算するステップであって、計算された前記スコアは前記対話仮説セット内の対話仮説ランクを示す、ステップと
    を含む、システム。
  9. 請求項1から8のいずれか一項に記載のシステムであって、ランク付けする前記ステップは、前記複数の前記対話応答を複数のログ記録された対話応答と比較するステップをさらに含む、システム。
  10. 請求項1から9のいずれか一項に記載のシステムであって、最も高くランク付けされたドメインエンジンコンポーネントを用いてアクションを実施するステップは、
    最も高くランク付けされた対話仮説を用いて結果についてウェブバックエンドエンジンに問い合わせるステップと、
    前記結果をクライアントコンピューティングデバイスのユーザ送るステップと
    を含む、システム。
  11. 少なくとも1つのプロセッサに、対話コンポーネントをトレーニングしてあいまいな要求を弁別するための方法を実施させるプログラムであって、前記方法は、
    自然言語表現を受けるステップであって、前記自然言語表現は、テキストの単語、用語、および句のうちの少なくとも1つを含む、ステップと、
    対話仮説セットを、前記自然言語表現から、コンテキスト情報を使用することによって作成するステップであって、前記対話仮説セットが、第1ドメインに対応する第1対話仮説と、第2ドメインに対応する第2対話仮説とを含む、ステップと、
    第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントから、前記対話仮説セットのための複数の対話応答を生成するステップと、
    機械学習技法により、前記第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントを、前記複数の前記対話応答の分析に基づいてランク付けするステップと、
    最も高くランク付けされたドメインエンジンコンポーネントを用いてアクションを実施するステップと
    を含む、プログラム。
  12. 請求項11に記載のプログラムであって、前記方法は、前記複数の対話応答を複数のログ記録された対話応答と比較するステップをさらに含み、複数のログ記録された対話応答は、前記自然言語表現から生成された複数の応答を含む、プログラム。
  13. 請求項11または12に記載のプログラムであって、前記対話仮説セットを作成するステップは、
    少なくとも1つの特徴を前記自然言語表現から抽出するステップと、
    少なくとも2つの対話仮説を生成するステップであって、前記対話仮説セットの各対話仮説は、少なくとも1つの抽出された特徴を含む異なる自然言語表現を含む、ステップと
    を含む、プログラム。
  14. 請求項12に記載のプログラムであって、前記方法は、
    前記複数の対話応答のうちの少なくとも1つが前記ログ記録された対話応答のうちの少なくとも1つと一致するかを判定するステップと、
    前記対話仮説セット内の少なくとも1つの対話仮説であって、前記少なくとも1つのログ記録された対話応答と一致する前記少なくとも1つの対話応答に対応する前記少なくとも1つの対話仮説をラベル付けするステップと
    をさらに含む、プログラム。
  15. 請求項11から14のいずれか一項に記載のプログラムを含む1つまたは複数のコンピュータ可読記憶媒体。
  16. コンピュータが実行する方法であって、
    自然言語表現を受けるステップであって、前記自然言語表現は、テキストの単語、用語、および句のうちの少なくとも1つを含む、ステップと、
    対話仮説セットを、前記自然言語表現から、コンテキスト情報を使用することによって作成するステップであって、前記対話仮説セットが、第1ドメインに対応する第1対話仮説と、第2ドメインに対応する第2対話仮説とを含む、ステップと、
    第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントから、前記対話仮説セットのための複数の対話応答を生成するステップと、
    機械学習技法により、前記第1ドメインエンジンコンポーネントおよび第2ドメインエンジンコンポーネントを、前記複数の前記対話応答の分析に基づいてランク付けするステップと、
    最も高くランク付けされたドメインエンジンコンポーネントを用いてアクションを実施するステップと
    を含む方法。
  17. 請求項16に記載のコンピュータが実行する方法であって、前記自然言語表現は、音声言語入力およびテキスト入力のうちの少なくとも1つである、方法。
  18. 請求項16または17に記載のコンピュータが実行する方法であって、前記コンテキスト情報は、前に受けた自然言語表現から抽出された情報と、前に受けた自然言語表現に対する応答と、クライアントコンテキストと、ナレッジコンテンツとのうちの少なくとも1つを含む、方法。
  19. 請求項18に記載のコンピュータが実行する方法であって、前記前に受けた自然言語表現から抽出された前記情報は、少なくとも、ドメイン予測と、意図予測と、スロットタイプとを含む、方法。
  20. 請求項16から19のいずれか一項に記載のコンピュータが実行する方法であって、前記対話仮説セットを作成するステップは、
    少なくとも1つの特徴を前記自然言語表現から抽出するステップと、
    少なくとも2つの対話仮説を生成するステップであって、前記対話仮説セットの各対話仮説は、少なくとも1つの抽出された特徴を含む異なる自然言語表現を含む、ステップと
    を含む、方法。
  21. 請求項16から20のいずれか一項に記載のコンピュータが実行する方法であって、前記対話仮説セットのための複数の対話応答を生成するステップは、前記対話仮説セットの各対話仮説について複数の応答を生成するステップを含む、方法。
JP2017535358A 2014-12-30 2015-12-22 ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別すること Active JP6701206B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/586,395 2014-12-30
US14/586,395 US9836452B2 (en) 2014-12-30 2014-12-30 Discriminating ambiguous expressions to enhance user experience
PCT/US2015/067238 WO2016109307A2 (en) 2014-12-30 2015-12-22 Discriminating ambiguous expressions to enhance user experience

Publications (3)

Publication Number Publication Date
JP2018506113A JP2018506113A (ja) 2018-03-01
JP2018506113A5 JP2018506113A5 (ja) 2019-01-31
JP6701206B2 true JP6701206B2 (ja) 2020-05-27

Family

ID=55073177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017535358A Active JP6701206B2 (ja) 2014-12-30 2015-12-22 ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別すること

Country Status (11)

Country Link
US (2) US9836452B2 (ja)
EP (1) EP3241125A2 (ja)
JP (1) JP6701206B2 (ja)
KR (1) KR102602475B1 (ja)
CN (1) CN107111611A (ja)
AU (2) AU2015374382B2 (ja)
BR (1) BR112017010222A2 (ja)
CA (1) CA2968016C (ja)
MX (1) MX367096B (ja)
RU (1) RU2017122991A (ja)
WO (1) WO2016109307A2 (ja)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690776B2 (en) * 2014-12-01 2017-06-27 Microsoft Technology Licensing, Llc Contextual language understanding for multi-turn language tasks
US9836452B2 (en) 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience
JP2016189128A (ja) * 2015-03-30 2016-11-04 ファナック株式会社 プログラム中のあいまい検索機能を備えた数値制御装置
US10418032B1 (en) * 2015-04-10 2019-09-17 Soundhound, Inc. System and methods for a virtual assistant to manage and use context in a natural language dialog
US10372755B2 (en) * 2015-09-23 2019-08-06 Motorola Solutions, Inc. Apparatus, system, and method for responding to a user-initiated query with a context-based response
US10262062B2 (en) * 2015-12-21 2019-04-16 Adobe Inc. Natural language system question classifier, semantic representations, and logical form templates
WO2017168246A1 (en) * 2016-03-29 2017-10-05 Maluuba Inc. Hierarchical attention for spoken dialogue state tracking
US9858265B1 (en) * 2016-06-08 2018-01-02 Rovi Guides, Inc. Systems and methods for determining context switching in conversation
US10223067B2 (en) * 2016-07-15 2019-03-05 Microsoft Technology Licensing, Llc Leveraging environmental context for enhanced communication throughput
US10573299B2 (en) * 2016-08-19 2020-02-25 Panasonic Avionics Corporation Digital assistant and associated methods for a transportation vehicle
US10102200B2 (en) 2016-08-25 2018-10-16 International Business Machines Corporation Predicate parses using semantic knowledge
US20180090141A1 (en) * 2016-09-29 2018-03-29 Microsoft Technology Licensing, Llc Conversational interactions using superbots
US10437841B2 (en) * 2016-10-10 2019-10-08 Microsoft Technology Licensing, Llc Digital assistant extension automatic ranking and selection
US10446144B2 (en) 2016-11-21 2019-10-15 Google Llc Providing prompt in an automated dialog session based on selected content of prior automated dialog session
WO2018133307A1 (zh) * 2017-01-20 2018-07-26 华为技术有限公司 一种实现语音控制的方法和终端
US10860628B2 (en) 2017-02-16 2020-12-08 Google Llc Streaming real-time dialog management
US20180253638A1 (en) * 2017-03-02 2018-09-06 Accenture Global Solutions Limited Artificial Intelligence Digital Agent
US10372824B2 (en) * 2017-05-15 2019-08-06 International Business Machines Corporation Disambiguating concepts in natural language
US10446147B1 (en) * 2017-06-27 2019-10-15 Amazon Technologies, Inc. Contextual voice user interface
US11043205B1 (en) * 2017-06-27 2021-06-22 Amazon Technologies, Inc. Scoring of natural language processing hypotheses
EP3451189B1 (en) * 2017-08-30 2020-12-02 Deutsche Telekom AG A system and method for user query recognition
CN117112761A (zh) 2017-09-05 2023-11-24 声音猎手公司 域间通过语法槽的分类
JP6857581B2 (ja) * 2017-09-13 2021-04-14 株式会社日立製作所 成長型対話装置
US11113608B2 (en) 2017-10-30 2021-09-07 Accenture Global Solutions Limited Hybrid bot framework for enterprises
US10713300B2 (en) * 2017-11-03 2020-07-14 Google Llc Using distributed state machines for human-to-computer dialogs with automated assistants to protect private data
KR101970899B1 (ko) 2017-11-27 2019-04-24 주식회사 머니브레인 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체
KR101959292B1 (ko) 2017-12-08 2019-03-18 주식회사 머니브레인 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체
JP2019106054A (ja) * 2017-12-13 2019-06-27 株式会社東芝 対話システム
US10430447B2 (en) * 2018-01-31 2019-10-01 International Business Machines Corporation Predicting intent of a user from anomalous profile data
US10741176B2 (en) 2018-01-31 2020-08-11 International Business Machines Corporation Customizing responses to users in automated dialogue systems
US10231285B1 (en) 2018-03-12 2019-03-12 International Business Machines Corporation Cognitive massage dynamic response optimization
US10929601B1 (en) * 2018-03-23 2021-02-23 Amazon Technologies, Inc. Question answering for a multi-modal system
US11568863B1 (en) * 2018-03-23 2023-01-31 Amazon Technologies, Inc. Skill shortlister for natural language processing
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US10782986B2 (en) 2018-04-20 2020-09-22 Facebook, Inc. Assisting users with personalized and contextual communication content
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US11145300B2 (en) 2018-05-07 2021-10-12 Google Llc Activation of remote devices in a networked system
US10956462B1 (en) * 2018-06-21 2021-03-23 Amazon Technologies, Inc. System answering of user inputs
US11868728B1 (en) * 2018-09-19 2024-01-09 Amazon Technologies, Inc. Multi-domain skills
CN109325234B (zh) * 2018-10-10 2023-06-20 深圳前海微众银行股份有限公司 语句处理方法、设备及计算机可读存储介质
US11979360B2 (en) 2018-10-25 2024-05-07 Microsoft Technology Licensing, Llc Multi-phrase responding in full duplex voice conversation
KR20200055836A (ko) * 2018-11-12 2020-05-22 삼성전자주식회사 데이터 분류 방법 및 장치, 분류기의 학습 방법 및 장치
CN109712619B (zh) * 2018-12-24 2020-12-11 出门问问信息科技有限公司 一种解耦对话假设并执行的方法、装置及语音交互系统
US10943588B2 (en) * 2019-01-03 2021-03-09 International Business Machines Corporation Methods and systems for managing voice response systems based on references to previous responses
CN111552784A (zh) * 2019-02-12 2020-08-18 厦门邑通软件科技有限公司 一种基于abc沟通法则的人机对话方法
US11194796B2 (en) * 2019-02-14 2021-12-07 Microsoft Technology Licensing, Llc Intuitive voice search
CN110188182B (zh) * 2019-05-31 2023-10-27 中国科学院深圳先进技术研究院 模型训练方法、对话生成方法、装置、设备及介质
US11256868B2 (en) * 2019-06-03 2022-02-22 Microsoft Technology Licensing, Llc Architecture for resolving ambiguous user utterance
WO2020261944A1 (ja) * 2019-06-27 2020-12-30 ソニー株式会社 情報処理装置および情報処理方法
US11328711B2 (en) * 2019-07-05 2022-05-10 Korea Electronics Technology Institute User adaptive conversation apparatus and method based on monitoring of emotional and ethical states
US20210064658A1 (en) * 2019-09-04 2021-03-04 International Business Machines Corporation Geofencing queries based on query intent and result semantics
KR20210036169A (ko) * 2019-09-25 2021-04-02 현대자동차주식회사 대화 시스템, 대화 처리 방법, 번역 장치 및 번역 방법
US10841251B1 (en) 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US10798031B1 (en) 2020-04-13 2020-10-06 Moveworks, Inc. Generic disambiguation
US11250853B2 (en) 2020-04-30 2022-02-15 Robert Bosch Gmbh Sarcasm-sensitive spoken dialog system
US11508372B1 (en) * 2020-06-18 2022-11-22 Amazon Technologies, Inc. Natural language input routing
US10818293B1 (en) 2020-07-14 2020-10-27 Drift.com, Inc. Selecting a response in a multi-turn interaction between a user and a conversational bot
CN112000787B (zh) * 2020-08-17 2021-05-14 上海小鹏汽车科技有限公司 语音交互方法、服务器和语音交互系统
CN111985249A (zh) * 2020-09-03 2020-11-24 贝壳技术有限公司 语义分析方法、装置、计算机可读存储介质及电子设备
KR102339794B1 (ko) 2020-12-04 2021-12-16 주식회사 애자일소다 질의 응답 서비스 장치 및 방법
US11977852B2 (en) * 2022-01-12 2024-05-07 Bank Of America Corporation Anaphoric reference resolution using natural language processing and machine learning

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519608A (en) * 1993-06-24 1996-05-21 Xerox Corporation Method for extracting from a text corpus answers to questions stated in natural language by using linguistic analysis and hypothesis generation
US6272488B1 (en) 1998-04-01 2001-08-07 International Business Machines Corporation Managing results of federated searches across heterogeneous datastores with a federated collection object
US6266668B1 (en) 1998-08-04 2001-07-24 Dryken Technologies, Inc. System and method for dynamic data-mining and on-line communication of customized information
US6745177B2 (en) 1999-04-09 2004-06-01 Metro One Telecommunications, Inc. Method and system for retrieving data from multiple data sources using a search routing database
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US20030214523A1 (en) * 2002-05-16 2003-11-20 Kuansan Wang Method and apparatus for decoding ambiguous input using anti-entities
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US20050004905A1 (en) 2003-03-03 2005-01-06 Scott Dresden Search engine with neural network weighting based on parametric user data
US8301436B2 (en) 2003-05-29 2012-10-30 Microsoft Corporation Semantic object synchronous understanding for highly interactive interface
US7373351B2 (en) 2003-08-18 2008-05-13 Sap Ag Generic search engine framework
US20050149496A1 (en) 2003-12-22 2005-07-07 Verity, Inc. System and method for dynamic context-sensitive federated search of multiple information repositories
KR100612839B1 (ko) * 2004-02-18 2006-08-18 삼성전자주식회사 도메인 기반 대화 음성인식방법 및 장치
US7921091B2 (en) 2004-12-16 2011-04-05 At&T Intellectual Property Ii, L.P. System and method for providing a natural language interface to a database
US8214310B2 (en) 2005-05-18 2012-07-03 International Business Machines Corporation Cross descriptor learning system, method and program product therefor
US8041570B2 (en) * 2005-05-31 2011-10-18 Robert Bosch Corporation Dialogue management using scripts
US7640160B2 (en) * 2005-08-05 2009-12-29 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7590541B2 (en) 2005-09-30 2009-09-15 Rockwell Automation Technologies, Inc. HMI presentation layer configuration system
US7783620B1 (en) 2007-06-29 2010-08-24 Emc Corporation Relevancy scoring using query structure and data structure for federated search
US9063975B2 (en) * 2013-03-15 2015-06-23 International Business Machines Corporation Results of question and answer systems
GB0800925D0 (en) * 2008-01-18 2008-02-27 Akuwudike Ugochukwu A web-based natural language communications system and method
US8180754B1 (en) 2008-04-01 2012-05-15 Dranias Development Llc Semantic neural network for aggregating query searches
US10025855B2 (en) 2008-07-28 2018-07-17 Excalibur Ip, Llc Federated community search
US9978365B2 (en) * 2008-10-31 2018-05-22 Nokia Technologies Oy Method and system for providing a voice interface
US8140328B2 (en) 2008-12-01 2012-03-20 At&T Intellectual Property I, L.P. User intention based on N-best list of recognition hypotheses for utterances in a dialog
US8275788B2 (en) * 2009-11-17 2012-09-25 Glace Holding Llc System and methods for accessing web pages using natural language
US9495460B2 (en) 2009-05-27 2016-11-15 Microsoft Technology Licensing, Llc Merging search results
JP5379627B2 (ja) * 2009-09-29 2013-12-25 エヌ・ティ・ティ・コミュニケーションズ株式会社 検索制御装置、検索制御方法、及びプログラム
US8756233B2 (en) * 2010-04-16 2014-06-17 Video Semantics Semantic segmentation and tagging engine
GB201010545D0 (en) * 2010-06-23 2010-08-11 Rolls Royce Plc Entity recognition
US8812321B2 (en) * 2010-09-30 2014-08-19 At&T Intellectual Property I, L.P. System and method for combining speech recognition outputs from a plurality of domain-specific speech recognizers via machine learning
US9842168B2 (en) * 2011-03-31 2017-12-12 Microsoft Technology Licensing, Llc Task driven user intents
US9760566B2 (en) * 2011-03-31 2017-09-12 Microsoft Technology Licensing, Llc Augmented conversational understanding agent to identify conversation context between two humans and taking an agent action thereof
WO2012135210A2 (en) * 2011-03-31 2012-10-04 Microsoft Corporation Location-based conversational understanding
US9064006B2 (en) * 2012-08-23 2015-06-23 Microsoft Technology Licensing, Llc Translating natural language utterances to keyword search queries
CA2747153A1 (en) * 2011-07-19 2013-01-19 Suleman Kaheer Natural language processing dialog system for obtaining goods, services or information
GB2495222B (en) * 2011-09-30 2016-10-26 Apple Inc Using context information to facilitate processing of commands in a virtual assistant
US8645361B2 (en) 2012-01-20 2014-02-04 Microsoft Corporation Using popular queries to decide when to federate queries
US20140006012A1 (en) 2012-07-02 2014-01-02 Microsoft Corporation Learning-Based Processing of Natural Language Questions
US9465833B2 (en) * 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US10282419B2 (en) * 2012-12-12 2019-05-07 Nuance Communications, Inc. Multi-domain natural language processing architecture
US10235358B2 (en) 2013-02-21 2019-03-19 Microsoft Technology Licensing, Llc Exploiting structured content for unsupervised natural language semantic parsing
US9582608B2 (en) * 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9336485B2 (en) 2013-06-11 2016-05-10 International Business Machines Corporation Determining answers in a question/answer system when answer is not contained in corpus
JP5734354B2 (ja) * 2013-06-26 2015-06-17 ファナック株式会社 工具クランプ装置
US9275115B2 (en) * 2013-07-16 2016-03-01 International Business Machines Corporation Correlating corpus/corpora value from answered questions
US9524289B2 (en) * 2014-02-24 2016-12-20 Nuance Communications, Inc. Automated text annotation for construction of natural language understanding grammars
US9836452B2 (en) 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience

Also Published As

Publication number Publication date
WO2016109307A3 (en) 2016-10-06
WO2016109307A2 (en) 2016-07-07
CA2968016C (en) 2023-01-24
RU2017122991A (ru) 2018-12-29
US9836452B2 (en) 2017-12-05
MX2017008583A (es) 2017-11-15
US11386268B2 (en) 2022-07-12
MX367096B (es) 2019-08-05
RU2017122991A3 (ja) 2019-07-17
CA2968016A1 (en) 2016-07-07
AU2020267218A1 (en) 2020-12-10
AU2015374382A1 (en) 2017-05-25
KR102602475B1 (ko) 2023-11-14
CN107111611A (zh) 2017-08-29
US20180089167A1 (en) 2018-03-29
KR20170099917A (ko) 2017-09-01
AU2020267218B2 (en) 2021-12-09
BR112017010222A2 (pt) 2017-12-26
AU2015374382B2 (en) 2020-08-13
JP2018506113A (ja) 2018-03-01
EP3241125A2 (en) 2017-11-08
US20160188565A1 (en) 2016-06-30

Similar Documents

Publication Publication Date Title
JP6701206B2 (ja) ユーザーエクスペリエンスを向上させるためにあいまいな表現を弁別すること
US10007660B2 (en) Contextual language understanding for multi-turn language tasks
JP6727212B2 (ja) 不完全自然言語クエリを理解するための方法
JP6667504B2 (ja) オーファン発話検出システム及び方法
CN108369580B (zh) 针对屏幕上项目选择的基于语言和域独立模型的方法
WO2018118546A1 (en) Systems and methods for an emotionally intelligent chat bot
WO2018039049A1 (en) Multi-turn cross-domain natural language understanding systems, building platforms, and methods
TW202307644A (zh) 用於助理系統的主動監聽
WO2022099566A1 (en) Knowledge injection model for generative commonsense reasoning
US11900926B2 (en) Dynamic expansion of acronyms in audio content

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181213

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200407

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200501

R150 Certificate of patent or registration of utility model

Ref document number: 6701206

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250