(57)【要約】【課題】  会話応答を自動生成する技術を提供する。【解決手段】  会話応答生成方法は、過去の発話を含む会話文脈に対して潜在変数空間内で敵対的生成ネットワーク（ＧＡＮ）を学習させることによってデータ分布をモデリングした会話モデルを学習する段階、および会話モデルによってデータ分布からサンプリングされた潜在変数を利用して会話応答を生成する段階を含む。【選択図】      図５
2020030403.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムが実行する会話応答生成方法であって、
過去の発話を含む会話文脈に対して潜在変数空間内で敵対的生成ネットワーク（ＧＡＮ）を学習させることによってデータ分布をモデリングした会話モデルを学習する段階、および
前記会話モデルによって前記データ分布からサンプリングされた潜在変数を利用して会話応答を生成する段階
を含む、会話応答生成方法。
【請求項２】
前記学習する段階は、
順伝播型ニューラルネットワーク（ＦＦＮＮ）を利用して潜在変数に対する事前分布と事後分布をモデリングする段階を含む、
請求項１に記載の会話応答生成方法。
【請求項３】
前記学習する段階は、
ニューラルネットワークを利用して文脈−依存ランダムノイズを潜在変数に対するサンプルに変換することによって、潜在変数に対する事前分布と事後分布をモデリングする段階を含む、
請求項１に記載の会話応答生成方法。
【請求項４】
前記会話モデルは、前記事前分布と前記事後分布のダイバージェンスを最小化しながら、潜在変数から再構成された応答のログ確率を最大化する、
請求項３に記載の会話応答生成方法。
【請求項５】
前記学習する段階は、
事前サンプルと事後サンプルとを区別する敵対的識別器を利用して潜在変数に対する事前分布と事後分布を対応させる段階
を含む、請求項３に記載の会話応答生成方法。
【請求項６】
前記文脈−依存ランダムノイズは、順伝播型ニューラルネットワーク（ＦＦＮＮ）である事前ネットワークと認知ネットワークそれぞれによって前記会話文脈から計算される正規分布から導き出される、
請求項３に記載の会話応答生成方法。
【請求項７】
前記生成する段階は、
前記ニューラルネットワークによって前記文脈−依存ランダムノイズから潜在変数のサンプルを生成した後、生成された潜在変数を前記会話応答としてデコードする段階
を含む、請求項３に記載の会話応答生成方法。
【請求項８】
前記学習する段階は、
混合ガウス事前ネットワークを利用してランダムノイズをサンプリングすることによってマルチモーダル応答を学習する段階
を含む、請求項１に記載の会話応答生成方法。
【請求項９】
前記マルチモーダル応答を学習する段階は、
１つ以上のモードを有するガウス分布からマルチモードをキャプチャし、前記潜在変数空間でマルチモーダル応答を学習する、
請求項８に記載の会話応答生成方法。
【請求項１０】
コンピュータと結合して請求項１乃至９のいずれか一項に記載の会話応答生成方法をコンピュータに実行させる、コンピュータプログラム。
【請求項１１】
請求項１乃至９のいずれか一項に記載の会話応答生成方法をコンピュータに実行させるためのプログラムが記録されている、コンピュータ読み取り可能な記録媒体。
【請求項１２】
コンピュータシステムであって、
メモリ、および
前記メモリに通信可能に接続され、前記メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも１つのプロセッサ
を含み、
前記少なくとも１つのプロセッサは、
過去の発話を含む会話文脈に対して潜在変数空間内でＧＡＮを学習させることによってデータ分布をモデリングした会話モデルを学習し、
前記会話モデルによって前記データ分布からサンプリングされた潜在変数を利用して会話応答を生成する、
コンピュータシステム。
【請求項１３】
前記少なくとも１つのプロセッサは、
ＦＦＮＮを利用して潜在変数に対する事前分布と事後分布をモデリングする、
請求項１２に記載のコンピュータシステム。
【請求項１４】
前記少なくとも１つのプロセッサは、
ニューラルネットワークを利用して文脈−依存ランダムノイズを潜在変数に対するサンプルに変換することによって潜在変数に対する事前分布と事後分布をモデリングする、
請求項１２に記載のコンピュータシステム。
【請求項１５】
前記少なくとも１つのプロセッサは、
混合ガウス事前ネットワークを利用してランダムノイズをサンプリングすることによってマルチモーダル応答を学習する、
請求項１２に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
以下の説明は、会話応答を自動生成する技術に関する。
【背景技術】
【０００２】
ホームネットワークサービスの人工知能スピーカのように音声を基盤として動作するインタフェースは、マイク（ｍｉｃｒｏｐｈｏｎｅ）でユーザの音声要請を受信した後、これに対応する応答情報を提供するために、返答音声を合成してスピーカから提供したり、応答情報に含まれるコンテンツのオーディオを出力したりする。
【０００３】
例えば、特許文献１は、ホームメディアデバイスおよびこれを利用したホームネットワークシステムおよび方法に関する技術であって、ホームネットワークサービスにおいて、移動通信網の他にＷｉ-Ｆｉのような第２通信網を利用してホームネットワークサービスを提供することができ、ユーザによるボタン操作がなくても音声命令によってホーム内の複数のマルチメディア機器をマルチコントロールすることができる技術を開示している。
【０００４】
このような従来技術では、与えられた質問に対する会話応答を自動で生成して提供している。しかし、同じ質問や同じ発話に対して常に同じ応答を生成するだけなので、応答の多様性に欠けるのはもちろん、発話と応答の内容が意味的に関係をもたない場合が頻繁に生じる上に、シングルターン（ｓｉｎｇｌｅ−ｔｕｒｎ）方式の会話によって会話全体の脈絡に対する応答が難しいという実情がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】韓国公開特許第１０−２０１１−０１３９７９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ワッサースタイン敵対的生成ネットワーク（ＷＧＡＮ：Ｗａｓｓｅｒｓｔｅｉｎ  Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ）とマルチモーダル混合ガウス（Ｍｕｌｔｉｍｏｄａｌ  Ｇａｕｓｓｉａｎ  Ｍｉｘｔｕｒｅ）事前分布（ｐｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）を利用して多様な表現と会話全体の脈絡に対する会話応答を自動で生成することができる方法およびシステムを提供する。
【課題を解決するための手段】
【０００７】
コンピュータシステムが実行する会話応答生成方法であって、過去の発話を含む会話文脈（ｄｉａｌｏｇｕｅ  ｃｏｎｔｅｘｔ）に対して潜在変数空間（ｌａｔｅｎｔ  ｖａｒｉａｂｌｅ  ｓｐａｃｅ）内で敵対的生成ネットワーク（ＧＡＮ：Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ）を学習させることによってデータ分布をモデリングした会話モデルを学習する段階、および前記会話モデルによって前記データ分布からサンプリングされた潜在変数を利用して会話応答を生成する段階を含む、会話応答生成方法を提供する。
【０００８】
一側面によると、前記学習する段階は、順伝播型ニューラルネットワーク（ＦＦＮＮ：ｆｅｅｄ−ｆｏｒｗａｒｄ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）を利用して潜在変数に対する事前分布（ｐｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）と事後分布（ｐｏｓｔｅｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）をモデリングする段階を含んでよい。
【０００９】
他の側面によると、前記学習する段階は、ニューラルネットワーク（ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）を利用して文脈−依存ランダムノイズ（ｃｏｎｔｅｘｔ−ｄｅｐｅｎｄｅｎｔ  ｒａｎｄｏｍ  ｎｏｉｓｅ）を潜在変数に対するサンプルに変換することによって潜在変数に対する事前分布と事後分布をモデリングする段階を含んでよい。
【００１０】
また他の側面によると、前記会話モデルは、前記事前分布と前記事後分布のダイバージェンス（ｄｉｖｅｒｇｅｎｃｅ）を最小化しながら、潜在変数から再構成された応答のログ確率を最大化してよい。
【００１１】
また他の側面によると、前記学習する段階は、事前サンプルを事後サンプルと区別する敵対的識別器（ａｄｖｅｒｓａｒｉａｌ  ｄｉｓｃｒｉｍｉｎａｔｏｒ）を利用して潜在変数に対する事前分布と事後分布を対応させる段階を含んでよい。
【００１２】
また他の側面によると、前記文脈−依存ランダムノイズは、順伝播型ニューラルネットワーク（ｆｅｅｄ−ｆｏｒｗａｒｄ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ：ＦＦＮＮ）である事前ネットワーク（ｐｒｉｏｒ  ｎｅｔｗｏｒｋ）と認知ネットワーク（ｒｅｃｏｇｎｉｔｉｏｎ  ｎｅｔｗｏｒｋ）それぞれによって前記会話文脈から計算される正規分布から導き出されてよい。
【００１３】
また他の側面によると、前記生成する段階は、前記ニューラルネットワークによって前記文脈−依存ランダムノイズから潜在変数のサンプルを生成した後、生成された潜在変数を前記会話応答としてデコードする段階を含んでよい。
【００１４】
また他の側面によると、前記学習する段階は、混合ガウス事前ネットワーク（Ｇａｕｓｓｉａｎ  ｍｉｘｔｕｒｅ  ｐｒｉｏｒ  ｎｅｔｗｏｒｋ）を利用してランダムノイズをサンプリングすることによってマルチモーダル（ｍｕｌｔｉｍｏｄａｌ）応答を学習する段階を含んでよい。
【００１５】
さらに他の側面によると、前記マルチモーダル応答を学習する段階は、１つ以上のモードを有するガウス分布からマルチモードをキャプチャすることによって前記潜在変数空間でマルチモーダル応答を学習してよい。
【００１６】
コンピュータと結合して前記会話応答生成方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録された、コンピュータプログラムを提供する。
【００１７】
前記会話応答生成方法をコンピュータに実行させるためのプログラムが記録されている、コンピュータ読み取り可能な記録媒体を提供する。
【００１８】
コンピュータシステムであって、メモリ、および前記メモリに通信可能に接続され、前記メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも１つのプロセッサを含み、前記少なくとも１つのプロセッサは、過去の発話を含む会話文脈に対して潜在変数空間内でＧＡＮを学習させることによってデータ分布をモデリングした会話モデルを学習し、前記会話モデルによって前記データ分布からサンプリングされた潜在変数を利用して会話応答を生成する、コンピュータシステムを提供する。
【発明の効果】
【００１９】
本発明の実施形態によると、ニューラルネットワークを利用して文脈−依存ランダムノイズを変換することによって潜在変数（ｌａｔｅｎｔ  ｖａｒｉａｂｌｅｓ）に対する事前分布（ｐｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）と事後分布（からサンプリングして２つの分布間のワッサースタイン距離（Ｗａｓｓｅｒｓｔｅｉｎ  ｄｉｓｔａｎｃｅ）を最小化する会話モデルを実現することができ、これによって会話全体の脈絡に対する会話応答を生成することができる。
【００２０】
本発明の実施形態によると、潜在空間をより豊かにさせるための混合ガウス事前ネットワーク（Ｇａｕｓｓｉａｎ  ｍｉｘｔｕｒｅ  ｐｒｉｏｒ  ｎｅｔｗｏｒｋ：ＰｒｉＮｅｔ）を利用することで会話応答のマルチモーダル性質を考慮した会話モデルを実現することができ、これによって論理的かつ有用ながらも多様な会話応答を生成することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態における、音声基盤インタフェースを活用したサービス環境の例を示した図である。
【図２】本発明の一実施形態における、音声基盤インタフェースを活用したサービス環境の他の例を示した図である。
【図３】本発明の一実施形態における、クラウド人工知能プラットフォームの例を示した図である。
【図４】本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
【図５】本発明の一実施形態における、ワッサースタインオートエンコーダ（ＷＡＥ：Ｗａｓｓｅｒｓｔｅｉｎ  ＡｕｔｏＥｎｃｏｄｅｒ）を利用してマルチモーダル応答を生成するＤｉａｌｏｇＷＡＥ会話モデルを示した概略図である。
【図６】本発明の一実施形態における、ＤｉａｌｏｇＷＡＥ会話モデルの学習アルゴリズムを詳細に示した図である。
【図７】本発明の一実施形態における、ＤｉａｌｏｇＷＡＥ会話モデルによって生成された応答の例を示した図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態について、添付の図面を参照しながら詳細に説明する。
【００２３】
本発明の実施形態は、会話応答を自動生成する技術に関する。
【００２４】
本明細書で具体的に開示される事項などを含む実施形態は、音声基盤インタフェースを活用したサービス環境においてディープラーニング生成モデルとマルチモーダル分布を利用してマルチターン方式の会話応答を生成することができ、これによって多様性、連係性、正確性、効率性などの側面において相当な長所を達成することができる。
【００２５】
図１は、本発明の一実施形態における、音声基盤インタフェースを活用したサービス環境の例を示した図である。図１の実施形態では、スマートホーム（ｓｍａｒｔ  ｈｏｍｅ）やホームネットワークサービスのように宅内のデバイスを連結して制御する技術において、音声を基盤として動作するインタフェースを提供する電子機器１００がユーザ１１０の発話によって受信した音声入力「電気を消して」を認識および分析し、宅内で内部ネットワークを介して電子機器１００と連結している宅内照明機器１２０の電源を制御する例を示している。
【００２６】
例えば、宅内のデバイスは、上述した宅内照明機器１２０の他にも、テレビ、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、周辺機器、エアコン、冷蔵庫、ロボット掃除機などのような家電製品はもちろん、水道、電気、冷暖房機器などのようなエネルギー消費装置、ドアロックや監視カメラなどのような保安機器など、オンライン上で連結して制御することのできる多様なデバイスを含んでよい。また、内部ネットワークは、イーサネット（Ｅｔｈｅｒｎｅｔ）（登録商標）、ＨｏｍｅＰＮＡ、ＩＥＥＥ１３９４のような有線ネットワーク技術、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）（登録商標）、ＵＷＢ（ｕｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄ）、ジグビー（ＺｉｇＢｅｅ）（登録商標）、Ｗｉｒｅｌｅｓｓ１３９４、ＨｏｍｅＲＦのような無線ネットワーク技術などが活用されてよい。
【００２７】
電子機器１００は、宅内のデバイスのうちの１つであってよい。例えば、電子機器１００は、宅内に備えられた人工知能スピーカやロボット清掃機などのようなデバイスのうちの１つであってよい。また、電子機器１００は、スマートフォン（ｓｍａｒｔ  ｐｈｏｎｅ）、携帯電話、ノート型ＰＣ、デジタル放送用端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、タブレットなどのようなユーザ１１０のモバイル機器であってもよい。このように、電子機器１００は、ユーザ１１０の音声入力を受信して宅内のデバイスを制御するために宅内のデバイスと連結可能な機能を備えた機器であれば、特に制限されることはない。また、実施形態によっては、上述したユーザ１１０のモバイル機器が宅内のデバイスとして含まれてもよい。
【００２８】
図２は、本発明の一実施形態における、音声基盤インタフェースを活用したサービス環境の他の例を示した図である。図２は、音声を基盤として動作するインタフェースを提供する電子機器１００がユーザ１１０の発話によって受信した音声入力「今日の天気」を認識および分析し、外部ネットワークを介して外部サーバ２１０から今日の天気に関する情報を取得し、取得した情報を「今日の天気は・・・」のように音声で出力する例を示している。
【００２９】
例えば、外部ネットワークは、ＰＡＮ（ｐｅｒｓｏｎａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＣＡＮ（ｃａｍｐｕｓ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＭＡＮ（ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＷＡＮ（ｗｉｄ  ｅａｒｅａ  ｎｅｔｗｏｒｋ）、ＢＢＮ（ｂｒｏａｄｂａｎｄ  ｎｅｔｗｏｒｋ）、インターネットなどのネットワークのうちの１つ以上の任意のネットワークを含んでよい。
【００３０】
図２の実施形態でも、電子機器１００は、宅内のデバイスのうちの１つであっても、ユーザ１１０のモバイル機器のうちの１つであってもよく、ユーザ１１０の音声入力を受信して処理するための機能と、外部ネットワークを介して外部サーバ２１０に接続して外部サーバ２１０が提供するサービスやコンテンツをユーザ１１０に提供するための機能とを含む機器であれば、特に制限されることはない。
【００３１】
このように、本発明の実施形態に係る電子機器１００は、音声基盤インタフェースを利用してユーザ１１０の発話によって受信される音声入力を含むユーザ命令を処理することができる機器であれば、特に制限されなくてよい。例えば、電子機器１００は、ユーザの音声入力を直接に認識および分析し、音声入力に適した動作を実行することによってユーザ命令を処理してもよいが、実施形態によっては、ユーザの音声入力に対する認識や認識された音声入力の分析、ユーザに提供される音声の合成などの処理を、電子機器１００と連係する外部のプラットフォームに実行させてもよい。
【００３２】
図３は、本発明の一実施形態における、クラウド人工知能プラットフォームの例を示した図である。図３は、電子機器３１０、クラウド人工知能プラットフォーム３２０、およびコンテンツ・サービス３３０を示している。
【００３３】
一例として、電子機器３１０は、宅内に備えられたデバイスを意味してよく、少なくとも上述した電子機器１００を含んでよい。このような電子機器３１０や電子機器３１０においてインストールされて実行されるアプリケーション（以下、アプリとする）は、インタフェースコネクト３４０を介してクラウド人工知能プラットフォーム３２０と連係してよい。ここで、インタフェースコネクト３４０は、電子機器３１０や電子機器３１０においてインストールされて実行されるアプリの開発のためのＳＤＫ（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｏｐｍｅｎｔ  Ｋｉｔ）および／または開発文書を開発者に提供してよい。また、インタフェースコネクト３４０は、電子機器３１０や電子機器３１０においてインストールされて実行されるアプリが、クラウド人工知能プラットフォーム３２０によって提供される機能を活用することができるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供してよい。具体的な例として、開発者は、インタフェースコネクト３４０が提供するＳＤＫおよび／または開発文書を利用して機器やアプリを開発することができ、このように開発した機器やアプリは、インタフェースコネクト３４０が提供するＡＰＩを利用してクラウド人工知能プラットフォーム３２０が提供する機能を活用することができるようになる。
【００３４】
ここで、クラウド人工知能プラットフォーム３２０は、音声基盤のサービスを提供するための機能を提供してよい。例えば、クラウド人工知能プラットフォーム３２０は、受信した音声を認識し、出力する音声を合成するための音声処理モジュール３２１、受信した映像や動画を分析して処理するためのビジョン処理モジュール３２２、受信した音声に適合する音声を出力するために適切な会話を決定するための会話処理モジュール３２３、受信した音声に適した機能を勧めるための推薦モジュール３２４、人工知能がデータ学習に基づいて文章単位で言語を翻訳するように支援するニューラル機械翻訳（Ｎｅｕｒａｌ  ＭａｃｈｉｎｅＴｒａｎｓｌａｔｉｏｎ：ＮＭＴ）３２５などのように、音声基盤サービスを提供するための多様なモジュールを含んでよい。
【００３５】
例えば、図１および図２の実施形態において、電子機器１００は、ユーザ１１０の音声入力を、インタフェースコネクト３４０が提供するＡＰＩを利用してクラウド人工知能プラットフォーム３２０に送信したとする。この場合、クラウド人工知能プラットフォーム３２０は、受信した音声入力を、上述したモジュール３２１〜３２５を活用して認識および分析することにより、受信した音声入力に適した返答音声を合成して提供したり、適した動作を推薦したりするようになる。
【００３６】
また、拡張キット３５０は、第三者コンテンツ開発者または会社が、クラウド人工知能プラットフォーム３２０に基づいて新たな音声基盤機能を実現することができる開発キットを提供してよい。例えば、図２の実施形態において、電子機器１００は、ユーザ１１０の音声入力を外部サーバ２１０に送信し、外部サーバ２１０は、拡張キット３５０として提供されるＡＰＩからクラウド人工知能プラットフォーム３２０に音声入力を送信したとする。この場合、上述したものと同じように、クラウド人工知能プラットフォーム３２０は、受信した音声入力を認識および分析して、適した返答音声を合成して提供したり、音声入力によって処理されなければならない機能に対する推薦情報を外部サーバ２１０に提供したりしてよい。一例として、図２において、外部サーバ２１０は、音声入力「今日の天気」をクラウド人工知能プラットフォーム３２０に送信し、クラウド人工知能プラットフォーム３２０から音声入力「今日の天気」の認識によって抽出されるキーワード「今日」および「天気」を受信したとする。この場合、外部サーバ２１０は、キーワード「今日」および「天気」に基づいて「今日の天気は・・・」のようなテキスト情報を生成し、生成されたテキスト情報をクラウド人工知能プラットフォーム３２０に再送してよい。このとき、クラウド人工知能プラットフォーム３２０は、テキスト情報を音声で合成して外部サーバ２１０に提供してよい。外部サーバ２１０は、合成された音声を電子機器１００に送信してよく、電子機器１００は、合成された音声「今日の天気は・・・」をスピーカから出力することにより、ユーザ１１０から受信した音声入力「今日の天気」が処理されてよい。
【００３７】
このとき、電子機器１００は、ユーザとの会話を基盤としてデバイス動作やコンテンツ提供を行うためのものである。
【００３８】
図４は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。図４の電子機器４１０は、上述した電子機器１００に対応してよく、サーバ４２０は、上述した外部サーバ２１０またはクラウド人工知能プラットフォーム３２０を実現する１つのコンピュータ装置に対応してよい。
【００３９】
電子機器４１０とサーバ４２０は、メモリ４１１、４２１、プロセッサ４１２、４２２、通信モジュール４１３、４２３、および入力／出力インタフェース４１４、４２４を含んでよい。メモリ４１１、４２１は、コンピュータ読み取り可能な記録媒体であって、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ディスクドライブ、ＳＳＤ（ｓｏｌｉｄ  ｓｔａｔｅ  ｄｒｉｖｅ）、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）などのような永続的大容量記録装置を含んでよい。ここで、ＲＯＭ、ＳＳＤ、フラッシュメモリ、ディスクドライブのような永続的大容量記録装置は、メモリ４１１、４２１とは区分される別の永続的記録装置として電子機器４１０やサーバ４２０に含まれてもよい。また、メモリ４１１、４２１には、オペレーティングシステムと、少なくとも１つのプログラムコード（一例として、電子機器４１０にインストールされて特定のサービスの提供のために電子機器４１０で実行されるアプリケーションなどのためのコード）が記録されてよい。このようなソフトウェア構成要素は、メモリ４１１、４２１とは別のコンピュータ読み取り可能な記録媒体からロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー（登録商標）ドライブ、ディスク、テープ、ＤＶＤ／ＣＤ−ＲＯＭドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信モジュール４１３、４２３を通じてメモリ４１１、４２１にロードされてもよい。例えば、少なくとも１つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システムがネットワーク４３０を介して提供するファイルによってインストールされるコンピュータプログラム（一例として、上述したアプリケーション）に基づいて電子機器４１０のメモリ４１１にロードされてよい。
【００４０】
プロセッサ４１２、４２２は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ４１１、４２１または通信モジュール４１３、４２３によって、プロセッサ４１２、４２２に提供されてよい。例えば、プロセッサ４１２、４２２は、メモリ４１１、４２１のような記録装置に記録されたプログラムコードに従って受信される命令を実行するように構成されてよい。
【００４１】
通信モジュール４１３、４２３は、ネットワーク４３０を介して電子機器４１０とサーバ４２０とが互いに通信するための機能を提供してもよいし、電子機器４１０および／またはサーバ４２０が他の電子機器または他のサーバと通信するための機能を提供してもよい。一例として、電子機器４１０のプロセッサ４１２がメモリ４１１のような記録装置に記録されたプログラムコードに従って生成した要求が、通信モジュール４１３の制御に従ってネットワーク４３０を介してサーバ４２０に伝達されてよい。これとは逆に、サーバ４２０のプロセッサ４２２の制御に従って提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール４２３とネットワーク４３０を経て電子機器４１０の通信モジュール４１３を通じて電子機器４１０に受信されてよい。例えば、通信モジュール４１３を通じて受信されたサーバ４２０の制御信号や命令、コンテンツ、ファイルなどは、プロセッサ４１２やメモリ４１１に伝達されてよく、コンテンツやファイルなどは、電子機器４１０がさらに含むことのできる記録媒体（上述した永続的記録装置）に記録されてよい。
【００４２】
入力／出力インタフェース４１４は、入力／出力装置４１５とのインタフェースのための手段であってよい。例えば、入力装置は、キーボード、マウス、マイクロフォン、カメラなどの装置を、出力装置は、ディスプレイ、スピーカ、触覚フィードバックデバイスなどのような装置を含んでよい。他の例として、入力／出力インタフェース４１４は、タッチスクリーンのように入力と出力のための機能が１つに統合された装置とのインタフェースのための手段であってもよい。入力／出力装置４１５は、電子機器４１０と１つの装置で構成されてもよい。また、サーバ４２０の入力／出力インタフェース４２４は、サーバ４２０に接続されるかサーバ４２０が含むことができる入力または出力のための装置（図示せず）とのインタフェースのための手段であってよい。より具体的な例として、電子機器４１０のプロセッサ４１２がメモリ４１１にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ４２０や他の電子機器が提供するデータを利用して構成されるサービス画面やコンテンツが、入力／出力インタフェース４１４を通じてディスプレイに表示されてよい。
【００４３】
また、他の実施形態において、電子機器４１０およびサーバ４２０は、図４の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器４１０は、上述した入力／出力装置４１５のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。より具体的な例として、電子機器４１０がスマートフォンである場合、一般的にスマートフォンが含んでいる加速度センサやジャイロセンサ、カメラモジュール、物理的な各種ボタン、タッチパネルを利用したボタン、入力／出力ポート、振動のための振動器などのような多様な構成要素が、電子機器４１０にさらに含まれるように実現されてよい。
【００４４】
本実施形態において、電子機器４１０は、ユーザの音声入力を受信するためのマイクを入力／出力装置４１５として基本的に含んでよく、ユーザの音声入力に対応する返答音声やオーディオコンテンツのような音を出力するためのスピーカを、入力／出力装置４１５としてさらに含んでよい。
【００４５】
本発明では、条件付き（ｃｏｎｄｉｔｉｏｎａｌ）ワッサースタインオートエンコーダ（Ｗａｓｓｅｒｓｔｅｉｎ  ＡｕｔｏＥｎｃｏｄｅｒ：ＷＡＥ）を利用してマルチモーダル応答（ｍｕｌｔｉｍｏｄａｌ  ｒｅｓｐｏｎｓｅ）を生成する会話モデル（以下、ＤｉａｌｏｇＷＡＥ会話モデル）を提案する。
【００４６】
会話応答生成（ｄｉａｌｏｇ  ｒｅｓｐｏｎｓｅ  ｇｅｎｅｒａｔｉｏｎ）は、長年に渡る自然語研究のテーマである。データ−基盤（ｄａｔａ−ｄｒｉｖｅｎ）のニューラルネットワーク会話モデリングに対する近年の方式の大部分は、主にｓｅｑ２ｓｅｑ（ｓｅｑｕｅｎｃｅ−ｔｏ−ｓｅｑｕｅｎｃｅ）学習もしくはメモリネットワーク（ｍｅｍｏｒｙ  ｎｅｔｗｏｒｋ）を基盤としている。ところが、ｓｅｑ２ｓｅｑ会話モデルの場合は、意味を有しながらも多様性があってトピックに適した応答を生成するのが難しく、メモリネットワーク基盤モデルの場合は、メモリの増加によるモデルのサイズと速度などに問題がある。
【００４７】
変分オートエンコーダ（ＶＡＥ：Ｖａｒｉａｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）は、ｓｅｑ２ｓｅｑ会話モデルの問題解決に有望な結果を示した。ＶＡＥは、応答に対する高水準セマンティクス（ｈｉｇｈ−ｌｅｖｅｌ  ｓｅｍａｎｔｉｃｓ）を表現する潜在変数（ｌａｔｅｎｔ  ｖａｒｉａｂｌｅｓ）の近似事後分布（ａｐｐｒｏｘｉｍａｔｅ  ｐｏｓｔｅｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）を算出するために認知ネットワーク（ｒｅｃｏｇｎｉｔｉｏｎ  ｎｅｔｗｏｒｋ）を使用し、この分布のサンプルを条件として応答を単語別にデコードする。例えば、潜在変数は、トピック（ｔｏｐｉｃｓ）、トーン（ｔｏｎｅｓ）、または高水準統語的特性（ｈｉｇｈ−ｌｅｖｅｌ  ｓｙｎｔａｃｔｉｃ  ｐｒｏｐｅｒｔｉｅｓ）をキャプチャすることで多様な応答を生成する。しかし、大部分のＶＡＥ会話モデルは、潜在変数に対する近似事後分布を標準正規分布のような単純な事前分布（ｐｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）に対応することによって生成された応答を、相対的に単純な（例えば、シングルモーダル（ｓｉｎｇｌｅ−ｍｏｄａｌ））範囲に制限する。
【００４８】
ＶＡＥの他にも、応答に対する分布を直接モデリングするＧＡＮ（Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ）基盤の会話モデルも登場したが、これは離散トークン（ｄｉｓｃｒｅｔｅ  ｔｏｋｅｎｓ）に対する敵対的学習（ａｄｖｅｒｓａｒｉａｌ  ｔｒａｉｎｉｎｇ）が非可微分性（ｎｏｎ−ｄｉｆｆｅｒｅｎｔｉａｂｉｌｉｔｙ）によって複雑になるという問題を抱えている。
【００４９】
さらに、ＧＡＮに強化学習（ｒｅｉｎｆｏｒｃｅｍｅｎｔ  ｌｅａｒｎｉｎｇ：ＲＬ）を適用したハイブリッド方式の会話モデルも登場したが、このモデルでは、識別器（ｄｉｓｃｒｉｍｉｎａｔｏｒ）が予想した数値を、生成器（ｇｅｎｅｒａｔｏｒ）学習のための報酬（ｒｅｗａｒｄ）として使用する。しかし、強化学習は、勾配推定（ｇｒａｄｉｅｎｔ  ｅｓｔｉｍａｔｅ）の高い変動によって安定的でなく、近似単語埋め込み層（ａｐｐｒｏｘｉｍａｔｅ  ｗｏｒｄ  ｅｍｂｅｄｄｉｎｇ  ｌａｙｅｒ）でＧＡＮモデルを微分可能なようにさせて単語水準の変動性（ｖａｒｉａｂｉｌｉｔｙ）を加えただけなので、結果的にはトピック（ｔｏｐｉｃｓ）および状況（ｓｉｔｕａｔｉｏｎｓ）のような高水準応答変動性を表現するには適さない。
【００５０】
したがって、本発明では、ニューラル会話モデリングのためのＧＡＮの新たな変形であるＤｉａｌｏｇＷＡＥ会話モデルを提案する。潜在変数に対して分布を加えるだけの既存のＶＡＥ会話モデルとは異なり、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、潜在変数空間（ｌａｔｅｎｔ  ｖａｒｉａｂｌｅ  ｓｐａｃｅ）内でＧＡＮを学習させることによってデータ分布をモデリングする。特に、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、ニューラルネットワークを利用して文脈−依存ランダムノイズを変換することによって潜在変数に対する事前分布および事後分布からサンプリングをし、事前分布と事後分布のワッサースタイン距離を最小化する。また、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、混合ガウス事前ネットワークを使用することによって応答のマルチモーダル性質を考慮する。混合ガウス事前ネットワークによる敵対的学習は、ＤｉａｌｏｇＷＡＥが豊かな潜在空間をキャプチャできるようにするが、これは論理的かつ有用ながらも多様な応答を生成できるようにさせる。
【００５１】
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、（１）潜在変数に対するサンプルを生成するためにＧＡＮを利用したニューラル会話モデリング用ＧＡＮ基盤モデル、および（２）マルチモーダル事前分布からランダムノイズをサンプリングするための混合ガウス事前ネットワークを含む。したがって、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、マルチモーダル潜在構造を利用したＧＡＮ会話モデルとして実現されるようになる。
【００５２】
エンコーダ−デコーダ変形（Ｅｎｃｏｄｅｒ−ｄｅｃｏｄｅｒ  ｖａｒｉａｎｔｓ）：純粋なエンコーダ−デコーダ会話モデルに対する「安全な応答（ｓａｆｅ  ｒｅｓｐｏｎｓｅ）」問題を処理するために多数の変形が存在する。本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、状況およびトピックのような過多情報量（ｅｘｔｒａ  ｉｎｆｏｒｍａｔｉｏｎ）を必要としない点において、既存の会話モデルとは区別される。
【００５３】
ＶＡＥ会話モデル（ＶＡＥ  ｃｏｎｖｅｒｓａｔｉｏｎ  ｍｏｄｅｌｓ）：変分オートエンコーダ（ＶＡＥ）は、会話モデリングのための最も大衆的なフレームワークの１つである。ＶＡＥ会話モデルの主な問題である「事後崩壊（ｐｏｓｔｅｒｉｏｒ  ｃｏｌｌａｐｓｅ）」を解決するために、デコーダに予備単語集損失（ａｕｘｉｌｉａｒｙ  ｂａｇ−ｏｆ−ｗｏｒｄｓ  ｌｏｓｓ）を導入したモデル、対話動作（ｄｉａｌｏｇｕｅ  ａｃｔｓ）、およびスピーカプロファイル（ｓｐｅａｋｅｒ  ｐｒｏｆｉｌｅｓ）のような補助会話情報を統合する知識基盤ＣＶＡＥモデル（ｋｎｏｗｌｅｄｇｅ−ｇｕｉｄｅｄ  ＣＶＡＥ  ｍｏｄｅｌ）、ニューラルネットワークを使用してガウスノイズを変換することによって潜在変数に対する事前および事後分布からサンプリングをし、ＫＬダイバージェンス（ＫＬ  ｄｉｖｅｒｇｅｎｃｅ）によってガウスノイズの事前および事後分布を対応させる協調型（ｃｏｌｌａｂｏｒａｔｉｖｅ）ＣＶＡＥモデル、潜在変数の階層構造と発話脱落正規化（ｕｔｔｅｒａｎｃｅ  ｄｒｏｐ  ｒｅｇｕｌａｒｉｚａｔｉｏｎ）を統合させる変分階層的会話ＲＮＮ（Ｖａｒｉａｔｉｏｎａｌ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ｃｏｎｖｅｒｓａｔｉｏｎ  ＲＮＮ（再帰型ニューラルネットワーク：Ｒｅｃｃｕｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）：ＶＨＣＲ）モデルなどが登場した。本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、潜在空間内にＧＡＮアーキテクチャを使用することによってＶＡＥ会話モデルの限界を解決する。
【００５４】
ＧＡＮ会話モデル（ＧＡＮ  ｃｏｎｖｅｒｓａｔｉｏｎ  ｍｏｄｅｌｓ）：ＧＡＮ／条件付きＧＡＮ（ＣＧＡＮ）がイメージ生成において高い成功を収めているが、これを自然語会話生成子に適用させるのは簡単な作業ではない。これは、自然語トークン（ｎａｔｕｒａｌ  ｌａｎｇｕａｇｅ  ｔｏｋｅｎｓ）の非可微分（ｎｏｎ−ｄｉｆｆｅｒｅｎｔｉａｂｌｅ）性質のためである。この問題は、識別器（ｄｉｓｃｒｉｍｉｎａｔｏｒ）が生成器を最適化するために報酬を予想する強化学習とＧＡＮとを結合することによって解決することができる。しかし、強化学習は、サンプリングされた高い勾配変動によって安定的でない。さらに、ＧＡＮ会話モデルは、デコーダが習得した単語確率（ｗｏｒｄ  ｐｒｏｂａｂｉｌｉｔｉｅｓ）と対応する単語ベクトル（ｗｏｒｄ  ｖｅｃｔｏｒｓ）を直接乗算することによってｓｅｑ２ｓｅｑ  ＧＡＮが微分可能となるようにし、目標配列（ｔａｒｇｅｔ  ｓｅｑｕｅｎｃｅ）に対して大略的にベクトル化された表現式を導き出させる。しかし、上述したような方式は、全体的な応答水準というよりは単語水準での多様性を保障するものに過ぎない。本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、直接トークン（ｄｉｒｅｃｔ  ｔｏｋｅｎｓ）の代わりに高い水準の潜在空間で応答に対する分布を形成し、傾斜変動が高いＲＬには依存しないという点において、既存のＧＡＮ会話モデルとは区別される。
【００５５】
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、上述した電子機器４１０またはサーバ４２０のようなコンピュータシステムに実現されてよく、ディープラーニング生成モデルとマルチモーダル分布に基づいてマルチターン方式の会話応答を生成する。このとき、コンピュータシステム４１０、４２０のプロセッサ４１２、４２２は、メモリ４１１、４２１が含むオペレーティングシステムのコードと少なくとも１つのプログラムのコードとによる制御命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行するように実現されてよい。ここで、プロセッサ４１２、４２２は、コンピュータシステム４１０、４２０に記録されたコードが提供する制御命令に従って、コンピュータシステム４１０、４２０が、後述するＤｉａｌｏｇＷＡＥ会話モデルを基盤とした会話応答生成方法を実行するように、コンピュータシステム４１０、４２０を制御してよい。
【００５６】
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルを具体的に説明すると、次のとおりとなる。
【００５７】
問題ステートメント（Ｐｒｏｂｌｅｍ  Ｓｔａｔｅｍｅｎｔ）
ｄ＝［ｕ１，．．．，ｕｋ］がｋ件の発話（ｕｔｔｅｒａｎｃｅ）に対する会話発話（ｄｉａｌｏｇｕｅ  ｕｔｔｅｒａｎｃｅ）を示すとする。ここで、ｕｉ＝［ｗ１，．．．，ｗ｜ｕｉ｜］は１つの発話を示し、ｗｎはｕｉ内のｎ番目の単語（ｗｏｒｄ）を示す。
【００５８】
また、ｃ＝［ｕ１，．．．，ｕｋ−１］は、ｋ−１件の過去の発話（ｈｉｓｔｏｒｉｃａｌ  ｕｔｔｅｒａｎｃｅｓ）である会話文脈（ｄｉａｌｏｇｕｅ  ｃｏｎｔｅｘｔ）を示し、ｘ＝ｕｋは、次の発話を意味する応答（ｒｅｓｐｏｎｓｅ）を示す。
【００５９】
ＤｉａｌｏｇＷＡＥ会話モデルの目標は、過去の発話が与えられたときに、現在の応答に対する条件付き分布（ｃｏｎｄｉｔｉｏｎａｌ  ｄｉｓｔｒｉｂｕｔｉｏｎ）であるｐθ（ｘ｜ｃ）を推定することにある。
【００６０】
ｘとｃが離散トークン（ｄｉｓｃｒｅｔｅ  ｔｏｋｅｎｓ）に対する配列（ｓｅｑｕｅｎｃｅ）であるため、これらの間の直接的な結合を見つけることは簡単ではない。その代わりに、応答に対する高いレベルの表現式を示す連続的な潜在変数ｚを導入する。
【００６１】
応答生成は２つの段階からなると見なされるが、ここで、潜在変数ｚは、潜在空間Ｚ上の分布ｐθ（ｘ｜ｃ）からサンプリングされ、その後、応答ｘは、ｐθ（ｘ｜ｚ，ｃ）を使用してｚからデコードされる。ＤｉａｌｏｇＷＡＥ会話モデル下において、応答の確率は、方程式（１）のように定義されてよい。
【００６２】
【数１】
2020030403.tif 000003
【００６３】
潜在変数ｚを周辺化（ｍａｒｇｉｎａｌｉｚｅ  ｏｕｔ）するのは困難であるため、正確なログ確率を計算するのは難しい。このため、本発明では、潜在変数ｚに対する事後分布をｑφ（ｚ｜ｘ，ｃ）によって近似化するが、これは認知ネットワーク（ｒｅｃｏｇｎｉｔｉｏｎ  ｎｅｔｗｏｒｋ：ＲｅｃＮｅｔ）とよばれるニューラルネットワークによって計算されてよい。このような近似的な事後分布を使用して変分下限（ｅｖｉｄｅｎｃｅ  ｌｏｗｅｒ  ｂｏｕｎｄ：ＥＬＢＯ）を代わりに計算してよい（方程式（２））。
【００６４】
【数２】
2020030403.tif 000004
【００６５】
ここで、ｐ（ｚ｜ｃ）は、ｃが与えられたときのｚに対する事前分布を示し、事前ネットワークとよばれるニューラルネットワークによってモデリングされてよい。
【００６６】
会話モデリングのための条件付きワッサースタインオートエンコーダ
既存のＶＡＥ会話モデルは、潜在変数ｚが正規分布のように単純な事前分布によるものと仮定する。しかし、実際の応答の潜在空間はより複雑であり、単純な分布で推定することは難しい。これは、しばしば事後崩壊の問題を引き起こす。
【００６７】
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、ＧＡＮと敵対的オートエンコーダ（Ａｄｖｅｒｓａｒｉａｌ  Ａｕｔｏ−Ｅｎｃｏｄｅｒ：ＡＡＥ）に基づき、潜在空間内でＧＡＮを学習させることによってｚに対する分布をモデリングする。
【００６８】
本発明では、ニューラルネットワークを使用してランダムノイズ（ｒａｎｄｏｍ  ｎｏｉｓｅ）εを変換することにより、潜在変数に対する事前および事後分布からサンプリングする。
【００６９】
特に、事前サンプル
【００７０】
【数３】
2020030403.tif 000005
は、生成器Ｇによって文脈−依存ランダムノイズ
【００７１】
【数４】
2020030403.tif 000006
から生成されるが、近似事後サンプルｚ〜ｑφ（ｚ｜ｃ，ｘ）は、生成器Ｑによって文脈−依存ランダムノイズεから生成される。
【００７２】
【数５】
2020030403.tif 000007
とεは、平均と共分散行列（対角線行列と仮定）が順伝播型ニューラルネットワーク（ｆｅｅｄ−ｆｏｒｗａｒｄ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋｓ：ＦＦＮＮ）である事前ネットワークおよび認知ネットワークそれぞれによってｃから計算される正規分布から導き出される（方程式（３）と方程式（４））。
【００７３】
【数６】
2020030403.tif 000008
【００７４】
ここで、ｆθ（・）およびｑφ（・）は、順伝播型ニューラルネットワークである。本発明に係るＤｉａｌｏｇＷＡＥ会話モデルの目標は、ｐθ（ｚ｜ｃ）とｑφ（ｚ｜ｘ，ｃ）とのダイバージェンス（ｄｉｖｅｒｇｅｎｃｅ）を最小化する反面、ｚから再構成される（ｒｅｃｏｎｓｔｒｕｃｔｅｄ）応答のログ確率を最大化することにある。
【００７５】
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、方程式（５）の問題に関する。
【００７６】
【数７】
2020030403.tif 000009
【００７７】
ここで、事前分布ｐθ（ｚ｜ｃ）および事後分布ｑφ（ｚ｜ｘ，ｃ）はそれぞれ、方程式（３）と方程式（４）を実現するニューラルネットワークである。ｐψ（ｘ｜ｚ，ｃ）はデコーダであり、Ｗ（・｜｜・）は２つの分布間のワッサースタイン距離を意味する。
【００７８】
図５は、本発明における、ＤｉａｌｏｇＷＡＥ会話モデルを示した概略図である。
【００７９】
発話エンコーダ（ｕｔｔｅｒａｎｃｅ  ｅｎｃｏｄｅｒ）（ＲＮＮ）５０１は、会話内の（応答ｘを含む）各発話を実数ベクトル（ｒｅａｌ−ｖａｌｕｅｄ  ｖｅｃｔｏｒ）に変換する。
【００８０】
文脈エンコーダ（ｃｏｎｔｅｘｔ  ｅｎｃｏｄｅｒ）（ＲＮＮ）５０２は、文脈内のｉ番目の発話でエンコードベクトルと会話フロア（ｃｏｎｖｅｒｓａｔｉｏｎ  ｆｌｏｏｒ）５０４の連結（ｃｏｎｃａｔｅｎａｔｉｏｎ）を入力から受けて、隠れ状態（ｈｉｄｄｅｎ  ｓｔａｔｅ）
【００８１】
【数８】
2020030403.tif 000010
を計算する。文脈エンコーダ５０２の最後の隠れ状態は、文脈表現式（ｃｏｎｔｅｘｔ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）として使用される。
【００８２】
生成時期に、ＤｉａｌｏｇＷＡＥ会話モデルは、平均と対角線行列共分散それぞれを引き起こす２つの行列乗算に伴う順伝播型ネットワークによって文脈ｃを変換する事前ネットワーク（ＰｒｉＮｅｔ）５１０からランダムノイズ
【００８３】
【数９】
2020030403.tif 000011
５１１を導き出す。その後、生成器５１２は、順伝播型ネットワークによってノイズ５１１から潜在変数
【００８４】
【数１０】
2020030403.tif 000012
５１３のサンプルを生成する。デコーダＲＮＮは、生成された
【００８５】
【数１１】
2020030403.tif 000013
５１３を応答としてデコードする。
【００８６】
学習時期に、ＤｉａｌｏｇＷＡＥ会話モデルは、文脈ｃと応答ｘを条件として潜在変数に対する事後分布を推論する。認知ネットワーク（ＲｅｃＮｅｔ）５２０は、ｘとｃの連結を入力から受け、正規平均と対角線行列共分散それぞれを定義する２つの行列乗算に伴う順伝播型ネットワークによって変換する。ガウスノイズ（Ｇａｕｓｓｉａｎ  ｎｏｉｓｅ）ε５２１は、再パラメータ化トリック（ｒｅ−ｐａｒａｍｅｔｒｉｚａｔｉｏｎ  ｔｒｉｃｋ）を使用して認知ネットワーク５２０から導き出される。その後、生成器Ｑ５２２は、順伝播型ネットワークを介して、ガウスノイズε５２１を潜在変数ｚ５２３に対するサンプルに変換する。応答デコーダ（ＲＮＮ）５０３は、再構成損失（ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｌｏｓｓ）を方程式（６）によって計算する。
【００８７】
【数１２】
2020030403.tif 000014
【００８８】
事前サンプルを事後サンプルと区別する敵対的識別器（ａｄｖｅｒｓａｒｉａｌ  ｄｉｓｃｒｉｍｉｎａｔｏｒ）Ｄ５３０を導入することにより、ｚに対する事前分布と近似事後分布を対応させる。Ｄ５３０は、入力からｃとｚの連結を受け、実数値（ｒｅａｌ  ｖａｌｕｅ）を出力する順伝播型ニューラルネットワークによって実現される。
【００８９】
方程式（７）のように、識別器損失を最小化することによってＤ５３０を学習する。
【００９０】
【数１３】
2020030403.tif 000015
【００９１】
具体的な図は省略したが、ＤｉａｌｏｇＷＡＥ会話モデルは、潜在空間内で会話文脈ｃとともにスピーカ（ｓｐｅａｋｅｒ）情報を学習させることによってスピーカスタイルを考慮し、ｚに対する分布をモデリングすることができる。したがって、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルは、与えられた文脈に対し、該当のスピーカの会話スタイルに合った応答を生成して提供することが可能となる。
【００９２】
混合ガウス事前ネットワークによるマルチモーダル応答の生成
条件付き敵対的オートエンコーダ（ＡＡＥ）アーキテクチャにおいて、事前分布が正規分布であることは一般的な適用である。しかし、大概の応答は、同等な可能性がある多数の状況、トピック、および感情を反映するマルチモーダル性質（ｍｕｌｔｉｍｏｄａｌ  ｎａｔｕｒｅ）を有する。正規分布を有するランダムノイズは、ガウス分布のシングルモーダル性質に基づいて生成器がシングル基本モード（ｓｉｇｌｅ  ｄｏｍｉｎａｎｔ  ｍｏｄｅ）によって潜在空間を生成するように制限してよい。結果的に、生成された応答は、単純なプロトタイプによることもある。
【００９３】
潜在変数に対する確率分布でマルチモードをキャプチャするために、本発明では、１つ以上のモードＫを有することのできる分布を使用する。毎回、潜在変数を生成するノイズがこのモードのうちの１つから選択される。これを達成するために、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルでは、事前ネットワークが
【００９４】
【数１４】
2020030403.tif 000016
とよばれるガウス分布の混合をキャプチャするようにする。ここで、πｋ、μｋ、およびσｋは、ｋ番目の構成要素のパラメータである。これは、２段階の生成手順によって潜在変数空間でマルチモーダル多様体（ｍｕｌｔｉｍｏｄａｌ  ｍａｎｉｆｏｌｄ）を学習するようにする。最初の段階ではπｋとして構成要素ｋを選択し、次の段階では選択された構成要素によって方程式（８）のようにガウスノイズをサンプリングする。
【００９５】
【数１５】
2020030403.tif 000017
【００９６】
ここで、ｖｋ∈ΔＫ−１は、クラス確率π１，．．．，πＫを有する構成要素指示子（ｉｎｄｉｃａｔｏｒ）であり、πＫは、ＧＭＭのｋ番目の構成要素の混合係数（ｍｉｘｔｕｒｅ  ｃｏｅｆｆｉｃｉｅｎｔ）である。
【００９７】
πＫは方程式（９）のように計算される。
【００９８】
【数１６】
2020030403.tif 000018
【００９９】
正確なサンプリングの代わりに、本発明では、構成要素指示子ｖに対するインスタンスをサンプリングするために、方程式（１０）のようにＧｕｍｂｅｌ−ｓｏｆｔｍａｘ再媒介化を使用する。
【０１００】
【数１７】
2020030403.tif 000019
【０１０１】
ここで、ｇｉは、方程式（１１）のように計算されるＧｕｍｂｅｌノイズである。
【０１０２】
【数１８】
2020030403.tif 000020
【０１０３】
Ｔ∈［０，１］は、すべての実験で０．１に設定されたｓｏｆｔｍａｘ温度である。
【０１０４】
訓練（Ｔｒａｉｎｉｎｇ）
本発明に係るＤｉａｌｏｇＷＡＥ会話モデルの詳細な学習手順の一例は、図６に示したアルゴリズム１のとおりである。
【０１０５】
図６を参照すると、ＤｉａｌｏｇＷＡＥ会話モデルは、収束（ｃｏｎｖｅｒｇｅｎｃｅ）に達するまでエポック単位（ｅｐｏｃｈｗｉｓｅ）で学習する。各エポックでデコードされた応答の再構成損失が最小化されるオートエンコーダ（ＡＥ）段階と、潜在変数のすべての事後分布が条件付き事前分布とマッチされるＧＡＮ段階とを繰り返して施行することによって会話モデルを学習する。一例として、ＤｉａｌｏｇＷＡＥ会話モデルの詳細な学習手順は、図６に示したアルゴリズム１のとおりである。
【０１０６】
図７は、日常会話データセットにおいて、本発明に係るＤｉａｌｏｇＷＡＥ会話モデルによって生成された応答の例を示した図である。図７のテーブルにおいて、「＿ｅｏｕ＿」はｔｕｒｎの変化を示し、「Ｅｇ．ｉ」はｉ番目の応答を示す。
【０１０７】
図７は、与えられた文脈に対し、会話モデルによって生成された応答からなる文脈−応答ペアであり、既存のモデル（ＣＶＡＥ−ＣＯ）によって生成された応答と本発明に係るＤｉａｌｏｇＷＡＥ会話モデル（ＤｉａｌｏｇＷＡＥ−ＧＭＰ）によって生成された応答とを比較したものである。
【０１０８】
図７に示すように、ＤｉａｌｏｇＷＡＥ会話モデル（ＤｉａｌｏｇＷＡＥ−ＧＭＰ）は、可能となる様々な側面を扱いながら一貫かつ多様な応答を生成していることが分かる。さらに、ＤｉａｌｏｇＷＡＥ会話モデル（ＤｉａｌｏｇＷＡＥ−ＧＭＰ）は、既存のモデル（ＣＶＡＥ−ＣＯ）の応答に比べ、長くて有益な内容を含んだ応答を提示していることが分かる。
【０１０９】
既存のモデル（ＣＶＡＥ−ＣＯ）によって生成された応答は、比較的制限された変化を示しており、応答内容に若干の変形はあるものの、大部分は似たような表現（例えば、「ｈｏｗ  ｍｕｃｈ」など）が繰り返されていることが分かる。
【０１１０】
このように、本発明の実施形態によると、ニューラルネットワークを利用して文脈−依存ランダムノイズを変換することによって潜在変数に対する事前分布と事後分布からサンプリングし、２つの分布間のワッサースタイン距離を最小化する会話モデルを実現することができ、これによって会話全体の脈絡に対する会話応答を生成することができる。さらに、潜在空間をより豊かにさせるための混合ガウス事前ネットワークを使用することで会話応答のマルチモーダル性質を考慮した会話モデルを向上させることができ、これによって論理的かつ有用ながらも多様な会話応答を生成することができる。
【０１１１】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および／またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ、マイクロコンピュータ、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、１つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム（ＯＳ）およびＯＳ上で実行される１つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、１つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および／または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは１つのプロセッサおよび１つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【０１１２】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの１つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび／またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、１つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【０１１３】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例は、ハードディスク、フロッピー（登録商標）ディスク、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭおよびＤＶＤのような光媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような光磁気媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【０１１４】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【０１１５】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【０１１６】
１００：電子機器
１１０：ユーザ
２１０：外部サーバ
【図１】
2020030403.tif 000021
【図２】
2020030403.tif 000022
【図３】
2020030403.tif 000023
【図４】
2020030403.tif 000024
【図５】
2020030403.tif 000025
【図６】
2020030403.tif 000026
【図７】
2020030403.tif 000027