You are on page 1of 28

テキスト情報を考慮した音声感情認識

立命館大学大学院情報理工学研究科 音声言語研究室(山下研究室)
永瀬 亮太郎

2020/12/12 Spoken Language Laboratory 1


音声感情認識とは
音声感情認識 ビジネス 暮らし

…音声から感情を認識する技術
• ヒューマンコンピュータインタラクション
(HCI)の分野で注目されている
• 幅広い産業分野への応用が期待される 感情
[暮らし] [ビジネス] 認識
- スマートスピーカや - コールセンターの
自動車などで利用 自動化
されるエージェント [医療・福祉]
開発 - メンタルヘルス分析
医療・福祉
2020/12/12 Spoken Language Laboratory 2
背景
【現状】 視覚情報
ex) 顔画像、
聴覚情報
ex) ⾳声、⾳
• 深層学習の進展と音声感情認識の性能向上 体の動き(モーション)

- 音声合成、音声認識と同様に性能向上
【課題】
• 音声感情認識の認識率向上
- より実用的にするためには、更なる認識率 ⽣体情報 ⾔語情報
ex) 脳波など ex) 単語、⽂、⽂章
の向上が必要
• 音声と別の情報を統合的に処理する技術
- より人間らしい感情認識をするためには、
他の情報を上手く扱う技術が必要

2020/12/12 Spoken Language Laboratory 3


目的
【課題】
• 音声感情認識の認識率向上 • 音声とテキストを統合的に処理する技術

本研究では、
音声特徴と言語特徴を協調的
に用いて感情認識の性能向上を図る

【本研究のポイント】
① テキスト情報を考慮した点
② 事前学習済みモデルを使用した点
③ label-smoothing を使用した点
2020/12/12 Spoken Language Laboratory 4
提案手法
• 本研究で提案する手法は主に2つ

1. 音声・テキスト特徴の協調利用による感情認識
- 音声特徴とテキスト特徴を協調的に利用することで認識率の向上を目指す

2. 感情対を考慮した label-smoothing
- 人がよく誤認識しやすい感情対を考慮することで認識率の向上を目指す

2020/12/12 Spoken Language Laboratory 5


提案手法
• 本研究で提案する手法は主に2つ

1. 音声・テキスト特徴の協調利用による感情認識
- 音声特徴とテキスト特徴を協調的に利用することで認識率の向上を目指す

2020/12/12 Spoken Language Laboratory 6


提案手法 音声・テキスト特徴の協調利用による感情認識

• 本提案手法には大きく2つの段階がある

Phase 1:事前学習段階 Phase 2: fusion学習段階

… 音声の感情認識とテキストの感情認識 … 音声とテキストの感情認識モデルを
をそれぞれ学習する 協調的に利用するマルチモーダルな感情
① 音声の感情認識 認識を学習する
• CNN + BLSTM
音声の感情認識
• CNN + BLSTM + Attention
• CNN + Transformer-Encoder マルチモーダル
な感情認識
② テキストの感情認識
• BERT テキストの感情認識

2020/12/12 Spoken Language Laboratory 7


提案手法 音声・テキスト特徴の協調利用による感情認識

• 本提案手法には大きく2つの段階がある

Phase 1:事前学習段階

… 音声の感情認識とテキストの感情認識
をそれぞれ学習する
① 音声の感情認識
• CNN + BLSTM
• CNN + BLSTM + Attention
• CNN + Transformer-Encoder
② テキストの感情認識
• BERT

2020/12/12 Spoken Language Laboratory 8


提案手法 音声・テキスト特徴の協調利用による感情認識

Phase 1:事前学習段階 音声の感情認識について

• 畳み込みニューラルネットワーク (CNN) や双方向長短期記憶 (BLSTM) などを


組み合わせたネットワークを用いる
• 本実験に用いるネットワークの組み合わせは次の通り
① CNN + BLSTM ② CNN + BLSTM + Attention ③ CNN + Transformer-Encoder
In: 1 In: 64 In: 128 In: 1 In: 64
Out: 64 Out: 128 In: Out: 128 Out: 64 Out: 128 In: In: 128
Kernel_size: 5 Kernel_size: 5 11/5 Num_layers: 2 out: 256 In: 256 Kernel_size: 5 Kernel_size: 5 11/5 In: 128 Out: 128 In: 128
Stride: 1 Stride: 1 Out: 1 Dropout: 0.5 h_num: 4 Out: 4 Stride: 1 Stride: 1 Out: 1 Out: 128 Num_layers: 4 Out: 4
TransformerBlock

