IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セールスフォース ドット コム インコーポレイティッドの特許一覧

特許7209806タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク
<>
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図1
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図2
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図3
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図4
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図5
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図6
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図7
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図8
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図9
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図10
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図11
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図12
  • 特許-タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-12
(45)【発行日】2023-01-20
(54)【発明の名称】タスク指向型対話のためのグローバル-ローカルメモリポインタネットワーク
(51)【国際特許分類】
   G06F 16/90 20190101AFI20230113BHJP
【FI】
G06F16/90 100
【請求項の数】 15
(21)【出願番号】P 2021505373
(86)(22)【出願日】2019-09-25
(65)【公表番号】
(43)【公表日】2022-01-04
(86)【国際出願番号】 US2019053008
(87)【国際公開番号】W WO2020069020
(87)【国際公開日】2020-04-02
【審査請求日】2021-03-23
(31)【優先権主張番号】62/737,234
(32)【優先日】2018-09-27
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/175,639
(32)【優先日】2018-10-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】506332063
【氏名又は名称】セールスフォース ドット コム インコーポレイティッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ウー,チェン-シェン
(72)【発明者】
【氏名】ション,カイミング
(72)【発明者】
【氏名】ソーチャー,リチャード
【審査官】酒井 恭信
(56)【参考文献】
【文献】特開2019-020995(JP,A)
【文献】特開平06-012445(JP,A)
【文献】特開2017-224155(JP,A)
【文献】国際公開第2016/151700(WO,A1)
【文献】米国特許出願公開第2018/0060301(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
G06N 3/02
(57)【特許請求の範囲】
【請求項1】
コンピュータにより実施される、ユーザとコンピュータとの間の対話に対する応答を生成する方法であって、前記方法は、
対話履歴と知識ベースとをメモリに格納するステップであって、前記対話履歴は、前記対話の間に交換されるユーザの発話とコンピュータの応答とのシーケンスについての情報を含み、前記知識ベースは、対話コンピュータ応答で使用可能な情報を含む、ステップと、
前記ユーザから新しい発話を受信するステップと、
回帰型ニューラルネットワークとして実装されるエンコーダにおいて前記新しい発話を符号化し、前記エンコーダの最後の隠れ状態を用いて前記知識ベースをクエリすることにより、グローバルメモリポインタを生成するステップであって、前記知識ベースからの出力は前記グローバルメモリポインタである、ステップと、
前記新しい発話に対するスケッチ応答を生成するステップであって、前記スケッチ応答は、前記メモリからの知識ベース情報により置き換えられるべき少なくとも1つのスケッチタグを含む、ステップと、
前記グローバルメモリポインタを用いて、前記メモリ内の前記知識ベース情報をフィルタリングするステップと、
回帰型ニューラルネットワークとして実装されるデコーダの隠れ状態を用いて前記知識ベースをクエリすることにより、少なくとも1つのローカルメモリポインタを生成するステップであって、前記知識ベースからの出力は前記少なくとも1つのローカルメモリポインタである、ステップと、
前記のフィルタリングされた知識ベース情報から、前記スケッチ応答の中の前記少なくとも1つのスケッチタグを置き換えるべき単語を選択するために、前記ローカルメモリポインタを用いて前記対話コンピュータ応答を生成するステップと、
を含む方法。
【請求項2】
前記対話履歴は、対話履歴情報の埋め込みマトリックスのセットを含む、請求項1に記載の方法。
【請求項3】
前記知識ベースは、前記知識ベース情報の埋め込みマトリックスのセットを含む、請求項1又は2に記載の方法。
【請求項4】
前記グローバルメモリポインタを生成するステップは、
前記新しい発話を符号化して、1つ以上の隠れ状態を生成するステップと、
前記1つ以上の隠れ状態を用いて、前記メモリ内の前記知識ベース情報をクエリするステップと、
を含む、請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記グローバルメモリポインタは、複数の要素を有するベクトルを含み、各要素は独立した確率に関連付けられる、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記ローカルメモリポインタは、ポインタのシーケンスを含み、各ポインタは、前記のフィルタリングされた知識ベース情報から、前記スケッチ応答の中のそれぞれのスケッチタグを置き換えるべきそれぞれの単語を選択するためのものである、請求項1~5のいずれか一項に記載の方法。
【請求項7】
実行可能コードが記録された非一時的コンピュータ可読記録媒体であって、前記実行可能コードは、コンピュータに関連付けられた1つ以上のプロセッサにより実行されると、前記1つ以上のプロセッサに方法を実行させるよう適応され、前記方法は、
対話履歴と知識ベースとをメモリに格納するステップであって、前記対話履歴は、対話の間に交換されるユーザの発話とコンピュータの応答とのシーケンスについての情報を含み、前記知識ベースは、対話コンピュータ応答で使用可能な情報を含む、ステップと、
前記コンピュータにおいて、前記ユーザから新しい発話を受信するステップと、
回帰型ニューラルネットワークとして実装されるエンコーダにおいて前記新しい発話を符号化し、前記エンコーダの最後の隠れ状態を用いて前記知識ベースをクエリすることにより、グローバルメモリポインタを生成するステップであって、前記知識ベースからの出力は前記グローバルメモリポインタである、ステップと、
前記新しい発話に対するスケッチ応答を生成するステップであって、前記スケッチ応答は、前記メモリからの知識ベース情報により置き換えられるべき少なくとも1つのスケッチタグを含む、ステップと、
前記グローバルメモリポインタを用いて、前記メモリ内の前記知識ベース情報をフィルタリングするステップと、
回帰型ニューラルネットワークとして実装されるデコーダの隠れ状態を用いて前記知識ベースをクエリすることにより、少なくとも1つのローカルメモリポインタを生成するステップであって、前記知識ベースからの出力は前記少なくとも1つのローカルメモリポインタである、ステップと、
前記のフィルタリングされた知識ベース情報から、前記スケッチ応答の中の前記少なくとも1つのスケッチタグを置き換えるべき単語を選択するために、前記ローカルメモリポインタを用いて前記対話コンピュータ応答を生成するステップと、
を含む、非一時的コンピュータ可読記録媒体。
【請求項8】
前記対話履歴は、対話履歴情報の埋め込みマトリックスのセットを含む、請求項7に記載の非一時的コンピュータ可読記録媒体。
【請求項9】
前記知識ベースは、前記知識ベース情報の埋め込みマトリックスのセットを含む、請求項7又は8に記載の非一時的コンピュータ可読記録媒体。
【請求項10】
前記グローバルメモリポインタを生成するステップは、
前記新しい発話を符号化して、1つ以上の隠れ状態を生成するステップと、
前記1つ以上の隠れ状態を用いて、前記メモリ内の前記知識ベース情報をクエリするステップと、
を含む、請求項7~9のいずれか一項に記載の非一時的コンピュータ可読記録媒体。
【請求項11】
前記グローバルメモリポインタは、複数の要素を有するベクトルを含み、各要素は独立した確率に関連付けられる、請求項7~10のいずれか一項に記載の非一時的コンピュータ可読記録媒体。
【請求項12】
前記ローカルメモリポインタは、ポインタのシーケンスを含み、各ポインタは、前記のフィルタリングされた知識ベース情報から、前記スケッチ応答の中のそれぞれのスケッチタグを置き換えるべきそれぞれの単語を選択するためのものである、請求項7~11のいずれか一項に記載の非一時的コンピュータ可読記録媒体。
【請求項13】
ユーザとコンピュータとの間の対話に対する応答を生成するシステムであって、前記システムは、
対話履歴と知識ベースとを格納するメモリであって、前記対話履歴は、前記対話の間に交換されるユーザの発話とコンピュータの応答とのシーケンスについての情報を含み、前記知識ベースは、対話コンピュータ応答で使用可能な情報を含む、メモリと、
回帰型ニューラルネットワークとして実装されるエンコーダであって、前記エンコーダは、前記ユーザから新しい発話を受信し、前記新しい発話を符号化し、前記エンコーダの最後の隠れ状態を用いて前記知識ベースをクエリすることにより、グローバルメモリポインタを生成前記知識ベースからの出力は前記グローバルメモリポインタであり、前記グローバルメモリポインタは、前記メモリ内の知識ベース情報をフィルタリングするために使用される、エンコーダと、
回帰型ニューラルネットワークとして実装されるデコーダであって、前記デコーダは、前記デコーダの隠れ状態を用いて前記知識ベースをクエリすることにより、少なくとも1つのローカルメモリポインタを生成し前記知識ベースからの出力は前記少なくとも1つのローカルメモリポインタであり、前記新しい発話に対するスケッチ応答生成、前記スケッチ応答は、前記メモリからの知識ベース情報により置き換えられるべき少なくとも1つのスケッチタグを含む、デコーダと、
を含み、
前記システムは、前記のフィルタリングされた知識ベース情報から、前記スケッチ応答の中の前記少なくとも1つのスケッチタグを置き換えるべき単語を選択するために、前記ローカルメモリポインタを用いて前記対話コンピュータ応答を生成する、システム。
【請求項14】
前記対話履歴は、対話履歴情報の埋め込みマトリックスのセットを含む、請求項13に記載のシステム。
【請求項15】
前記知識ベースは、前記知識ベース情報の埋め込みマトリックスのセットを含む、請求項13又は14に記載のシステム。

【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本願は、参照により全体がここに組み込まれる、2018年19月27日に出願した米国仮特許出願番号第62/737,234号、及び2018年10月30日に出願した米国特許出願番号第16/175,639号、の優先権を主張する。
【0002】
[著作権表示]
本特許文書の開示の一部は、著作権保護を受ける内容を含む。著作権者は、特許商標庁の特許ファイル又は記録に記載されているように、本特許文書又は特許開示のいずれによる複製にも異議を唱えることがないが、それ以外の場合は全ての著作権を保留する。
【0003】
[技術分野]
本開示は、概して、対話システムに関し、より具体的には、タスク指向型対話のためのグローバル-ローカルメモリポインタネットワークの使用に関する。
【背景技術】
【0004】
タスク指向型対話システムは、例えばレストランの予約を行う、関心のある場所を見付ける、ナビゲーション又は運転指示により助ける、等のような特定のユーザの目標を達成するために開発されてきた。標準的に、これらの対話システムへのユーザの問い合わせは、自然言語により入力又は提供される対話の単語若しくは発話の比較的小さなセットに限られている。従来のタスク指向型対話ソリューションは、自然言語理解、対話管理、及び自然言語生成のための技術により実施され、各モジュールは特定の目的又はタスクのためにカスタマイズされ、個別に及び何からのコストをかけて設計される。
【図面の簡単な説明】
【0005】
図1】幾つかの実施形態によるコンピューティング装置の簡略図である。
【0006】
図2】幾つかの実施形態によるグローバル-ローカルメモリポインタモデル又はネットワークの簡略図である。
【0007】
図3】幾つかの実施形態による外部知識メモリの簡略図である。
【0008】
図4】幾つかの実施形態による符号化対話履歴及び知識ベースの符号化のためのエンコーダの簡略図である。
【0009】
図5】幾つかの実施形態によるデコーダの簡略図である。
【0010】
図6】幾つかの実施形態による知識ベース及び対話履歴の例示的なテーブルを示す。
【0011】
図7】幾つかの実施形態によるグローバル-ローカルメモリポインタモデル又はネットワークのための方法の簡略図である。
【0012】
図8】グローバル-ローカルメモリポインタモデル又はネットワークをベースラインと比較する例示的なテーブルを示す。
図9】グローバル-ローカルメモリポインタモデル又はネットワークをベースラインと比較する例示的なテーブルを示す。
【0013】
図10】グローバル-ローカルメモリポインタモデル又はネットワークの性能に対する貢献を示す例示的なテーブルを示す。
【0014】
図11】SMDナビゲーションドメインにおけるメモリ注意(attention)の視覚化の例である。
【0015】
図12】異なるホップのために選択されたハイパーパラメータを示す例示的なテーブルを示す。
【0016】
図13】グローバル-ローカルメモリポインタモデル又はネットワークの妥当性及び人間らしさスコアを示す例示的なチャートを示す。
【0017】
図中、同じ名称を有する要素は同じ又は類似する機能を有する。
【発明を実施するための形態】
【0018】
この説明、及び態様、実施形態、実装、又は適用を示す添付の図面は、限定と考えられるべきではなく、請求の範囲が保護される発明を定める。種々の機械的、組成上の、構造上の、電気的、及び動作上の変更が、この説明及び請求の範囲の精神及び半から逸脱することなく行われてよい。幾つかの例では、よく知られた回路、構造、又は技術は、これらが当業者に知られているので、詳細に示され又は説明されない。2つ以上の図面の中の同様の番号は、同じ又は類似する要素を表す。
【0019】
この説明では、特定の詳細が説明され、本開示と一致する幾つかの実施形態を説明する。実施形態の完全な理解を提供するために、多くの特定の詳細が説明される。しかしながら、当業者には、幾つかの実施形態がこれらの特定の詳細のうちの一部を有しないで実行されてよいことが明らかである。ここに開示される特定の実施形態は、説明的であることを意味し、限定を意味しない。当業者は、ここの具体的に説明されないが、他の要素が本開示の範囲及び精神の範囲内であることを理解し得る。更に、不要な繰り返しを避けるために、1つの実施形態に関連して示され説明される1つ以上の特徴は、特に断りの無い限り又は1つ以上の特徴が実施形態を非機能性にしない限り、他の実施形態に組み込まれてよい。
【0020】
対話システムの開発に必要な人的労力を削減するために、及び同じドメイン間又は用途間での拡張のために、平文を入力しシステム応答を直接出力するエンドツーエンド対話システムが開発されている。しかしながら、これらのエンドツーエンド対話システムは、通常、それらが外部知識ベース(knowledge base (KB))をシステム応答生成へと効率的に組み込むことができないことに苦しんでいる。この理由の1つは、大規模な動的知識ベースが、応答の生成又は出力を不安定にさせる膨大なノイズの多い入力であることである。雑談シナリオと違い、この問題は、知識ベース内の情報が通常は応答内に正しい又は適正なエンティティを含むことが期待されるので、タスク指向型対話システムでの使用では特に困難であり又は有害であり得る。例えば、自動車運転支援を実施する対話システムでは、知識ベースは、図6に示す例示的なテーブル610に示すような情報を含み得る。システムと相互作用するユーザの例示的な対話の中で、テーブル620に示すように、ユーザ/運転手は、燃料に対する要求を行い得る(例えば、「I need gas(ガソリンが要る)」)。テーブル620の知識ベースにアクセスするシステムは、「Valero」を「gas station(ガソリンスタンド)」として識別するかも知れない。しかし、運転手からの続きの質問「What is the address?(住所は?)」に応答して、システムは、複数の可能性、つまり「580 Van Ness Ave」、「394 Van Ness Ave」、「842 Arrowhead Way」、「200 Alester Ave」等を識別するかも知れない。運転手は、システムが、友達の家(例えばTomsの家)の住所又は喫茶店(例えばCoupa)の住所又は何らかの他のランダムな場所ではなく、ガソリンスタンドの住所(例えば、Valero)を提供することを期待する。
【0021】
この問題を解決するために、幾つかの実施形態によると、本開示は、タスク指向型対話システムにおける応答生成のためのグローバル-ローカルメモリポインタ(global local memory pointer (GLMP))ネットワーク又はモデルを提供する。GLMPネットワーク又はモデルは、グローバルメモリエンコーダ、ローカルメモリデコーダ、及び外部知識メモリを含む。GLMPは、エンコーダとデコーダとの間で外部知識を共有し、エンコーダ及び外部知識を利用してグローバルメモリポインタを学習する。これは、次にデコーダへ伝えられ、外部知識を変更して、応答の中へとコピーする必要のない単語をフィルタリングする。後に、システム応答を直接生成する代わりに、ローカルメモリデコーダは、先ず、回帰型ニューラルネットワーク(recurrent neural network (RNN))を使用して、スケッチタグを有するスケッチ応答を取得する。タグを有するスケッチ応答は、対話アクションのためのテンプレートを生成するために、隠れた(latent)対話管理を学習するよう動作し又はそのように考えることができる。次にデコーダは、ローカルメモリポインタを生成して、スケッチタグを置き換えるために外部知識メモリから単語をコピーする。
【0022】
コンピューティング装置
図1は、幾つかの実施形態によるコンピューティング装置100の簡略図である。図1に示されるように、コンピューティング装置100は、メモリ120に接続されたプロセッサ110を含む。コンピューティング装置100の動作はプロセッサ110により制御される。そして、コンピューティング装置100は1つのプロセッサ110のみを有するよう示されるが、プロセッサ110は、コンピューティング装置100内の1つ以上の中央処理ユニット、マルチコアプロセッサ、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、FPGA(field programmable gate array)、ASIC(application specific integrated circuit)、GPU(graphics processing unit)、TPU(tensor processing unit)、等を表し得ることが理解される。コンピューティング装置100は、スタンドアロン型サブシステムとして、コンピューティング装置に追加される基板として、及び/又は仮想機械として実装されてよい。
【0023】
メモリ120は、コンピューティング装置100、及び/又はコンピューティング装置100の動作中に使用される1つ以上のデータ構造、により実行されるソフトウェアを格納するために使用されてよい。メモリ120は、1つ以上のタイプの機械可読媒体を含んでよい。機械可読媒体の幾つかの一般的形式は、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光媒体、穴あきカード、紙テープ、穴のパターンを有する任意の他の物理的媒体、RAM、PROM、EPROM、FLASH-EPROM、任意の他のメモリチップ又はカートリッジ、及び/又はプロセッサ若しくはコンピュータが読み出すために適応される任意の他の媒体を含んでよい。
【0024】
プロセッサ110及び/又はメモリ120は、任意の適切な物理構成で配置されてよい。幾つかの実施形態では、プロセッサ110及び/又はメモリ120は、同じ基板上に、同じパッケージ内に(例えば、システムインパッケージ)、同じチップ上に(例えば、システムオンチップ)、等で実装されてよい。幾つかの実施形態では、プロセッサ110及び/又はメモリ120は、分散され、仮想化され、及び/又はコンテナ化されたコンピューティングリソースを含んでよい。このような実施形態と一貫して、プロセッサ110及び/又はメモリ120は、1つ以上のデータセンタ及び/又はクラウドコンピューティング設備内に配置されてよい。
【0025】
図示のように、メモリ120は、グローバル-ローカルメモリポインタモジュール130を含む。グローバル-ローカルメモリポインタモジュール130は、本願明細書で更に説明されるシステム、方法、及びモデルのためのタスク指向型対話における応答生成のためのグローバル-ローカルメモリポインタを実装し及び/又は生成するために使用されてよい。幾つかの例では、グローバル-ローカルメモリポインタモジュール130が、使用され、又は、1人以上のユーザが機械、例えばコンピュータと相互作用できる対話システムに組み込まれてよい。各対話は、ユーザと機械との間の情報、質問、クエリ、応答、の取り交わしを含んでよい。この一連の交換は、対話の履歴を構成する。所与の対話について、グローバル-ローカルメモリポインタモジュール130は、ユーザの発話又は会話150を受信し、そのための適切な応答160を生成する。これを達成するために、以下に詳細に説明するように、グローバル-ローカルメモリポインタモジュール130は、応答が生成され若しくは作り出され得る、知識ベースの中の情報又はデータのグローバルポインタ及びローカルメモリポインタの両方を生成する。グローバル-ローカルメモリポインタモジュール130は、1つ以上の知識ベース155を受信してもよい。
【0026】
幾つかの例では、グローバル-ローカルメモリポインタモジュール130は、適切な前処理、符号化、復号、及び出力層を有する、単一又は複数の層のニューラルネットワークを含んでよい。ニューラルネットワークは、人間的精度で現実世界の情報を自動的に分析する技術として有望であることが実証されている。一般に、ニューラルネットワークモデルは、入力情報を受信し、入力情報に基づき予測を行う。例えば、ニューラルネットワーク分類器は、所定のクラスセットの中で、入力情報のクラスを予測してよい。一方で、現実世界の情報を分析するための他のアプローチは、ハードコードされた処理、統計的分析、等を含んでよく、ニューラルネットワークは、機械学習処理を用いて試行錯誤の処理により、次第に予測することを学習する。所与のニューラルネットワークモデルは、膨大な数のトレーニングサンプルを用いて、ニューラルネットワークモデルがトレーニング例から人間の生成し得るのと同様の推定を矛盾なく行い始めるまで、トレーニングされてよい。幾つかの例では、グローバル-ローカルメモリポインタモジュール130は、特に知識ベース及び現在対話の履歴を格納するメモリネットワークを含んでよい。グローバル-ローカルメモリポインタモジュール130はソフトウェアモジュールとして示されるが、ハードウェア、ソフトウェア、及び/又はハードウェアとソフトウェアとの組合せを用いて実装されてよい。
【0027】
図1は上位レベル図であるが、図2~5は、幾つかの実施形態によるグローバル-ローカルメモリポインタモデル又はネットワークの更なる詳細を示す。図7は、グローバル-ローカルメモリポインタモデル又はネットワークの対応する方法700を示す。
【0028】
グローバル-ローカルメモリポインタモデル
図2は、幾つかの実施形態によるタスク指向型対話システムのためのグローバル-ローカルメモリポインタモデル又はネットワーク200の簡略図である。幾つかの実施形態では、グローバル-ローカルメモリポインタモデル又はネットワーク200は、図1のグローバル-ローカルメモリポインタモジュール130を実装できる。
【0029】
幾つかの実施形態では、図示のように、このモデルは、グローバルメモリエンコーダ210、ローカルメモリデコーダ220、及び共有外部知識メモリ230を含み又は有し得る。幾つかの実施形態では、エンコーダ210及びデコーダ220の一方又は両方は、1つ以上の回帰型ニューラルネットワーク(recurrent neural network (RNN))を含む。
【0030】
グローバル-ローカルメモリポインタモデル200は、入力として、1つ以上の知識ベース(KB)及び現在対話の情報(例えば、ユーザとシステムとの間の会話)を受信する。知識ベースは、ユーザの質問又は対話と関連する発話に対する応答を生成するために関連し得る情報又はデータを含む。この情報は、例えば、人々の名前、場所、又は関心点(points of interest (poi))、各poiのタイプ、それらの住所若しくは連絡先情報、等を含み得る。知識ベースについてのこの情報の例は、図6のテーブル610に示される。対話情報は、現在対話についてのユーザとシステムとの間で交換された発話及び応答の履歴を含み得る。この対話履歴情報の例は、図6のテーブル620に示される。対話履歴及び知識ベースから入力された単語又は発話は、要素のシーケンス、それぞれX=(x,...,x)及びB=(b,...,b)として見ることができる。幾つかの実施形態では、図2に示すように、外部知識メモリ230は、1つ以上の知識ベース(KB)を受信し、知識ベースメモリ232に、及び現在対話の情報(例えば、ユーザとシステムとの間の会話)を対話メモリ234に、格納する。モデル200の出力は、Y=(y,...,y)であり、これは、対話の中で現在のユーザの発話に対して期待されるシステム応答である。
【0031】
グローバルメモリエンコーダ210は、コンピューティング装置との対話中にユーザにより発せられた1つ以上の発話を受信してよい(図7のプロセス720)。幾つかの実施形態によると、グローバルメモリエンコーダ210は、コンテキストRNNを使用して、対話履歴を符号化し、その隠れ状態を外部知識メモリ230に書き込む。次に、最後の隠れ状態が使用されて、外部知識を読み出し、グローバルメモリポインタGを生成する。復号段階の間、ローカルメモリデコーダ220は、先ず、スケッチRNNを用いてスケッチ応答を生成する。スケッチ応答自体は、外部知識ベースから情報をコピーせず、むしろ、更なる処理を保留している外部知識ベースからコピーされ又は取得されるべきアイテムのスケッチタグを有するシステム応答のためのテンプレートとして動作し又はサービスする。スケッチ応答の例は、「@poi is @distance away(@poiは@distance離れている)」である。ここで、@poi、及び@distanceは、それぞれ満たされるべき関心点(point of interest (poi))及び距離のスケッチタグである。次に、グローバルメモリポインタG及びスケッチRNN隠れ状態は、フィルタ及びクエリとして、外部知識メモリ230に渡される。この入力に基づき、ローカルメモリポインタLは、外部知識メモリ230から返される。ローカルメモリポインタLは、スケッチタグ(例えば、@poi、@distance)を置き換えてそれにより最終的なシステム応答、例えば「」を取得するために、外部知識から平文(例えば、「Valero」、「4 miles away」)をコピーするために使用される。コンピューティング装置は、次に、ユーザの発話に応答して、この応答をユーザへと出力できる。
【0032】
外部知識メモリ
図3は、幾つかの実施形態による外部知識メモリ300の簡略図である。外部知識メモリ300は、対話履歴及び知識ベースを格納する(図7のプロセス710)。幾つかの実施形態では、外部知識メモリ300は、図2のニューラルモデル200の外部知識メモリ230を実装できる。外部知識メモリ300は、KBメモリモジュール332と対話メモリモジュール224とを含み、幾つかの実施形態では、図2のニューラルモデル200のメモリ232及び234をそれぞれ実装できる。
【0033】
幾つかの実施形態では、メモリ300内の外部知識は、グローバル-ローカルメモリポインタモデル(例えば200)のエンコーダ(例えば210)及びデコーダ(例えば220)により共有されるグローバルコンテキスト表現を含む。外部知識を学習フレームワークに組み込むために、幾つかの実施形態では、外部知識メモリ300は、エンドツーエンドメモリネットワーク(memory network (MN))を用いて実装でき、構造的KB及び時間依存対話履歴の両方の単語レベルの情報を格納する。図示のように、これは、KBメモリ及び対話メモリを含むことができる。更に、エンドツーエンドメモリネットワーク(MN)は、コピーメカニズムを強化できるマルチホップの分別能力(reasoning ability)を提供し、サポートし、又は可能にする。
【0034】
グローバルコンテキスト表現
幾つかの実施形態では、KBメモリモジュール332の中で、各要素b∈Bは、(主語(Subject)、関係(Relation)、目的語(Object))構造のようなトリプレット形式で表現される。これは、KBノードを表すために使用される共通フォーマットである。例えば、図6のテーブル610の中の知識ベースBは、{(Toms house, distance, 3 miles),...,(Starbucks, address, 792 Bedoin St)}のように示される。一方で、対話コンテキストXは、対話メモリモジュール334に格納される。ここで、話者及び時間的符号化は、トリプレット形式のように含まれる。これは、参照によりここに組み込まれる、Boards et al., “Learning end-to-end goal-oriented dialog,” International Conference on Learning Representations, abs/1605.07683, 2017に更に詳細に記載されている。例えば、図6のテーブル620の中の運転手からの最初の発話は、{($user, turn1, I)),($user, turn1, need),($user, turn1, gas)}と示される。2つのメモリモジュールについて、語の袋(bag-of-word)が、メモリ埋め込み(memory embedding)として使用される。推定時間の間、メモリ位置がポイントされると、目的語の単語がコピーされる。例えば、トリプレット(Toms house, distance, 3 miles)が選択された場合、3 milesがコピーされる。Object(.)関数は、トリプレットから目的語の単語を得るものとして示される。
【0035】
知識読み出し及び書き込み
幾つかの実施形態では、外部知識は、トレーニング可能な埋め込み行列の集合C=(C,...,CK+1)を含む。ここで、
【数1】
であり、Kはエンドツーエンドメモリネットワーク(MN)の中の最大メモリホップであり、|V|は語彙サイズであり、dembは埋め込み次元である。外部知識の中のメモリは、M=[B;X]=(m,...,mn+l)として示され、ここで、mは言及されたトリプレット成分のうちの1つである。メモリを読み取るために、外部知識は、初期クエリベクトルqを使用する。更に、K個のホップに渡りループでき、次式を用いて書くホップkにおける注意重みを計算する。
【数2】
ここで、
【数3】
は、埋め込み行列Cを用いるi番目のメモリ位置における埋め込みである。qはホップkのクエリベクトルであり、B(.)は語の袋(bag-of-word)関数である。pk∈Rn+1は、クエリベクトルに関するメモリ関連性を記述するソフトメモリ注意であることに留意する。次に、モデルは、ck+1に渡る加重和によりメモリoを読み出し、クエリベクトルqk+1を更新する。定式では、
【数4】
【0036】
グローバルメモリエンコーダ
図4は、幾つかの実施形態による符号化対話履歴X及び知識ベースBの符号化のためのエンコーダ400の簡略図である。エンコーダ400は、コンピューティング装置との対話中にユーザにより発せられた1つ以上の発話を受信してよい(図7のプロセス720)。幾つかの実施形態では、エンコーダ400は、図2のニューラルモデル200のエンコーダ210を実装できる。
【0037】
幾つかの実施形態では、エンコーダ400は、コンテキスト回帰型ニューラルネットワーク(recurrent neural network (RNN))として実装できる。コンテキストRNNは、順序依存関係をモデル化し、コンテキスト又は対話履歴Xを符号化するために使用される。次に、隠れ状態Hが、外部知識またはメモリに書き込まれる(例えば、図2及び3に示される230又は300)。その後、最後のエンコーダ隠れ状態は、外部知識を読み出すため、及び2つの出力、グローバルメモリポインタG、及びメモリ読み出しを生成若しくは得るためのクエリとしてサービスする。
【0038】
直感的に、エンドツーエンドメモリネットワーク(MN)アーキテクチャがメモリ間の依存関係をモデル化することは困難であり、これは会話関連タスクにおいて特に欠点であり得るので、外部知識に隠れ状態を書き込むことは、連続的なコンテキストにより解釈される情報を提供でき、一般的な語彙不足(out-of-vocabulary (OOV))の課題は良好に軽減できる。更に、符号化対話コンテキストをクエリとして使用することは、外部知識メモリ(例えば、230又は300)が隠れ対話状態又はユーザの意図に関連する情報を読み出すよう促進できる。更に、グローバルメモリ分配を学習するグローバルメモリポインタは、符号化対話履歴及び符号化知識ベース(KB)情報と一緒にデコーダに渡される。
【0039】
コンテキストRNN
幾つかの実施形態では、エンコーダ400のコンテキストRNNは、個別に又は一緒に(例えば、参照によりここに組み込まれるChung et al, 2014に記載されるような)1つ以上の双方向ゲート付き回帰型ユニット(gated recurrent units (GRUs)を含み得る複数の符号化要素402を含み又はそれらを実装され得る。各符号化要素402は、コンテキスト又は対話履歴Xの単語又はテキストに作用して、隠れ状態H=(h ,...,h )を生成してよい。最後の隠れ状態h は、符号化対話履歴として外部知識メモリにクエリするために使用される。更に、隠れ状態Hは、元のメモリ表現を対応する隠れ状態と共に加算することにより、外部知識300の中の対話メモリモジュール334に書き込まれる。式では、
【数5】
【0040】
グローバルメモリポインタ
エンコーダ400は、グローバルメモリポインタGを生成する(図7のプロセス730)。幾つかの実施形態では、グローバルメモリポインタG=(g,...,gn+1)は、0と1の間の実数値を含むベクトルを含む。全部の重みが1つに加算される従来の注意メカニズムと異なり、グローバルメモリポインタGの中の各要素は、独立した確率であり得る。モデル20は、先ず、h を用いて最後のホップまで外部知識300をクエリし、(1)のようにSoftmax関数を適用する代わりに、モデルは内積を実行し、Sigmoid関数が続く。取得されるメモリ分布は、デコーダに渡されるグローバルメモリポインタGである。グローバルポイント能力を更に強化するために、グローバルメモリポインタをマルチラベル分類タスクとしてトレーニングするために補助損失(auxiliary loss)が追加される。アブレーション(ablation)の研究で示されるように、この追加管理の追加により、性能を向上できる。最後に、メモリ読み出しqK+1が、符号化KB情報として使用される。
【0041】
補助タスクでは、ラベルGlabel=(g ,...,g n+1)は、メモリ内の目的語の単語が期待されるシステム応答Yの中に存在するかどうかをチェックすることにより定義される。次に、グローバルメモリポインタは、GとGlabelとの間のバイナリクロスエントロピー損失Lossを用いてトレーニングされる。式では、
【数6】
【0042】
幾つかの実施形態では、以下に更に詳述されるように、グローバルメモリポインタは、ユーザの発話に対する適切な対話応答を生成する際に使用するために、メモリの知識ベースモジュール(232又は322)からの情報をフィルタリングするよう機能する。
【0043】
ローカルメモリデコーダ
図5は、幾つかの実施形態によるデコーダ500の簡略図である。幾つかの実施形態では、デコーダ500は、図2のニューラルモデル200のデコーダ220を実装できる。幾つかの実施形態では、デコーダ500は、回帰型ニューラルネットワーク(recurrent neural network (RNN))として実装される。
【0044】
幾つかの実施形態では、デコーダ500のRNNは、ユーザの発話に対するコンピュータの応答のテンプレート又はスケッチを生成する。スケッチ応答は、要素のセットを含んでよい。スケッチ応答のこれらの要素のうちの幾つかは、コンピューティング装置100から出力される実際の対話応答の中に現れる。これらの要素のうちの他のものは、スケッチタグと呼ばれてよく、実際の対話応答の中で、知識ベースからの単語により置き換えられる。スケッチ応答の例は、「@poi is @distance away」(@poiは@distance離れている)であり、ここで、@poi及び@distanceはそれぞれスケッチタグである。コンピュータ対話応答では、これらのスケッチタグは、それぞれ、知識メモリ(例えば232又は332)からの単語「Starbucks」及び「1 mile」により置き換えられてよい。その結果、実際に出力される応答は、「Starbucks is 1 mile away」(スターバックスは1マイル離れている)である。
【0045】
符号化対話履歴h 、符号化KB情報qK+1、及びグローバルメモリポインタGを用いて、ローカルメモリデコーダ500は、先ず、対話履歴h と符号化KB情報qK+1との連結を用いて自身のスケッチRNNを初期化し、スロット値を除外するがスケッチタグを含むスケッチ応答を生成する。各復号時間ステップで、スケッチRNNの隠れ状態は、以下の2つの目的で使用される。(1)語彙の中の次のトークンを予測する。これは、標準的なシーケンス-シーケンス(sequence-to-sequence (S2S))学習と同じである。(2)外部知識をクエリするためのベクトルとしてサービスする。スケッチタグが生成される場合、グローバルメモリポインタGは、外部知識300に渡され、期待される出力単語は、ローカルメモリポインタLから拾われる。その他の場合、出力される単語は、スケッチRNNにより生成される単語である。例えば、図5で、poiタグ(@poi)は、第1時間ステップで生成される。従って、単語「Starbucks」がシステム出力単語としてローカルメモリポインタLから拾い出される。
【0046】
スケッチRNN
デコーダ500は、スケッチ応答を生成する(図7のプロセス740)。幾つかの実施形態では、エンコーダ500のスケッチRNNは、個別に又は一緒に1つ以上の双方向ゲート付き回帰型ユニット(gated recurrent units (GRUs))を含み得る複数の要素502を含み又はそれらを実装され得る。幾つかの実施形態では、スケッチRNNは、実際のスロット値を有しないで、スケッチ応答Y=(y ,...,y )を生成するために使用される。スケッチRNNは、符号化対話(h )及びKB情報(qK+1)に基づき動的対話アクションテンプレートを生成することを学習する。各復号時間ステップtで、スケッチRNN隠れ状態h 及びその出力分布pvocab は、次式のように定められる。
【数7】
【0047】
標準的なクロスエントロピー損失は、スケッチRNNをトレーニングするために使用され、Lossは次式のように定められる。
【数8】
【0048】
Yの中のスロット値は、提供されたエンティティテーブルに基づきスケッチタグへと置換される。スケッチタグSTは、全部、特別なトークン、例えば全ての住所を表す@address及び全ての距離情報を表す@distanceで始まる可能なスロットタイプである。
【0049】
ローカルメモリポインタ
デコーダ500は、1つ以上のローカルメモリポインタLを生成する(図7のプロセス760)。幾つかの実施形態では、ローカルメモリポインタL=(L,...,L)は、ポインタのシーケンスを含む。グローバルメモリポインタGは、外部知識メモリ300の知識ベース情報をフィルタリングする(図7のプロセス750)。各時間ステップtで、グローバルメモリポインタGは、先ず、自身の注意重みを用いてグローバルコンテキスト表現を変更する。
【数9】
次に、スケッチRNN隠れ状態h は外部知識300をクエリする。最後のホップにおけるメモリ注意は、対応するローカルメモリポインタLであり、これは時間ステップtにおけるメモリ分布として表される。ローカルメモリポインタをトレーニングするために、外部知識の中の最後のホップのメモリ注意の上に、管理が追加される。復号時間ステップtにおけるローカルメモリポインタLlabelの位置ラベルは、次式のように定められる。
【数10】
位置n+l+1は、メモリ内のヌルトークンであり、ytが外部知識の中に存在しない場合でも、モデルが損失関数を計算できるようにする。次に、LとLlabelとの間の損失は、次式のように定められる。
【数11】
【0050】
更に、レコードR∈Rn+1は、同じエンティティを複数回コピーするのを防ぐために使用される。Rの中の全部の要素は、始めに1に初期化される。グローバル-ローカルメモリポインタモデル又はネットワークは、現在のユーザの発話に対する対話コンピュータ応答Yを生成する(図7のプロセス770)。復号段階の間、メモリ位置が指されている場合、その対応するR内の位置は、学習されたスカラーrで減衰する。つまり、グローバルコンテキスト表現は、対応するトークンがコピーされた場合、ソフトマスクされ除外される(softly masked out)。推定時間の間、yは次式のように定められる。
【数12】
最後に、3つの損失の和を最小化することにより、全部のパラメータが一緒にトレーニングされる。
【数13】
【0051】
データセット
幾つかの実施形態では、モデルを評価するために、2つの公開マルチターンタスク指向型対話データセットが使用できる:bAbI対話(参照によりここに組み込まれるBoards et al., “Learning end-to-end goal-oriented dialog,” International Conference on Learning Representations, abs/1605.07683,2017に更に詳細に記載される)、及びStanfordマルチドメイン対話(Stanford multi-domain dialogue (SMD))(参照によりここに組み込まれるEric et al., “A copy-augmented sequence-to-sequence architecture gives good performance on task-oriented dialogue,” In Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 2, Short Papers, pp. 468-473, Valencia, Spain, April 2017に更に詳細に記載される)。bAbI対話は、レストランドメインにおける5個のシミュレートされたタスクを含む。タスク1~4は、それぞれ、API呼び出しの呼び出し、API呼び出しの変更、オプションの推奨、及び追加情報の提供に関する。タスク5は、タスク1~4の結合である。各タスクについて2つのテストセットがある。1つはトレーニングセットと同じ分布に従い、もう1つはOOVエンティティ値を有する。一方で、SMDは、人間-人間のマルチドメイン対話データセットである。3つの異なるドメインを有する:カレンダスケジューリング、天気情報検索、及び関心点ナビゲーション。これら2つのデータセットの間の主な違いは、前者が長い対話ターンを有するが、規則的なユーザ及びシステムの振る舞いであり、後者がより少ない会話ターンを有するが、変化する応答を有し、KB情報が遙かに複雑であることである。
【0052】
結果
bAbI対話。図8のテーブルは、bAbI対話に従う評価の例である。このテーブルは、グローバル-ローカルメモリポインタ(global local memory pointer (GLMP))モデル又はネットワークの性能を、QRN(参照によりここに組み込まれるSeo et al., “Query-reduction networks for question answering,” International Conference on Learning Representations, 2017を参照)、MN(参照によりここに組み込まれるBordes et al., “Learning end-to-end goal-oriented dialog,” International Conference on Learning Representations, abs/1605.07683,2017を参照)、GMN(参照によりここに組み込まれるLiu et al., "Gated end-to-end memory networks,” In Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics (Volume 1, Long Papers), pp.1-10, Valencia, Spain, April 2017, Association for Computational Linguistics, http://www.aclweb.org/anthology/E17-1001)、Ptr-Unk(参照によりここに組み込まれるGulcehre et al., “Pointing the unknown words,” In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp.140-149, Berlin, Germany, August 2016, Association for Computational Linguistics, http://www.aclweb.org/anthology/P16-1014)、及びMem2Seq(参照によりここに組み込まれるMadotto et al., “Mem2seq: Effectively incorporating knowledge bases into end-to-end task-oriented dialog systems,” In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume1: Long Papers), pp.1468-1478, Association for Computational Linguistics, 2018, URL http://aclweb.org/anthology/P18-1136)の基準に対して、bAbI対話上の種々のタスク(例えば、T1、T2、T3、T4、T5)の応答毎の正確さ及びタスク達成率(括弧内)に基づき、比較する。QRN、MN、及びGMNのような発話検索方法は、オプションを正しく推奨し及び追加情報を提供することができず、OOV設定ではT5において約30%の性能差を有する粗悪な汎用能力が観察されることに留意する。前の世代に基づくアプローチは、コピーメカニズムを組み込むことによりギャップを軽減したが、API呼び出しを生成し及び変更するような最も単純な場合(T1、T2)は依然として6~17%のOOV性能低下に直面している。一方で、本開示のGLMPモデル又はネットワークは、完全な会話タスクにおいて最高90.5%のタスク達成率を達成し、特にOOV設定における実質的なマージンだけ他の基準を上回っている。更に、単一のホップのみを使用するT1、T2、T4では応答毎の正確さの損失がなく、タスク5では7~9%しか低下しない。GLMPモデルは、最も少ない語彙不足による性能低下を達成する。
【0053】
Stanfordマルチドメイン対話(Stanford Multi-domain Dialogue (SMD))。図9のテーブルは、人間-人間の対話シナリオについて、SMDに従う評価の例である。これは、2つの自動評価メトリック、BLEU及びエンティティF1スコア2に基づきGLMPモデルを評価する前の対話作業に従う。図9の第1のテーブルに示すように、GLMPは、最高14012BLEU及び55.38%エンティティF1スコアを達成する。これは、BLEUにおいて僅かな改善であるが、エンティティF1において大きな利得である。実際に、タスク指向型対話における教師なし評価メトリックでは、エンティティF1は、応答毎の正確さ又はBLEUよりも、より包括的な評価メトリックであってよく、人間が正しいエンティティを選択できるが、非常に多様な応答を有する。ルールに基づく及びKVRの結果は、それらが、エンティティの表現を命名されたエンティティ認識及びリンク3を用いて標準的形式にマッピングすることによりタスクを簡略化しているので、直接比較できないことに留意する。
【0054】
さらに、生成された応答の人間による評価が報告され、図9の第2のテーブルに示される。GLMPモデルは、前の従来モデルMem2Seqと、及び元のデータセット応答とも比較される。200個の異なる対話シナリオが、3つの異なる応答を評価するために、テストセットからランダムに選択された。Amazon Mechanical Turkは、1~5の尺度で、システムの妥当性及び人間らしさを評価するために使用される。結果は図9の第2のテーブルに示され、GLMPモデルは、両方の指標においてMem2Seqに勝った。これは、前の観察と一貫している。この評価に対する人間の性能は、期待されるスコアの上限を設定する。
【0055】
従って、SMDデータセットでは、GLMPモデルは、前の従来の結果を含む基準に対して最高のBLEUスコア及びエンティティF12スコアを達成する。
【0056】
アブレーション研究(Ablation Study)。グローバルメモリポインタG及び対話履歴Hのメモリ書き込みの貢献は、図10のテーブルに示される。これは、単一ホップモデルを用いるアブレーション研究の結果である。bAbI OOV設定においてK=1のGLMPを用いる結果は、SMDに対して比較される。Hを有しないGLMPは、グローバルメモリエンコーダの中のコンテキストRNNが、隠れ状態を外部知識に書き込まないことを意味する。テーブルで分かるように、Hを有しないGLMPモデルは、完全な対話タスクで5.5%多い損失を有する。一方で、Gを有しないGLMPモデル(グローバルメモリポインタが外部知識を変更するために使用されないことを意味する)は、SMDデータセットにおいて8.29%のエンティティF1の低下を生じる。タスク5で1.8%の増大が見られることに留意する。従って、グローバルメモリポインタGの使用は、OOV設定において復号する前に粗悪な事前確率を課される可能性があることが示唆される。しかしながら、殆どの場合、私たちのグローバルメモリポインタは、依然として性能を向上する。
【0057】
評価の可視化及び定量化。注意重みの分析は、深層学習モデルを解釈するために頻繁に使用されてきた。図11は、SMDナビゲーションドメインにおけるメモリ注意(attention)の視覚化の例である。図11は、各生成時間ステップの最後のホップにおける注意ベクトルを示す。Y軸は、KBメモリモジュール情報及び対話履歴を含むコピー可能な外部知識である。最後のターンで運転手により尋ねられた質問「what is the address?」(住所は?)に基づき、貴重な回答(gold answer)及び生成された応答が一番上にあり、グローバルメモリポインタGは左の列に示される。右側の列には、最終的なメモリポインタが、ステップ0でエンティティchevronのコピーに成功し、ステップ3でそのアドレスである783 Arcadia Plによりスケッチ発話を埋めることが分かる。一方で、グローバル重み付けを有しないメモリ注意は、中間の列で報告される。注意重みが、ステップ0及びステップ3で幾つかの関心点及び住所に焦点を当てる場合でも、グローバルメモリポインタは期待通り問題を軽減できることが分かる。
【0058】
トレーニングの詳細
幾つかの実施形態によると、本開示のモデルは、Adam最適化器を用いてエンドツーエンドでトレーニングされ(参照によりここに組み込まれるKingma et al., “A method for stochastic optimization,” International Conference on Learning Representations, 2015)、学習率アニーリングは1e-3から1e-4までに開始する。ホップの数Kは、性能差を比較するために、1、3、6に設定される。全ての埋め込みは、ランダムに初期化され、復号段階の間にビームサーチを有しない単純な欲張りな戦略が使用される。隠れサイズ及びドロップアウト率のようなハイパーパラメータは、開発セットに渡りグリッドサーチにより調整される(bAbI対話の応答毎の正確さ、及びSMDのBLEUスコア)。更に、モデルの汎用性を増大し、OOV設定をシミュレートするために、少数の入力ソーストークンがランダムにマスクされて、未知のトークンにされた。モデルはPyTorchで実装され、各タスクT1、T2、T3、T4、T5について使用されたハイパーパラメータは図12のテーブルに列挙された。このテーブルは、異なるホップについて、各データセットの中の選択されたハイパーパラメータを示す。値は、埋め込み次元及びGRU隠れサイズであり、括弧内の値はそれぞれドロップアウト率である。全部のモデルについて、学習率は0.001に等しく、0.5の減衰率が使用された。
【0059】
人間の評価
GLMPモデル及びMem2Seqの出力は、妥当性及び人間らしさ(自然さ)に関して、人間の評価に対して比較された。妥当性のレベルは、以下のように1~5に格付けされた。
5:正確な文法、正確な論理、正確な対話の流れ、及び正確なエンティティが提供された。
4:正確な対話の流れ、論理、及び文法であるが、提供されたエンティティに僅かな誤りがある。
3:文法又は論理又はエンティティに顕著な誤りがあるが、許容可能である。
2:粗悪な文法、論理、及びエンティティが提供された。
1:誤った文法、誤った論理、誤った対話の流れ、及び誤ったエンティティが提供された。
人間らしさ(自然さ)のレベルは、以下のように1~5に格付けされた。
5:発話は、100%、人間が言うことのようである。
4:発話は、75%、人間が言うことのようである。
3:発話は、50%、人間が言うことのようである。
2:発話は、25%、人間が言うことのようである。
1:発話は、0%、人間が言うことのようである。
【0060】
図13のチャートは、200個の対話シナリオに従い妥当性と人間らしさのスコアを示す。
【0061】
従って、本願明細書には、タスク指向型対話のためのグローバル-ローカルメモリポインタネットワークを用いるエンドツーエンドのトレーニング可能なモデルが開示された。グローバルメモリエンコーダ及びローカルメモリデコーダは、共有された外部知識を学習フレームワークに組み込むよう設計される。グローバル及びローカルメモリポインタは、語彙不足(out-of-vocabulary (OOV))のシナリオにおいても、システム応答を効率的に生成できること、及びグローバルメモリポインタがどのように良好に助けとなるかを視覚化することが、経験的に示される。結果として、モデルは、シミュレートされた対話データセット及び人間-人間対話データセットの両方で、従来の結果を達成し、質問回答及びテキスト要約のような他のタスクに拡張する可能性を保持する。
【0062】
この説明、及び本発明の態様、実施形態、実装、又は適用を示す添付の図面は、限定と考えられるべきではない。種々の機械的、組成上の、構造上の、電気的、及び動作上の変更が、この説明及び請求の範囲の精神及び半から逸脱することなく行われてよい。幾つかの例では、よく知られた回路、構造、又は技術は、本開示の実施形態を不明瞭にしないために、詳細に示され又は説明されない。2つ以上の図面の中の同様の番号は、同じ又は類似する要素を表す。
【0063】
この説明では、特定の詳細が説明され、本開示と一致する幾つかの実施形態を説明する。実施形態の完全な理解を提供するために、多くの特定の詳細が説明される。しかしながら、当業者には、幾つかの実施形態がこれらの特定の詳細のうちの一部を有しないで実行されてよいことが明らかである。ここに開示される特定の実施形態は、説明的であることを意味し、限定を意味しない。当業者は、ここの具体的に説明されないが、他の要素が本開示の範囲及び精神の範囲内であることを理解し得る。更に、不要な繰り返しを避けるために、1つの実施形態に関連して示され説明される1つ以上の特徴は、特に断りの無い限り又は1つ以上の特徴が実施形態を非機能性にしない限り、他の実施形態に組み込まれてよい。
【0064】
説明のための実施形態が示され説明されたが、広範な変更、変化、及び代替が、前述の開示において考案され、幾つかの例では、実施形態の幾つかの特徴は、他の特長の対応する使用を有しないで利用されてよい。当業者は、多くの変形、代替、及び変更を認識し得る。従って、本発明の範囲は、以下の請求の範囲によってのみ限定されるべきであり、請求項は広義に本願明細書に開示された実施形態の範囲に一致する方法で構成される。

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13