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

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

▶ エヌ・ティ・ティ レゾナント株式会社の特許一覧

特開2023-171109学習装置、推定装置、学習方法、推定方法及びプログラム
<>
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図1
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図2
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図3
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図4
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図5
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図6
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図7
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図8
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図9
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図10
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図11
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図12
  • 特開-学習装置、推定装置、学習方法、推定方法及びプログラム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023171109
(43)【公開日】2023-12-01
(54)【発明の名称】学習装置、推定装置、学習方法、推定方法及びプログラム
(51)【国際特許分類】
   G10L 15/22 20060101AFI20231124BHJP
   G06N 20/00 20190101ALI20231124BHJP
   G10L 15/10 20060101ALI20231124BHJP
【FI】
G10L15/22 300U
G06N20/00
G10L15/10 500N
【審査請求】有
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022083353
(22)【出願日】2022-05-20
(11)【特許番号】
(45)【特許公報発行日】2023-07-31
(71)【出願人】
【識別番号】504126835
【氏名又は名称】エヌ・ティ・ティ レゾナント株式会社
(74)【代理人】
【識別番号】100141139
【弁理士】
【氏名又は名称】及川 周
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(72)【発明者】
【氏名】小瀬木 悠佳
(72)【発明者】
【氏名】立石 修平
(72)【発明者】
【氏名】中辻 真
(72)【発明者】
【氏名】松野 繁雄
(57)【要約】
【課題】応答の推定の精度を向上させる。
【解決手段】発話者による発話時のデータである発話集合の含む系列間の関連性を示す第1発話関連性情報を取得する第1発話側関連性推定モデルと、応答者の応答データである応答集合の含む系列間の関連性を示す第1応答関連性情報とを取得する第1応答側関連性推定モデルを含む第1構築部の学習を行う第1構築部と、発話集合と学習済みの第1発話側関連性推定モデルが取得した第1発話関連性情報との間の関連性を示す第2発話関連性情報の取得と、応答集合と学習済みの第1応答側関連性推定モデルが取得した第1応答関連性情報との間の関連性を示す第2発話関連性情報の取得とを行う第2構築モデルの学習を行う第2構築部と、を備える学習装置。
【選択図】図1
【特許請求の範囲】
【請求項1】
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、
前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、
前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、
を含む第1構築モデル、を実行する第1構築モデル実行部と、
前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、
を備え、
前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、
発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、
応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、
を含む第2構築モデル、を実行する第2構築モデル実行部と、
前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、
を備え、
前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、
を備える学習装置。
【請求項2】
前記第2発話側関連性推定モデルは第1発話側関連性推定モデルを含み、
前記第2発話関連性情報は、前記第2発話側関連性推定モデルが含む第1発話側関連性推定モデルが前記発話集合に基づいて推定した第1発話関連性情報と、前記学習済みの第1構築モデルが取得した前記第1発話関連性情報との間の関連性を示す情報である、
請求項1に記載の学習装置。
【請求項3】
前記第2応答側関連性推定モデルは第1応答側関連性推定モデルを含み、
前記第2応答関連性情報は、前記第2応答側関連性推定モデルが含む第1応答側関連性推定モデルが前記応答集合に基づいて推定した第1応答関連性情報と、前記学習済みの第1構築モデルが取得した前記第1応答関連性情報との間の関連性を示す情報である、
請求項1又は2に記載の学習装置。
【請求項4】
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得部と、
発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行部と、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、を備え、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行部と、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、を備え、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、を備える学習装置が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得部に入力された発話集合に基づき、応答を推定する、推定部と、
を備える推定装置。
【請求項5】
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、
前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、
前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、
を含む第1構築モデル、を実行する第1構築モデル実行ステップと、
前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、
を有し、
前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、
発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、
応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、
を含む第2構築モデル、を実行する第2構築モデル実行ステップと、
前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、
を有し、
前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、
を有する学習方法。
【請求項6】
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得ステップと、
発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行ステップと、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、を有し、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行ステップと、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、を有し、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、を有する学習方法が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得ステップで入力された発話集合に基づき、応答を推定する、推定ステップと、
を有する推定方法。
【請求項7】
請求項1に記載の学習装置としてコンピュータを機能させるためのプログラム。
【請求項8】
請求項4に記載の推定装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習装置、推定装置、学習方法、推定方法及びプログラムに関する。
【背景技術】
【0002】
機械学習の技術を用いた対話システムの技術に関心が高まっている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Yunlong Liang, Fandong Meng, Ying Zhang, Yufeng Chen, Jinan Xu and Jie Zhou, ”Infusing Multi-Source Knowledge with Heterogeneous Graph Neural Network for Emotional Conversation Generation” [online]、[令和4年5月17日検索]、インターネット〈URL:https://www.aaai.org/AAAI21Papers/AAAI-9925.LiangY.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、対話において発話者が話し相手に期待する応答は必ずしも話者が発した言葉だけで決まるものでは無い。例えば同じ言葉が発せられても、発話者の意図は場面に応じて異なり、誉め言葉であったり皮肉であったりする場合がある。したがって、これまで提案された技術では、対話システムによる応答の精度が低い場合があった。
【0005】
上記事情に鑑み、本発明は、応答の推定の精度を向上させる技術を提供することを目的としている。
【課題を解決するための手段】
【0006】
本発明の一態様は、発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行部と、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、を備え、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行部と、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、を備え、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、を備える学習装置である。
【0007】
本発明の一態様は、発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得部と、発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行部と、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、を備え、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行部と、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、を備え、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、を備える学習装置が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得部に入力された発話集合に基づき、応答を推定する、推定部と、を備える推定装置である。
【0008】
本発明の一態様は、発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、
前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行ステップと、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、を有し、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を実行する第2構築モデル実行ステップと、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、を有し、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、を有する学習方法である。
【0009】
本発明の一態様は、発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得ステップと、発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行ステップと、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、を有し、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行ステップと、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、を有し、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、を有する学習方法が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得ステップで入力された発話集合に基づき、応答を推定する、推定ステップと、を有する推定方法である。
【0010】
本発明の一態様は、上記の学習装置としてコンピュータを機能させるためのプログラムである。
【0011】
本発明の一態様は、上記の推定装置としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【0012】
本発明により、応答の推定の精度を向上させることが可能となる。
【図面の簡単な説明】
【0013】
図1】実施形態の推定システムの概要を説明する第1の説明図。
図2】実施形態の推定システムの概要を説明する第2の説明図。
図3】実施形態の推定システムの概要を説明する第3の説明図。
図4】実施形態における第1構築モデル及び第2構築モデルのより具体的な一例を説明する説明図。
図5】実施形態における応答推定モデルによる推定の精度を検証した実験の結果の一例を示す図。
図6】実施形態における学習装置のハードウェア構成の一例を示す図。
図7】実施形態における学習装置の備える制御部の構成の一例を示す図。
図8】実施形態における学習装置が実行する処理であって第1構築モデルの学習に関する処理の流れの一例を示すフローチャート。
図9】実施形態における学習装置が実行する処理であって第2構築モデルの学習に関する処理の流れの一例を示すフローチャート。
図10】実施形態における推定装置のハードウェア構成の一例を示す図。
図11】実施形態における推定装置の備える制御部の構成の一例を示す図。
図12】実施形態における推定装置が実行する処理の流れの一例を示すフローチャート。
図13】実施形態における応答推定モデルで実行される処理の流れの一例を示すフローチャート。
【発明を実施するための形態】
【0014】
(実施形態)
図1から図3を用いて、実施形態の推定システム100の概要を説明する。図1は、実施形態の推定システム100の概要を説明する第1の説明図である。図2は、実施形態の推定システム100の概要を説明する第2の説明図である。より具体的には図2は、後述する第1構築モデルの一例の概要を説明する説明図である。図3は、実施形態の推定システム100の概要を説明する第3の説明図である。より具体的には図3は、後述する第2構築モデルの一例の概要を説明する説明図である。
【0015】
推定システム100は、学習装置1と推定装置2とを備える。学習装置1は、発話者と応答者との間のやりとりにおいて発話者が発した発話に対する応答者の応答を推定する数理モデルである応答推定モデルを得るための学習を行う。応答者は、発話者の発話に応答する者である。発話者と応答者との間のやりとりは、例えば発話者と応答者との間の対話である。
【0016】
より具体的には、学習装置1は、応答推定モデルを得るために、第1構築モデルの学習と、第2構築モデルの学習とをそれぞれ、学習に関する所定の終了条件が満たされるまで行う。このように、第1構築モデル及び第2構築モデルはいずれも応答推定モデルを得るために用いられる数理モデルであって、学習により更新される数理モデルである。なお数理モデルの更新とは、数理モデルの含むパラメータの値を更新することを意味する。
【0017】
なお学習とは機械学習を意味する。学習に関する所定の終了条件がみたされた時点の数理モデルが学習済みの数理モデルである。以下、第1構築モデルの学習に関する所定の終了条件を、第1終了条件という。以下、第2構築モデルの学習に関する所定の終了条件を第2終了条件という。
【0018】
第1終了条件は、例えば第1構築モデルの更新が所定の回数行われたという条件である。第1終了条件は、例えば更新による第1構築モデルの変化が所定の変化より小さいという条件であってもよい。第2終了条件は、例えば第2構築モデルの更新が所定の回数行われたという条件である。第2終了条件は、例えば更新による第2構築モデルの変化が所定の変化より小さいという条件であってもよい。
【0019】
<応答推定モデルについて>
上述したように応答推定モデルは、発話者と応答者との間のやりとりにおいて発話者が発した発話に対する応答者の応答を推定する数理モデルである。応答推定モデルは、より具体的には、発話者と応答者との間のやりとりから得られる発話テキストデータ、発話音声データ及び発話映像データの組(以下「発話集合」という。)に基づき、応答者の応答を推定する数理モデルである。また、応答推定モデルの推定する応答は、具体的には、発話者と応答者との間のやりとりから得られる応答テキストデータ、応答音声データ及び応答映像データの組(以下「応答集合」という。)である。
【0020】
発話テキストデータは、発話者による発話時の言葉を示す文字列である。発話音声データは、発話者による発話時の音声を示す音声データである。発話映像データは、発話者による発話時の映像を示す映像データである。応答テキストデータは、発話者の発話に対する応答者の応答の言葉を示す文字列のデータである。応答音声データは、発話者の発話に対する応答者の応答の音声を示す音声データである。応答映像データは、発話者の発話に対する応答者の応答時の映像を示す映像データである。
【0021】
文字列は、発話された順に言葉を示す文字が並ぶ系列である。したがって文字列は、時間の流れにそってサンプルが並ぶ系列である。すなわち、文字列は時系列でもある。音声データ及び映像データは時間の流れにそってサンプルが並ぶ系列である。したがって音声データ及び映像データは時系列でもある。そのため、発話テキストデータ、発話音声データ、発話映像データ、応答テキストデータ、応答音声データ及び応答映像データはいずれも系列であり時系列でもある。
【0022】
このような応答推定モデルを、推定の精度が高い状態で得る、ために用いられるのが第1構築モデルと第2構築モデルである。
【0023】
<第1構築モデルについて>
上述したように第1構築モデルは、応答推定モデルを得るために用いられる数理モデルである。第1構築モデルは、具体的には、第1発話関連性情報と第1応答関連性情報とを推定する数理モデルである。第1発話関連性情報は、発話集合の含む系列間の関連性を示す情報である。第1応答関連性情報は、応答集合の含む系列間の関連性を示す情報である。
【0024】
発話集合と応答集合とにはそれぞれ3つの系列が含まれる。そこで、発話集合や応答集合に含まれる系列に限らず3以上の複数の系列について、系列間の関連性を示す情報という言葉の定義を念のため説明する。より具体的には、1番目からQ番目までのQ個(Qは1以上の整数)の系列が存在する場合における、系列間の関連性を示す情報という言葉の定義を説明する。1番目からQ番目までのQ個(Qは1以上の整数)の系列が存在する場合、系列間の関連性を示す情報とは、q番目の系列とp番目の系列(qは1以上Q以下の整数であり、pは1以上Q以下の整数のうちqとは異なる整数)との間の関連性を、qとpとの全ての組について示す情報、である。
【0025】
第1構築モデルは、第1発話側関連性推定モデルと、第1応答側関連性推定モデルと、を含む。さらに第1構築モデルは、感情推定モデルを含む。第1発話側関連性推定モデルは、発話集合に基づき第1発話関連性情報を推定する数理モデルである。第1応答側関連性推定モデルは、応答集合に基づき第1応答関連性情報を推定する数理モデルである。
【0026】
感情推定モデルは、第1発話関連性情報と第1応答関連性情報とに基づき、発話者及び応答者の感情を示す情報を推定する数理モデルである。以下、感情推定モデルの推定した発話者の感情を示す情報を発話者推定感情情報という。以下、感情推定モデルの推定した応答者の感情を示す情報を応答者推定感情情報という。
【0027】
<第1構築モデルの更新について>
第1構築モデルは、第1構築モデル更新処理によって更新される。第1構築モデル更新処理は、感情推定モデルの推定の結果と、正解組データとの違いを小さくするように第1構築モデルを更新する処理である。正解組データは、発話者感情正解情報と応答者感情正解情報との組であり、第1構築モデルの学習における正解データである。発話者感情正解情報は、発話者の感情を示す情報である。応答者感情正解情報は、応答者の感情を示す情報である。
【0028】
第1構築モデル更新処理は、例えば、感情推定モデルの推定の結果と、正解組データとに基づき、感情違いを小さくするように第1構築モデルを更新する処理である。感情違いは、発話者推定感情情報と発話者感情正解情報との間の違いと、応答者推定感情情報と応答者感情正解情報との間の違いと、の合計である。
【0029】
このように、第1構築モデル更新処理は、感情推定モデルの推定した発話者の感情と発話者感情正解情報の示す発話者の感情との違いと、感情推定モデルの推定した応答者の感情と応答者感情正解情報の示す応答者の感情との違いと、を小さくするように、第1構築モデルを更新する処理である。
【0030】
なお第1構築モデルの更新では、第1発話側関連性推定モデルと、第1応答側関連性推定モデルと、感情推定モデルと、が更新される。
【0031】
<第1発話側関連性推定モデルの一例>
第1発話側関連性推定モデルの一例を説明する。第1発話側関連性推定モデルでは、発話集合の含む各系列それぞれに対して特徴系列取得処理が実行される。特徴系列取得処理は、処理対象の系列に含まれる各サンプルについてサンプル特徴ベクトルを取得することで、サンプル特徴ベクトルの系列(以下「特徴系列」という。)を得る処理である。サンプル特徴ベクトルは、サンプルの特徴ベクトルである。
【0032】
すなわち、第1発話側関連性推定モデルでは、発話テキスト特徴系列と、発話音声特徴系列と、発話映像特徴系列と、を取得する処理(以下「発話特徴系列取得処理」という。)が実行される。発話テキスト特徴系列は、発話テキストデータの特徴系列である。発話音声特徴系列は、発話音声データの特徴系列である。発話映像特徴系列は、発話映像データの特徴系列である。
【0033】
上述したようにサンプル特徴ベクトルがサンプルの特徴ベクトルである。したがって、発話テキスト特徴系列は発話テキストの特徴ベクトルの系列であり、発話音声特徴系列は発話音声データの特徴ベクトルの系列であり、発話映像特徴系列は発話映像データの特徴ベクトルの系列である。
【0034】
発話テキスト特徴系列は、例えば発話テキストデータがBERT(Bidirectional Encoder Representations from Transformers)に入力されることで得られる。このような場合、発話テキスト特徴系列は、発話テキストデータの入力先のBERTの最終層で得られる単語トークンに対する特徴ベクトルである。
【0035】
第1発話側関連性推定モデルでは、第1発話側関連性取得処理が実行される。第1発話側関連性取得処理は、発話特徴系列取得処理で得られた3つの系列間の関連性を示す情報を取得する処理である。第1発話側関連性取得処理で得られる情報は、具体的には系列である。
【0036】
第1発話側関連性取得処理で得られる系列は発話特徴系列取得処理で得られた3つの系列間の関連性を示す情報であり、発話特徴系列取得処理で得られた3つの系列は発話集合の含む各系列の特徴ベクトルの系列である。したがって、第1発話側関連性取得処理で得られる系列は、発話集合に含まれる系列間の関連性を示す情報である。そのため、第1発話側関連性取得処理で得られる系列は、第1発話関連性情報の一例である。
【0037】
第1発話側関連性取得処理は例えば、発話特徴系列取得処理で得られた各系列の重み付き和をSourceとし、発話テキストに対するBERTの最終層で得られる単語トークンに対する特徴ベクトルをTargetとするSource-Target Attentionを実行する処理である。このような場合、第1発話側関連性取得処理はさらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理を含んでもよい。
【0038】
<第1応答側関連性推定モデルの一例>
第1応答側関連性推定モデルの一例を説明する。第1応答側関連性推定モデルでは、応答集合の含む各系列それぞれに対して特徴系列取得処理が実行される。すなわち、第1応答側関連性推定モデルでは、応答テキスト特徴系列と、応答音声特徴系列と、応答映像特徴系列と、を取得する処理(以下「応答特徴系列取得処理」という。)が実行される。応答テキスト特徴系列は、応答テキストデータの特徴系列である。応答音声特徴系列は、応答音声データの特徴系列である。応答映像特徴系列は、応答映像データの特徴系列である。
【0039】
上述したようにサンプル特徴ベクトルがサンプルの特徴ベクトルである。したがって、応答テキスト特徴系列は応答テキストの特徴ベクトルの系列であり、応答音声特徴系列は応答音声データの特徴ベクトルの系列であり、応答映像特徴系列は応答映像データの特徴ベクトルの系列である。
【0040】
応答テキスト特徴系列は、例えば応答テキストデータがBERTに入力されることで得られる。このような場合、応答テキスト特徴系列は、応答テキストデータの入力先のBERTの最終層で得られる単語トークンに対する特徴表現である。
【0041】
第1応答側関連性推定モデルでは、第1応答側関連性取得処理が実行される。第1応答側関連性取得処理は、応答特徴系列取得処理で得られた3つの系列間の関連性を示す情報を取得する処理である。第1応答側関連性取得処理で得られる情報は、具体的には系列である。
【0042】
第1応答側関連性取得処理で得られる系列は応答特徴系列取得処理で得られた3つの系列間の関連性を示す情報であり、応答特徴系列取得処理で得られた3つの系列は応答集合の含む各系列の特徴ベクトルの系列である。したがって、第1応答側関連性取得処理で得られる系列は、応答集合に含まれる系列間の関連性を示す情報である。そのため、第1応答側関連性取得処理で得られる系列は、第1応答関連性情報の一例である。
【0043】
第1応答側関連性取得処理は例えば、応答特徴系列取得処理で得られた各系列の重み付き和をSourceとし、応答テキストデータの入力先のBERTの最終層で得られる単語トークンに対する特徴ベクトルをTargetとするSource-Target Attentionを実行する処理である。このような場合、第1応答側関連性取得処理はさらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理を含んでもよい。
【0044】
<第2構築モデルについて>
上述したように第2構築モデルは、応答推定モデルを得るために用いられる数理モデルである。第2構築モデルは、具体的には、第1発話側関連性推定モデルを含む数理モデルである第2発話側関連性推定モデルと、第2応答側関連性推定モデルを含む数理モデルである第2発話側関連性推定モデルと、を含む数理モデルである。
【0045】
<第2発話側関連性推定モデル>
第2発話側関連性推定モデルは、第1発話側関連性推定モデルを発話集合に対して実行することで、学習済みの第1構築モデルが推定した第1発話関連性情報とは必ずしも同一ではない、第1発話関連性情報(以下「主第1発話関連性情報」という。)を取得する。以下説明の簡単ため、第2発話側関連性推定モデルにおいて実行された第1発話側関連性推定モデルの実行対象の発話集合を、主発話集合という。
【0046】
第2発話側関連性推定モデルは、次に第2発話側関連性取得処理を実行する。第2発話側関連性取得処理は、主第1発話関連性情報と、主発話集合に基づいて学習済みの第1構築モデルが取得した第1発話関連性情報と、の間の関連性を示す情報(以下「第2発話関連性情報」という。)を取得する処理である。このように、第2発話側関連性推定モデルは、発話集合と、その発話集合に基づいて学習済みの第1構築モデルが推定した第1発話関連性情報と、に基づき第2発話関連性情報を取得する数理モデルである。
【0047】
なお、第2発話側関連性取得処理は、例えば、主発話集合に基づいて学習済みの第1構築モデルが推定した第1発話関連性情報をSourceとし、主第1発話関連性情報をTargetとするSource-Target Attentionを実行する処理である。
【0048】
第2発話側関連性取得処理は、さらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理を含んでもよい。所定の残差結合と所定のレイヤーに対する所定の正規化の処理の一例を、第2構築モデルにおける発話テキスト特徴系列がBERTに応答テキストデータが入力されることで得られるという場合を例に説明する。このような場合、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理では、例えばその発話テキスト特徴系列を用いて、残差結合とレイヤーの正規化とが行われる。
【0049】
第2発話側関連性取得処理はさらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理の実行の結果、に対するmaxpoolの処理を含んでもよい。
【0050】
<第2応答側関連性推定モデル>
第2応答側関連性推定モデルは、第1応答側関連性推定モデルを応答集合に対して実行することで、学習済みの第1構築モデルが取得した第1応答関連性情報とは必ずしも同一ではない、第1応答関連性情報(以下「主第1応答関連性情報」という。)を取得する。以下説明の簡単ため、第2応答側関連性推定モデルにおいて実行された第1応答側関連性推定モデルの実行対象の応答集合を、主応答集合という。
【0051】
第2応答側関連性推定モデルは、次に第2応答側関連性取得処理を実行する。第2応答側関連性取得処理は、主第1応答関連性情報と、主応答集合に基づいて学習済みの第1構築モデルが推定した第1応答関連性情報と、の間の関連性を示す情報(以下「第2応答関連性情報」という。)を取得する処理である。このように、第2応答側関連性推定モデルは、応答集合と、その応答集合に基づいて学習済みの第1構築モデルが推定した第1応答関連性情報と、に基づき第2応答関連性情報を取得する数理モデルである。
【0052】
なお、第2応答側関連性取得処理は、例えば、主応答集合に基づいて学習済みの第1構築モデルが推定した第1応答関連性情報をSourceとし、主第1応答関連性情報をTargetとするSource-Target Attentionを実行する処理である。
【0053】
第2応答側関連性取得処理は、さらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理を含んでもよい。所定の残差結合と所定のレイヤーに対する所定の正規化の処理の一例を、第2構築モデルにおける応答テキスト特徴系列がBERTに応答テキストデータが入力されることで得られるという場合を例に説明する。このような場合、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理では、例えばその応答テキスト特徴系列を用いて、残差結合とレイヤーの正規化とが行われる。
【0054】
第2応答側関連性取得処理はさらに、Source-Target Attentionの実行結果に対する所定の残差結合と所定のレイヤーに対する所定の正規化の処理の実行の結果、に対するmaxpoolの処理を含んでもよい。
【0055】
<第2構築モデルの更新について>
第2構築モデルは、第2構築モデル更新処理によって更新される。第2構築モデル更新処理は、第2発話側関連性情報と第2応答関連性情報との違いを小さくするように第2構築モデルを更新する処理である。第2構築モデルの更新では、第2発話側関連性推定モデルと、第2応答側関連性推定モデルと、が更新される。
【0056】
このように第2構築モデルの更新の規則は、第1構築モデルの更新の規則とは異なる。また、第2構築モデル更新処理によって、第1構築モデルが更新されることはない。そのため、上述したように、主第1応答関連性情報と、学習済みの第1構築モデルが推定した第1応答関連性情報と、は必ずしも同一では無い。
【0057】
<第2構築モデルと応答推定モデルとの関係と、第2構築モデルの更新の規則の技術的意義について>
第2構築モデルと応答推定モデルとの関係と、第2構築モデルの更新の規則(以下「第2構築モデル更新規則」という。)との技術的意義について説明する。念のため説明しておくと、第2構築モデル更新規則は、第2発話側関連性情報と第2応答関連性情報との違いを小さくするように第2構築モデルを更新する、という規則である。
【0058】
上述したように、第2構築モデルの学習は、発話集合と応答集合とを用いて、発話集合に基づいて得られる第2発話側関連性情報と、応答集合に基づいて得られる第2応答関連性情報との違い小さくなるよう行われる。ここで、発話集合に基づき第2発話側関連性情報を得る処理を関数F1(x)と表現し、応答集合に基づき第2応答側関連性情報を得る処理を関数F2(y)と表現する。
【0059】
このような表現を用いて、第2構築モデルの学習を説明すれば、関数F1(x)の値と関数F2(y)の値との違いを小さくするように第2構築モデルを更新する、という学習である。なお、xは発話集合と学習済みの第1構築モデルが得た第1発話関連性情報との集合を表し、yは応答集合と学習済みの第1構築モデルが得た第1応答関連性情報との集合を表す。
【0060】
したがって、学習済みの第2構築モデルでは、関数F2の逆関数F2-1を考えれば、y~F2-1(F1(x))が成立する。そのため学習済みの第2構築モデルを用いれば、F2-1(F1(x))を実行することでyに略同一の結果を得る処理の実行が可能である。学習済みの第2構築モデルを用いてF2-1(F1(x))を実行してyに略同一の結果を得る処理を実行する数理モデルが応答推定モデルである。
【0061】
このように、第2構築モデルの学習が進み、F1(x)とF2(y)との違いが小さくなるほど、yとF2-1(F1(x))との違いが小さくなるため、応答推定モデルによる推定の精度が向上する。
【0062】
ただし必ずしも逆関数F2-1が実行される必要は無い。例えば、予め複数の応答集合が用意された状態で順方向選択処理が実行されてもよい。順方向選択処理では、各応答集合に対して、学習済みの第1応答側関連性推定モデルと学習済みの第2応答側関連性推定モデルとが実行される。学習済みの第1応答側関連性推定モデルと学習済みの第2応答側関連性推定モデルとの実行により、応答集合ごとに第2応答側関連性情報が得られる。順方向選択処理では、入力された発話集合に対して学習済みの第1発話側関連性推定モデルと学習済みの第1発話側関連性推定モデルとが実行される。学習済みの第1発話側関連性推定モデルと学習済みの第1発話側関連性推定モデルとの実行により、第2発話側関連性情報が得られる。
【0063】
順方向選択処理では、得られた第2発話側関連性情報と、応答集合ごとに得られた各第2応答側関連性情報との比較が行われ、第2発話側関連性情報との違いが最も小さい第2応答側関連性情報を与える応答集合が、応答推定モデルの推定結果として得られる。このように順方向選択処理は、学習済みの第2構築モデルを用いて応答を推定する処理である。以下、応答推定モデルが順方向選択処理を実行する場合を例に、説明を行う。
【0064】
なお、関数F1(x)には、学習済みの第1構築モデルが得た第1発話関連性情報が含まれるので、応答推定モデルの実行時には、学習済みの第1構築モデルに含まれる学習済みの第1発話側関連性推定モデルが実行される。
【0065】
ところで一般に、発話者と応答者との間のやりとりにおいては発話者と応答者との間の感情が近いほど自然なやりとりが成立する。そのため、第1発話関連性情報と第1応答関連性情報との間の違いを小さくする学習は、発話者と応答者とについて推定した感情の違いを小さくする学習である。したがって、このような学習で得られた学習済みの第1構築モデルは、より自然なやりとりにおける第1発話関連性情報と第1応答関連性情報とを推定する。
【0066】
したがって、学習済みの第1構築モデルが得る第1発明関連性情報と第1応答関連性情報とは、より自然なやりとりであることを示す情報が含まれている。そのため、第2構築モデル更新規則にしたがう学習は、より自然なやりとりであるという条件の下にF1(x)とF2(y)との違いを小さくする学習である。
【0067】
そのため、第2構築モデル更新規則にしたがって得られた学習済みの第2構築モデルを用いて、順方向選択処理を実行する応答推定モデルは、より自然な応答を推定することができる。応答推定モデルを利用するユーザにとって応答推定モデルによる応答の推定の精度が高いとは、より自然な応答であるというユーザの期待に応える応答を応答推定モデルが推定することである。したがって第2構築モデル更新規則にしたがって第2構築モデルの学習を行うことにより、応答推定モデルによる応答の推定の精度が高まる。
【0068】
<推定装置2について>
推定装置2は、応答推定モデルを実行する。応答推定モデルは、発話者の発話に対する応答者の応答を、発話者の発話に関する情報に基づき推定する数理モデルである。応答推定モデルは、例えば順方向選択処理、を実行することで、応答者の応答を推定する数理モデルである。したがって、順方向選択処理は、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、発話集合に基づき、応答を推定する処理である。
【0069】
<第1構築モデルと第2構築モデルとのより数学的な説明>
図4は、実施形態における第1構築モデル及び第2構築モデルのより具体的な一例を説明する説明図である。図4におけるTはテキストデータを表し、Aは音声データを表し、Vは映像データを表す。テキストTは、具体的には、最大長Nの単語トークン列T={w、w、・・・、w}である。テキストTは、発話テキストデータ又は応答テキストデータである。wは、N番目の単語トークンを意味する。
【0070】
音声データAは、発話音声データ又は応答音声データである。音声データAは、具体的には、A={a、a、・・・、a}である。映像データVは、発話映像データ又は応答映像データである。映像データVは、具体的には、V={v、v、・・・、v}である。
【0071】
第1構築モデル及び第2構築モデルにおいて発話テキストデータはBERTに入力される。その結果、BERTの最終層で得られる単語トークンに対する特徴表現X={e{cls}、e、e、・・・、e}が得られる。応答テキストデータはBERTに入力される。その結果、BERTの最終層で得られる単語トークンに対する特徴表現Yが得られる。
【0072】
音声データや映像データは、COVAREP(参考文献1参照)やFacet(参考文献2参照)等の特徴表現を得る技術により、特徴ベクトルの系列に変換される。さらに、音声データや映像データは、P2FA等の長さを単語長に合わせる技術により、長さが単語長に合うように変換される。
【0073】
参考文献1:Gilles Degottex, John Kane, Thomas Drugman, Tuomo Raitio, Stefan Scherer, “COVAREP - A collaborative voice analysis repository for speech technologies”, In Proc. ICASSP 14, pp. 960 - 964 (2014)
参考文献2: Sabrina Stockli, Michael - Schulte Mecklenbeck , Stefan Borer, Andrea C. Samson, ”Facial expression analysis with AFFDEX and FACET: A validation study”, Behavior Research Methods, pp.1446 - 1460 (2018)
【0074】
例えばA={a、a、・・・、a}が発話音声データである場合、発話音声データは、テキストの特徴表現Xと長さを揃えるためa{cls}として零ベクトルが先頭に加えられることで、X={a{cls}、a、a、・・・、a}に変換される。
【0075】
また、例えばV={v、v、・・・、v}が発話映像データである場合、発話映像データは、テキストの特徴表現Xと長さを揃えるためv{cls}として零ベクトルが先頭に加えられることで、X={v{cls}、v、v、・・・、v}に変換される。
【0076】
例えばA={a、a、・・・、a}が応答音声データである場合、応答音声データは、テキストの特徴表現Yと長さを揃えるためa{cls}として零ベクトルが先頭に加えられることで、Yに変換される。
【0077】
例えばV={v、v、・・・、v}が応答映像データである場合、応答映像データは、テキストの特徴表現Yと長さを揃えるためv{cls}として零ベクトルが先頭に加えられることで、Yに変換される。
【0078】
第1構築モデル及び第2構築モデルにおいて、データX、データX、データX、データY、データY及びデータYは、整形される。整形の処理を以下で説明する。
【0079】
以下、データX、データX、データXの組に対する整形を説明するが、データY、データY、データYの組に対する整形についても、シンボルをXからYに代えれば同様である。
【0080】
整形の処理では、畳み込み演算を用いて各モダリティの次元数が揃えられる。これは以下の式(1)で表される。
【0081】
【数1】
【0082】
{T、A、V}は畳み込みのカーネルサイズを表す。また以下の式(2)の変換を行うことで、学習の過程でX’に比べてX’又はX’のドット積が大きくなり過ぎることの抑制が可能である。図4の例は、整形の処理において式(2)の変換が行われる例である。
【0083】
【数2】
【0084】
発話テキストデータ、発話音声データ及び発話映像データをそれぞれデータX’’、データX’’、データX’’に変換する処理が、発話特徴系列取得処理の一例である。また、応答テキストデータ、応答音声データ及び応答映像データをそれぞれデータY’’、データY’’、データY’’に変換する処理が、応答特徴系列取得処理の一例である。
【0085】
第1構築モデル及び第2構築モデルでは整形の次に、モダリティX’’、モダリティX’’、モダリティX’’に対するMasked Multimodal Attentionの処理が実行される。モダリティX’’、モダリティX’’、モダリティX’’に対するMasked Multimodal Attentionの処理は、モダリティX’’、モダリティX’’、モダリティX’’に対する重み付け和をSourceとし特徴表現XをTargetとしたSource-Target Attentionを実行する処理である。モダリティX’’、モダリティX’’、モダリティX’’に対するMasked Multimodal Attentionの実行の次に、残差結合とレイヤーの正規化とを行いマルチモーダルAttention行列XAttを得る処理が実行される。
【0086】
このことは、モダリティY’’、モダリティY’’、モダリティY’’についても同様である。すなわち、モダリティY’’、モダリティY’’、モダリティY’’に対するMasked Multimodal Attentionの処理が実行され、次に残差結合とレイヤーの正規化とを行いマルチモーダルAttention行列YAttを得る処理が実行される。モダリティY’’、モダリティY’’、モダリティY’’に対するMasked Multimodal Attentionの処理は、モダリティY’’、モダリティY’’、モダリティY’’に対する重み付け和をSourceとし特徴表現YをTargetとしたSource-Target Attentionを実行する処理である。
【0087】
データX’’、データX’’、データX’’の組からデータXAttを得る処理が第1発話側関連性取得処理の一例である。データY’’、データY’’、データY’’の組からデータYAttを得る処理が第1応答側関連性取得処理の一例である。
【0088】
第1構築モデルでは次に、データXAttとデータYAttとを用いて発話者及び応答者の感情を推定する処理が実行される。図4における“(1)感情予測”は、データXAttとデータYAttとを用いて、発話者及び応答者の感情を推定する処理の実行を意味する。
【0089】
データXAttとデータYAttとを用いて発話者及び応答者の感情を推定する処理は、例えば、データXAttとデータYAttとを用いて発話者及び応答者の感情を推定する数理モデルを実行する処理である。このような場合、データXAttとデータYAttとを用いて発話者及び応答者の感情を推定する数理モデルは、感情推定モデルの一例である。このような場合、データXAttとデータYAttとを用いて発話者及び応答者の感情を推定する数理モデルは、第1構築モデルの学習により更新される。学習に用いられる損失関数が感情違いの一例であり、例えば以下の式(3)の損失関数である。
【0090】
【数3】
【0091】
kは各発話と応答の指数を意味する。mは発話と応答の組合せ数(バッチサイズ)を意味する。o は、正解組データに含まれる情報である発話者感情正解情報であってk番目の発話に対する発話者感情正解情報を意味する。s は、感情推定モデルによる推定された発話者の感情を示す情報であってk番目の発話に対する感情を示す情報を意味する。o は、正解組データに含まれる情報である応答者感情正解情報であってk番目の発話に対する応答者感情正解情報を意味する。s は、感情推定モデルによる推定された応答者の感情を示す情報であってk番目の発話に対する感情を示す情報を意味する。
【0092】
第2構築モデルでは、第1構築モデルの取得したデータXATTをSourceとし、第2構築モデルにおいて得られたデータXATT(以下「データX’Att」という。)をTargetとするSource-Target Attention(以下「発話副処理」という。)が実行される。第2構築モデルでは、発話副処理の結果に対して、第2構築モデルで得られた特徴表現Xを用いた、残差結合とレイヤーの正規化との処理が実行される。
【0093】
図4における紙面左側に記載の“Add&Norm2”の処理は、発話副処理の結果に対する処理であって、第2構築モデルで得られた特徴表現Xを用いた残差結合とレイヤーの正規化との処理である。残差結合とレイヤーの正規化との処理の次に、残差結合とレイヤーの正規化との処理の結果に対するmaxpoolの処理が実行され、データX’’ATTが得られる。このように、データX’AttからデータX’’ATTを得る処理が、第2発話側関連性取得処理の一例である。
【0094】
第2構築モデルでは、第1構築モデルの取得したデータYATTをSourceとし、第2構築モデルにおいて得られたデータYATT(以下「データY’Att」という。)をTargetとするSource-Target Attention(以下「応答副処理」という。)が実行される。第2構築モデルでは、応答副処理の結果に対して、第2構築モデルで得られた特徴表現Yを用いた、残差結合とレイヤーの正規化との処理が実行される。
【0095】
図4における紙面右側に記載の“Add&Norm2”の処理は、応答副処理の結果に対する処理であって、第2構築モデルで得られた特徴表現Yを用いた残差結合とレイヤーの正規化との処理である。残差結合とレイヤーの正規化との処理の次に、残差結合とレイヤーの正規化との処理の結果に対するmaxpoolの処理が実行され、データY’’ATTが得られる。このように、データY’AttからデータY’’ATTを得る処理が、第2応答側関連性取得処理の一例である。
【0096】
なお、X’’ATTは、第2発話側関連性取得処理の実行の結果の一例であり、Y’’ATTは、第2応答側関連性取得処理の実行の結果の一例である。すなわち、X’’ATTは、第2発話側関連性情報の一例であり、Y’’ATTは、第2応答側関連性情報の一例である。
【0097】
このような場合、第2構築モデル更新規則は、例えば以下の式(4)で表される損失関数の値を小さくするように第2構築モデルを更新する、という規則であってもよい。
【0098】
【数4】
【0099】
’’ATTは正解応答を表し、Y’’ATTは全正解候補からランダムに選択されるネガティブサンプルを表す。なお、Y’’ATTはY’’ATTの一部であって学習時に正解応答から得られる正解応答Attentionである。なお、Y’’ATTはY’’ATTの一部であって学習時にネガティブサンプルから得られるネガティブサンプルのAttentionである。Mは、マージンパラメータを表す。
【0100】
<実験結果>
図5は、実施形態における応答推定モデルによる推定の精度を検証した実験の結果の一例を示す図である。実験では比較対象の数理モデルとして、図5に示す“比較手法1”と、“比較手法2”とが用いられた。“比較手法1”は、図4における“(1)感情予測”と“Source-Target Attention”とを行わず、第2構築モデルの学習のみを行って得られた学習済みの数理モデルである。なお、図4における“Source-Target-Attention”とは、図4における“Add&Norm2”の処理の直前で実行される”Source-Target Attention”の処理を意味する。“比較手法2”は、図4における“Source-Target Attention”を行わず、以下の式(5)で表される損失関数を用いて第1構築モデルと第2構築モデルとを同時に学習する方法で得られた学習済みの数理モデルである。
【0101】
【数5】
【0102】
図5に示す“SRSP”は、図4で説明した応答推定モデルを用いて応答を推定する数理モデルである。実験における各数理モデルの学習時のエポック数は20であった。“SRSP”においては、前半10エポックで第1構築モデルの学習が行われ、後半10エポックで第2構築モデルの学習が行われた。検証では、標準的な発話応答の評価尺度であるRecall_100@1が指標として用いられた。Recall_100@1は、指定された発話に対する応答候補が100個与えられた際に、候補の中にある正しい応答を選択できるか否かを示す。
【0103】
実験で用いられた学習データは、テキスト、音声及び映像が揃っている英語のデータセットであるCMU-MOSEIが用いられた。テキストは日本語に翻訳されたものが用いられた。実験では、連続した発話を、発話と応答の組み合わせと見なし、それぞれが発話と応答のデータセットとして用いられた。感情の推定に際しては、CMU-MOSEIの-3.0~3.0で表現されるセンチメントの感情ラベルが用いられた。
【0104】
図5は、実験を5回試行した結果を示す。図5は、“SRSP”によるRecall_100@1の数値の方が“比較手法1”よりも高いことを示す。この結果は、学習をする上で感情予測と発話応答の学習を段階的に分けた方が、より高い精度で感情情報を発話応答に組み込むことができることを示す。図5は、“比較手法1”よりも“比較手法2”の方がRecall_100@1の数値が高いことを示す。この結果は、感情の推定をすることは応答の精度向上に寄与することを示す。
【0105】
<ハードウェアについて>
図6は、実施形態における学習装置1のハードウェア構成の一例を示す図である。学習装置1は、バスで接続されたCPU(Central Processing Unit)等のプロセッサ91とメモリ92とを備える制御部11を備え、プログラムを実行する。学習装置1は、プログラムの実行によって制御部11、入力部12、通信部13、記憶部14及び出力部15を備える装置として機能する。
【0106】
より具体的には、プロセッサ91が記憶部14に記憶されているプログラムを読み出し、読み出したプログラムをメモリ92に記憶させる。プロセッサ91が、メモリ92に記憶させたプログラムを実行することによって、学習装置1は、制御部11、入力部12、通信部13、記憶部14及び出力部15を備える装置として機能する。
【0107】
制御部11は、学習装置1が備える各種機能部の動作を制御する。制御部11は、例えば第1構築モデル及び第2構築モデルの学習を行う。制御部11は、例えば出力部15の動作を制御する。制御部11は、例えば第1構築モデル及び第2構築モデルの学習により生じた各種情報を記憶部14に記録する。
【0108】
入力部12は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。入力部12は、これらの入力装置を学習装置1に接続するインタフェースとして構成されてもよい。入力部12は、学習装置1に対する各種情報の入力を受け付ける。
【0109】
入力部12には、例えば、発話テキストデータ、発話音声データ、発話映像データ、応答テキストデータ、応答音声データ及び応答映像データの組(以下「解析対象データ」という。)が入力される。解析対象データは、発話集合と応答集合との集合である。また入力部12には、発話者感情正解情報と応答者感情正解情報との組(すなわち正解組データ)が入力される。
【0110】
通信部13は、学習装置1を外部装置に接続するための通信インタフェースを含んで構成される。通信部13は、有線又は無線を介して外部装置と通信する。外部装置は、例えば解析対象データの送信元の装置である。通信部13は、解析対象データの送信元の装置との通信によって解析対象データを取得する。外部装置は、例えば正解組データの送信元の装置である。通信部13は、正解組データの送信元の装置との通信によって正解組データを取得する。外部装置は、例えば推定装置2である。
【0111】
記憶部14は、磁気ハードディスク装置や半導体記憶装置などのコンピュータ読み出し可能な記憶媒体装置を用いて構成される。記憶部14は学習装置1に関する各種情報を記憶する。記憶部14は、例えば入力部12又は通信部13を介して入力された情報を記憶する。記憶部14は、例えば第1構築モデル及び第2構築モデルの学習により生じた各種情報を記憶する。記憶部14は、予め第1構築モデル及び第2構築モデルを記憶する。なお数理モデルを記憶するとは数理モデルを記述するコンピュータプログラムを記憶することを意味する。記憶部14は、得られた学習済みの第1構築モデルと学習済みの第2構築モデルとを記憶してもよい。
【0112】
出力部15は、各種情報を出力する。出力部15は、例えばCRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等の表示装置を含んで構成される。出力部15は、これらの表示装置を学習装置1に接続するインタフェースとして構成されてもよい。出力部15は、例えば入力部12に入力された情報を出力する。出力部15は、例えば第1構築モデル及び第2構築モデルの実行の結果を表示してもよい。
【0113】
図7は、実施形態における学習装置1の備える制御部11の構成の一例を示す図である。制御部11は、データ取得部110、学習部120、記憶制御部130、通信制御部140及び出力制御部150を備える。
【0114】
データ取得部110は、解析用データ及び正解組データを取得する。
【0115】
学習部120は、第1構築部121と、第2構築部122とを備える。第1構築部121は、第1終了条件が満たされるまで、第1構築モデルの学習を行う。第1構築部121は、第1構築モデル実行部211と、第1構築モデル更新部212と、を備える。
【0116】
第1構築モデル実行部211は、第1発話側関連性推定モデル実行部213と、第1応答側関連性推定モデル実行部214と、感情推定部215と、を備える。
【0117】
第1発話側関連性推定モデル実行部213は、データ取得部110の得た解析対象データに対して第1発話側関連性推定モデルを実行し、第1発話関連性情報を得る。第1応答側関連性推定モデル実行部214は、データ取得部110の得た解析対象データに対して第1応答側関連性推定モデルを実行し、第1応答関連性情報を得る。感情推定部215は、感情推定モデルを実行することで、第1発話関連性情報と第1応答関連性情報とに基づいて発話者及び応答者の感情を示す情報を推定する。すなわち、第1構築モデル実行部211は、第1構築モデルを実行する。
【0118】
第1構築モデル更新部212は、第1構築モデル更新処理を実行する。また、第1構築モデル更新部212は、第1終了条件が満たされたか否かを判定する。
【0119】
第2構築部122は、第2終了条件が満たされるまで第2構築モデルの学習を行う。第2構築部122は、第2構築モデル実行部221と、第2構築モデル更新部222と、学習済み第1構築モデル実行部223と、を備える。
【0120】
第2構築モデル実行部221は、第2発話側関連性推定モデル実行部224と、第2応答側関連性推定モデル実行部225と、を備える。第2発話側関連性推定モデル実行部224は、データ取得部110の得た解析対象データに対して第2発話側関連性推定モデルを実行し、第2発話関連性情報を得る。第2応答側関連性推定モデル実行部225は、第2応答側関連性推定モデルを実行し、第2応答関連性情報を取得する。すなわち、第2構築モデル実行部221は、第2構築モデルを実行する。
【0121】
第2構築モデル更新部222は、第2構築モデル更新処理を実行する。また、第2構築モデル更新部222は、第2終了条件が満たされたか否かを判定する。
【0122】
学習済み第1構築モデル実行部223は、学習済みの第1構築モデルに含まれる第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルを実行する。また、学習済み第1構築モデル実行部223は、学習済みの第1構築モデルに含まれる第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルを実行する。
【0123】
記憶制御部130は、記憶部14に各種情報を記録する。通信制御部140は通信部13の動作を制御する。出力制御部150は、出力部15の動作を制御する。
【0124】
図8は、実施形態における学習装置1が実行する処理であって第1構築モデルの学習に関する処理の流れの一例を示すフローチャートである。データ取得部110が解析対象データと正解組データとの組を取得する(ステップS101)。次に、第1構築モデル実行部211がステップS101で得られた解析対象データの1つに対して第1構築モデルを実行する(ステップS102)。次に、第1構築モデル更新部212が第1構築モデル更新処理を実行し、ステップS102の実行の結果と、ステップS101で得られた正解組データと、に基づき、第1構築モデルを更新する(ステップS103)。次に第1構築モデル更新部212は、第1終了条件が満たされたか否かを判定する(ステップS104)。第1終了条件が満たされない場合(ステップS104:NO)、ステップS101の処理に戻る。一方、第1終了条件が満たされる場合(ステップS104:YES)、処理が終了する。第1終了条件が満たされた時点の第1構築モデルが学習済みの第1構築モデルである。
【0125】
ステップS102からステップS104の処理は、第1構築部121が実行する処理である。したがって、例えば図8が示すようにして、第1構築部121は、第1終了条件が満たされるまで第1構築モデルの学習を行う。
【0126】
図9は、実施形態における学習装置1が実行する処理であって第2構築モデルの学習に関する処理の流れの一例を示すフローチャートである。第2構築モデルの学習においては、学習済みの第1発話側関連性推定モデルと、学習済みの第1応答側関連性推定モデルと、が実行される。
【0127】
データ取得部110が解析対象データを取得する(ステップS201)。次に、学習済み第1構築モデル実行部223が、ステップS201で得られた解析対象データに対して学習済みの第1発話側関連性推定モデルを実行し、第1発話関連性情報を得る(ステップS202)。次に、学習済み第1構築モデル実行部223が、データ取得部110の得た解析対象データに対して学習済みの第1応答側関連性推定モデルを実行し、第1応答関連性情報を得る(ステップS203)。
【0128】
次に第2構築モデル実行部221が、ステップS202で得られた第1発話関連性情報と、ステップS203で得られた第1応答関連性情報と、を用いた第2構築モデルを、ステップS201で得られた解析対象データに対して実行する(ステップS204)。次に、第2構築モデル更新部222が第2構築モデル更新処理を実行し、ステップS204の実行の結果に基づき、第2構築モデルを更新する(ステップS205)。
【0129】
次に第2構築モデル更新部222は、第2終了条件が満たされたか否かを判定する(ステップS206)。第2終了条件が満たされない場合(ステップS206:NO)、ステップS201の処理に戻る。一方、第2終了条件が満たされる場合(ステップS206:YES)、処理が終了する。第2終了条件が満たされた時点の第2構築モデルが学習済みの第2構築モデルである。
【0130】
ステップS202からステップS206の処理は、第2構築部122が実行する処理である。したがって、例えば図9が示すようにして、第2構築部122は、第2終了条件が満たされるまで第2構築モデルの学習を行う。なお、ステップS202及びステップS203の処理は、必ずしも第2構築部122が実行する必要は無い。例えば、予め他の装置や機能部によって学習済みの第1発話側関連性推定モデルと学習済みの第1応答側関連性推定モデルとが実行され、第1発話関連性情報及び第1応答関連性情報が取得されていてもよい。このような場合、ステップS201で入力される解析対象データは、学習済みの第1発話側関連性推定モデルと学習済みの第1応答側関連性推定モデルとの実行対象の解析対象データである。
【0131】
上述したように応答推定モデルは、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、応答を推定する数理モデルである。したがって、例えば図8及び図9の例が示す処理によって得られた学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、に基づいて応答推定モデルが得られる。
【0132】
応答推定モデルは、推定装置2による推定対象の応答の推定に用いられる。応答推定モデルは推定装置2が実行可能な状態になれば、どのような方法で推定装置2の制御下に置かれてもよい。
【0133】
したがって、応答推定モデルは例えば、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて制御部11が得た後、学習装置1から推定装置2に送信されてもよい。
【0134】
応答推定モデルは例えば、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルとが学習装置1から推定装置2に送信された後、受信したそれらのモデルを用いて推定装置2が得てもよい。
【0135】
応答推定モデルは例えば、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、学習装置1でも推定装置2でもない他の装置が得てもよい。このような場合、得られた応答推定モデルが推定装置2に送信されることで、応答推定モデルは推定装置2の制御下に置かれる。
【0136】
図10は、実施形態における推定装置2のハードウェア構成の一例を示す図である。推定装置2は、バスで接続されたCPU等のプロセッサ93とメモリ94とを備える制御部21を備え、プログラムを実行する。推定装置2は、プログラムの実行によって制御部21、入力部22、通信部23、記憶部24及び出力部25を備える装置として機能する。
【0137】
より具体的には、プロセッサ93が記憶部24に記憶されているプログラムを読み出し、読み出したプログラムをメモリ94に記憶させる。プロセッサ93が、メモリ94に記憶させたプログラムを実行することによって、推定装置2は、制御部21、入力部22、通信部23、記憶部24及び出力部25を備える装置として機能する。
【0138】
制御部21は、推定装置2が備える各種機能部の動作を制御する。制御部21は、例えば応答推定モデルを実行する。制御部21は、例えば出力部25の動作を制御する。制御部21は、例えば応答推定モデルの実行により生じた各種情報を記憶部24に記録する。
【0139】
入力部22は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。入力部22は、これらの入力装置を推定装置2に接続するインタフェースとして構成されてもよい。入力部22は、推定装置2に対する各種情報の入力を受け付ける。
【0140】
通信部23は、推定装置2を外部装置に接続するための通信インタフェースを含んで構成される。通信部23は、有線又は無線を介して外部装置と通信する。外部装置は、例えば、発話集合の送信元の装置である。通信部23は、発話集合の送信元の装置との通信によって、発話集合を取得する。外部装置は、例えば学習装置1である。なお、発話集合は、必ずしも通信部23に入力される必要は無く、入力部22に入力されてもよい。
【0141】
記憶部24は、磁気ハードディスク装置や半導体記憶装置などのコンピュータ読み出し可能な記憶媒体装置を用いて構成される。記憶部24は推定装置2に関する各種情報を記憶する。記憶部24は、例えば入力部22又は通信部23を介して入力された情報を記憶する。記憶部24は、例えば応答推定モデルの実行により生じた各種情報を記憶する。記憶部24は、応答推定モデルを予め記憶する。記憶部24は、複数の応答集合を予め記憶する。
【0142】
出力部25は、各種情報を出力する。出力部25は、例えばCRTディスプレイや液晶ディスプレイ、有機ELディスプレイ等の表示装置を含んで構成される。出力部25は、これらの表示装置を推定装置2に接続するインタフェースとして構成されてもよい。出力部25は、例えば入力部22に入力された情報を出力する。出力部25は、例えば応答推定モデルの実行の結果を表示してもよい。
【0143】
図11は、実施形態における推定装置2の備える制御部21の構成の一例を示す図である。制御部21は、対象取得部210、推定部220、記憶制御部230、通信制御部240及び出力制御部250を備える。対象取得部210は、入力部22又は通信部23に入力された発話集合を取得する。
【0144】
推定部220は、対象取得部210の取得した発話集合に対して応答推定モデルを実行する。推定部220は、応答推定モデルの実行により、対象取得部210の取得した発話集合が示す発話に対応する応答を推定する。
【0145】
記憶制御部230は、記憶部24に各種情報を記録する。通信制御部240は通信部23の動作を制御する。出力制御部250は、出力部25の動作を制御する。
【0146】
図12は、実施形態における推定装置2が実行する処理の流れの一例を示すフローチャートである。対象取得部210が、入力部22又は通信部23に入力された発話集合を取得する(ステップS301)。次に推定部220が、応答推定モデルを実行することで、対象取得部210の取得した発話集合が示す発話に対応する応答を推定する(ステップS302)。次に出力制御部250が出力部25の動作を制御して、ステップS302で推定された応答を出力部25に出力させる(ステップS303)。
【0147】
図13は、実施形態における応答推定モデルで実行される処理の流れの一例を示すフローチャートである。発話集合に対する学習済みの第1発話側関連性推定モデルが実行される(ステップS401)。これにより、第1発話関連性情報が得られる。次にステップS401と同じ発話集合に対して、ステップS401で得られた第1発話関連性情報を用いた学習済みの第2発話側関連性推定モデルが実行される(ステップS402)。これにより、第2発話関連性情報が得られる。次に、予め記憶部24に記憶済みの各応答集合に対して、学習済みの第1応答側関連性推定モデル及び第2応答側関連性推定モデルが実行される(ステップS403)。これにより、応答集合ごとに第2応答関連性情報が得られる。次に、得られた第2応答関連性情報のうちステップS402で得られた第2発話関連性情報との違いが最も小さい第2応答関連性情報を与える応答集合が、応答推定モデルの推定結果の応答として得られる(ステップS404)。
【0148】
このように構成された実施形態における学習装置1は、応答推定モデルを得るための数理モデルである第1構築モデル及び第2構築モデルの学習を行う。そのため学習装置1は、上述の<第2構築モデルと応答推定モデルとの関係と、第2構築モデルの更新の規則の技術的意義について>で説明したように、応答の推定の精度を向上させることができる。
【0149】
また、このように構成された実施形態における推定装置2は、学習装置1の得た学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルとを用いる応答推定モデルによって応答を推定する。そのため、推定装置2は応答の推定の精度を向上させることができる。
【0150】
(変形例)
<Masked Multimodal Attentionの処理と残差結合とレイヤーの正規化との一連の処理の詳細の例>
上述した、Masked Multimodal Attentionの処理と残差結合とレイヤーの正規化との一連の処理(以下「マルチモーダル統合処理」という。)のより詳細な一例を説明する。マルチモーダル統合処理は、以下で説明するモダリティ活性化処理を、実行対象を変えながら複数回実行する処理である。例えば、系列A~Cの3つの系列が存在する場合、マルチモーダル統合処理では、系列Aと系列Bとに対するモダリティ活性化処理が実行され系列Dが得られる。次に系列Dと系列Cとに対するモダリティ活性化処理の実行により系列Eが得られる。このような場合、系列Eが、マルチモーダル統合処理の結果である。それではモダリティ活性化処理を説明する。
【0151】
モダリティ活性化処理は、2種類の系列を統合する処理である。モダリティ活性化処理は、例えば2種類の系列を、Source-Target Attentionを用いて統合する処理である。学習が行われた場合、モダリティ活性化処理による処理の内容は更新される。統合とは、複数の系列間の関連性を示す系列を取得する処理である。
【0152】
以下説明の簡単のため、モダリティ活性化処理の統合の対象の系列の一方を適用元モダリティSと呼称し、他方を適用先モダリティTと呼称する。適用元モダリティSは、以下の式(6)で表される。
【0153】
【数6】
【0154】
適用先モダリティTは、以下の式(7)で表される系列である。
【0155】
【数7】
【0156】
nは1以上の整数である。ベクトルsは、系列Sの1つ1つのサンプルであり、適用元モダリティの各サンプルの特徴ベクトルである。ベクトルtは、系列Tの1つ1つのサンプルであり、適用先モダリティの各サンプルの特徴ベクトルである。
【0157】
以下、ベクトルsの次元数をfと表現する。また、以下、ベクトルtの次元数をfと表現する。系列Sのサンプルはいずれも同一の次元数fである。系列Tのサンプルはいずれも同一の次元数fである。
【0158】
モダリティ活性化処理では、系列Sと系列Tとを特徴ベクトルの次元で結合する処理が行われる。モダリティ活性化処理では例えばまず、以下の式(8)で表される系列が、系列Sと系列Tとに基づいて得られる。式(8)の処理は、系列Sと系列Tとを連結する処理である。連結とは数値解析の分野においてベクトルや行列等のテンソルに対して定義される連結の意味である。
【0159】
【数8】
【0160】
系列S´の次元は、n×(f+f)である。このように、モダリティ活性化処理では、適用元モダリティと、適用先モダリティとの連結が行われる。
【0161】
モダリティ活性化処理では次に、系列S´を全結合層(FNN;Feedforward Neural Network)により、n×f次元の系列Kに変換する処理が行われる。系列S´を系列Kに変換する際には、活性化関数TanhExpを用いた変換が行われる。なお、TanhExpは、双曲線正接関数tanhと自然対数を底に取った指数関数expとの合成関数である。活性化関数TanhExpを用いた系列S´から系列Kへの変換は、具体的には以下の式(9)で表される。
【0162】
【数9】
【0163】
は全結合層における重みを表し、Bはバイアス項を表す。WもBもどちらも学習により更新されるパラメータである。
【0164】
モダリティ活性化処理では次に、系列Tと系列Kとの間の照応関係を示す情報を得る処理が実行される。系列Tと系列Kとの間の照応関係を示す情報Q´を得る処理の一例は、系列TをQueryとし、系列KをKey及びValueとするSource-Target Attentionである。Source-Target Attentionの実行結果の系列が、情報Q´の一例である。情報Q´は、例えば以下の式(10)で表される。
【0165】
【数10】
【0166】
写像“attn”は、Source-Target Attentionの処理を表す。写像“attn”の第1引数はQueryとして用いられる情報を表す。写像“attn”の第2引数はKeyとして用いられる情報を表す。写像“attn”の第3引数はValueとして用いられる情報を表す。
【0167】
モダリティ活性化処理では次に、系列Q´に対して系列Tとの間の重み付き残差接続が実行される。系列Q´に対して系列Tとの間の重み付き残差接続は、より具体的には、系列Q´を表すベクトルのL2ノルムと系列Tを表すベクトルのL2ノルムとに応じた重みbが乗算された系列Q´、に対して系列Tを残差接続する処理である。重みbは、例えば以下の式(11)で表される重みである。
【0168】
【数11】
【0169】
は重みの各項における最小値でありハイパーパラメータである。以下、系列Q´に対して系列Tとの間の重み付き残差接続の実行結果の系列を系列Fという。系列Fは、例えば以下の式(12)で表される。
【0170】
【数12】
【0171】
系列Fが、適用元モダリティSと適用先モダリティTとに対するモダリティ活性化処理の結果である。
【0172】
なお、学習装置1は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、学習装置1が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。例えば第1構築モデル実行部211と第2構築モデル実行部221とは異なる装置に実装されてもよい。
【0173】
なお、推定装置2は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、推定装置2が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。
【0174】
なお、学習装置1と、推定装置2と、の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
【0175】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0176】
(付記1)
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、
前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、
前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、
を含む第1構築モデル、を実行する第1構築モデル実行部と、
前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、
を備え、
前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、
発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、
応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、
を含む第2構築モデル、を実行する第2構築モデル実行部と、
前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、
を備え、
前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、
を備える学習装置。
【0177】
(付記2)
前記第2発話側関連性推定モデルは第1発話側関連性推定モデルを含み、
前記第2発話関連性情報は、前記第2発話側関連性推定モデルが含む第1発話側関連性推定モデルが前記発話集合に基づいて推定した第1発話関連性情報と、前記学習済みの第1構築モデルが取得した前記第1発話関連性情報との間の関連性を示す情報である、
付記1に記載の学習装置。
【0178】
(付記3)
前記第2応答側関連性推定モデルは第1応答側関連性推定モデルを含み、
前記第2応答関連性情報は、前記第2応答側関連性推定モデルが含む第1応答側関連性推定モデルが前記応答集合に基づいて推定した第1応答関連性情報と、前記学習済みの第1構築モデルが取得した前記第1応答関連性情報との間の関連性を示す情報である、
付記1又は2に記載の学習装置。
【0179】
(付記4)
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得部と、
発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行部と、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新部と、を備え、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築部と、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行部と、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新部と、を備え、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築部と、を備える学習装置が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得部に入力された発話集合に基づき、応答を推定する、推定部と、
を備える推定装置。
【0180】
(付記5)
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、
前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、
前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、
を含む第1構築モデル、を実行する第1構築モデル実行ステップと、
前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、
を有し、
前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、
発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、
応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、
を含む第2構築モデル、を実行する第2構築モデル実行ステップと、
前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、
を有し、
前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、
を有する学習方法。
【0181】
(付記6)
発話者による発話時の言葉を示す文字列である発話テキストデータと、前記発話者による発話時の音声を示す発話音声データと、前記発話者による発話時の映像を示す発話映像データとの組である発話集合の入力を受け付ける対象取得ステップと、
発話集合に基づき、前記発話集合の含む系列間の関連性を示す情報である第1発話関連性情報を取得する第1発話側関連性推定モデルと、前記発話者の発話に応答する応答者の応答の言葉を示す文字列のデータである応答テキストデータと、前記応答者の応答の音声を示す応答音声データと、前記応答者の応答時の映像を示す応答映像データとの組である応答集合に基づき、前記応答集合の含む系列間の関連性を示す情報である第1応答関連性情報を取得する第1応答側関連性推定モデルと、前記第1発話関連性情報と前記第1応答関連性情報とに基づき前記発話者及び前記応答者の感情を示す情報を推定する感情推定モデルと、を含む第1構築モデル、を実行する第1構築モデル実行ステップと、前記感情推定モデルの推定の結果と正解データとの違いを小さくするように前記第1構築モデルを更新する第1構築モデル更新ステップと、を有し、前記第1構築モデルの学習に関する所定の終了条件である第1終了条件が満たされるまで、前記第1構築モデルの学習を行う第1構築ステップと、発話集合と前記第1終了条件が満たされた時点における前記第1発話側関連性推定モデルである学習済みの第1発話側関連性推定モデルが前記発話集合に基づいて取得した前記第1発話関連性情報との間の関連性を示す情報である第2発話関連性情報を取得する第2発話側関連性推定モデルと、応答集合と前記第1終了条件が満たされた時点における前記第1応答側関連性推定モデルである学習済みの第1応答側関連性推定モデルが前記応答集合に基づいて取得した前記第1応答関連性情報との間の関連性を示す情報である第2応答関連性情報を取得する第2応答側関連性推定モデルと、を含む第2構築モデル、を実行する第2構築モデル実行ステップと、前記第2発話関連性情報と前記第2応答関連性情報との間の違いを小さくするように前記第2構築モデルを更新する第2構築モデル更新ステップと、を有し、前記第2構築モデルの学習に関する所定の終了条件が満たされるまで前記第2構築モデルの学習を行う第2構築ステップと、を有する学習方法が得た、学習済みの第1発話側関連性推定モデルと、学習済みの第2発話側関連性推定モデルと、学習済みの第2応答側関連性推定モデルと、を用いて、前記対象取得ステップで入力された発話集合に基づき、応答を推定する、推定ステップと、
を有する推定方法。
【0182】
(付記7)
付記1から3のいずれか一つに記載の学習装置としてコンピュータを機能させるためのプログラム。
【0183】
(付記8)
付記4に記載の推定装置としてコンピュータを機能させるためのプログラム。
【符号の説明】
【0184】
1…学習装置、 2…推定装置、 11…制御部、 12…入力部、 13…通信部、 14…記憶部、 15…出力部、 110…データ取得部、 120…学習部、 121…第1構築部、 122…第2構築部、 211…第1構築モデル実行部、 212…第1構築モデル更新部、 213…第1発話側関連性推定モデル実行部、 214…第1応答側関連性推定モデル実行部、 215…感情推定部、 221…第2構築モデル実行部、 222…第2構築モデル更新部、 223…学習済み第1構築モデル実行部、 224…第2発話側関連性推定モデル実行部、 225…第2応答側関連性推定モデル実行部、 130…記憶制御部、 140…通信制御部、 150…出力制御部、 21…制御部、 22…入力部、 23…通信部、 24…記憶部、 25…出力部、 210…対象取得部、 220…推定部、 230…記憶制御部、 240…通信制御部、 250…出力制御部、 91…プロセッサ、 92…メモリ、 93…プロセッサ、 94…メモリ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13