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

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

▶ 株式会社国際電気通信基礎技術研究所の特許一覧

特許7603965分類器の訓練方法及び訓練装置、及びコンピュータプログラム
<>
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図1
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図2
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図3
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図4
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図5
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図6
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図7
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図8
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図9
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図10
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図11
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図12
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図13
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図14
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図15
  • 特許-分類器の訓練方法及び訓練装置、及びコンピュータプログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-13
(45)【発行日】2024-12-23
(54)【発明の名称】分類器の訓練方法及び訓練装置、及びコンピュータプログラム
(51)【国際特許分類】
   G06N 3/08 20230101AFI20241216BHJP
   G06N 20/00 20190101ALI20241216BHJP
   G10L 15/10 20060101ALI20241216BHJP
【FI】
G06N3/08
G06N20/00 130
G10L15/10 500N
【請求項の数】 11
(21)【出願番号】P 2020191499
(22)【出願日】2020-11-18
(65)【公開番号】P2022080435
(43)【公開日】2022-05-30
【審査請求日】2023-09-27
【新規性喪失の例外の表示】特許法第30条第2項適用 令和2年10月16日、ウェブサイトhttps://dl.acm.org/doi/abs/10.1145/3423327.3423669にて公開のMuSe’20:Proceedings of the 1st International on Multimodal Sentiment Analysis in Real-life Media Challenge and Workshopの予稿集に発表
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成31年度、国立研究開発法人科学技術振興機構、戦略的創造研究推進事業 総括実施型研究ERATO「石黒共生ヒューマンロボットインタラクションプロジェクト」協働研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】393031586
【氏名又は名称】株式会社国際電気通信基礎技術研究所
(74)【代理人】
【識別番号】100099933
【弁理士】
【氏名又は名称】清水 敏
(72)【発明者】
【氏名】フ ショウゼン
(72)【発明者】
【氏名】劉 超然
(72)【発明者】
【氏名】イシイ カルロス トシノリ
【審査官】多賀 実
(56)【参考文献】
【文献】国際公開第2014/069122(WO,A1)
【文献】特開2019-028839(JP,A)
【文献】特表2019-502988(JP,A)
【文献】LATIF, Siddique et al.,"Augmenting Generative Adversarial Networks for Speech Emotion Recognition",arXiv.org [online],2020年07月26日,pp. 1-5, [検索日 2024.11.26],インターネット:<URL:https://arxiv.org/pdf/2005.08447v3>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/08
G06N 20/00
G10L 15/10
(57)【特許請求の範囲】
【請求項1】
コンピュータが、所定の分布にしたがって入力からデータを生成するようにエンコーダを訓練するステップと、
コンピュータが、前記所定の分布からのサンプルのデコーダによるデコード結果と、第1の訓練用データに対する前記エンコーダの出力の、前記デコーダを用いたデコード結果とから生成されたデコーダ訓練用の新たなサンプルの、前記第1の訓練用データに対する誤差を最小化するように前記デコーダを訓練するステップと、
コンピュータが、前記所定の分布からのサンプルの前記デコーダによるデコード結果と、第2の訓練用データに対する前記エンコーダの出力の、前記デコーダを用いたデコード結果とから生成された分類器訓練用の新たなサンプルと、前記第2の訓練用データとを正しく分類する確率を最大化するように分類器を訓練し、かつ、前記分類器が誤って分類する確率を最大化するように前記エンコーダ及び前記デコーダを訓練するステップとを含み、
前記所定の分布からのサンプル及び前記第1の訓練用データの各々には、複数種類の教師ラベルのいずれかが割り当てられている、分類器の訓練方法。
【請求項2】
前記所定の分布、前記第1の訓練用データ及び前記第2の訓練用データの各々は、発話音声データを含み、前記複数種類の教師ラベルは、当該発話音声データの表す発話者の感情を示すラベルである、請求項1に記載の分類器の訓練方法。
【請求項3】
前記エンコーダを訓練するステップは、コンピュータが、前記所定の分布からのサンプルと、前記第1の訓練用データに対する前記エンコーダの出力とを所定の判別器が正しく判別する確率を最大化するように前記所定の判別器を訓練し、かつ前記所定の判別器が誤って判別する確率を最大化するよう前記エンコーダを訓練するステップを含む、請求項1又は請求項2に記載の分類器の訓練方法。
【請求項4】
前記デコーダを訓練するステップは、
コンピュータが、前記所定の分布からのサンプルを前記デコーダによりデコードして第1のデコード結果を得るステップと、
コンピュータが、前記第1の訓練用データに対する前記エンコーダの出力を前記デコーダによりデコードして第2のデコード結果を得るステップと、
コンピュータが、前記第1のデコード結果と前記第2のデコード結果との間で所定の演算を行うことにより前記分類器訓練用の新たなデコードサンプルを生成するステップと、
コンピュータが、前記分類器訓練用の新たなデコードサンプルと前記第1の訓練用データとの誤差が小さくなるように、誤差逆伝播法により前記デコーダのパラメータを更新するステップとを含む、請求項1から請求項3のいずれか1項に記載の分類器の訓練方法。
【請求項5】
前記デコーダを訓練するステップはさらに、コンピュータが、前記第1のデコード結果を得るステップと、前記第2のデコード結果を得るステップと、前記デコーダのパラメータを更新するステップとを所定の終了条件が成立するまで繰り返すステップを含む、請求項4に記載の分類器の訓練方法。
【請求項6】
前記新たなデコードサンプルを生成するステップは、コンピュータが、前記第1のデコード結果と前記第2のデコード結果との平均を算出することにより前記新たなデコードサンプルを生成するステップを含む、請求項4又は請求項5に記載の分類器の訓練方法。
【請求項7】
前記分類器を訓練するステップは、
コンピュータが、前記所定の分布からのサンプルを前記デコーダによりデコードして分類器訓練用の第1のデコード結果を得るステップと、
コンピュータが、前記第2の訓練用データに対する前記エンコーダの出力を前記デコーダによりデコードして分類器訓練用の第2のデコード結果を得るステップと、
コンピュータが、前記分類器訓練用の第1のデコード結果と前記分類器訓練用の第2のデコード結果との間で所定の演算を行うことにより前記分類器訓練用の新たなデコードサンプルを生成するステップと、
コンピュータが、前記第2の訓練用データ又は前記分類器訓練用の新たなデコードサンプルについて、前記第2の訓練用データか、前記分類器訓練用の新たなデコードサンプルかを前記分類器により分類して分類結果を得るステップと、
コンピュータが、前記分類結果と正しい分類との誤差を用いた誤差逆伝播法により、前記誤差が小さくなるように前記分類器のパラメータを更新するステップとを含む、請求項1から請求項6のいずれか1項に記載の分類器の訓練方法。
【請求項8】
前記分類器を訓練するステップはさらに、コンピュータが、前記分類器訓練用の第1のデコード結果を得るステップと、前記分類器訓練用の第2のデコード結果を得るステップと、前記分類器のパラメータを更新するステップとを所定の終了条件が成立するまで繰り返すステップを含む、請求項7に記載の分類器の訓練方法。
【請求項9】
前記分類器訓練用の新たなデコードサンプルを生成するステップは、コンピュータが、前記分類器訓練用の第1のデコード結果と前記分類器訓練用の第2のデコード結果との平均を算出することにより前記分類器訓練用の新たなデコードサンプルを生成するステップを含む、請求項7又は請求項8に記載の分類器の訓練方法。
【請求項10】
コンピュータを、請求項1から請求項9のいずれか1項に記載の訓練方法を実行するよう機能させる、コンピュータプログラム。
【請求項11】
所定の分布にしたがって入力からデータを生成するようにエンコーダを訓練するエンコーダ訓練手段と、
前記所定の分布からのサンプルのデコーダによるデコード結果と、第1の訓練用データに対する前記エンコーダの出力の、前記デコーダを用いたデコード結果とから生成されたデコーダ訓練用の新たなサンプルの、前記第1の訓練用データに対する誤差を最小化するように前記デコーダを訓練するデコーダ訓練手段と、
前記所定の分布からのサンプルの前記デコーダによるデコード結果と、第2の訓練用データに対する前記エンコーダの出力の、前記デコーダを用いたデコード結果とから生成された分類器訓練用の新たなサンプルと、前記第2の訓練用データとを正しく分類する確率を最大化するように分類器を訓練し、かつ、前記分類器が誤って分類する確率を最大化するように前記エンコーダ及び前記デコーダを訓練する分類器訓練手段とを含み、
前記所定の分布からのサンプル及び前記第1の訓練用データの各々には、複数種類の教師ラベルのいずれかが割り当てられている、分類器の訓練装置。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は音声等から話者の感情等の内的状況を分類するための分類器とその訓練方法及び訓練装置、そのためのコンピュータプログラム、並びに感情分類器に関する。
【背景技術】
【0002】
最近は、感情推定に関する研究が進みつつある。感情推定とは、人が他の人等とコミュニケーションを行っているときのその人の声、表情、身体動作、発話の内容等に基づいて人の内部状態を推定することである。人の感情を推定することで、例えば人と対話するエージェントの動作を制御したり、逆にエージェントの動作を制御することで相手にエージェントがどのような感情を抱いているかを伝達したりできる。
【0003】
現在では、こうした人の内部状態を推定するための技術として、ニューラルネットワーク等の機械学習を行うことが主流である。テキスト又はイメージ等の場合には、そうしたデータを大量に集め、学習のために分類しデータベース化することは比較的容易である。しかし音声の場合、そのようなデータを大量に集め、信頼性高く分類することは難しい。 従来は、例えば俳優等に特定の感情を表すような発話をするよう依頼し、そこから得られた音声を用いていた。しかしそのようにして意図的に感情を表現した発話は、日常的に見られるコミュニケーションでの表現より大げさで強すぎることが多い。そのため、そうした発話から得たデータを用いると、日常的なコミュニケーションに伴う感情の表現を正確に捉えられないという問題があった。したがって最近では、意図的に感情を表現した発話から得たデータではなく、日常的なコミュニケーションから得た音声を感情推定のための基礎的データとする研究者が多くなっている。
【0004】
しかし、このような日常的なコミュニケーションから得た音声について、話者の内部状態を他者が正確に分類することは極めて難しい。仮に正確に分かることがあったとしても、そのようなデータには偏りがあり、感情からどのような音声が生ずるかについての実際の分布の全体をカバーできるとは考えられない。そのため、そうしたデータを用いて例えば機械学習により感情推定のためのモデルを訓練したとしても、信頼性の高い推定を行うことは困難であるという問題がある。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2020-154332
【非特許文献】
【0006】
【文献】Alireza Makhzani, Jonathon Shlens, Navdeep Jaitly, Ian Goodfellow, and Brendan Frey. 2015. Adversarial Autoencoders. arXiv preprint arXiv:1511.05644 (2015).
【文献】Ian J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative Adversarial Nets. In Advances in Neural Information Processing Systems, pages 2672-2680, 2014.
【文献】Lukas Stappen, Alice Baird, Georgios Rizos, Panagiotis Tzirakis, Xinchen Du, Felix Hafner, Lea Schumann, Adria Mallol-Ragolta, Bjorn W Schuller, Iulia Lefter, et al. 2020. MuSe 2020-The First International Multimodal Sentiment Analysis in Real-life Media Challenge and Workshop. arXiv preprint arXiv:2004.14858 (2020).
【発明の概要】
【発明が解決しようとする課題】
【0007】
前掲の特許文献1には、音声の解析区間を設定し、解析区間に含まれる音声データの特徴量の変化するパターンを決定して、感情ごとに対応する特徴量の変化パターンごとに分類された音声データを教師データとして発話者の感情を推定する技術が開示されている。
【0008】
しかしこの特許文献1に開示の技術も発話データを大量に集めることが前提とされており、感情ごとに対応する特徴量の変化パターンを決定する必要がある。そのためには、発話時の話者の感情を正確に知る必要がある。しかし、学習のためのデータを多く集めるのが難しいことは前述したとおりである。データが不足すると、得られたモデルの信頼性が低くなるという問題がある。
【0009】
したがってこの発明は、音声に代表されるような、人間の内部状態を正確に知ることが難しいモダリティのデータについて、モデルの訓練を信頼性高く行えるようにすることを目的とする。
【課題を解決するための手段】
【0010】
本発明の第1の局面に係る分類器の訓練方法は、コンピュータが、所定の分布にしたがって入力からデータを生成するようにエンコーダを訓練するステップと、コンピュータが、所定の分布からのサンプルのデコーダによるデコード結果と、第1の訓練用データに対するエンコーダの出力の、デコーダを用いたデコード結果とから生成されたデコーダ訓練用の新たなサンプルの、第1の訓練用データに対する誤差を最小化するようにデコーダを訓練するステップと、コンピュータが、所定の分布からのサンプルのデコーダによるデコード結果と、第2の訓練用データに対するエンコーダの出力の、デコーダを用いたデコード結果とから生成された分類器訓練用の新たなサンプルと、第2の訓練用データとを正しく分類する確率を最大化するように分類器を訓練し、かつ、分類器が誤って分類する確率を最大化するようにエンコーダ及びデコーダを訓練するステップとを含み、所定の分布からのサンプル及び第1の訓練用データの各々には、複数種類の教師ラベルのいずれかが割り当てられている。
【0011】
好ましくは、所定の分布、第1の訓練用データ及び第2の訓練用データの各々は、発話音声データを含み、複数種類の教師ラベルは、当該発話音声データの表す発話者の感情を示すラベルである。
【0012】
より好ましくは、エンコーダを訓練するステップは、コンピュータが、所定の分布からのサンプルと、第1の訓練用データに対するエンコーダの出力とを所定の判別器が正しく判別する確率を最大化するように所定の判別器を訓練し、かつ所定の判別器が誤って判別する確率を最大化するようエンコーダを訓練するステップを含む。
【0013】
さらに好ましくは、デコーダを訓練するステップは、コンピュータが、所定の分布からのサンプルをデコーダによりデコードして第1のデコード結果を得るステップと、コンピュータが、第1の訓練用データに対するエンコーダの出力をデコーダによりデコードして第2のデコード結果を得るステップと、コンピュータが、第1のデコード結果と第2のデコード結果との間で所定の演算を行うことにより分類器訓練用の新たなデコードサンプルを生成するステップと、コンピュータが、分類器訓練用の新たなデコードサンプルと第1の訓練用データとの誤差が小さくなるように、誤差逆伝播法によりデコーダのパラメータを更新するステップとを含む。
【0014】
好ましくは、デコーダを訓練するステップはさらに、コンピュータが、第1のデコード結果を得るステップと、第2のデコード結果を得るステップと、デコーダのパラメータを更新するステップとを所定の終了条件が成立するまで繰り返すステップを含む。
【0015】
より好ましくは、新たなデコードサンプルを生成するステップは、コンピュータが、第1のデコード結果と第2のデコード結果との平均を算出することにより新たなデコードサンプルを生成するステップを含む。
【0016】
さらに好ましくは、分類器を訓練するステップは、コンピュータが、所定の分布からのサンプルをデコーダによりデコードして分類器訓練用の第1のデコード結果を得るステップと、コンピュータが、第2の訓練用データに対するエンコーダの出力をデコーダによりデコードして分類器訓練用の第2のデコード結果を得るステップと、コンピュータが、分類器訓練用の第1のデコード結果と分類器訓練用の第2のデコード結果との間で所定の演算を行うことにより分類器訓練用の新たなデコードサンプルを生成するステップと、コンピュータが、第2の訓練用データ又は分類器訓練用の新たなデコードサンプルについて、第2の訓練用データか、分類器訓練用の新たなデコードサンプルかを分類器により分類して分類結果を得るステップと、コンピュータが、分類結果と正しい分類との誤差を用いた誤差逆伝播法により、誤差が小さくなるように分類器のパラメータを更新するステップとを含む。
【0017】
好ましくは、分類器を訓練するステップはさらに、コンピュータが、分類器訓練用の第1のデコード結果を得るステップと、分類器訓練用の第2のデコード結果を得るステップと、分類器のパラメータを更新するステップとを所定の終了条件が成立するまで繰り返すステップを含む。
【0018】
より好ましくは、分類器訓練用の新たなデコードサンプルを生成するステップは、コンピュータが、分類器訓練用の第1のデコード結果と分類器訓練用の第2のデコード結果との平均を算出することにより分類器訓練用の新たなデコードサンプルを生成するステップを含む。
【0019】
本発明の第2の局面に係る分類器は、上記したいずれかの分類器の訓練方法により訓練された分類器である。
【0020】
本発明の第3の局面に係るコンピュータプログラムは、コンピュータを、上記したいずれかの装置の各手段として機能させる。
【0021】
本発明の第4の局面に係る分類器の訓練装置は、所定の分布にしたがって入力からデータを生成するようにエンコーダを訓練するエンコーダ訓練手段と、所定の分布からのサンプルのデコーダによるデコード結果と、第1の訓練用データに対するエンコーダの出力の、デコーダを用いたデコード結果とから生成されたデコーダ訓練用の新たなサンプルの、第1の訓練用データに対する誤差を最小化するようにデコーダを訓練するデコーダ訓練手段と、所定の分布からのサンプルのデコーダによるデコード結果と、第2の訓練用データに対するエンコーダの出力の、デコーダを用いたデコード結果とから生成された分類器訓練用の新たなサンプルと、第2の訓練用データとを正しく分類する確率を最大化するように分類器を訓練し、かつ、分類器が誤って分類する確率を最大化するようにエンコーダ及びデコーダを訓練する分類器訓練手段とを含み、所定の分布からのサンプル及び第1の訓練用データの各々には、複数種類の教師ラベルのいずれかが割り当てられている。
【0022】
本発明の第5の局面に係る感情分類器は、入力データが表す感情を示す感情ラベルを出力する感情分類手段と、データが実データであるか、所定のデータ生成手段により生成されたフェイクデータであるかを示す判別ラベルを出力する判別手段とを含む。
【0023】
好ましくは、入力データは発話音声である。
【0024】
この発明の上記及び他の目的、特徴、局面及び利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【0025】
図1図1は、一般的な感情認識モデルの訓練過程を模式的に示すブロック図である。
図2図2は、実データの分布を敵対的学習によりエンコーダに学習させるシステムのブロック図である。
図3図3は、本発明による訓練データの拡張手法を模式的に示す図である。
図4図4は、本発明の実施形態に係る、訓練データの拡張のための構成及び訓練データの感情の分類器の訓練のための分類器訓練装置の構成を模式的に示す図である。
図5図5は、図4に示すエンコーダの構成を模式的に示す図である。
図6図6は、図4に示すデコーダの構成を模式的に示す図である。
図7図7は、図4に示す判別器の構成を模式的に示す図である。
図8図8は、図4に示す分類器の構成を模式的に示す図である。
図9図9は、図4に示す分類器訓練装置の訓練をコンピュータにより実現するためのコンピュータプログラムの制御構造を示すフローチャートである。
図10図10は、図4に示す分類器訓練装置の訓練過程を説明するための模式図である。
図11図11は、分類器のテスト時の構成を示す模式図である。
図12図12は、分類器の全体訓練の10回目の繰り返しで得られた訓練データの構成を示すグラフである。
図13図13は、分類器の全体訓練の100回目の繰り返しで得られた訓練データの構成を示すグラフである。
図14図14は、分類器の全体訓練の500回目の繰り返しで得られた訓練データの構成を示すグラフである。
図15図15は、この発明の実施形態を実現するコンピュータシステムの外観を示す図である。
図16図16は、図15に外観を示すコンピュータシステムのハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【0026】
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
【0027】
<従来技術>
モデルの精度を高める手法の一つとして、利用可能な訓練用サンプルから新たな訓練用サンプルを追加する手法がある。
【0028】
図1に、従来技術に係る訓練用サンプルの追加手法を用いる感情認識モデルの訓練システム50の概略構成を示す。この従来技術は、前掲の非特許文献1に開示されたものである。
【0029】
図1を参照して、感情認識モデルの訓練システム50は、実際の音声データから得たサンプルからなる実データ記憶装置60と、実データ記憶装置60に記憶されたサンプルを用いた敵対的学習によりサンプルデータの分布を学習するよう、感情ラベル付き音声の生成モデル62の訓練を行うトレーニング部64と、生成モデル62により生成された拡張サンプル(拡張音声データ)を記憶するための拡張サンプル記憶装置66と、実データ記憶装置60に記憶されたサンプルデータと、拡張サンプル記憶装置66に記憶された拡張後の音声データとを教師データとして感情認識モデル70の訓練を行うためのトレーニング部68とを含む。このようにして訓練された感情認識モデル70は、音声データ72が与えられると、その音声を発話したときの話者の感情を示す感情ラベル74を出力する。なお、敵対的学習については非特許文献2にその基本的な考え方が開示されている。
【0030】
図2は、図1に示すトレーニング部64の構成を示す。トレーニング部64は生成モデル62を敵対的学習により訓練する。図2を参照して、トレーニング部64は、例えばサンプルΧが与えられると内部のパラメータにしたがって演算をしてサンプルΧを表す表現ベクトルZを出力するエンコーダ90と、所定の分布からサンプリングされたノイズε又はエンコーダ90からの表現ベクトルZが与えられると、それらが所定の分布から得られたものか(リアル)、エンコーダ90によりサンプルから得られたものか(フェイク)を判定し、リアル/フェイクの判別結果を出力する判別器92と、エンコーダ90からの表現ベクトルZを受けてデコードして得られる拡張サンプルΧ′がサンプルΧと等しくなるよう(誤差が最小となるよう)訓練されるデコーダ94とを含む。すなわち、エンコーダ90とデコーダ94とはオートエンコーダを形成する。
【0031】
このトレーニング部64では、ノイズεが所定の分布から得られたデータであり、表現ベクトルZがサンプルΧから得られたエンコーダ90の出力であると正しく判定するように判別器92を訓練し、同時に表現ベクトルZを判別器92がノイズεであると誤判定する確率を最大化するようエンコーダ90を訓練する、いわゆる敵対的学習が行われる。さらに、エンコーダ90からの表現ベクトルZをデコーダ94でデコードした拡張サンプルΧ′がエンコーダ90へのサンプルΧと等しくなるようデコーダ94の訓練を行う。この2つのフェーズの訓練が所定の終了条件が成立するまで行われる。
【0032】
こうした訓練の結果、デコーダ94はノイズεにより示される分布を学習し、入力が与えられると、ノイズεのもととなった分布にしたがって拡張サンプルΧ′を出力するようになる。こうして、サンプルが拡張サンプルΧ′により拡張される。
【0033】
しかし、この従来技術では以下のような問題がある。図3(A)を参照して、感情認識モデル70の訓練を行うための訓練サンプルの分布120に対し、一般的にはテスト用サンプルの分布122が完全に重なることはないと考えられる。すなわち、図3(A)に示すように、テスト用サンプルの分布122は訓練サンプルの分布120と一部重なっているが、一部は訓練サンプルの分布120の外にあると考えられる。
【0034】
上記した従来技術では、ノイズεがしたがう訓練サンプルの分布120の分布を感情認識モデル70に学習させる。その結果、図3(B)に示されるように、たしかに訓練サンプルの分布120の内部のサンプル数は多くなる。しかしそれらのほとんどは訓練サンプルの分布120の内部にとどまり、テスト用サンプルの分布122の全体をカバーすることはないと考えられる。そのため、テスト用サンプルの分布122によるテストをすると、十分な性能向上を示すことはないと考えられる。
【0035】
以下に説明する実施形態は、図3(C)に示すように、拡張後のデータが示す実世界で予測されるサンプルの分布124が訓練サンプルの分布120の外部まで広がり、テスト用サンプルの分布122をできるだけ多く含むようにするためのものである。
【0036】
<実施形態>
[構成]
図4に、この実施形態に係る分類器訓練装置150の構成をブロック図形式で示す。図4を参照して、分類器訓練装置150においては、図2のトレーニング部64と異なり、デコーダ94が、ノイズεとエンコーダ90の出力である表現ベクトルZとの各々を別々にデコードして、第1のデコード結果Χ′εと第2のデコード結果Χ′とを出力する。分類器訓練装置150はさらに、第1のデコード結果Χ′εと第2のデコード結果Χ′との算術平均である拡張サンプルΧ′を算出する平均算出部160と、平均算出部160の出力する拡張サンプルΧ′とエンコーダ90への入力であるサンプルΧとを受け、入力されたデータが真のサンプルΧ(リアル)か、デコーダ94によるデコードで得られた拡張サンプルΧ′(フェイク)かの判別結果を示すラベル、及び、各データが複数の感情カテゴリC1/C2/…の何れに属するかを示すラベルを出力する分類器162とを新たに含む点において図2のトレーニング部64と異なる。デコーダ94には、ノイズεと表現ベクトルZが順番に入力される。
【0037】
図5図4に示すエンコーダ90の構成を示す。図5を参照して、エンコーダ90は、音声信号から抽出したパワースペクトログラム180を入力とする、時系列データの処理に適した双方向GRU層182と、双方向GRU層182の後段に設けられた3層の全結合層184とを含む。全結合層184の最後の隠れ層のベクトル表現が表現ベクトルZである。
【0038】
この実施形態では、双方向GRU層182のGRUセルの数は64、3層の隠れ層のユニット数はそれぞれ512、256及び128である。
【0039】
図6を参照して、デコーダ94は、ノイズε又は表現ベクトルZを入力とするシンプルな3層の全結合層200を含む。各層のユニット数は64、64及び38,400とした。全結合層200の最終層の出力が再構成されたスペクトログラムである。
【0040】
図7を参照して、判別器92は、デコーダ94と同様、ノイズε又は表現ベクトルZを入力とするシンプルな3層の全結合層210を含む。3層の全結合層210のユニット数はそれぞれ512、256及び1である。最終層の出力がリアル/フェイクを示す。
【0041】
図8を参照して、分類器162は、サンプルΧ及び拡張サンプルΧ′のいずれかであるパワースペクトログラム230を入力として受ける、3層のコンボリューショナルネットワーク232と、コンボリューショナルネットワーク232の出力を受ける双方向GRU層234と、双方向GRU層234からの出力を受ける、3つの独立した全結合層236、238、及び全結合層240とを含む。コンボリューショナルネットワーク232の各層のフィルタ数はそれぞれ512、256及び128であり、カーネルサイズはそれぞれ3、1、及び3である。フィルタのストライドはいずれも1である。双方向GRU層234のGRUセルの数は64である。
【0042】
全結合層236、238及び全結合層240はいずれも3層の全結合層からなるニューラルネットワークである。全結合層236はリアル/フェイクの判別を行うためのもの、全結合層238は感情の一次元である覚醒度を示すラベルを出力するためのもの、全結合層240は感情の他の一次元である感情価を示すラベルを出力するためのものである。
【0043】
全結合層236の3つの全結合層のユニット数はそれぞれ512、32及び1である。全結合層238及び全結合層240のいずれにおいても、3つの全結合層のユニット数はそれぞれ512、32及び3である。
【0044】
図9に、図4に示す分類器訓練装置150の訓練を行うためのコンピュータプログラムの制御構造をフローチャート形式で示す。図9を参照して、このプログラムは、図4に示すエンコーダ90と判別器92とをいわゆる敵対的学習によりNエポックにわたり繰り返し訓練するステップ300と、ステップ300に続き、デコーダ94の出力がエンコーダ90への入力と等しく(誤差が小さく)なるように、エンコーダ90とデコーダ94とを通常の誤差逆伝播法によりNエポックにわたり繰り返し訓練するステップ302と、ステップ302に続き、デコーダ94と分類器162とを敵対的学習により、Nエポックにわたり繰り返し訓練するステップ304と、ステップ304の後、分類器訓練装置150を構成する各ニューラルネットワークのパラメータが収束したか否かを判定し、収束したときにはこのプログラムの実行を終了し、収束していない場合には制御をステップ300に戻して分類器訓練装置150の訓練を再度開始するステップ306とを含む。
【0045】
以下の式(1)に、この実施形態の説明で使用されている記号について示す。
【0046】
【数1】
上記式(1)の表現を使用して、以下の式(2)に図4の分類器訓練装置150の訓練を行う際の目的関数を示す。
【0047】
【数2】
なお、式(2)で「C」及び「D」は分類器162及び判別器92をそれぞれ示し、「Cc」及び「Cd」はいずれも分類器162の出力の一部であって、感情の分類とリアル/フェイクの判別とをそれぞれ示す。白抜きのEは期待値を示し、その右下の添字はどの変数に関する期待値かを示す。また「Decoder(ε,Z)」は、上記したようにノイズε及び表現ベクトルZに対するデコーダ出力の平均を示す。
【0048】
このような訓練と同時に平均算出部160の出力する拡張サンプルΧ′として、実データを拡張した新たな訓練サンプルが得られ、その訓練サンプルを用いて分類器162の訓練が行われる。訓練が完了した後の分類器162は、図11に示すように発話の音声データであるサンプルΧを受けると、発話したときの話者の感情を示す2種類のラベル(+サンプルΧに関するリアル/フェイクの出力)を出力する分類器として利用可能である。
【0049】
[動作]
上記した分類器訓練装置150は以下のように動作する。なお、これに先立ち、実データのサンプルが予め記憶装置に記憶されているものとする。
【0050】
図9のステップ300で、図10(A)に示すように、エンコーダ90及び判別器92の敵対的学習が行われる。この学習では、例えばサンプルΧに対してエンコーダ90が表現ベクトルZを出力し、所定の分布から得られたノイズε又はエンコーダ90からの表現ベクトルZが判別器92に与えられる。判別器92とエンコーダ90との敵対的学習では、判別器92がノイズεについてはリアル、表現ベクトルZについてはフェイクと正しく判別するように、かつ、エンコーダ90については、判別器92が表現ベクトルZを誤ってリアルと判別するように、それぞれパラメータを学習する。この訓練は訓練データを全て利用する訓練を1エポックとして、Nエポックにわたり繰り返される。この訓練により、エンコーダ90及び判別器92のパラメータが更新される。
【0051】
ステップ300の訓練が終了すると、図9のステップ302で、図10(B)に示すように、デコーダ94の出力とエンコーダ90への入力との誤差が小さくなるようにエンコーダ90及びデコーダ94の訓練が行われる。すなわち、ノイズεがデコーダ94に与えられ、デコーダ94がそれをデコードして第1のデコード結果Χ′εを出力する。続いてサンプルΧがエンコーダ90に与えられエンコーダ90がそれエンコードして表現ベクトルZを出力する。この表現ベクトルZがデコーダ94によりデコードされ第2のデコード結果Χ′が得られる。平均算出部160が両者の平均である拡張サンプルΧ′を算出する。エンコーダ90及びデコーダ94は、拡張サンプルΧ′がサンプルΧと等しくなるように(両者の誤差が小さくなるように)訓練される。
【0052】
この訓練は訓練データを全て利用する訓練を1エポックとして、Nエポックにわたり繰り返される。この訓練により、エンコーダ90とデコーダ94とのパラメータが更新される。またこの過程で新たなサンプルが生成される。
【0053】
ステップ302の訓練が終了すると、図9のステップ304で、エンコーダ90、デコーダ94及び分類器162の訓練が実行される。このとき、分類器162には、サンプルΧと拡張サンプルΧ′とが別々に与えられる。分類器162はサンプルΧが入力されたときにはリアルと、拡張サンプルΧ′が入力されたときにはフェイクと正しく判定するように訓練され、一方でエンコーダ90及びデコーダ94は、分類器162が拡張サンプルΧ′をサンプルΧと誤って判定する確率を最大化するように訓練される。この訓練がNエポックにわたり繰り返される。その結果、エンコーダ90、デコーダ94及び分類器162のパラメータが更新される。この過程では、もとのサンプルΧに加え、新たに生成されたステップ302で生成された新たな拡張サンプルΧ′が訓練サンプルとして使用される。
【0054】
この処理を実行した後、図9のステップ306で、エンコーダ90、判別器92、デコーダ94及び分類器162のパラメータが収束したか否かが判定される。収束していれば、このときのエンコーダ90、判別器92、デコーダ94及び分類器162のパラメータを所定の記憶装置に格納してこのプログラムの実行を終了する。パラメータが収束していなければ制御は再びステップ300に戻り、上記した処理がさらに繰り返される。
【0055】
なお、パラメータが収束したか否かという条件ではなく、全体の繰り返しが何回実行されたかを終了条件としてもよい。
【0056】
以上のようにして訓練が終了した後の分類器162は、テスト時に音声データが入力されるとその音声の発話時の発話者の感情を示す2種類のラベルを出力するようになる。なお、分類器162は訓練時には入力がリアルかフェイクかを示すラベルを出力するようにされている。したがって、分類器162はテスト時にも入力がリアルかフェイクかを示す情報も出力できるが、これの情報自体はテスト時には意味がないので利用されない。
【0057】
なお、図9に示す例では、ステップ300、302及びステップ304の全てにおいて同じエポック数の訓練を行った。しかしこの発明はそのような実施形態には限定されない。互いに異なるエポック数を採用したり、一つだけ他のものと異なるエポック数を採用したりしてもよい。
【0058】
さらに、上記したエンコーダ90、判別器92、デコーダ94、分類器162等を構成する双方向GRU層のセル数、ニューラルネットワークの層数、及び各層のユニット数も上記したものには限定されない。
【0059】
[実験結果]
上記実施形態に係る分類器訓練装置150により訓練した分類器162の精度について、非特許文献3に紹介されたMuSe-Topicのデータセットを使用して実験により確認した。このデータセットに関しては自動車の紹介ビデオに関する2つのタスクが設けられている。第1はドメイン特有の10クラスの感情の予測であり、第2は3クラスの感情価と覚醒度とに関する予測である。実験ではビデオのうち、音声のみを利用した感情を予測するタスクのみ行った。
【0060】
元のデータを4207の訓練サンプルと1335のテストサンプルとに分割して上記実施形態で説明した分類器訓練装置150の訓練を行い、訓練が終わった分類器162のテストを行った。分類器162の評価は、各予測結果とは別に、(0.34×)Unweighted Average Recall (UAR)と、(0.66×)F1スコアとを組合せて行った。これはベースラインのモデルと同じ基準である。
【0061】
音声信号の前処理として、ビデオ信号の各セグメントからパワースペクトログラムを抽出し、訓練で使用する素性として用いた。各発話の最大長を6.8秒に設定した。それより長い発話は15秒でカットし、短い発話は足りない部分をゼロでパディングした。サンプリングレートは16000Hzとした。各フレームについて長さ1024でホップ長512の高速フーリエ変換を行った。
【0062】
実験では、図9のステップ300では10エポック、ステップ302では20エポック、ステップ304では20エポックの繰り返しを行い、全体の処理の終了は、繰り返し回数が500となったときとした。
【0063】
実験に使用したサンプルデータの概略統計を以下のテーブル1に示す。
【0064】
【表1】
実験では様々な設定を用いた。それらの設定を以下のテーブル2に示す。
【0065】
【表2】
このテーブルにおいて、AAECは上記した実施形態で訓練された分類器を示す。「構成要素」に記載のD及びCはそれぞれ判別器及び分類器を示す。Gは上記した実施形態のエンコーダ・デコーダを、Gori図2に示す従来のエンコーダ・デコーダを示す。AAE_Cは、分類器Cだけで判別器Dが不要かを確認するために判別器Dを削除したものである。AAE+Cは、分類器Cに対する敵対的学習により分類器Cの性能が向上しているか否かを確認するためのものであり、繰り返し学習時に分類器Cを外しておき、繰り返し終了後に分類器Cを訓練したものである。AAEC′は上記した実施形態のエンコーダ・デコーダの効果を図2に示す従来のエンコーダ・デコーダと比較するためのものである。また、AAECの効果を確認するために、分類器Cのみを訓練した結果を「Classifier」により示してある。
【0066】
テーブル2には、ベースラインとして非特許文献3に報告された結果を示す。ベースラインは、オーディオのみを用いたSVMによる感情認識と、オーディオのみを用いたLSTMとセルフアテンションとを用いたニューラルネットワーク(LSTM+self-ATT)による感情認識と、音声+画像+テキストを用いたマルチモーダルのモデルによる感情認識MMTとの結果を示す。なお、「MMT」は、「Multimodal Transformer」の略である。
【0067】
テーブル2において太字で示した数字が最も高い性能を示している。テーブル2を参照して、上記実施形態に係る敵対的学習、又はそれに類する敵対的学習を用いて訓練した分類器が分類器のみのものより高い性能を示している事が分かる。拡張後のデータを用いて訓練した分類器(AAE+C)も分類器のみと比較して性能が2.6%向上している。また、AAECとAAE+Cとの結果を比較すると、AAECは2.2%の性能の向上を示しており、上記実施形態の敵対的学習が高い効果を示すことが分かる。
【0068】
さらに、AAECとAAE_Cとの結果を比較すると、判別器を組み込んだモデルは、組合せのスコアで性能が0.8%程度改善している。この結果から、判別器と分類器とが一部重なった働きをしてはいるものの、判別器がある方がよいことが分かる。
【0069】
AAECとAAEC′との比較からは、上記実施形態に示したように、ノイズεと表現ベクトルZとを別々にデコーダに入力し、得られた第1のデコード結果Χ′ε及び第2のデコード結果Χ′を平均して拡張サンプルΧ′を得ることにより、性能が向上したことが分かる。その値(40.33%)は、AAEC′の性能(38.31%)を約1.5%上回っている。
【0070】
上記実施形態に係るデコーダに、訓練の10回、100回及び500回の繰り返し時にサンプルをランダムに生成させ、元のデータと拡張されたデータとの分散状態を主成分分析により視覚化したものを図12図13及び図14にそれぞれ示す。これらの図は白黒であるため少し分かりづらいが、逆Y字型のシンボルがオリジナルのサンプルを示し、X型のシンボルがテスト用サンプルを示し、+型のシンボルが拡張されたサンプル(図中で最も濃い領域)を示す。
【0071】
これらの図から明らかなように、もともとの訓練用サンプルはテスト用サンプルを完全にはカバーしていない。これは従来技術の問題点として述べたとおりである。訓練の繰り返しの最初では、拡張後のサンプルはもともとの訓練用サンプルとかなり重複した部分に生成されているが、繰り返し数が大きくなるにつれて、拡張後のサンプルが訓練用サンプルの領域よりも外に多く生成されるようになっていることが分かる。この結果、上記した実施形態により生成された拡張後のサンプルが、実世界のデータの分布により近くなること、したがってそのような拡張後のサンプルを使用して訓練した分類器が元の訓練用サンプルのみを用いて訓練した分類器より高い性能を示すことが確認できた。
【0072】
[コンピュータによる実現]
図15は、上記各実施形態を実現するコンピュータシステムの外観図である。図16は、図15に示すコンピュータシステムのハードウェアブロック図である。
【0073】
図15を参照して、このコンピュータシステム950は、DVDドライブ1002を有するコンピュータ970と、いずれもコンピュータ970に接続された、ユーザと対話するためのキーボード974、マウス976、及びモニタ972とを含む。もちろんこれらはユーザ対話が必要となったときのための構成の一例であって、ユーザ対話に利用できる一般のハードウェア及びソフトウェア(例えばタッチパネル、音声入力、ポインティングデバイス一般)であればどのようなものも利用できる。
【0074】
図16を参照して、コンピュータ970は、DVDドライブ1002に加えて、CPU990と、GPU992と、CPU990、GPU992、DVDドライブ1002に接続されたバス1010と、バス1010に接続され、コンピュータ970のブートアッププログラム等を記憶するROM996と、バス1010に接続され、プログラムを構成する命令、システムプログラム、及び作業データ等を記憶するRAM998と、バス1010に接続された不揮発性メモリであるHDD1000とを含む。HDD1000は、CPU990及びGPU992が実行するプログラム、並びにCPU990及びGPU992が実行するプログラムが使用するデータ等を記憶するためのものである。コンピュータ970はさらに、他端末との通信を可能とするネットワーク986への接続を提供するネットワークI/F1008と、USBメモリ984が着脱可能で、USBメモリ984とコンピュータ970内の各部との通信を提供するUSBポート1006とを含む。
【0075】
コンピュータ970はさらに、マイク982及びスピーカ980とバス1010とに接続され、CPU990により生成されRAM998又はHDD1000に保存された音声信号、映像信号及びテキストデータをCPU990の指示にしたがって読み出し、アナログ変換及び増幅処理をしてスピーカ980を駆動したり、マイク982からのアナログの音声信号をデジタル化し、RAM998又はHDD1000の、CPU990により指定される任意のアドレスに保存したりするための音声I/F1004を含む。
【0076】
上記実施形態では、図4に示すエンコーダ90、判別器92、デコーダ94、及び分類器162、並びに発話信号、映像信号及びテキストデータ等のデータ及びパラメータ等は、いずれも例えば図16に示すHDD1000、RAM998、DVD978又はUSBメモリ984、若しくはネットワークI/F1008及びネットワーク986を介して接続された図示しない外部装置の記憶媒体等に格納される。典型的には、これらのデータ及びパラメータ等は、例えば外部からHDD1000に書込まれコンピュータ970の実行時にはRAM998にロードされる。
【0077】
このコンピュータシステムを、図4に示す分類器訓練装置150のエンコーダ90、判別器92、デコーダ94及び分類器162、これらを敵対的学習により訓練する分類器訓練装置150、訓練後の分類器162を用いた感情認識装置及びその各構成要素の機能を実現するよう動作させるためのコンピュータプログラムは、DVDドライブ1002に装着されるDVD978に記憶され、DVDドライブ1002からHDD1000に転送される。又は、これらのプログラムはUSBメモリ984に記憶され、USBメモリ984をUSBポート1006に装着し、プログラムをHDD1000に転送する。又は、このプログラムはネットワーク986を通じてコンピュータ970に送信されHDD1000に記憶されてもよい。
【0078】
プログラムは実行のときにRAM998にロードされる。もちろん、キーボード974、モニタ972及びマウス976を用いてソースプログラムを入力し、コンパイルした後のオブジェクトプログラムをHDD1000に格納してもよい。スクリプト言語の場合には、キーボード974等を用いて入力したスクリプトをHDD1000に格納してもよい。仮想マシン上で動作するプログラムの場合には、仮想マシンとして機能するプログラムを予めコンピュータ970にインストールしておく必要がある。ただし、分類器訓練装置150による訓練には大量の計算が伴うため、スクリプト言語ではなくコンピュータのネイティブなコードからなるオブジェクトプログラムとして本発明の実施形態の各部を実現する方が好ましい。
【0079】
CPU990は、その内部のプログラムカウンタと呼ばれるレジスタ(図示せず)により示されるアドレスにしたがってRAM998からプログラムを読み出して命令を解釈し、命令の実行に必要なデータを命令により指定されるアドレスにしたがってRAM998、HDD1000又はそれ以外の機器から読み出して命令により指定される処理を実行する。CPU990は、実行結果のデータを、RAM998、HDD1000、CPU990内のレジスタ等、プログラムにより指定されるアドレスに格納する。このとき、プログラムカウンタの値もプログラムによって更新される。コンピュータプログラムは、DVD978から、USBメモリ984から、又はネットワークを介して、RAM998に直接にロードしてもよい。なお、CPU990が実行するプログラムの中で、一部のタスク(主として数値計算)については、プログラムに含まれる命令により、又はCPU990による命令実行時の解析結果にしたがって、GPU992にディスパッチされる。
【0080】
コンピュータ970により上記した各実施形態に係る各部の機能を実現するプログラムは、それら機能を実現するようコンピュータ970を動作させるように記述され配列された複数の命令を含む。この命令を実行するのに必要な基本的機能のいくつかはコンピュータ970上で動作するオペレーティングシステム(OS)若しくはサードパーティのプログラム、又はコンピュータ970にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の中で、所望の結果が得られるように制御されたやり方で適切な機能又は「プログラミング・ツール・キット」の機能を呼出すことにより、上記した各装置及びその構成要素としての動作を実行する命令のみを含んでいればよい。そのためのコンピュータ970の動作方法は周知であるので、ここでは繰返さない。
【0081】
なお、GPU992は並列処理を行うことが可能であり、機械学習に伴う多量の計算を同時並列的又はパイプライン的に実行できる。例えばプログラムのコンパイル時にプログラム中で発見された並列的計算要素、又はプログラムの実行時に発見された並列的計算要素は、随時、CPU990からGPU992にディスパッチされ、実行され、その結果が直接に、又はRAM998の所定アドレスを介してCPU990に返され、プログラム中の所定の変数に代入される。
【0082】
今回開示された実施形態は単に例示であって、本発明が上記した実施形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【0083】
50 感情認識モデルの訓練システム
60 実データ記憶装置
62 生成モデル
64、68 トレーニング部
66 拡張サンプル記憶装置
70 感情認識モデル
72 音声データ
74 感情ラベル
90 エンコーダ
92 判別器
94 デコーダ
120 訓練サンプルの分布
122 テスト用サンプルの分布
124 実世界で予測されるサンプルの分布
150 分類器訓練装置
160 平均算出部
162 分類器
180、230 パワースペクトログラム
182、234 双方向GRU層
184、200、210、236、238、240 全結合層
232 コンボリューショナルネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16