(57)【要約】  ユーザとの対話に関連づけられた対話状態を維持するための、対話状態追跡器により実行される方法が、ユーザコミュニケーションの表現を受け取るステップと、対話状態を更新するステップと、更新された対話状態に基づいてシステム応答を提供するステップを含む。対話状態は、ユーザコミュニケーションの表現に基づいて、オントロジセットの複数のオントロジメンバに対応するメンバスコアを評価することと、メンバスコアに基づいて、対話状態に追加又は対話状態から除去すべき複数のオントロジメンバのうちゼロ個以上を選択することとにより更新される。対話状態追跡器は、グローバル分岐及びローカル分岐を含むグローバルローカルエンコーダを含み、グローバル分岐は、複数のオントロジメンバ間で共有されるグローバル訓練パラメータを有し、ローカル分岐は、複数のオントロジメンバの各々について別個に決定されるローカル訓練パラメータを有する。
2021515269.tif 000002
【特許請求の範囲】
【請求項１】
ユーザとデジタルシステムとの間の対話に関連づけられた対話状態を維持する方法であって、
前記デジタルシステムに関連づけられた対話状態追跡器により、ユーザコミュニケーションの表現を受け取るステップと、
前記対話状態追跡器により、前記ユーザコミュニケーションの表現に基づいて、オントロジセットの複数のオントロジメンバに対応する複数のメンバスコアを評価することと、前記複数のメンバスコアに基づいて、前記対話状態に追加又は前記対話状態から除去すべき前記複数のオントロジメンバのうちゼロ個以上を選択することとにより、前記対話状態を更新するステップと、
前記更新された対話状態に基づいてシステム応答を提供するステップと、
を含み、
前記対話状態追跡器は、前記複数のメンバスコアの各々の評価の間にエンコード表現を生成するグローバルローカルエンコーダを含み、前記グローバルローカルエンコーダは、グローバル分岐及びローカル分岐を含み、前記グローバル分岐は、前記複数のオントロジメンバ間で共有されるグローバル訓練パラメータを有し、前記ローカル分岐は、前記複数のオントロジメンバの各々について別個に決定されるローカル訓練パラメータを有する、方法。
【請求項２】
前記グローバル分岐及び前記ローカル分岐は、並列に配置される、請求項１に記載の方法。
【請求項３】
前記グローバル分岐及び前記ローカル分岐は各々、それぞれのリカレントニューラルネットワークを含む、請求項１又は２に記載の方法。
【請求項４】
前記グローバル分岐及び前記ローカル分岐は各々、それぞれの自己注目ネットワークを含む、請求項１乃至３のうちいずれか１項に記載の方法。
【請求項５】
前記グローバルローカルエンコーダは、前記ユーザコミュニケーションに基づいて前記エンコード表現を生成する、請求項１乃至４のうちいずれか１項に記載の方法。
【請求項６】
前記エンコード表現は、前記ユーザコミュニケーションと現在評価されている前記複数のオントロジメンバのうちのオントロジメンバとに基づいてコミュニケーションスコアを決定するコミュニケーションスコア付けモジュールに提供される、請求項５に記載の方法。
【請求項７】
前記グローバルローカルエンコーダは、前記対話の１つ以上の前のターンで提供された１つ以上の前のシステム応答を示す文脈情報に基づいて前記エンコード表現を生成する、請求項１乃至６のうちいずれか１項に記載の方法。
【請求項８】
前記エンコード表現は、前記文脈情報と現在評価されている前記複数のオントロジメンバのうちのオントロジメンバとに基づいて文脈スコアを決定する文脈スコア付けモデルに提供される、請求項７に記載の方法。
【請求項９】
前記グローバルローカルエンコーダは、前記グローバル分岐及び前記ローカル分岐からのそれぞれのエンコード表現を組み合わせるマージノードをさらに含む、請求項１乃至８のうちいずれか１項に記載の方法。
【請求項１０】
前記マージノードは、前記複数のオントロジメンバの各々について別個に決定されるローカル重み付けパラメータを含む、請求項９に記載の方法。
【請求項１１】
前記グローバルローカルエンコーダは、順次配置された第１の段階及び第２の段階を含み、前記第１の段階は、前記グローバル分岐及び前記ローカル分岐を含み、前記第２の段階は、第２のグローバル分岐及び第２のローカル分岐を含む、請求項１乃至１０のうちいずれか１項に記載の方法。
【請求項１２】
前記グローバルローカルエンコーダは、現在評価されている前記複数のオントロジメンバのうちのオントロジメンバに基づいて前記エンコード表現を生成する、請求項１乃至１１のうちいずれか１項に記載の方法。
【請求項１３】
システムであって、
ユーザコミュニケーションに基づいて、対話状態に追加又は対話状態から除去すべきオントロジセットの複数のオントロジメンバのうちゼロ個以上を、ニューラルネットワークを使用して前記複数のオントロジメンバに対応する複数のメンバスコアを評価することにより選択するように構成された対話状態追跡器、を含み、
前記ニューラルネットワークは、
グローバル分岐及びローカル分岐を含む第１のグローバルローカルエンコーダであり、前記グローバル分岐は、前記複数のオントロジメンバ間で共有されるグローバル訓練パラメータを有し、前記ローカル分岐は、前記複数のオントロジメンバの各々について別個に決定されるローカル訓練パラメータを有する、第１のグローバルローカルエンコーダ
を含む、システム。
【請求項１４】
前記ニューラルネットワークは、第２のグローバルローカルエンコーダ及びコミュニケーションスコア付けモジュールをさらに含み、
前記第１のグローバルローカルエンコーダは、現在評価されている前記複数のオントロジメンバのうち第１のオントロジメンバに対応するオントロジメンバシーケンスに基づいて第１のエンコード表現を生成し、
前記第２のグローバルローカルエンコーダは、前記ユーザコミュニケーションに対応するユーザコミュニケーションシーケンスに基づいて第２のエンコード表現を生成し、
前記コミュニケーションスコア付けモジュールは、前記第１のエンコード表現及び前記第２のエンコード表現に基づいてコミュニケーションスコアを生成し、前記第１のオントロジメンバに対応する第１のメンバスコアが、前記コミュニケーションスコアに基づいて決定される、請求項１３に記載のシステム。
【請求項１５】
前記ニューラルネットワークは、第３のグローバルローカルエンコーダ及び文脈スコア付けモジュールをさらに含み、
前記第３のグローバルローカルエンコーダは、当該システムの前のアクションに関連づけられた文脈情報に対応する文脈情報シーケンスに基づいて第３のエンコード表現を生成し、
前記文脈スコア付けモジュールは、前記第１のエンコード表現と、前記第２のエンコード表現と、前記ユーザコミュニケーションシーケンスに基づいて前記第２のグローバルローカルエンコーダにより生成される第４のエンコード表現とに基づいて文脈スコアを生成し、前記第１のメンバスコアはさらに、前記文脈スコアに基づいて決定される、請求項１４に記載のシステム。
【請求項１６】
前記ニューラルネットワークは、学習された重み付けパラメータに従って前記コミュニケーションスコアと前記文脈スコアを組み合わせることにより前記第１のメンバスコアを生成するスコアコンバイナモジュールをさらに含む、請求項１５に記載のシステム。
【請求項１７】
前記第２のエンコード表現は、前記ユーザコミュニケーションシーケンスに基づいて前記第２のグローバルローカルエンコーダのリカレントニューラルネットワーク段階により生成され、前記第４のエンコード表現は、前記第２のエンコード表現に基づいて前記第２のグローバルローカルエンコーダの自己注目段階により生成される、請求項１５に記載のシステム。
【請求項１８】
システムに動作を実行させるように実行可能なマシン読取可能命令を記憶させた非一時的マシン読取可能媒体であって、前記動作は、
ユーザとの対話に関与するデジタルシステムを介して、ユーザのユーザコミュニケーションの表現を受け取ることと、
前記ユーザコミュニケーションの表現に基づいて、ニューラルネットワークを使用してオントロジセットの複数のオントロジメンバに対応する複数のメンバスコアを評価することと、前記複数のメンバスコアに基づいて、対話状態に追加又は対話状態から除去すべき前記複数のオントロジメンバのうちゼロ個以上を選択することとにより、前記対話に関連づけられた前記対話状態を更新することと、
前記更新された対話状態を前記デジタルシステムに提供して前記デジタルシステムが前記更新された対話状態に基づいてシステム応答を提供することを可能にすることと、を含み、
前記ニューラルネットワークは、
前記複数のオントロジメンバのうち第１のオントロジメンバに対応する第１のシーケンスに基づいて第１のエンコード表現を生成する第１のエンコーダと、
前記ユーザコミュニケーションの表現に対応する第２のシーケンスに基づいて第２のエンコード表現を生成する第２のエンコーダと、
前記第１のエンコード表現及び前記第２のエンコード表現に基づいてコミュニケーションスコアを生成するコミュニケーションスコア付けモジュールであり、前記第１のオントロジメンバに対応する第１のメンバスコアが、前記コミュニケーションスコアに基づいて決定される、コミュニケーションスコア付けモジュールと、を含み、
前記第１のエンコーダ及び前記第２のエンコーダのうち少なくとも１つが、グローバル分岐及びローカル分岐を含むグローバルローカルエンコーダとして構成され、前記グローバル分岐は、前記複数のオントロジメンバ間で共有されるグローバル訓練パラメータを有し、前記ローカル分岐は、前記複数のオントロジメンバの各々について別個に決定されるローカル訓練パラメータを有する、非一時的マシン読取可能媒体。
【請求項１９】
前記複数のオントロジメンバの各々は、前記オントロジセットのスロット‐値ペアを含む、請求項１８に記載の非一時的マシン読取可能媒体。
【請求項２０】
前記対話状態は、前記対話に関連づけられた累積ゴールのセット又は前記ユーザコミュニケーションに関連づけられたターン要求のセットのうち１つ以上を含む、請求項１８又は１９に記載の非一時的マシン読取可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願］
本出願は、2018年2月22日に出願され「Dialogue  State  Tracking  Using  A  Neural  Network  Model」と題された米国仮特許出願第62/634,130号、及び2018年5月14日に出願され「Dialogue  State  Tracking  Using  a  Global-Local  Encoder」と題された米国非仮特許出願第15/978,445号の利益を主張し、これらはその全体を参照により本明細書に組み込まれる。
【０００２】
本開示の実施形態は、概して対話状態追跡に関し、より詳細には、グローバルローカルエンコーダを使用する対話状態追跡に関する。
【背景技術】
【０００３】
ニューラルネットワークは、現実世界の情報を人間のような正確さで自動的に分析する手法としてかなりの有望さを示している。一般に、ニューラルネットワークモデルは、入力情報を受け取り、入力情報に基づいて予測を行う。例えば、ニューラルネットワーク分類器は、所定のクラスセットの中で入力情報のクラスを予測し得る。現実世界の情報を分析するための他のアプローチは、ハードコーディングされたプロセス、統計分析などを含み得るが、ニューラルネットワークは、機械学習プロセスを使用して、試行錯誤のプロセスにより、徐々に予測することを学習する。与えられたニューラルネットワークモデルは、多数の訓練例を用いて訓練され得、訓練例から人間が行い得る同様の推論をニューラルネットワークモデルが一貫して行い始めるまで、反復的に進行する。ニューラルネットワークモデルは、多くの適用において他のコンピューティング手法をしのぐ及び／又はしのぐポテンシャルを有することが示されている。実際、ニューラルネットワーキングモデルが人間レベルのパフォーマンスを上回るいくつかの適用さえ特定されている。
【図面の簡単な説明】
【０００４】
【図１Ａ】いくつかの実施形態による、対話状態追跡を有するデジタルシステムの簡略図である。
【図１Ｂ】いくつかの実施形態による、ユーザとデジタルシステムとの間の例示的な対話の簡略図である。
【図２Ａ】いくつかの実施形態によるスコア付けモデルの簡略図である。
【図２Ｂ】いくつかの実施形態によるスコア付けモデルの簡略図である。
【図２Ｃ】いくつかの実施形態によるスコア付けモデルの簡略図である。
【図３】いくつかの実施形態によるエンコーダの簡略図である。
【図４】いくつかの実施形態によるグローバルローカルエンコーダの簡略図である。
【図５】いくつかの実施形態による、ニューラルネットワークモデルのための訓練構成の簡略図である。
【図６】いくつかの実施形態による、ユーザとデジタルシステムとの間の対話に関連づけられた対話状態を維持する方法の簡略図である。
【図７】いくつかの実施形態による、ニューラルネットワークモデルを訓練する方法の簡略図である。
【図８Ａ】いくつかの実施形態による、対話状態追跡器の実験的評価の簡略図である。
【図８Ｂ】いくつかの実施形態による、対話状態追跡器の実験的評価の簡略図である。
【発明を実施するための形態】
【０００５】
対話状態追跡は、ニューラルネットワークが適用され得る問題の１つのクラスである。対話状態追跡アプリケーションにおいて、ユーザは、デジタルアシスタント、チャットボット、タスク指向対話システム（例えば、レストラン予約システム）などのインタラクティブなデジタルシステムとの対話に関与する。対話の過程を通じてユーザにより表された様々な目的及び／又はデジタルシステムにより取られた応答アクションを追跡するために、デジタルシステムは、対話に関連づけられた対話状態を維持する対話状態追跡器を含み、あるいはこれに関連づけられる。詳細には、対話状態追跡器は、対話の各やりとり（exchange）において対話状態を更新するためのニューラルネットワークモデルを含み得る。例えば、あるユーザがデジタルシステムに「町の南側で良いレストランを見つけて」と尋ねると仮定する。さらに、デジタルシステムが「安価ですか、あるいは高価ですか？」とリプライし、これに対してユーザは「安価。電話番号をくれる？」とリプライすると仮定する。このシナリオでは、対話状態追跡器は、その時点までの対話の累積である対話状態の包括的な表現を維持するべきである（例えば、ユーザが、安くて町の南側にあるレストランの電話番号を要求した）。
【０００６】
対話状態追跡器の性能は、例えば、対話システム技術チャレンジ（Dialogue  System  Technology  Challenges、ＤＳＴＣ）シリーズの共有タスクからのデータセットなどの共有データセット上で異なるモデルをテストすることにより比較され、あるいはベンチマークされ得る。ＤＴＳＣフレームワークに準拠する例示的なタスクの例には、ウィザードオブオズ（Wizard  of  Oz、ＷｏＺ）レストラン予約タスク及びＤＳＴＣ２タスクが含まれる。各モデルの精度（accuracy）は、累積ゴール精度（cumulative  goal  accuracy）（例えば、正しく識別されたユーザゴールのパーセンテージであり、対話におけるやりとりを通じて累積的に決定される）、ターン要求精度（turn  request  accuracy）（対話の所与のやりとりの中で正しく識別されたユーザ要求のパーセンテージ）などの１つ以上のメトリックを評価することにより測定されてもよい。最高水準の対話状態追跡器は、ＤＳＴＣ２において７３．４％以下の累積ゴール精度と９６．６％以下のターン要求精度を、ＷｏＺにおいて８４．４％以下の累積ゴール精度と９１．６％以下のターン要求精度を達成している。したがって、現在の最高水準の対話状態追跡器より高い精度を達成する対話状態追跡器のためのニューラルネットワークモデルを開発することが望ましい。
【０００７】
図１Ａは、いくつかの実施形態による、対話状態追跡を有するデジタルシステム１００の簡略図である。いくつかの実施形態によれば、ユーザ１１０は、デジタルシステム１００との対話に関与し（engage）得る。例えば、ユーザ１１０は、口頭コミュニケーション（例えば、話された発話）、書かれたコミュニケーション（例えば、英数字テキスト及び／又は記号）、視覚コミュニケーション（例えば、ジェスチャ）などを含む任意の適切な形式のコミュニケーションを使用してデジタルシステム１００とコミュニケーションする（communicate）ことができる。応答において、デジタルシステム１００は、１つ以上のシステム応答を提供し得る（例えば、応答対話をユーザ１１０に提供すること、ユーザ１１０のためにタスクを実行すること、さらなる情報を要求することなど）。
【０００８】
図１Ａに示すように、デジタルシステム１００は、ユーザ１１０及び／又はユーザ１１０のユーザデバイスに通信上結合されたコントローラ１２０を含む。例えば、ユーザ１１０は、ネットワークを介してコントローラ１２０にアクセスしてもよい。いくつかの実施形態において、コントローラ１２０は、プロセッサ１２２（例えば、１つ以上のハードウェアプロセッサ）を含んでもよい。プロセッサ１２２は、１つ以上の汎用中央処理装置（central  processing  units、ＣＰＵ）を含んでもよいが、プロセッサ１２２は、ニューラルネットワークモデルを評価するときに加速性能を提供する少なくとも１つのプロセッサをさらに又は代わりに含んでもよい。例えば、プロセッサ１２２は、グラフィックス処理ユニット（graphics  processing  unit、ＧＰＵ）、特定用途向け集積回路（application  specific  integrated  circuit、ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（field  programmable  gate  array、ＦＰＧＡ）、テンソル処理ユニット（tensor  processing  unit、ＴＰＵ）、デジタル信号プロセッサ（digital  signal  processor、ＤＳＰ）、単一命令複数データ（single-instruction  multiple-data、ＳＩＭＤ）プロセッサなどを含んでもよい。一般に、このようなプロセッサは、ニューラルネットワークモデルを評価することに関連づけられた様々な計算タスク（例えば、訓練、予測、前処理など）を、汎用ＣＰＵと比較して１桁以上加速し得る。
【０００９】
コントローラ１２０は、メモリ１２４（例えば、１つ以上の非一時的メモリ）をさらに含み得る。メモリ１２４は、キャッシュメモリ、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、不揮発性メモリ（ＮＶＭ）、フラッシュメモリ、ソリッドステートドライブ（ＳＳＤ）、ハードディスクドライブ（ＨＤＤ）、光記憶媒体、磁気テープなどを含む様々なのタイプの短期及び／又は長期記憶モジュールを含んでもよい。いくつかの実施形態において、メモリ１２４は、本明細書に開示され以下でより詳細に説明されるプロセスに対応する動作をプロセッサ１２２に実行させるようにプロセッサ１２２により実行可能な命令を記憶し得る。
【００１０】
プロセッサ１２２及び／又はメモリ１２４は、任意の適切な物理的配置で配置されてもよい。いくつかの実施形態において、プロセッサ１２２及び／又はメモリ１２４は、同じボード上、同じパッケージ内（例えば、システムインパッケージ）、同じチップ上（例えば、システムオンチップ）などに実装されてもよい。いくつかの実施形態において、プロセッサ１２２及び／又はメモリ１２４は、分散、仮想化、及び／又はコンテナ化された計算リソースを含んでもよい。そのような実施形態と矛盾なく、プロセッサ１２２及び／又はメモリ１２４は、１つ以上のデータセンタ及び／又はクラウドコンピューティング施設に位置してもよい。
【００１１】
いくつかの実施形態において、メモリ１２４は、対話状態１３２を維持する対話状態追跡器１３０を記憶し得る。対話の各やりとりにおいて（例えば、ユーザ１１０から受け取った各コミュニケーション及び／又はデジタルシステム１００により提供されたシステム応答において）、対話状態追跡器１３０は、対話状態１３２を更新し得る。例えば、対話状態１３２は、対話の過程を通じてユーザ１１０により表された１つ以上のゴール及び／又は要求を含むように更新されてもよい。さらに又は代わりに、対話状態追跡器１３０は、文脈１３４を維持してもよい。例えば、文脈１３４は、デジタルシステム１００による１つ以上の前のシステム応答（例えば、前の、取られたアクション）の履歴を含んでもよく、これは、ユーザ１１０から受け取られる現在のコミュニケーションのための文脈を提供する。
【００１２】
いくつかの実施形態において、メモリ１２４は、デジタルシステム１００が取り扱うよう備えられたユーザゴール及び／又は要求の範囲を定義するオントロジセット１４０を記憶し得る。いくつかの実施形態において、オントロジセット１４０は、複数のオントロジメンバを含んでもよく、これらは、図１Ａにおいてスロット１４２と対応する値１４４とのペアとして例示的に示されている。図１Ａに示すように、スロット１４２と値１４４は、デジタルシステム１００がレストラン予約システムに対応するシナリオに対応する例示的な例で埋められている。詳細には、スロット１４２は、それぞれ「価格範囲」及び「エリア」とラベル付けされた２つのゴールスロットを含む。「価格範囲」に対応する値１４４は、「安価」及び「高価」を含む。「エリア」に対応する値１４４は、「北」、「南」、「東」及び「西」を含む。すなわち、ユーザ１１０は、デジタルシステム１００が予約を行うことを検討し得るレストランの価格範囲及び／又は地理的エリアを指定することができる。スロット１４２は、「＜要求＞」とラベル付けされた擬似スロットをさらに含み、これは、ユーザ要求を取り扱うために使用され得る。「＜要求＞」に対応する値１４４は、「電話」及び「料理」を含む。すなわち、ユーザ１１０は、デジタルシステム１００がレストランの電話番号及び／又は料理法の種類を提供することを要求することができる。これらは単なる例であり、オントロジセット１４０は広範なユーザゴール及び／又は要求をサポートしてもよく、それらは特定のアプリケーション（例えば、レストランの予約）及び／又は汎用のアプリケーションに合わせられてもよいことが理解されるべきである。
【００１３】
対話の各やりとりにおいて、対話状態追跡器１３０は、対話状態１３２に追加すべきゼロ個以上のオントロジメンバ（例えば、オントロジセット１４０からのスロット及び値のペア）を決定し得る。例えば、ユーザ１１０が安価なレストランを見つける要望を表したとき、対話状態追跡器１３０は、スロット‐値ペア「価格範囲＝安価」を対話状態１３２に追加し得る。同様に、対話状態追跡器１３０は、対話状態１３２において除去又は置換すべきゼロ個以上のオントロジメンバを決定してもよい。例えば、対話状態追跡器１３０は、ユーザ１１０が高価なレストランに対する要望を前に表したが、その後に好みを安価なレストランに変えた場合、スロット‐値ペア「価格範囲＝高価」を「価格範囲＝安価」で置換してもよい。
【００１４】
所与のやりとりにおいてどのオントロジメンバ（例えば、オントロジセット１４０からのスロット‐値ペア）を対話状態１３２に追加又は対話状態１３２から除去すべきかを決定するために、対話状態追跡器１３０は、オントロジメンバに対応するメンバスコアを評価するスコア付けモデル１５０を含み得る。スコア付けモデル１５０は、プロセッサ１２２により評価されるニューラルネットワークモデルに対応してもよい。詳細には、スコア付けモデル１５０は、複数のニューラルネットワーク層を含んでもよい。ニューラルネットワーク層の例には、密結合層（densely  connected  layers）、畳み込み層、リカレント層、プーリング層、ドロップアウト層などが含まれる。いくつかの実施形態において、スコア付けモデル１５０は、ニューラルネットワークの入力又は出力のいずれかに直接接続されない少なくとも１つの隠れ層を含んでもよい。スコア付けモデル１５０は、機械学習プロセスに従って学習される複数のモデルパラメータ（例えば、重み及び／又はバイアス）をさらに含んでもよい。機械学習プロセスの例には、教師つき学習（supervised  learning）、強化学習、教師なし学習（unsupervised  learning）などが含まれる。スコア付けモデル１５０の実施形態は、図２Ａ〜図７を参照して以下でさらに詳細に説明される。
【００１５】
スコア付けモデル１５０は、任意数のファイル及び／又はデータ構造を使用してメモリ１２４に記憶されてもよい。図１に示すように、スコア付けモデル１５０は、スコア付けモデル１５０の計算グラフ（例えば、ニューラルネットワーク層のシーケンス）を定義するモデル記述１５２と、スコア付けモデル１５０のパラメータ（例えば、重み及び／又はバイアス）を記憶するモデルパラメータ１５４を含む。一般に、モデル記述１５２及び／又はモデルパラメータ１５４は、これらに限られないが構造化された、構造化されていない、シリアライズされた、及び／又はデータベースフォーマットを含む任意の適切なフォーマットで、スコア付けモデル１５０に関連づけられた情報を記憶し得る。
【００１６】
いくつかの実施形態において、メモリ１２４は、対話状態１３２に少なくとも部分的に基づいて所与のユーザコミュニケーションに応答して提供又は実行すべきゼロ個以上のシステム応答を決定する応答モジュール１６０を記憶し得る。システム応答の例には、ユーザ１１０に対して応答対話を生成及び送信すること、ユーザ１１０のためにタスクを実行すること、ユーザ１１０からのさらなる情報を要求することなどが含まれる。いくつかの実施形態において、応答モジュール１６０は、例えば文脈１３４を更新することにより、所与のやりとりにおけるシステム応答を記録してもよい。このようにして、文脈１３４は、デジタルシステム１００により取られた前のアクションに基づいて対話状態追跡器１３０に文脈情報を提供し得る。
【００１７】
図１Ｂは、いくつかの実施形態による、ユーザ１１０とデジタルシステム１００との間の例示的な対話１７０の簡略図である。例示的な対話１７０は、一般に、ＷｏＺレストラン予約タスクからの対話に対応する。図１Ｂに示される列は、所与のやりとりにおけるユーザ１１０による発話又はコミュニケーションを示すユーザコミュニケーション列、文脈１３４に記録されたデジタルシステム１００による前のやりとりの間にとられた任意のアクションを示す文脈列、所与のやりとりにおいて対話状態追跡器１３０により決定された対話状態１３２への更新、及び所与のやりとりにおいて応答モジュール１６０により生成された応答対話を含む。
【００１８】
第１のやりとりの間、ユーザは、「町の南部の中でどこに食べに行きますか？」と述べる。これは第１のやりとりであるため、文脈１３４に含まれる前のアクションはない。対話状態追跡器１３０は、ユーザコミュニケーションがオントロジセット１４０からのスロット‐値ペア「エリア＝南」にマッチすると判定し、これは、対話状態１３２において「通知（エリア＝南）」として表され、スロット‐値ペアが（ユーザ要求と対照的に）ユーザゴールに対応することを示す。デジタルシステム１００は、「ＯＫ、私はそれについて助けることができます。あなたは特定の種類の料理を、あるいは特定の価格範囲内で探していますか？」と応答する。
【００１９】
第２のやりとりの間、ユーザは、「町の南部の安価なレストランで食べたいだけです。どんな料理の種類が得られますか、電話番号も提供できますか？」と述べる。文脈１３４は、前のやりとりの間、デジタルシステム１００が、ユーザ１１０が料理の種類（「要求（料理）」）と価格範囲（「要求（価格範囲）」）を提供することを要求したことを示している。対話状態追跡器１３０は、ユーザコミュニケーションがオントロジセット１４０からのスロット‐値ペア「価格範囲＝安価」、「エリア＝南」、「＜要求＞＝電話」、及び「＜要求＞＝料理」にマッチすると判定する。「＜要求＞」スロットからのマッチング値は、対話状態１３２において「要求（値）」として表現され、スロット‐値ペアが（ユーザゴールと対照的に）ユーザ要求に対応することを示す。デジタルシステム１００は、「私は安価な料理を出す２つのレストランを見つけました。あなたはポルトガル料理をより好みますか、あるいは中華料理をより好みますか？」と応答する。
【００２０】
第３のやりとりの間、ユーザは「どちらでも構いません、電話番号をお願いできますか？」と述べる。文脈１３４は、前のやりとりの間、デジタルシステム１００が、ユーザ１１０が料理の種類（「要求（料理）」）を提供することを要求したことを示す。対話状態追跡器１３０は、ユーザコミュニケーションがオントロジセット１４０からのスロット‐値ペア「＜要求＞＝電話」にマッチすると判定する。デジタルシステム１００は、ユーザにより表された基準（すなわち、安価で、町の南部に位置する）を満たす２つのレストランの電話番号を提供すること、すなわち、「The  lucky  startは01223244277で、Nandosは01223327908です」により応答する。ユーザ１１０が「どうもありがとう」とリプライしたとき、対話は終了する。
【００２１】
図２Ａ〜図２Ｃは、いくつかの実施形態によるスコア付けモデル２００の簡略図である。図１と矛盾しないいくつかの実施形態によれば、スコア付けモデル２００は、スコア付けモデル１５０を実現するために使用されてもよい。図２Ａ〜図２Ｃに示すように、スコア付けモデル２００は、参照によりその全体を本明細書に組み込まれている、2017年4月に公表された
［外１］
2021515269.tif 000003
らによる「Neural  Belief  Tracker:  Data-Driven  Dialogue  State  Tracking」に記載されたものと同様の特徴を一般に含む。
【００２２】
いくつかの実施形態において、スコア付けモデル２００は、オントロジメンバシーケンス２０２、ユーザコミュニケーションシーケンス２０４、及びゼロ個以上の文脈シーケンス２０６を受け取り、受け取ったオントロジメンバシーケンス２０２に対応するメンバスコア２０８を生成し得る。いくつかの実施形態において、オントロジメンバシーケンス２０２は、例示的な対話１７０からの「安価」、「価格範囲＝安価」、及び／又は「通知（価格範囲＝安価）」などの、オントロジセットのスロット値及び／又はスロット‐値ペアを表すテキストシーケンスに対応し得る。いくつかの実施形態において、ユーザコミュニケーションシーケンス２０４は、例示的な対話１７０からの「町の南部の中であなたはどこに食べに行くか？」などの、ユーザコミュニケーションを表すテキストシーケンスに対応し得る。いくつかの実施形態において、文脈シーケンス２０６は、ユーザコミュニケーションシーケンス２０４に関連づけられた文脈を提供するテキストのゼロ個以上のシーケンスを含み得る。例えば、文脈シーケンス２０６は、例示的な対話１７０からの「要求（料理）」及び「要求（価格範囲）」などの、デジタルシステム１００により取られた前のアクションのテキスト表現に対応し得る。
【００２３】
メンバスコア２０８は、一般に、検討下のユーザコミュニケーションが現在評価されているオントロジメンバにマッチし又は該オントロジメンバを呼び出す可能性を反映する（例えば、ユーザが実際に「安価な」価格範囲のレストランを見つけたいかどうか）。メンバスコア２０８は、数値スコア、ランク付け、ラベル（例えば、「高」／「低」）、グループ化、選択などに対応し得る。いくつかの実施形態において、スコア付けモデル２００は、オントロジセット１４０などのオントロジセット内の各オントロジメンバについて（例えば、並列及び／又は直列の方法で）評価され、メンバスコアのセットを生じてもよい。メンバスコアのセットに基づいて、対話状態追跡器１３０などの対話状態追跡器は、対話状態１３２などの対話状態を更新してもよい。例えば、第１の閾値を上回るメンバスコアを割り当てられたオントロジメンバが、対話状態に追加されてもよく、第２の閾値を下回るメンバスコアを有するオントロジメンバが、対話状態から除去されてもよい。
【００２４】
スコア付けモデル２００は、オントロジメンバシーケンス２０２、ユーザコミュニケーションシーケンス２０４、及び文脈シーケンス２０６をそれぞれ受け取り、入力表現２２２、２２４、及び２２６をそれぞれ生成する入力段階２１２、２１４、及び２１６を含み得る。いくつかの実施形態において、入力表現２２２、２２４、及び２２６は、それぞれ、シーケンス２０２、２０４、及び２０６のベクトル表現に対応し得る。例えば、シーケンス２０２、２０４、及び／又は２０６がテキストシーケンスに対応するとき、入力段階２１２、２１４、及び／又は２１６は、（１）テキストシーケンスをトークン化し（tokenizing）、（２）トークン化されたテキストシーケンスをベクトル空間に埋め込むことにより、対応するベクトル表現を生成してもよい。テキストシーケンスをトークン化することは、テキストシーケンス内のトークンを識別することを含み得、トークンの例には、文字（characters）、文字ｎグラム、単語（words）、単語ｎグラム、レンマ（lemmas）、句（例えば、名詞句）、文、段落などが含まれる。トークン化されたテキストシーケンスを埋め込むことは、各トークンを多次元ベクトル空間におけるベクトル表現にマッピングすることを含み得る。例えば、単語に対応するトークンが、３００次元のＧｌｏＶｅベクトル表現にマッピングされてもよい。
【００２５】
スコア付けモデル２００は、入力表現２２２、２２４、及び２２６をそれぞれ受け取り、１つ以上のエンコード表現（encoded  representations）２４２、２４４、２４５、及び／又は２４６を生成するエンコーダ段階２３２、２３４、及び２３６をさらに含み得る。エンコーダ段階２３２、２３４、及び／又は２３６の例示的な実施形態は、図３及び図４を参照して以下でより詳細に説明される。
【００２６】
スコア付けモデル２００は、エンコード表現２４２及び２４４に基づいてユーザコミュニケーションスコア２５５を生成するユーザコミュニケーションスコア付け段階２５０をさらに含み得る。図２Ｂは、ユーザコミュニケーションスコア付け器段階２５０の一例示的な実施形態を示す。図２Ｂに示すように、ユーザコミュニケーションスコア付け段階２５０は、エンコード表現２４２及び２４４に基づいて注目表現（attended  representation）２８４を生成する注目層２８２を含み得る。詳細には、注目表現２８４は、現在評価されているオントロジメンバの表現（例えば、エンコード表現２４２）を使用して、ユーザコミュニケーションの表現（例えば、エンコード表現２４４）にわたり注目することにより生成されてもよい。例えば、注目表現２８４は、以下の式：
【数１】
2021515269.tif 000004
を評価することにより決定されてもよい。ここで、ｑｕｔｔは、注目表現２８４を示し、ｃｉｕｔｔは、エンコード表現２４４のｉ番目の値を示し、ｐｉｕｔｔは、ｓｏｆｔｍａｘ（ｓｕｔｔ）として定義され、ｓｕｔｔのｉ番目の値は、ｓｉｕｔｔ＝ｃｉｕｔｔ・ｃｊｖａｌとして定義され、ｃｊｖａｌは、エンコード表現２４２のｊ番目の値を示す。
【００２７】
ユーザコミュニケーションスコア付け段階２５０は、注目表現２８４に基づいてユーザコミュニケーションスコア２５５を生成するフィードフォワード層２８６をさらに含み得る。例えば、ユーザコミュニケーションスコア２５５は、以下の式：
ｙｕｔｔ＝Ｗｕｔｔｑｕｔｔ＋ｂｕｔｔ
を評価することにより決定されてもよい。ここで、ｙｕｔｔは、ユーザコミュニケーションスコア２５５を示し、Ｗｕｔｔは、学習された重みを含むパラメータ行列を示し、ｂｕｔｔは、学習されたバイアス値を示す。
【００２８】
スコア付けモデル２００は、エンコード表現２４２、２４５、及び２４６に基づいて文脈スコア２６５を生成する文脈スコア付け器段階２６０をさらに含み得る。図２Ｃは、文脈スコア付け段階２６０の一例示的な実施形態を示す。図２Ｃに示すように、文脈スコア付け段階２６０は、エンコード表現２４２、２４５、及び２４６に基づいて注目表現２９４を生成する注目層２９２を含み得る。詳細には、注目表現２９４は、ユーザコミュニケーションの表現（例えば、エンコード表現２４５）を使用して文脈の表現（例えば、エンコード表現２４６）にわたり注目することにより生成されてもよい。例えば、注目表現２９４は、以下の式：
【数２】
2021515269.tif 000005
を評価することにより決定されてもよい。ここで、ｑｃｔｘは、注目表現２８４を示し、ｃｉｃｔｘは、エンコード表現２４６のｉ番目の値を示し、ｐｉｃｔｘは、ｓｏｆｔｍａｘ（ｓｃｔｘ）として定義され、ｓｃｔｘのｉ番目の値は、ｓｉｃｔｘ＝ｃｉｃｔｘ・ｃｊｕｔｔとして定義され、ｃｊｕｔｔは、エンコード表現２４５のｊ番目の値を示す。
【００２９】
文脈スコア付け段階２６０は、注目表現２９４に基づいて文脈スコア２６５を生成する乗算層２９６をさらに含み得る。例えば、文脈スコア２６５は、以下の式：
ｙｃｔｘ＝ｑｃｔｘ・ｃｖａｌ
を評価することにより決定されてもよい。ここで、ｙｃｔｘは、文脈スコア２６５を示し、ｃｖａｌは、エンコード表現２４２を示す。
【００３０】
図２Ａに戻り、スコア付けモデル２００は、ユーザコミュニケーションスコア２５５と文脈スコア２６５との組み合わせに基づいてメンバスコア２０８を決定するスコアコンバイナ段階２７０をさらに含み得る。例示的な実施形態において、メンバスコア２０８は、以下の式：
ｙ＝σ（ｙｕｔｔ＋ｗｙｙｃｔｘ）
を評価することにより決定されてもよい。ここで、ｙは、メンバスコア２０８を示し、σは、シグモイド関数を示し、ｗｙは、学習された重み付けパラメータを示す。
【００３１】
いくつかの実施形態によれば、スコア付けモデル２００は計算グラフに対応してもよく、その場合、種々の段階（例えば、入力段階２１２〜２１６、エンコーダ段階２３２〜２３６、スコア付け段階２５０及び／又は２６０、及び／又はスコアコンバイナ段階２７０）は計算グラフにおけるノードの集合に対応し得る。そのような実施形態と矛盾せず、スコア付けモデル２００により使用される種々の表現（例えば、入力表現２２２〜２２６、エンコード表現２４２〜２４６、及び／又はスコア付けモデル２００により使用される任意の中間表現）は、計算グラフのエッジに沿って渡される実数値テンソル（例えば、スカラー、ベクトル、多次元配列など）に対応してもよい。さらに、計算グラフの各ノードは、１つ以上のテンソル演算、例えば、ノードの１つ以上の入力表現をノードの１つ以上の出力表現に変換することを実行してもよい。種々のノードで実行されるテンソル演算の例は、行列乗算、ｎ次元畳み込み、正規化、要素ごとの演算などを含み得る。
【００３２】
図３は、いくつかの実施形態によるエンコーダ３００の簡略図である。図１Ａ〜図２Ｃと矛盾しないいくつかの実施形態によれば、エンコーダ３００は、エンコーダ段階２３２〜２３６の１つ以上を実現するために使用されてもよい。このような実施形態と矛盾せず、エンコーダ３００は、入力表現３０２を受け取り、１つ以上のエンコード表現３０４及び／又は３０６を生成し得る。図１Ａ〜図２Ｃと矛盾しない実施形態において、入力表現３０２は、入力表現２２２〜２２６のいずれかに一般に対応し得、エンコード表現３０４は、エンコード表現２４４に一般に対応し得、エンコード表現３０６は、エンコード表現２４２、２４５、及び／又は２４６のいずれかに一般に対応し得る。
【００３３】
いくつかの実施形態において、エンコーダ３００は、入力表現３０２を受け取り、かつエンコード表現３０４を生成するリカレントニューラルネットワーク（recurrent  neural  network、ＲＮＮ）層３１０を含み得る。一般に、ＲＮＮ層は、変換された表現にシーケンス関連情報（例えば、時間情報）を注入する。例えば、ＲＮＮ層は、簡素なＲＮＮセル、長短期記憶（long  short-term  memory、ＬＳＴＭ）セル、ゲート付きリカレントユニット（gated  recurrent  units、ＧＲＵ）などのシーケンスを含んでもよい。いくつかの例において、ＲＮＮ層３１０は、双方向性、例えば、双方向ＬＳＴＭ（Ｂｉ‐ＬＳＴＭ）層でもよい。例えば、ＲＮＮ層３１０がＢｉ‐ＬＳＴＭ層を含むとき、エンコード表現３０４は、中間ＬＳＴＭ状態のセットを含んでもよい。
【００３４】
いくつかの実施形態において、エンコーダ３００は、エンコード表現３０４を受け取り、かつエンコード表現３０６を生成する自己注目層（self-attention  layer）３２０を含み得る。詳細には、エンコード表現３０６は、エンコード表現３０４にわたる自己注目により生成され得る。例えば、エンコード表現３０６は、以下の式：
【数３】
2021515269.tif 000006
を評価することにより決定されてもよい。ここで、ｃは、エンコード表現３０６を示し、Ｈｉは、エンコード表現３０４のｉ番目の値を示し、ｐｉは、ｓｏｆｔｍａｘ（ｓ）として定義され、ｓのｉ番目の値は、ｓｉ＝ＷＨｉ＋ｂとして定義され、Ｗは、学習された重みを含むパラメータ行列を示し、ｂは、学習されたバイアスを示す。
【００３５】
いくつかの実施形態において、エンコーダ３００は、オントロジセット１４０などのオントロジセットの各オントロジメンバについて別個に決定されるローカル訓練パラメータ（local  trained  parameters）を含んでもよい。ローカル訓練パラメータの使用は、オントロジセット内の各オントロジメンバについて訓練パラメータを別個に調整することによりエンコーダ３００の精度を改善し得る。
【００３６】
ローカル訓練パラメータに関連する一つの課題は、ローカル訓練パラメータの使用が、対応するオントロジメンバが生じる訓練例の数を制限することである。この課題は、特に、実際には稀に生じるオントロジメンバについて悪化する（例えば、ユーザは高価なレストランで食べることを稀に要求する可能性があり、これは、訓練データセットが、ユーザコミュニケーションがそのような要求を表すかなり少ない例を含む傾向があることを意味する）。大きいオントロジセットは、多数のオントロジメンバを含む可能性もあり、それらの各々は、個々には所与のターンで生じそうにないが、それらのうち少なくとも１つは、集合的には所与のターンで生じる可能性がある。例えば、旅行予約システムは、世界中の膨大な数の潜在的旅行先への要求を取り扱うように構成され得る。したがって、ユーザの要求が少なくとも１つの宛先を識別する可能性は高いが、要求された宛先が全ての可能な宛先の中で特定の宛先（例えば、「パリ、フランス」）である可能性は低い。問題は、特定の訓練データセットを参照して定量化され得る。例えば、ＷｏＺ状態追跡データセットにおいて、各スロット‐値ペアは、平均で２１４．９個の訓練例で生じるが、このセットは、２０個未満の訓練例で生じる複数の稀なスロット‐値ペアの存在を含む。さらに、そのような稀なスロット‐値ペアは個々には珍しいが、これらは集合的には頻繁に生じる。すなわち、ＷｏＺデータセットにおけるターンの３８．６％は、稀な（２０個未満の訓練例の）スロット‐値ペアを含むゴールを有する。
【００３７】
この課題に対処するために、エンコーダ３００は、オントロジセットのオントロジメンバ間で共有されるグローバル訓練パラメータ（global  trained  parameters）を含んでもよい。グローバル訓練パラメータの使用は、訓練プロセスの範囲をフルのオントロジセットに拡張することにより、エンコーダ３００の性能を、特に稀に生じるオントロジメンバに関して改善し得る。しかしながら、グローバル訓練パラメータは特定のオントロジメンバに対して調整されないため、グローバル訓練パラメータを使用するとき全体的な精度は低下する可能性がある。
【００３８】
図４は、いくつかの実施形態による、グローバルローカルエンコーダ（global-local  encoder）４００の簡略図である。エンコーダ３００と比較し、グローバルローカルエンコーダ４００は、ローカル訓練パラメータとグローバル訓練パラメータの組み合わせでスコア付けモデル２００を訓練するために使用され得る。したがって、グローバルローカルエンコーダ４００は、ローカル訓練パラメータ（例えば、多数の訓練例が利用可能な頻繁に発生するオントロジメンバに対する改善された精度）とグローバル訓練パラメータ（例えば、訓練例がほとんど利用できない稀に発生するオントロジメンバに対する改善された精度）の双方の利点を利用することができる。
【００３９】
図１Ａ〜図２Ｃと矛盾しないいくつかの実施形態によれば、グローバルローカルエンコーダ４００は、エンコーダ段階２３２〜２３６の１つ以上を実現するために使用されてもよい。そのような実施形態と矛盾せず、グローバルローカルエンコーダ４００は、入力表現４０２を受け取り、１つ以上のエンコード表現４０４及び／又は４０６を生成し得る。図１Ａ〜図２Ｃと矛盾しない実施形態において、入力表現４０２は、入力表現２２２〜２２６のいずれかに一般に対応し得、エンコード表現４０４は、エンコード表現２４４に一般に対応し得、エンコード表現４０６は、エンコード表現２４２、２４５、及び／又は２４６のいずれかに一般に対応し得る。しかしながら、グローバルローカルエンコーダ４００は、一般に、スコア付けモデル２００以外の広範なモデル、例えば、スコア付けモデル２００とは異なるアーキテクチャを有するスコア付けモデルにおいて使用され得ることが理解されるべきである。
【００４０】
いくつかの実施形態において、グローバルローカルエンコーダ４００は、１つ以上のグローバル分岐（global  branches）（例えば、複数のオントロジメンバ間で共有されるグローバル訓練パラメータを含む分岐）及び１つ以上のローカル分岐（local  branches）（例えば、複数のオントロジメンバの各々について別個に決定されるローカル訓練パラメータを含む分岐）を含み得る。いくつかの実施形態において、所与のグローバル分岐は、対応するローカル分岐と並列に配置され得る。例えば、図４に示すように、グローバルローカルエンコーダ４００は、グローバルリカレントニューラルネットワーク（ＲＮＮ）層４１を含む第１のグローバル分岐と、ローカルＲＮＮ層４２０を含む第１のローカル分岐を含み、第１のグローバル分岐と第１のローカル分岐は、並列に配置される。グローバルＲＮＮ層４１０は、入力表現４０２を受け取り、グローバルエンコード表現４１５を生成し、ローカルＲＮＮ層４２０は、入力表現４０２を受け取り、ローカルエンコード表現４２５を生成する。グローバルＲＮＮ層４１０が、オントロジセットのオントロジメンバ間で共有されるグローバル訓練パラメータを含み得るのに対し、ローカルＲＮＮ層４２０は、オントロジセットの各オントロジメンバについて別個に決定されるローカル訓練パラメータを含み得る。前に論じたように、ＲＮＮ層は、変換された表現にシーケンス関連情報（例えば、時間情報）を注入する。例えば、ＲＮＮ層は、簡素なＲＮＮセル、長短期記憶（ＬＳＴＭ）セル、ゲート付きリカレントユニットなどのシーケンスを含んでもよい。いくつかの例において、ＲＮＮ層４１０及び／又は４２０は、双方向性、例えば、双方向性ＬＳＴＭ（Ｂｉ‐ＬＳＴＭ）層でもよい。例えば、ＲＮＮ層４１０及び／又は４２０がＢｉ‐ＬＳＴＭ層を含むとき、エンコード表現４１５及び／又は４２５は、中間ＬＳＴＭ状態のセットを含んでもよい。
【００４１】
グローバルローカルエンコーダ４００は、グローバルエンコード表現４１５とローカルエンコード表現４２５を組み合わせ、かつエンコード表現４０４を生成するマージモジュール４３０を含み得る。いくつかの実施形態において、マージモジュール４３０は、オントロジセットの各オントロジメンバに対して別個に決定されるローカル訓練パラメータ、オントロジセットのオントロジメンバ間で共有されるグローバル訓練パラメータ、及び／又はこれらの適切な組み合わせを含んでもよい。例示的な実施形態において、エンコード表現４０４は、ローカル重み付けパラメータを用いたグローバルエンコード表現４１５及びローカルエンコード表現４２５の重み付き平均に対応してもよく、これは、以下の式：
ｆ’（ｘ）＝σ（αｓ）ｆｓ（ｘ）＋（１−σ（αｓ））ｆｇ（ｘ）
を評価することにより決定されてもよい。ここで、ｘは、入力表現４０２を示し、ｆ’（ｘ）は、エンコード表現４０４を示し、ｆｓ（ｘ）は、ローカルエンコード表現４２５を示し、ｆｇ（ｘ）は、グローバルエンコード表現４１５を示し、σは、シグモイド関数を示し、αｓは、所与のオントロジメンバｓについて決定される学習されたローカル重み付けパラメータを示す。
【００４２】
いくつかの実施形態において、グローバルローカルエンコーダ４００は、グローバル自己注目層４４０を含む第２のグローバル分岐と、ローカル自己注目層４５０を含む第２のローカル分岐とを含んでもよく、第２のグローバル分岐と第２のローカル分岐は、並列に配置される。グローバル自己注目層４４０は、エンコード表現４０４を受け取り、グローバルエンコード表現４４５を生成し、ローカル自己注目層４５０は、エンコード表現４０４を受け取り、ローカルエンコード表現４５５を生成する。図３に関して前に論じたように、グローバルエンコード表現４４５及び／又はローカルエンコード表現４５５は、エンコード表現４０４にわたる自己注目により生成されてもよい。例えば、グローバルエンコード表現４４５（又は、ローカルエンコード表現４５５）は、以下の式：
【数４】
2021515269.tif 000007
を評価することにより決定されてもよい。ここで、ｃは、グローバルエンコード表現４４５（又は、ローカルエンコード表現４５５）を示し、Ｈｉは、エンコード表現４０４のｉ番目の値を示し、ｐｉは、ｓｏｆｔｍａｘ（ｓ）として定義され、ｓのｉ番目の値は、ｓｉ＝ＷＨｉ＋ｂとして定義され、Ｗは、学習された重みを含むパラメータ行列を示し、ｂは、学習されたバイアスを示す。グローバル自己注目層４４０の場合、学習された重み及び／又は学習されたバイアスは、オントロジセットのオントロジメンバ間で共有されるグローバル訓練パラメータでもよい。ローカル自己注目層４５０の場合、学習された重み及び／又は学習されたバイアスは、オントロジセットの各オントロジメンバについて別個に決定されるローカル訓練パラメータでもよい。
【００４３】
グローバルローカルエンコーダ４００は、グローバルエンコード表現４４５とローカルエンコード表現４５５を組み合わせ、かつエンコード表現４０６を生成するマージモジュール４６０を含んでもよい。一般に、マージモジュール４６０は、マージモジュール４３０と同様の方法で動作し得る。例えば、エンコード表現４０６は、ローカル重み付けパラメータを用いたグローバルエンコード表現４４５とローカルエンコード表現４５５の重み付き平均に対応してもよく、これは、以下の式：
ｆ’（ｘ）＝σ（αｓ）ｆｓ（ｘ）＋（１−σ（αｓ））ｆｇ（ｘ）
を評価することにより決定されてもよい。ここで、ｘは、エンコード表現４０４を示し、ｆ’（ｘ）は、エンコード表現４０６を示し、ｆｓ（ｘ）は、ローカルエンコード表現４５５を示し、ｆｇ（ｘ）は、グローバルエンコード表現４４５を示し、σは、シグモイド関数を示し、αｓは、所与のオントロジメンバｓについて決定される学習されたローカル重み付けパラメータを示す。
【００４４】
図５は、いくつかの実施形態による、ニューラルネットワークモデルのための訓練構成５００の簡略図である。図５に示すように、訓練構成５００は、モデル５１０を訓練するために使用される。図１〜図４と矛盾しないいくつかの実施形態において、モデル５１０は、スコア付けモデル２００を実現するために使用されてもよい。
【００４５】
いくつかの実施形態によれば、訓練構成５００は、モデル５１０の複数のモデルパラメータを訓練するために使用されてもよい。訓練の間、多数の訓練例（例えば、ユーザコミュニケーションシーケンス、文脈シーケンス、及び／又はオントロジメンバシーケンス）がモデル５１０に提供される。モデル５１０により生成される予測されたメンバスコアは、学習目的（learning  objective）５２０を使用して例の各々についてグラウンドトゥルース（ground  truth）回答と比較され、学習目的５２０は、グラウンドトゥルース回答に基づいて、所与の予測されたメンバスコアに関連づけられた損失及び／又は報酬を決定する。
【００４６】
学習目的５２０の出力（例えば、損失及び／又は報酬）は、モデル５１０のモデルパラメータを更新するために、最適化器５３０に提供される。例えば、最適化器５３０は、モデルパラメータに関する目的の勾配を決定し、逆伝搬を使用してモデルパラメータを調整し得る。いくつかの実施形態において、最適化器５３０は、勾配降下最適化器（例えば、確率的勾配降下（stochastic  gradient  descent、ＳＧＤ）最適化器）、ＡＤＡＭ最適化器、Ａｄａｇｒａｄ最適化器、ＲＭＳｐｒｏｐ最適化器などを含んでもよい。使用される最適化器のタイプに依存して、様々なパラメータが最適化器５３０に供給されてもよい（例えば、学習率、減衰パラメータなど）。
【００４７】
図６は、いくつかの実施形態による、ユーザとデジタルシステム１００などのデジタルシステムとの間の対話に関連づけられた対話状態を維持する方法６００の簡略図である。図１〜図５と矛盾しないいくつかの実施形態によれば、方法６００の全部又は一部は、プロセッサ１２２などのプロセッサを使用して実行されてもよい。いくつかの実施形態において、方法６００の全部又は一部は、スコア付けモデル１５０及び／又は２００などのニューラルネットワークモデルを評価することにより実行されてもよい。
【００４８】
プロセス６１０において、対話状態１３２などの対話状態が、ユーザコミュニケーション（又は、そのデジタル表現であり、この表現は、例えば、ユーザデバイスから受信されている）に基づいて更新される。いくつかの実施形態において、対話状態は、対話状態追跡器１３０などの、デジタルシステムに関連づけられた対話状態追跡器を使用して更新されてもよい。そのような実施形態と矛盾せず、対話状態追跡器は、スコア付けモデル１５０などのスコア付けモデルを評価して、オントロジセット１４０などのオントロジセットの複数のオントロジメンバに対応する複数のメンバスコアを決定し得る。いくつかの実施形態において、スコア付けモデルは、ユーザコミュニケーション、検討下のオントロジメンバ、及び／又は文脈１３４などの文脈情報に基づいて、メンバスコアの各々を生成し得る。メンバスコアに基づいて、対話状態追跡器は、対話状態を更新し得る。例えば、対話状態追跡器は、メンバスコアに基づいて（例えば、所定の閾値を上回るか又は下回るメンバスコアを有するオントロジメンバを選択することにより）、対話状態に追加又は対話状態から除去すべきゼロ個以上のオントロジメンバを選択してもよい。いくつかの実施形態において、対話状態は、累積ゴール（例えば、対話において現在のやりとりまでにユーザにより表されたゴールのセット）及び／又はターン要求（例えば、現在のやりとりの間にユーザにより表された要求のセット）を含んでもよい。
【００４９】
プロセス６２０において、更新された対話状態に基づいてシステム応答が提供される。いくつかの実施形態において、システム応答は、応答モジュール１６０などの応答モジュールを使用して提供されてもよい。いくつかの実施形態において、システム応答は、ユーザのためにタスクを実行すること（例えば、データベースを検索すること、レストラン予約を行うことなど）、ユーザに応答対話を提供すること、ユーザからのさらなる情報を要求することなどを含んでもよい。いくつかの実施形態において、応答モジュールは、例えば、文脈情報を更新することにより、プロセス６２０において取られた１つ以上のアクションを記録してもよい。したがって、ユーザとの対話のその後のやりとりの間に方法６００が繰り返されるとき、対話状態追跡器は、対話状態を更新するときに更新された文脈情報にアクセスしてもよい。
【００５０】
図７は、いくつかの実施形態による、ニューラルネットワークモデルを訓練する方法７００の簡略図である。図１〜図６と矛盾しないいくつかの実施形態によれば、方法７００は、スコア付けモデル１５０及び／又は２００などのニューラルネットワークモデルを訓練するために使用されてもよい。訓練の間、モデルは、訓練構成５００などの訓練構成で構成され得る。いくつかの例において、方法７００は、ニューラルネットワークモデルを徐々に訓練するために、多数の訓練例にわたり反復的に実行されてもよい。
【００５１】
プロセス７１０において、累積ゴール及び／又はターン要求が、ニューラルネットワークモデルを使用して予測される。いくつかの実施形態において、累積ゴール及び／又はターン要求は、訓練コミュニケーションを含む訓練例に基づいて生成されてもよい。いくつかの実施形態において、累積ゴール及び／又はターン要求は、方法６００に従って生成されてもよい。
【００５２】
プロセス７２０において、学習目的が、累積ゴール及び／又はターン要求に基づいて評価される。いくつかの実施形態において、学習目的は、学習目的５２０に対応し得る。いくつかの実施形態において、学習目的は、プロセス７１０で予測された累積ゴール及び／又はターン要求を、訓練コミュニケーションに対応するグラウンドトゥルース回答と比較することにより評価されてもよい。
【００５３】
プロセス７３０において、ニューラルネットワークモデルのパラメータが、学習目的に基づいて更新される。いくつかの実施形態において、モデルパラメータは、最適化器５３０などの最適化器を使用して更新されてもよい。いくつかの実施形態において、パラメータは、モデルパラメータに関連して学習目的の勾配を決定し、勾配に基づいてパラメータを更新することにより、更新されてもよい。学習目的の勾配は、逆伝搬により決定されてもよい。
【００５４】
図８Ａ及び図８Ｂは、いくつかの実施形態による、対話状態追跡器の実験的評価の簡略図である。評価される対話状態追跡器は、図３に示されるように構成されたスコア付けモデルを含み、対話状態追跡器の異なるバージョンが、ＷｏＺ及びＤＳＴＣ２データセット上で訓練される。
【００５５】
図８Ａは、本開示の対話状態追跡器（最後の行）の精度を他のタイプの対話状態追跡器（他の行）の精度と比較する表８１０を示す。表に示されているように、本開示の対話状態追跡器は全てのメトリックにわたり最も高い精度を達成しており、ＤＳＴＣ２データセットにおける７４．８％の累積ゴール精度及び９７．３％のターン要求精度と、ＷｏＺデータセットにおける８８．３％の累積ゴール精度及び９６．４％のターン要求精度が含まれる。
【００５６】
図８Ｂは、ＷｏＺデータセット上で訓練及びテストされた、本開示の対話状態追跡器のアブレーション研究の結果を含む表８２０を示す。最上行は、グローバル及びローカル訓練パラメータの組み合わせを使用する、図４に示されるように構成されたグローバルローカルエンコーダを有する対話状態追跡器に対応する。第２の行は、ローカル訓練パラメータを使用する、図３に示されるように構成されたエンコーダを有する対話状態追跡器に対応する。第２の行は、グローバル訓練パラメータを使用する、図３に示されるように構成されたエンコーダを有する対話状態追跡器に対応する。第３の行は、図４に示されるように構成されているが自己注目層のない（例えば、グローバル自己注目層４４０及び／又はローカル自己注目層４５０のない）グローバルローカルエンコーダを有する対話状態追跡器に対応する。第３の行は、図４に示されるように構成されているがリカレント層のない（例えば、グローバルＲＮＮ層４１０及び／又はローカルＲＮＮ層４２０のない）グローバルローカルエンコーダを有する対話状態追跡器に対応する。表に示されるように、種々の機能の除去は、累積ゴール精度における１．２％〜１７．３％間の減少、ターン要求精度における０％〜４．１％間の減少を結果としてもたらす。
【００５７】
例示的な実施形態が図示され説明されたが、広範囲の修正、変更、及び置換が前述の開示において考えられ、いくつかの例では、実施形態のいくつかの特徴は他の特徴の対応する使用なしに採用され得る。当業者は、多くの変形、代替、及び修正を認識するであろう。ゆえに、本出願の範囲は別記の特許請求の範囲によってのみ限定されるべきであり、特許請求の範囲は、広く、本明細書に開示される実施形態の範囲と矛盾しないように解釈されることが適切である。
【図１Ａ】
2021515269.tif 000008
【図１Ｂ】
2021515269.tif 000009
【図２Ａ】
2021515269.tif 000010
【図２Ｂ】
2021515269.tif 000011
【図２Ｃ】
2021515269.tif 000012
【図３】
2021515269.tif 000013
【図４】
2021515269.tif 000014
【図５】
2021515269.tif 000015
【図６】
2021515269.tif 000016
【図７】
2021515269.tif 000017
【図８Ａ】
2021515269.tif 000018
【図８Ｂ】
2021515269.tif 000019
【国際調査報告】
2021515269.tif 000020
2021515269.tif 000021