Posi!onal Encorder
Max pooling2d

Max pooling2d
Max pooling2d
Max pooling2d

Normaliza!on

Normaliza!on
Self-A"en!on

FeedForward
Self-A#en"on

Mul!-head
Mul"-head

So!max

Conv2d

Conv2d

Sofmax
Conv2d
Conv2d

Linear
BLSTM

Linear
Linear
Linear

Layer

Layer
図1-1: CNN+BLSTM+Attention 図1-2: CNN+Transformer-Encoder

2020/12/12 Spoken Language Laboratory 9


提案手法 音声・テキスト特徴の協調利用による感情認識

Phase 1:事前学習段階 音声の感情認識について

• 音声の入力方法として入力音声を分割
する方法を取り入れる
- 利点:入力が増える/細かく学習できる
• 本研究で行った入力方法は次の2種類
(ただし、入力データ幅を 𝑙!"#$% とする)
図2-1:⼊⼒⽅法①

① スライドする幅が 𝒍𝒘𝒊𝒅𝒕𝒉 のとき


…入力特徴量を一定幅で分割する
② スライドする幅が 𝒍𝒘𝒊𝒅𝒕𝒉 /𝟐 のとき
…入力特徴量を一部重ね合わせながら
分割する
図2-2:⼊⼒⽅法②
2020/12/12 Spoken Language Laboratory 10
[1] Devlin, J., Chang, M. W., Lee, K., and Toutanova, K.
提案手法 音声・テキスト特徴の協調利用による感情認識 ``Bert: Pre-training of deep bidirectional transformers
for language understanding.'' arXiv preprint
arXiv:1810.04805. (2018)

Phase 1:事前学習段階 テキストの感情認識について

• BERT (Bidirectional Encoder Representations from Transformers)


を用いる
- 転移学習(Fine-Tuning)によってあらゆる自然言語タスクで高い性能を獲得した
- 日本語の事前学習済みモデルを使用し感情認識タスクに転移学習を行う

図3:BERTの概要図[1]
2020/12/12 Spoken Language Laboratory 11
提案手法 音声・テキスト特徴の協調利用による感情認識

• 本提案手法には大きく2つの段階がある

Phase 2: fusion学習段階

… 音声とテキストの感情認識モデルを
協調的に利用するマルチモーダルな感情
認識を学習する
音声の感情認識
マルチモーダル
な感情認識
テキストの感情認識

2020/12/12 Spoken Language Laboratory 12


提案手法 音声・テキスト特徴の協調利用による感情認識

Phase 2: fusion学習段階

• 協調利用の手法には early-fusion と
late-fusion を利用 Text data
Classifier
(Text)
- early-fusion: 2つ以上の特徴量を結合する手法 In: 256+256 In: 512
Out: 512 Out: 256
In: 256
Out: 4

- late-fusion: 2つ以上の予測結果を結合する手法

Full Connected

Full Connected

Full Connected
early fusion
【late-fusion の式】

late fusion
In: 768
Out: 256

In:

𝐱!"#$ = 𝜆%𝐱#$&# + 𝜆'𝐱()$$*+ + 𝜆,𝐱$"-!. (1)

Full Connected
256/128
Out: 256

𝐱!"#! : 感情予測結果(テキスト),𝐱$%""&' : 感情予測結果


(音声),𝐱"()*+ : 感情予測結果(early-fusion), Audio data
Classifier
(Audio)
𝜆, , 𝜆- , 𝜆. : ハイパーパラメータ

※ 本研究では、 𝜆! = 𝜆" = 𝜆# = 1.0とする。 図4:音声・テキスト特徴の協調利用を目的としたネットワーク

2020/12/12 Spoken Language Laboratory 13


提案手法
• 本研究で提案する手法は主に2つ

2. 感情対を考慮した label-smoothing
- 人がよく誤認識しやすい感情対を考慮することで認識率の向上を目指す

2020/12/12 Spoken Language Laboratory 14


提案手法 感情対を考慮したlabel-smoothing

• 感情認識の性能向上を図るために有効な⼿段としての label-smoothing
- 感情は曖昧で複雑であるため、hard-label よりも soft-label が⾃然
• 学習の補助として、感情対を考慮したlabel-smoothingを提案
- 「喜び」と「平静」、「怒り」と「悲しみ」の感情対を考慮する

【提案する label-smoothing 】
0''
𝑞+ 𝑘, , 𝑘- 𝑦 = 1 − 𝜖- 𝛿.& / + 𝜖- 1 − 𝜖- 𝛿.' / + (3)
1

𝑦: 正解ラベルのインデックス,𝑘! , 𝑘" :正解の感情カテゴリとそれに対応する


カテゴリのインデックス,𝐾: カテゴリ数,𝜖" : 注目する項目についてのハイ
パーパラメータ,𝛿: Diracのデルタ関数

2020/12/12 Spoken Language Laboratory 15


提案手法 感情対を考慮したlabel-smoothing

【従来の label-smoothing 】
1 1
3%
𝑞/ 𝑘0 𝑦 =
0.925

1 − 𝜖% 𝛿1$ 2 + 4 (2)
𝑦: 正解ラベルのインデックス,𝑘/ : 正解の感情カテゴリのインデックス, 0 ang joy sad neu
0.025
0 ang joy sad neu
𝐾: カテゴリ数,𝜖, : 注目する項目についてのハイパーパラメータ,
𝛿: Diracのデルタ関数 図5-1:式(2)のlabel-smoothingの例
(正解がangのとき、 𝜖! = 0.1)

【提案する label-smoothing 】
0''
1 1
+
𝑞 𝑘, , 𝑘- 𝑦 = 1 − 𝜖- 𝛿.& / + 𝜖- 1 − 𝜖- 𝛿.' / + (3) 0.810

1
0.170
𝑦: 正解ラベルのインデックス,𝑘, , 𝑘- :正解の感情カテゴリとそれに 0.010
0
対応するカテゴリのインデックス,𝐾: カテゴリ数,𝜖- : 注目する項目に 0 ang joy sad neu ang joy sad neu

ついてのハイパーパラメータ,𝛿: Diracのデルタ関数 図5-2:式(3)のlabel-smoothingの例


(正解がang、対になる感情がsadのとき、 𝜖" = 0.2)

2020/12/12 Spoken Language Laboratory 16


実験条件(データセット等)
• 使用するデータセットは JTES (Japanese Twitter-based Emotional Speech)
- 男女各50名の4感情(喜び、悲しみ、怒り、平静)の音声が各50文づつ収録されてい
る(合計20,000発話)
• 学習データとテストデータは話者が被らないように8:2に分割し、Cross
Validation で評価
【テキストデータの拡張(事前学習時のみ)】
表1:データ拡張前とデータ拡張後のデータ数
• データ不足を解消するためにデータ ang joy sad neu 合計

拡張を実施 データ拡張前 50 50 50 50 200

- 日本語を再翻訳、重複文を取り除く データ拡張後(重複あり) 750 750 750 750 3,000


データ拡張後(重複なし) 434 444 456 437 171
- 感情カテゴリ間のテキスト数を
データ拡張後(学習評価用) 434 434 434 434 1,736
揃える
2020/12/12 Spoken Language Laboratory 17
実験条件(ハイパーパラメータ等)
表2:各実験の条件(ハイパーパラメータ等)

(3) 音声特徴とテキスト特徴を考慮
(1) 音声の感情認識 (2) テキストの感情認識
した感情認識

① CNN + BLSTM early-fusion + late-fusion


ネットワークモデル ② CNN + BLSTM + Attention ④ BERT (①+④ または ②+④
③ CNN + Transformer-Encoder または ③+④)

一定幅分割または部分重複分割
入力方法 文ごと 一定幅分割/文ごと
(スライド幅:100)
label-smoothing label-smoothing1 (𝜖! = 0.1) または label-smoothing2 (𝜖" = 0.1~1.0) label-smoothing1 (𝜖! = 0.1)
入力特徴量 メルケプストラム(36次元) テキスト メルケプストラム/テキスト
データ量 20,000 1,736 20,000/200
損失関数 Categorical Cross Entropy
最適化手法 Adam (学習率:0.0001)
エポック数 100 300 50
バッチサイズ 8/16 8 32
2020/12/12 Spoken Language Laboratory 18
実験条件(ハイパーパラメータ等)
表2:各実験の条件(ハイパーパラメータ等)

(3) 音声特徴とテキスト特徴を考慮
(1) 音声の感情認識 (2) テキストの感情認識
した感情認識

① CNN + BLSTM early-fusion + late-fusion


ネットワークモデル ② CNN + BLSTM + Attention ④ BERT (①+④ または ②+④
③ CNN + Transformer-Encoder または ③+④)

一定幅分割または部分重複分割
入力方法 文ごと 一定幅分割/文ごと
(スライド幅:100)
label-smoothing label-smoothing1 (𝜖! = 0.1) または label-smoothing2 (𝜖" = 0.1~1.0) label-smoothing1 (𝜖! = 0.1)
入力特徴量 メルケプストラム(36次元) テキスト メルケプストラム/テキスト
データ量 20,000 1,736 20,000/200
損失関数 Categorical Cross Entropy
最適化手法 Adam (学習率:0.0001)
エポック数 100 300 50
バッチサイズ 8/16 8 32
2020/12/12 Spoken Language Laboratory 19
実験結果 音声の感情認識

【① CNN+BLSTM を用いたとき】
• 部分重複分割のときの方が全体的に認識率が高い
• 提案したlabel-smoothingの効果は得られなかった
表3-1:実験結果(音声の感情認識)

実験条件 WA(%) UA(%)


(参考) 一定幅分割/ one-hot (batch:8) 65.82 67.30
(1) 一定幅分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 62.14 65.15
(2) 一定幅分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 62.94 65.55
(参考) 部分重複分割/ one-hot (batch:8) 66.96 70.97
(3) 部分重複分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 67.49 68.40
(4) 部分重複分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 63.40 66.30

2020/12/12 Spoken Language Laboratory 20


実験結果 音声の感情認識

【② CNN + BLSTM + Attention を用いたとき】


• 部分重複分割のときの方が全体的に認識率が高い
• 提案したlabel-smoothingの効果は得られなかった
表3-2:実験結果(音声の感情認識)

実験条件 WA(%) UA(%)


(参考) 一定幅分割/ one-hot (batch:8) 64.47 67.19
(5) 一定幅分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 61.88 64.15
(6) 一定幅分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 61.06 64.65
(参考) 部分重複分割/ one-hot (batch:8) 68.47 71.31
(7) 部分重複分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 66.66 69.55
(8) 部分重複分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 65.82 68.10

2020/12/12 Spoken Language Laboratory 21


実験結果 音声の感情認識

【③ CNN + Transformer-Encoder を用いたとき】


• 全体的に他のモデルよりも認識率が低い(学習が上手くいかなかった)
• 提案したlabel-smoothingの効果は得られなかった
表3-3:実験結果(音声の感情認識)

実験条件 WA(%) UA(%)


(参考) 一定幅分割/ one-hot (batch:8) 54.63 58.63
(9) 一定幅分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 57.69 61.20
(10) 一定幅分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 46.25 44.40
(参考) 部分重複分割/ one-hot (batch:8) 57.93 60.31
(11) 部分重複分割/ label-smoothing1 (batch:16, 𝜖, = 0.1) 58.72 61.20
(12) 部分重複分割/ label-smoothing2 (batch:16, 𝜖- = 0.2) 49.96 51.06

2020/12/12 Spoken Language Laboratory 22


実験条件(ハイパーパラメータ等)
表2:各実験の条件(ハイパーパラメータ等)

(3) 音声特徴とテキスト特徴を考慮
(1) 音声の感情認識 (2) テキストの感情認識
した感情認識

① CNN + BLSTM early-fusion + late-fusion


ネットワークモデル ② CNN + BLSTM + Attention ④ BERT (①+④ または ②+④
③ CNN + Transformer-Encoder または ③+④)

一定幅分割または部分重複分割
入力方法 文ごと 一定幅分割/文ごと
(スライド幅:100)
label-smoothing label-smoothing1 (𝜖! = 0.1) または label-smoothing2 (𝜖" = 0.1~1.0) label-smoothing1 (𝜖! = 0.1)
入力特徴量 メルケプストラム(36次元) テキスト メルケプストラム/テキスト
データ量 20,000 1,736 20,000/200
損失関数 Categorical Cross Entropy
最適化手法 Adam (学習率:0.0001)
エポック数 100 300 50
バッチサイズ 8/16 8 32
2020/12/12 Spoken Language Laboratory 23
実験結果 テキストの感情認識

【④ BERT を用いたとき】
• 提案したlabel-smoothingを適応した時が最も認識率が高い
- テキストには適している可能性がある

表4:実験結果(テキストの感情認識)

実験条件 WA(%) UA(%)


(参考) one-hot 69.73 70.26
(1) label-smoothing1 (𝜖, = 0.1) 70.24 70.65
(2) label-smoothing2 (𝜖- = 0.2) 70.63 70.95

2020/12/12 Spoken Language Laboratory 24


実験結果 テキストの感情認識

【補足:提案した label-smoothing の分析】


• 𝜖- = 0.7 まで認識率は向上した 80%

- one-hot 表現よりも学習に有効である 70%


• 𝜖- = 0.8 から徐々に下降傾向に
60%
- 一様に近づき出すと学習しなくなる
50% WA (%)
UA (%)
1 1

40%

0.4225
0.36 30%
0.3325 0.32
0.16
0.1225

0 ang joy sad neu 0 ang joy sad neu 20%


0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

図6-1:式(3)のlabel-smoothingの例(左: 𝜖" = 0.7 、右: 𝜖" = 0.8) 図6-2:実験結果(テキストの感情認識、 early-stopping 有)

2020/12/12 Spoken Language Laboratory 25


実験条件(ハイパーパラメータ等)
表2:各実験の条件(ハイパーパラメータ等)

(3) 音声特徴とテキスト特徴を考慮
(1) 音声の感情認識 (2) テキストの感情認識
した感情認識

① CNN + BLSTM early-fusion + late-fusion


ネットワークモデル ② CNN + BLSTM + Attention ④ BERT (①+④ または ②+④
③ CNN + Transformer-Encoder または ③+④)

一定幅分割または部分重複分割
入力方法 文ごと 一定幅分割/文ごと
(スライド幅:100)
label-smoothing label-smoothing1 (𝜖! = 0.1) または label-smoothing2 (𝜖" = 0.1~1.0) label-smoothing1 (𝜖! = 0.1)
入力特徴量 メルケプストラム(36次元) テキスト メルケプストラム/テキスト
データ量 20,000 1,736 20,000/200
損失関数 Categorical Cross Entropy
最適化手法 Adam (学習率:0.0001)
エポック数 100 300 50
バッチサイズ 8/16 8 32
2020/12/12 Spoken Language Laboratory 26
実験結果 音声特徴とテキスト特徴を考慮した感情認識

• 単体の感情認識の認識率よりも高い認識結果が得られた
- ただし、話者オープン発話文クローズドな評価
- ほとんど学習しなかった(early-fusionのみも同様)

表5:実験結果(音声特徴とテキスト特徴を考慮した感情認識)

実験条件 WA(%) UA(%)


• 一定幅分割 テキスト テキスト
• label-smoothing1 (𝜖! = 0.1) テキスト ⾳声 テキスト ⾳声
+⾳声 +⾳声
BERT + CNN + BLSTM 70.24 62.14 85.53 70.65 65.15 86.65
BERT + CNN + BLSTM + Attention 70.24 61.88 85.21 70.65 64.15 86.45
BERT + CNN + Transformer 70.24 57.69 82.28 70.65 61.20 84.25

2020/12/12 Spoken Language Laboratory 27


まとめ
• 音声感情認識の認識率の向上のため、次の二つの手法を提案
1. 音声・テキスト特徴の協調利用による感情認識
- 音声のみの感情認識率よりも約 20% 以上の性能を獲得した
- しかしながら、話者オープン発話文クローズドな評価に問題がある
2. 感情対を考慮した label-smoothing
- 提案したlabel-smoothingは音声感情認識には適さなかった
- テキスト感情認識では最大 2.5% の認識率向上に効果があった
【今後の予定】
• 話者・発話オープンな評価を行う
• 別の音声感情認識用コーパスを用いて実験
• 具体的な認識結果の分析
2020/12/12 Spoken Language Laboratory 28

You might also like