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

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

2025-25310応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム
<>
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図1
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図2
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図3
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図4
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図5
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図6
  • -応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025025310
(43)【公開日】2025-02-21
(54)【発明の名称】応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラム
(51)【国際特許分類】
   G10L 15/07 20130101AFI20250214BHJP
   G06F 40/56 20200101ALI20250214BHJP
   G10L 17/18 20130101ALI20250214BHJP
   G10L 15/22 20060101ALI20250214BHJP
【FI】
G10L15/07
G06F40/56
G10L17/18
G10L15/22 300U
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023129966
(22)【出願日】2023-08-09
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 2023年2月27日に人工知能学会 言語・音声理解と対話処理研究会(SLUD)第97回研究会 予稿集にて公開 2022年9月15日に2022年度 国立大学法人奈良先端科学技術大学院大学におけるコロキアムにて公開
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】504143441
【氏名又は名称】国立大学法人 奈良先端科学技術大学院大学
(74)【代理人】
【識別番号】110004381
【氏名又は名称】弁理士法人ITOH
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【弁理士】
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】水上 雅博
(72)【発明者】
【氏名】杉山 弘晃
(72)【発明者】
【氏名】安川 浩貴
(72)【発明者】
【氏名】品川 政太朗
(72)【発明者】
【氏名】須藤 克仁
(72)【発明者】
【氏名】中村 哲
(57)【要約】
【課題】特定の話者の特徴の発話の生成に関する制御性及び内挿性を向上させること。
【解決手段】応答生成学習装置は、話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習するように構成されている学習部を有する。
【選択図】図2
【特許請求の範囲】
【請求項1】
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習するように構成されている学習部、
を有することを特徴とする応答生成学習装置。
【請求項2】
前記話者埋め込みモデルは、VAE(Variational Auto-Encoder)である、
ことを特徴とする請求項1記載の応答生成学習装置。
【請求項3】
前記学習部は、前記潜在表現が所定の確率分布に従うような制約を与えるように構成されている、
ことを特徴とする請求項2記載の応答生成学習装置。
【請求項4】
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように学習された話者埋め込みモデルと、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように学習された応答生成モデルとを用いて、
前記話者埋め込みモデルに話者情報を入力し、前記応答生成モデルに対話における発話の履歴を入力した場合に前記話者埋め込みモデルの潜在表現を用いて前記応答生成モデルが出力する情報に基づいて当該発話の履歴に対する応答を生成するように構成されている応答生成部、
を有することを特徴とする応答生成装置。
【請求項5】
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習する学習手順、
をコンピュータが実行することを特徴とする応答生成学習方法。
【請求項6】
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように学習された話者埋め込みモデルと、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように学習された応答生成モデルとを用いて、
前記話者埋め込みモデルに話者情報を入力し、前記応答生成モデルに対話における発話の履歴を入力した場合に前記話者埋め込みモデルの潜在表現を用いて前記応答生成モデルが出力する情報に基づいて当該発話の履歴に対する応答を生成する応答生成手順、
をコンピュータが実行することを特徴とする応答生成方法。
【請求項7】
請求項1乃至3いずれか一項記載の応答生成学習装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項8】
請求項4記載の応答生成装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、応答生成学習装置、応答生成装置、応答生成学習方法、応答生成方法及びプログラムに関する。
【背景技術】
【0002】
従来、応答生成(ユーザの発話を入力として、システム応答を生成する対話システム)において、特定の話者の特徴を学習、再現、反映するための研究が行われている(非特許文献1、非特許文献2)。
【0003】
非特許文献1の手法(以下、「手法1」という。)では、話者の特徴を反映した応答を生成するために、対話データと話者IDを対応付けて学習が行われる。具体的には、話者IDを話者埋め込みと呼ばれるベクトルに変換し、そのベクトルを応答生成モデルの任意の部分で読み込むことで応答に対して特徴が反映される。話者IDがついた対話データはインターネット上から大量に手に入り、学習が容易である。
【0004】
非特許文献2の手法(以下、「手法2」という。)では、話者の特徴を反映した応答を生成するために、対話データと話者の特徴を記したテキスト(ペルソナ文)とを対応付けて学習が行われる。手法2では、ペルソナ文が発話と同様に入力される。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Jiwei Li et al.、"A Persona-Based Neural Conversation Model"、arXiv:1603.06155v2 [cs.CL] 8 Jun 2016
【非特許文献2】Saizheng Zhang et al.、"Personalizing Dialogue Agents: I have a dog, do you have pets too?"、Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Long Papers), pages 2204-2213 Melbourne, Australia, July 15 - 20, 2018
【発明の概要】
【発明が解決しようとする課題】
【0006】
手法1では、話者ごとの特徴を応答文と話者IDとで対応付けて学習するため、制御性(ユーザ・人間が、システムの反映する話者の特徴に対して、自然言語を用いて指示できるという特性)が低いという問題が有る。換言すれば、手法1では、話者IDの特徴空間について、話者同士の特徴が離れるように学習が行われるため話者性を微妙に調整するようなことが難しいという問題が有る。例えば、手法1は、任意の話者に対して「丁寧な口調にする」といった自然言語による指示又は操作などは受け付けない。
【0007】
手法2は、話者ごとの特徴を、それを表現する自然言語(ペルソナ文)と応答文を対応付けて学習するため、制御性は高いが、ペルソナ文を与えたデータを集めることのコストが高いため、当該データを大量に集めることはできない。これらの理由から、手法2では、話者埋め込みベクトルがなく、学習データも少ないため、話者の情報について内挿性(話者の特徴を加減算可能にすることで、2人の話者を足した特徴を持つ話者や、中間的な話者の特徴を生成・指示できる特性)の有る表現を持つ応答文を生成するのは困難である。つまり、手法2は、制御性は高いが、内挿性に課題がある。
【0008】
本発明は、上記の点に鑑みてなされたものであって、特定の話者の特徴の発話の生成に関する制御性及び内挿性を向上させることを目的とする。
【課題を解決するための手段】
【0009】
そこで上記課題を解決するため、応答生成学習装置は、話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習するように構成されている学習部を有する。
【発明の効果】
【0010】
特定の話者の特徴の発話の生成に関する制御性及び内挿性を向上させることができる。
【図面の簡単な説明】
【0011】
図1】本発明の実施の形態における応答生成装置10のハードウェア構成例を示す図である。
図2】本発明の実施の形態における応答生成装置10の機能構成例を示す図である。
図3】本発明の実施の形態における機械学習モデルm1の構成例を示す図である。
図4】話者埋め込みモデルm12の構成例を示す図である。
図5】話者埋め込みモデルm12に関する第1の具体例を説明するための図である。
図6】話者埋め込みモデルm12に関する第2の具体例を説明するための図である。
図7】応答生成モデルm11の構成例を示す図である。
【発明を実施するための形態】
【0012】
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における応答生成装置10のハードウェア構成例を示す図である。図1の応答生成装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、プロセッサ104、及びインタフェース装置105等を有する。
【0013】
応答生成装置10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0014】
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。プロセッサ104は、CPU若しくはGPU(Graphics Processing Unit)、又はCPU及びGPUであり、メモリ装置103に格納されたプログラムに従って応答生成装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
【0015】
図2は、本発明の実施の形態における応答生成装置10の機能構成例を示す図である。図2において、応答生成装置10は、学習部11及び応答生成部12を有する。これら各部は、応答生成装置10にインストールされた1以上のプログラムが、プロセッサ104に実行させる処理により実現される。
【0016】
学習部11は、機械学習モデルm1の学習処理を実行する。機械学習モデルm1は、対話における発話の履歴、発話の履歴に対して応答を行う話者(以下、「応答者」という。)の特徴を示す情報(以下、「話者情報」という。)を入力とし、当該応答の生成するニューラルネットワーク等のモデルである。なお、本実施の形態において、「発話」及び「応答」はテキストデータである。発話の履歴とは、対話において行われた全て又は一定の長さの発話のテキストデータが時系列に配列されたものである。「一定の長さ」とは、過去の発話の一定数(より厳密には一定の単語数)をいう。この長さは、機械学習モデルm1(厳密には後述される応答生成モデルm11)が受け取ることができる長さに依存する。例えば、2人による対話であれば、発話の履歴は、2人の話者による交互の発話が時系列に配列されたものである。対話は3人以上で行われるものであってもよい。応答者は、発話の履歴におけるいずれかの発話を行った者でもよいし、発話の履歴におけるいずれの発話も行っていない者でもよい。
【0017】
応答生成部12は、発話の履歴及び応答者の話者情報を入力とし、機械学習モデルm1を用いて、当該発話の履歴に対して当該話者情報に係る話者の特徴に応じた応答を生成する。発話の履歴に対する応答とは、発話の履歴における文脈に応じた新たな発話をいい、必ずしも最後の発話のみに対する応答に限定されない。
【0018】
な本実施の形態において、発話及び応答はテキストデータであるため、話者の特徴は、音声的な特徴は含まず、言語的な話し方の特徴や発話の内容の特徴等を含む。例えば、言語的な話し方の特徴としては、フィラー(「あー」、「えー」、「えーっと」等の言いよどみ)の種類やフィラーの箇所等が挙げられる。また、口調(丁寧語、敬語、砕けたしゃべり方、方言)、一人称や三人称の表現の仕方の特徴、単語の選び方(同じ意味でも、「難しい」、「困難」、「簡単ではない」など様々な表現がある中でどの表現を選ぶ傾向にあるのか)なども言語的な話し方の特徴に含まれる。発話の内容の特徴としては、「あなたはどんな人ですか?」などのように聞かれた際に、「おもろいこと好き! コテコテの大阪人やねん!」と答えるか、「浅草生まれ浅草育ち、生粋の江戸っ子でい」と答えるかなど、応答文全体の特徴をいう。
【0019】
なお、学習部11及び応答生成部12は、それぞれ異なるコンピュータを用いて実現されてもよい。
【0020】
図3は、本発明の実施の形態における機械学習モデルm1の構成例を示す図である。図3において、機械学習モデルm1は、話者埋め込みモデルm12及び応答生成モデルm11を含む。
【0021】
話者埋め込みモデルm12は、話者情報である入力2を入力として、潜在表現において話者埋め込みベクトルv1を生成し、話者埋め込みベクトルv1から話者情報を復元するモデルである。したがって、話者埋め込みモデルm12からの出力2は、復元された話者情報である。なお、生成された話者埋め込みベクトルv1は、応答生成モデルm11に入力される。話者情報とは、話者ID([ID-123]のような話者を識別するためのトークン、)、及びペルソナ文(私は大阪出身です、面白い人が好きです、たこ焼きが好きです、のような文集合)のいずれか、又は双方である。トークンとは、日本語を単語のような区切りに文を分割した際の最小単位をいう。ペルソナ文とは、話者の特徴を記したテキストをいう。本実施の形態において、[]で括ったトークンは、話者IDや文末、余白埋め等の特殊な役割を持つトークンを意味する。
【0022】
応答生成モデルm11は、発話の履歴を入力1として入力して、話者埋め込みモデルm12が生成した話者埋め込みベクトルv1を隠れ層において受け取り、出力1としての応答を生成するモデルである。当該応答は、入力1に対する応答であって、かつ、当該話者埋め込みベクトルv1に係る話者の特徴を含む応答である。
【0023】
図4は、話者埋め込みモデルm12の構成例を示す図である。話者埋め込みモデルm12は、VAE(Variational Auto-Encoder)、又はそれに準ずる構造のモデル(例えば、単なるオートエンコーダ)が性能面に鑑みて好適である。但し、他のモデルが話者埋め込みモデルm12として用いられてもよい。VAEは入力と出力が同様の内容になるよう復元を行うことで、モデルのエンコーダが生成する潜在表現(埋め込みベクトルv1)の情報量を向上させる(入力の情報が失われないようにする)機能があり、話者埋め込みベクトルv1の表現能力の向上や、内挿性の向上に役立つ。
【0024】
図4では、VAEを構成するエンコーダが入力2としての話者情報から話者埋め込みベクトルv1を生成し、デコーダが話者埋め込みベクトルv1から話者情報を復元して当該話者情報を出力2として出力する例が示されている。
【0025】
図5は、話者埋め込みモデルm12に関する第1の具体例を説明するための図である。図5には学習済みBERTをエンコーダとして用い、Transformer Decoderをデコーダとして用いた話者埋め込みモデルm12が示されている。
【0026】
BERTは自然言語処理で一般的に用いられる事前学習済みモデルの一つである。BERTが出力する[CLS]トークンに対応するベクトルが、BERTが入力した文章の特徴を強く反映することが知られている。
【0027】
Transformerは、BERTでも用いられるニューラルネットワークモデルの一つである。学習済みのTransformer Decoderも公開されており、言語生成の研究でよく用いられる。
【0028】
図5において、エンコーダであるBERTは、入力2(話者情報)として、話者ID若しくはペルソナ文、又はその両方を入力可能である。話者情報の具体的な形式は、例えば、以下の通りである。
【0029】
話者情報が話者IDのみを含む場合、話者情報は、例えば、[CLS][ID-123][/S][PAD][PAD][PAD]のような形式になる。
【0030】
話者情報がペルソナ文のみを含む場合、話者情報は、例えば、[CLS]わたしは大阪出身です[/S][PAD][PAD][PAD]のような形式になる。
【0031】
話者情報が話者ID及びペルソナ文の両方を含む場合、話者情報は、[CLS][ID-123]私は大阪出身です[/S][PAD][PAD][PAD]のような形式になる。つまり、話者IDとペルソナ文とを単純に接続すればよい。
【0032】
なお、話者情報が話者ID及びペルソナ文の両方を含む形式の場合であっても、話者IDのみを含む話者情報及びペルソナ文のみを含む話者情報を表現可能である。この場合、含まない方(ペルソナ文又は話者ID)が欠損していると考え、欠損している部分が[UNK]という未知の語彙(未知語)を示すトークンによって埋められてもよい。
【0033】
例えば、話者IDのみを含む話者情報は、ペルソナ文が欠損部分であるため、[CLS][ID-123][UNK][/S][PAD][PAD][PAD]のようになる。ペルソナ文のみを含む話者情報は、話者IDが欠損部分であるため、[CLS][UNK]私は大阪出身です[/S][PAD][PAD][PAD]のようになる。
【0034】
なお、[CLS]トークンは、BERTを用いる場合に必要になるトークンであり、[/S]は文末記号、[PAD]は余白埋めを示す。余白とは、話者埋め込みモデルm12(のエンコーダ)への入力可能な長さに対して、入力2の長さが足りない部分に相当する。
【0035】
エンコーダとしてのBERTは、上記のような入力に対する処理結果として、[CLS]トークンに対応するベクトルを出力する。このベクトルが話者埋め込みベクトルv1となる。
【0036】
Transformer Decoderは、話者埋め込みベクトルv1から入力2に対応する話者情報を復元し、復元結果を出力2とする。したがって、Transformer Decoderは、入力2が話者IDなら話者IDを、ペルソナ文ならペルソナ文を、両方なら両方を復元する。但し、BERTの処理特有の[CLS]トークンは復元されなくてよい。具体的には、入力2が[CLS][ID-123][/S][PAD][PAD][PAD]であれば、出力2は[ID-123][/S][PAD][PAD][PAD]でもよい。
【0037】
図6は、話者埋め込みモデルm12に関する第2の具体例を説明するための図である。図6には、話者IDとペルソナ文の入力が明確に区別される場合の話者埋め込みモデルm12の構成例が示されている。入力2-1は話者IDのみの入力であり、入力2-2はペルソナ文のみの入力である。
【0038】
話者埋め込みモデルm12は、入力2-1及び入力2-2のいずれか一つを入力し、対応する話者埋め込みベクトルv1を計算してもよいし、両方を入力し、入力2-1及び入力2-2ごとに対応する話者埋め込みを計算した後、加算、平均、max pooling等の手法で一つの話者埋め込みベクトルv1にまとめてもよい。
【0039】
入力2-1では、話者IDを話者埋め込みに変換する方法として、Embedding(埋め込み層)を用いてもよい。入力2-1に対応する出力2-1では、話者埋め込みベクトルv1から復元された話者IDである。話者IDの復元には、線形結合(Linear)やクラス分類が用いられてもよい。
【0040】
入力2-2からの話者埋め込みベクトルv1の計算、及び話者埋め込みベクトルv1からのペルソナ文(出力2-2)の復元については、図4において説明した通りである。
【0041】
図7は、応答生成モデルm11の構成例を示す図である。応答生成モデルm11には、Encoder-Decoder又はDecoderモデルに準ずるモデルが好適である。図7には、Encoder-Decoderモデルとしての応答生成モデルm11が示されている。例えば、Transformer Encoder-Decoderが用いられて応答生成モデルm11が構成されてもよい。
【0042】
応答生成モデルm11は、図7では、入力1としてこれまでの発話を入力し、話者埋め込みモデルm12から出力1に対応する話者の話者埋め込みベクトルv1を受け取り、出力1として応答を生成する。
【0043】
話者埋め込みモデルm12から受け取った話者埋め込みベクトルv1は、入力1としてのこれまでの発話を入力したエンコーダ(例えば、Transformer Encoder)が出力するベクトル列に結合されてもよいし、足し合わせされてもよい。この場合、結合又は足し合わせの結果がデコーダ(例えば、Transformer Decoder)に入力される。デコーダは、入力されたベクトルに基づいて応答(出力1)を生成する。又は話者埋め込みベクトルv1は、エンコーダが出力するベクトル列を入力したデコーダの任意の隠れ層におけるベクトル結合されてもよいし、足し合わされてもよい。
【0044】
[学習時]
学習部11は、機械学習モデルm1の学習を制御する。学習部11は、1つの対話における発話の履歴、話者情報、及び正解としての応答(以下、「正解応答」という。)とを1組とする複数の学習データを用いて学習処理を実行する。或る学習データの正解応答は、当該学習データの発話履歴に対する応答であって、当該学習データの話者情報に応じた特徴を含む応答である。少なくとも一部の学習データの話者情報は、話者ID及びペルソナ文の双方を含む。換言すれば、一部の学習データの話者情報は、話者IDのみ又はペルソナ文のみであってもよい。
【0045】
学習部11は、学習データにおける発話の履歴を入力1として機械学習モデルm1入力し、学習データにおける話者情報を入力2として機械学習モデルm1へ入力する。
【0046】
より詳しくは、学習部11は、学習データごとに、当該学習データの話者情報を入力2として入力した場合の出力2が当該話者情報を再現するように(入力2と出力2との誤差が0になるように)話者埋め込みモデルm12を学習(話者埋め込みモデルm12のパラメータを更新)する。この際、学習部11は、話者埋め込みベクトルv1の内挿性を高めるために、入力2として話者情報を入力した話者埋め込みモデルm12における潜在表現としての話者埋め込みベクトルv1に対して、KLダイバージェンス等の損失関数を与えることで、潜在表現としての話者埋め込みベクトルv1が正規分布などの所定の確率分布に従うような制約を与えてもよい。
【0047】
学習部11は、また、学習データごとに、当該学習データの発話の履歴を入力1として入力し、当該学習データの話者情報を入力2として入力した場合の出力1が当該学習データの正解応答を再現するように(損失関数を用いて計算される出力1と正解応答との誤差が0になるように)応答生成モデルm11及び話者埋め込みモデルm12を教師あり学習(応答生成モデルm11及び話者埋め込みモデルm12のパラメータを更新)する。すなわち、出力1と正解応答との誤差は、応答生成モデルm11及び話者埋め込みモデルm12の双方のパラメータに影響する。
【0048】
なお、話者埋め込みモデルm12及び応答生成モデルm11の学習は同時に実行されてもよい(1回の処理で出力1の誤差と出力2の誤差を同時に0になるように、同時に両方のモデルを学習してもよい)し、事前に話者埋め込みモデルm12のみを学習し、そのうえで応答生成モデルm11のみを学習してもよいし、応答生成モデルm11と話者埋め込みモデルm12を交互に学習(1回の処理では出力1の誤差か出力2の誤差のどちらかを0にするように、話者埋め込みモデルm12及び応答生成モデルm11を学習する)してもよい。
【0049】
つまり、図4図5図6の話者埋め込みモデルm12は、話者埋め込みモデルm12のみで学習を行うことも可能である。その場合、学習部11は、出力1の損失関数を考慮せず、入力2に対する出力2の損失関数のみを考慮して話者埋め込みモデルm12を学習する。事前に話者埋め込みモデルm12のみを学習した後に、出力1の損失関数を考慮した学習を実行することで、機械学習モデルm1全体の性能及び学習効率の向上が期待できる。
【0050】
また、応答生成モデルm11のみで学習が行われてもよい。その場合、学習部11は、入力1に対する出力1の損失関数のみを考慮して応答生成モデルm11を学習する。この際に、応答生成モデルm11に対して入力される話者埋め込みベクトルv1は、事前に計算されたものであってもよいし、全て0又はランダムな値のベクトルであってもよい。応答生成モデルm11のみを学習した後で、機械学習モデルm1全体の学習を行うことで、機械学習モデルm1全体の性能及び学習効率の向上が期待できる。
【0051】
なお、学習については機械学習において一般的な又は公知な学習方法に基づいて行われればよく、入力として与えられたデータを機械学習モデルm1が変換し、出力したデータが、所定の目的に応じた理想的出力に近くなるように学習が行われればよい。理想的出力は、上記においては、話者情報及び発話履歴に対する正解応答といった形式で与えられる。
【0052】
[推論時]
以下の説明における機械学習モデルm1(話者埋め込みモデルm12及び応答生成モデルm11)は、学習済みのモデルである。
【0053】
応答生成部12は、例えば、ユーザから発話の履歴及び話者情報を入力した場合に、機械学習モデルm1(応答生成モデルm11)が出力する情報に基づいて、当該発話の履歴に対する応答を生成する。当該話者情報は、話者IDのみでもよいし、ペルソナ文のみでもよいし、話者ID及びペルソナ文の双方を含んでもよい。
【0054】
応答生成部12は、発話の履歴を入力1として、話者情報を入力2として機械学習モデルm1に入力する。この際、話者埋め込みモデルm12は出力2を出力しなくてもよい。すなわち、推論時において、話者埋め込みモデルm12のデコーダは必須ではない。但し、出力2を出力させることで、正しい話者が再現できているか確認しても構わない。
【0055】
機械学習モデルm1(応答生成モデルm11)は、当該話者情報及び当該発話履歴に対応する応答を出力1として出力する。
【0056】
なお、厳密には、応答生成モデルm11としてのニューラルネットワークからの出力は、応答を示すテキストデータそのものではなく、応答の確率分布等である。したがって、応答生成部12は、応答もでるからの出力に対し、ビームサーチなど、一般的な自然言語処理のモデルで用いられる出力(デコーディング)手法を用いることで応答を示すテキストデータを生成する。
【0057】
なお、図4図5又は図6の話者埋め込みモデルm12が生成した複数の話者埋め込みベクトルv1を用いた加算、平均の計算が可能である。
【0058】
例えば、入力2の話者情報として話者Aの話者IDを入力した話者埋め込みモデルm12が生成した話者埋め込みベクトルv1をベクトルvaとする。また、入力2の話者情報としてペルソナ文「私は優しいです」を入力した話者埋め込みモデルm12が生成した話者埋め込みベクトルv1をベクトルvbとする。ベクトルvaとベクトルvbとを加算又は平均することで、「優しい」話者Aという、双方の特徴を持った話者埋め込みベクトルv1を生成することができる。更に1以上の話者ID又はペルソナ文に基づく話者埋め込みベクトルv1を加算又は平均することで、更なる特徴を話者埋め込みベクトルv1に含めることができる。
【0059】
したがって、応答生成部12は、例えば、複数の話者情報をユーザから入力し、それぞれを個別に話者埋め込みモデm12に入力してもよい。この場合、話者埋め込みモデルm12は、複数の話者埋め込みベクトルv1を生成する。応答生成モデルm11は、発話の履歴の1回の入力に対して、当該複数の話者埋め込みベクトルv1を加算又は平均した結果を受け取って応答を生成してもよい。
【0060】
上述したように、本実施の形態によれば、従来において応答を生成する際の尤度最大化で学習されていた話者埋め込みについて、話者IDとペルソナ文の両方を受け取ることが可能な話者埋め込みモデルm12を用いるとともに、例えば、VAE(構造等を用いて話者ID及びペルソナ文の復元を行うことで、ペルソナ文を用いることが可能な制御性と、VAEによって話者埋め込みの内挿性を獲得することができる。したがって、特定の話者の特徴を学習、再現、反映する際に、特定の話者の特徴の発話の生成に関する制御性及び内挿性を向上させることができる。
【0061】
以上の実施形態に関し、更に以下の付記を開示する。
【0062】
(付記項1)
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習する、
ことを特徴とする応答生成学習装置。
【0063】
(付記項2)
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように学習された話者埋め込みモデルと、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように学習された応答生成モデルとを用いて、
前記話者埋め込みモデルに話者情報を入力し、前記応答生成モデルに対話における発話の履歴を入力した場合に前記話者埋め込みモデルの潜在表現を用いて前記応答生成モデルが出力する情報に基づいて当該発話の履歴に対する応答を生成する、
ことを特徴とする応答生成装置。
【0064】
(付記項3)
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように話者埋め込みモデルを学習し、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように応答生成モデルを学習するように構成されている学習手順、
をコンピュータに実行させるプログラムを記録した記録媒体。
【0065】
(付記項4)
話者を識別するトークン及び前記話者の特徴を示すテキストを含む話者情報を入力した話者埋め込みモデルが前記話者情報を再現するように学習された話者埋め込みモデルと、前記話者埋め込みモデルが前記話者情報に基づいて生成する潜在表現と、対話における発話の履歴とを入力した応答生成モデルが前記話者情報及び前記履歴に対する正解の応答を再現するように学習された応答生成モデルとを用いて、
前記話者埋め込みモデルに話者情報を入力し、前記応答生成モデルに対話における発話の履歴を入力した場合に前記話者埋め込みモデルの潜在表現を用いて前記応答生成モデルが出力する情報に基づいて当該発話の履歴に対する応答を生成する応答生成手順、
をコンピュータに実行させるプログラムを記録した記録媒体。
【0066】
なお、本実施の形態において、学習時の応答生成装置10は、応答生成学習装置の一例である。
【0067】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0068】
10 応答生成装置
11 学習部
12 応答生成部
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 プロセッサ
105 インタフェース装置
B バス
図1
図2
図3
図4
図5
図6
図7