112
Sakriani Sakti Research Associate Professor Augmented Human Communication Lab. Division of Information Science Nara Institute of Science and Technology 第5回 音声言語処理 音声認識理論と音声認識システム

第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Sakriani Sakti Research Associate Professor

Augmented Human Communication Lab.

Division of Information Science

Nara Institute of Science and Technology

第5回 音声言語処理

音声認識理論と音声認識システム

Page 2: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

講義の構成 (Syllabus)

2Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 第1回 11/02 中村 音情報基礎(音声、音響情報処理の導入、基礎)

Introduction to speech and acoustic signal processing

• 第2回 11/06 高道 音声の分析(DFT,LPC,ケプストラム分析)

Speech signal analysis (DFT, LPC analysis)

• 第3回 11/08 高道 音響信号処理基礎

Fundamentals of acoustic signal processing

• 第4回 11/12 中村 音声符号化基礎

Fundamentals of Speech Coding

• 第5回 11/14 サクティ 音声認識理論と音声認識システム

Speech recognition theories and systems

• 第6回 11/16 高道 音声合成理論と音声合成システム

Speech synthesis theories and systems

• 第7回 11/20 吉野 音声対話システム理論と音声対話システム

Spoken dialog system theories and systems

• 第8回 11/22 質疑, 試験

Discussion and Examination

Page 3: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

第5回内容

3Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 音声認識概要 (Overview of Speech Recognition)

• テンプレートマッチングによる認識 (Template-based ASR) DTWマッチング

• 統計モデルによる認識 (Statistical-based ASR) HMM音響モデル

• ディープラーニングによる認識(Deep learning-based ASR) Hybridモデル, End-to-endモデル

• ASRシステムの評価 (Evaluation of ASR System)

Page 4: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Part 1:音声認識概要

Overview of Speech Recognition

4Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 5: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

人間のコミュニケーションHuman Communication

5Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 6: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

人間のコミュニケーション

• 音声コミュニケーション (Speech Communication)自分のアイデアや経験や知識などを表現する、人間にとって最も自然な手段

The most natural modality to express & share their ideas, experiences, and knowledge

6

会議 (Meeting)

ビジネス(Business)

講義 (Lecture)

会話(Conversations)

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 7: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

人間のコミュニケーション

• スピーチチェーン (Speech Chain)

7

[Denes & Pinson, 1993]

知覚神経Sensory nerves

運動神経Motornerves

知覚神経Sensory nerves

聴覚フィードバックAuditory feedback

話すSpeaking

聞くListening

“こんにちは”

言語レベルLinguistic

Level

生理学的レベルPhysiological

Level

音響レベルAcoustic

Level

生理学的レベルPhysiological

Level

言語レベルLinguistic

Level

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 8: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

どのように話すのですか?

• 音声の生成過程:ソー・フィルタモデル (Speech Production)

8

肺からの空気の流れ(Air flow from lungs)

[C] 音声(Speech sound)

[A] 声帯(Vocal folds)

[B] 声道(Vocal tract)

[A] [C][B]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 9: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声発話

• 音声発話(Speech Utterances)

9“She just had a baby”

フォルマント周波数Formant Frequencies

F1

F2

F3

[Phonical, 2017]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 10: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

フォルマント周波数 & 音素分布

• フォルマント周波数 & 音素分布

10Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 11: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

どのように聞くのですか?

•耳:外、中、内 (Ear: Outer, Middle, Inner)

11

[Bosi & Goldberg, 2003]

周波数分析frequency analysis

マイクロフォンmicrophone

安全制御システムControl system

周波数別に音を分離するSeparate Sound by Frequency

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 12: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ヒューマン·マシンインタラクション

Human-Machine Interaction

12Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 13: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ヒューマン·マシンインタラクション

13

• ヒューマンマシンインタラクションのモダリティModality in Human-machine Interaction Traditional way:

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

人間とコミュニケーションできる技術や機械を実現するRealize a technology or a machine that can communicate with the human

Page 14: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

• ヒューマンマシンインタラクションのモダリティModality in Human-machine Interaction

ヒューマン·マシンインタラクション

14

聞く Listening

“こんにちは”

Recognized words

“こんにちは”

音声認識Speech

recognition

“お元気ですか”

話す Speaking

音声合成Speech Synthesis

知覚神経Sensory nerves

運動神経Motornerves

聴覚フィードバックAuditory feedback

話すSpeaking

Sensory nerves

コンピュータが聞き方、話し方を学習できるように、自動音声認識やテキストからの音声合成技術を開発する。

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 15: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識の課題は何ですか?What is the Challenges of ASR?

15Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 16: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

シングルスピーカー(Single Speaker)

16Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 誰も正確に発音を繰り返すことはできませんNo one can repeat pronunciation exactly

Page 17: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

話者変動(Speaker Variability)

17Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 音声は、すべての話者では異なります特徴 (Individual characteristic): 話すスタイル、発話速度、イントネーションアクセントバリエーション (Accent variation): 地域/母語音声品質のばらつき(Voice quality variation): 男性、女性、子ども、高齢者

Page 18: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

環境の変動 (Environments Variability)

18Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 異なる環境では音声に異なる効果を与えるバックグラウンドノイズ (Background noise): 車、電車、ファン残響 (Reverberation): エコーマイク/経路(Microphone/channel): マイク、電話

Page 19: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

コンテキスト変動 (Contextual Variability)

19Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 調音結合の影響 (Coarticulation Effects):

Vowels

/s/ /a/ /S/

Consonants

/a/

Frequency f

Page 20: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

言語的変動 (Linguistic Variability)

20Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 連続音声(Continuous Speech)

音素や単語の境界が不明である (Boundary is Unknown)

• 多言語(Multilingual Languages) 異なる音素セット、異なる意味 (Different Phoneme Set, Different Meaning)

異なる文法構造 (Different Grammatical Structure)

Page 21: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

言語的変動 (Linguistic Variability)

21Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 22: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

いつから音声認識システムの開発を開始し始めた?

When People Start to Build ASR?

22Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 23: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1920s:単一の単語の認識

23Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 犬玩具(Dog Toy’s) “REX” 犬の名前"レックス"の母音のみに応答 500 Hzの周囲に音響エネルギーに関連

[REX Dog Toy’s , 1920]

Page 24: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

“REX”スペクトログラム

24Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

The first formant in the vowel [eh] is at about 500 Hz Only recognize adult male voice, so Rex would not respond to Unable to reject many words or non speech sounds that produced

sufficient 500Hz energy

Page 25: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1950s:孤立桁の認識

25Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 孤立数字認識 (Isolated Digit Recognition) 10の言葉だけを認識: 桁0-9

各桁の母音領域の間に推定れたフォルマント周波数を使用

[Davis, Biddulph, Balashek, 1952]

Page 26: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ベル研:孤立数字認識

26Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Davis, Biddulph, Balashek, 1952]

Page 27: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1960s: 孤立単語認識

27Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 孤立単語認識 (Isolated Word Recognition) 音声音のシンプルな音響音声学的性質に基づいている

小規模語彙を(10-100の単語の順番)を認識

Bell Labs:

From Analog Circuit to AD/DA Speech Processing

Page 28: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1970s:連続単語認識

28Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 連続単語音声認識 (Continuous Word Recognition) 複数の話者 中規模語彙を(100-1000語の順)を認識

TE

MP

LA

TE

(W

OR

D 7

)

UNKNOWN WORD

Dynamic Time Warping (Template-based ASR)

[Vyntsyuk, 1968]

[Sakoe & Chiba, 1970]

Page 29: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1980s:大語彙ASR

29Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 大語彙ASR (Large Vocabulary ASR)大語彙連続音声認識(LVCSR)

複数の話者

1000から10000までの単語

方法の変化(A shift Methodology):

より直感的な知識ベースのアプローチからより厳密な統計モデルの枠組みへ

(HMM-based ASR)

“Julie” The First Interactive Talking Doll

by Worlds of Wonder (1987)She would ask you to say her name, and a few other words, and then you

had to repeat them until she knew what you sounded like.

Page 30: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

1990s:悪条件におけるASR

30Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 悪条件におけるASR (Adverse Conditions)複数の話者LVCSR (10,000-20,000言葉)

悪条件:

-クリーン対雑音下音声

-対話し言葉対読み言葉

Page 31: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

近年(Recent Years)

31Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 2000年代の後(After 2000s)大語彙連続音声認識(LVCSR) 20,000単語以上複数の話者 多言語と多アクセントスピーカー方法の変化(A shift Methodology) 悪条件

HMMに基づく音声認識からDNNベースの音声認識へ

Page 32: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識の現状

32

[https://www.economist.com/technology-quarterly/2017-05-01/language]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 33: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識+機械翻訳English-Japanese Lecture Translation

33Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 34: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識技術の利点Advantages of ASR

34Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 35: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

個々の制限に対するメリット

35Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 個々の制限メリット(Benefits for Individual Limitations):

[ASR by Dragon Naturally Speaking]

Page 36: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

世界中の言語 (World Languages)

36Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Count Percent Count Percent

Africa 2,110 30.5 726,453,403 12.2

Americas 993 14.4 50,496,321 0.8

Asia 2,322 33.6 3,622,771,264 60.8

Europe 234 3.4 1,553,360,941 26.1

Pacific 1,250 18.1 6,429,788 0.1

Totals 6,909 100 5,959,511,717 100

Living Languages Number of Speakers

Area

Lewis, M. Paul (ed.), 2009. Ethnologue: Languages of the World, Sixteenth edition.

Dallas, Tex.: SIL International. Online version: http://www.ethnologue.com/.

Page 37: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

多言語コミュニケーション

37Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[ATR/NICT多言語コミュニケーション]

Page 38: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識+機械翻訳Speech Translation

38[Sakti et al., 2008 / Sakti et al., A-STAR 2013]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 39: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

TED協議における音声認識 (ASR on TED Talks)

39Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 40: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

• コミュニケーションチャネル (Communication Channel)

高い能力を持つ手段(Capacity Channel)

40Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

モダリティModality

伝送速度Transmission Rate

練習Practice

他のタスクOther Tasks

手書きHandwriting 0.4 単語/秒 リテラシーLiteracy

できない(手と目忙しい)

タイピングTyping (by skilled typist)

1.6-2.5単語/秒 リテラシーLiteracy

できない(手と目忙しい)

音声Speech

2.0-3.6単語/秒 いらないNo

できる

[Pierce, et.al 1957]

Page 41: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

特別なトレーニングを必要としません

41Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

マシンを動かすために人間がうまれてから学んでいるスキルしか必要としない

[ASR Technology, Consumer Electronic Show, 2012]

Page 42: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声認識+高度道路交通システムASR & Intelligent Transport System

42

• サイバーカーズとのコミュニケーションCommunicating with Cybercars

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 43: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

サイバーカーズとのコミュニケーション

43[Sakti et al., 2015]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 44: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

パラダイムの変遷

44Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

1920 1950 1970 1980 1990 20001960 2010

ルールベースのASR(フォルマント周波数)

テンプレートマッチングによる単語認識(DTW)

HMMとN-グラムによる連続音声認識

ディープニューラルネットワーク(DNN)による連続音声認識

テンプレートマッチングによる単語認識(DTW)

HMMとN-グラムによる連続音声認識

ディープニューラルネットワーク(DNN)による連続音声認識

Page 45: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Part 2:テンプレートマッチングによる認識

Template-based ASR

45Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 46: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

テンプレートマッチングによる認識Template-based ASR

46Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Travel• I lost my passport!

• Where is the station?Basic

• Good Morning

• Have a nice day.

Shopping

• How much is this?

•Ten dollars.

Feature

Extraction

DTW

AlgorithmXs Ŵ

Recognized

Words

Hypothesis

Speech Waveform

Template

Page 47: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ダイナミックタイムワーピング (Dynamic Time Warping)

47Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• DTW(Dynamic Time Warping)マッチング

対応付けるべきフレーム同士を動的に探索しながら比較を

行うパターンマッチング手法

[Kawanami, lecture slide 2014]

Page 48: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

DTW vs ユークリッド距離

48Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• ユークリッド距離

Euclidean distance• Aligned one to one linearly

• ダイナミックタイムワーピングDynamic Time Warping• Can be non-linearly aligned

Page 49: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

マッチングパス (Matching Path)

49Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 入力音声と単語テンプレートの分析フレームの時系列を2軸とした平面を考える

• 対応づけてフレームの座標(=格子点)を結んだもの

[Kawanami, lecture slide 2014]

Page 50: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

マッチングパス (Matching Path)

50Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• マッチングパスは,何番目の格子点か: k を与えると格子点の座標を返す,

時間伸縮関数(Warping function)として記述できる

[Kawanami, lecture slide 2014]

Page 51: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

DTWアルゴリズム

51Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• DTW Algorithm類似度を測定します (Measuring similarity)

Initialization:

Recursion:

Termination (Time-normalized):

Path Backtracking

D(A:B) =g(𝐼,𝐽)

𝐶

C=I+J

Page 52: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

例 (Example)

52Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Kawanami, lecture slide 2014]

Page 53: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

例 (Example)

53Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Kawanami, lecture slide 2014]

Page 54: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

例 (Example)

54Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 55: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

例 (Example)

55Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Kawanami,

lecture slide 2014]

Page 56: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

連続音声認識 (Continuous ASR)

56Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• アルゴリズム

(a) 2段DP法

(b) Level Building法

単語数既知の場合に効果的

(c) One Pass DP法

単語数未知の場合に効果的

Page 57: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

2段DP法 (Two-level DP)

57Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• DPを2段階で行う

第1段階:

入力音声の始点m から単語テンプレートn について非対象パスに

よる終端フリーマッチング

[Kawanami, lecture slide 2014]

第2段階:

入力フレームの累積距離が最小になる単語の系列を探索する

Page 58: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Level Building 法

58Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 何番目の単語を処理しているか明示的にしてマッチングを行う 段数(単語数)が分かっている認識で効果的 (#words is known)

Ex: 電話番号認識 (Connected digit recognition)

処理のながれ (Flow of processing) 1段目

- 入力音声の先頭を始端としてマッチングパスを開始 単語テンプレートに対して順に非対象パス終端フリーDPマッチング(DP matching with word template)

- テンプレート終端に達したら,その入力フレームまでの最小累積距離と単語を記録(When reach the end, record the minimum score)

2段目(second level)以降- 入力フレームの初期値として,前段までの最小の累積距離を与える

(Start from score provide from previous level)- 各単語テンプレートについて端点フリーDPマッチングを行う (DP match)- 終端となったフレームに,その段の認識結果とそこまでの累積距離を記録

(When reach the end, record the minimum score) 最大段数までおわったら,終端からパスをバックトレースし,認識単語列を得る

(Back tracking)

Page 59: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Level Building 法

59Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 60: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ワンパスDP法 (One Pass DP)

60Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• ワンパスDP法:

単語数を決めておく必要がない

Page 61: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Part 3:統計モデルによる認識Statistical-based ASR

61Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 62: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計モデルによる認識 (Statistical-based ASR)

62Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Feature

Extraction

DTW

AlgorithmXs Ŵ

Recognized

Words

Hypothesis

Speech Waveform

Template

Travel• I lost my passport!

• Where is the station?Basic

• Good Morning

• Have a nice day.

Shopping

• How much is this?

•Ten dollars.

Feature

Extraction

Search

AlgorithmXs Ŵ

Recognized

Words

Hypothesis

Speech Waveform

Phone-Level

Matcher

Word-Level

Matcher

Sentence-Level

Matcher

Acoustic Model Lexicon Language Model

Text

Corpus

Speech

Corpus

TrainTrain

Statistical Learning

Page 63: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計モデルによる認識 (Statistical-based ASR)

63Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

/my speech/

“MY SPEECH”

/my/ /speech/

音声信号

単語 Words

音素 Phonemes

特徴 Features

文章 Sentences

音響モデル

AM

発音辞書LEX

言語モデルLM

HMM

state

HMM

言語レベル

Linguistic

Level

生理学レベル

Physiological

Level

音響レベル

Acoustic

Level

最も可能性の高い言葉

Page 64: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

特徴抽出(Feature Extraction)

64Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 特徴抽出 (Feature Extraction):単語識別のために本質的な特徴を抽出する (Extract essential features)

不要な情報を削除 (Remove unwanted information)

Analysis Unit / FrameFrame Transition

x1 x2 x3Feature Vector : Feature Space

c1 X1X2

X3X4

X16

X5

X6X7

X13

X10

X12

X9

X11 X15

X17

X14

X18

X19

c2

Page 65: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

特徴抽出(Feature Extraction)

65Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 特徴抽出 (Feature Extraction):単語識別のために本質的な特徴を抽出する (Extract essential features)

不要な情報を削除 (Remove unwanted information)

Page 66: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計モデルによる認識 (Statistical-based ASR)

66Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

音声信号

単語 Words

音素 Phonemes

特徴 Features

文章 Sentences

音響モデル

AM

発音辞書LEX

言語モデルLM

HMM

state

HMM生理学レベル

Physiological

Level

音響レベル

Acoustic

Level

最も可能性の高い言葉

Page 67: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音響モデル (Acoustic Model)

67Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 音響モデル (Acoustic Modeling):音声の特徴から言語の単位音にマッピング

隠れマルコフモデル(HMM)に基づくアポローチ Based on Hidden Markov Model (HMMs)

Gaussian Mixture

Model (GMM)

Mixture

weight

321

HMM

(phoneme

model)Analysis Unit / Frame

Frame Transition

x1 x2 x3Feature Vector :

Feature Space

c1 X1X2

X3X4

X16

X5

X6X7

X13

X10

X12

X9

X11 X15

X17

X14

X18

X19

c2

Page 68: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音素ベースのHMM

68Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 音素ベースのHMM (Phoneme-based HMM):

1 HMM associated to 1 phonemes

Number of HMM equal to Number of Phonemes (Including Silence)

Page 69: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

HMMの要素(Elements of HMM)

69Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• HMMの要素 State sequence of time length T

Transition probabilities from state i to state j

Observation symbol probability distribution in state j

The observed output sequence of time length T

Initial state distribution[Ellis, lecture slide, 2009]

HMM

Page 70: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

HMMデコード (HMM Decoding)

70Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• どのように最適な状態シーケンスを見つけるには?How to find the optimum state sequence? 与えられた (Given):

観測シーケンスとモデルパラメータthe observation sequence and model parameter

単一状態シーケンスの検索(最適)

Finding the single state sequence (optimum): 最大化するもの (Which maximizes):

Page 71: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ビタビアルゴリズム

71Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 最適なパスの確率Best Path Probability

• ビタビアルゴリズムViterbi Algorithm Initialization (𝑛 = 1; 1 ≤ 𝑘 ≤ 𝐾):

Recursion (2 ≤ 𝑛 ≤ 𝑁; 1 ≤ 𝑘 ≤ 𝐾):

Termination:

Path Backtracking:

𝛿1(𝑘) = 𝜋𝑘𝐵𝑘 x1

𝛿𝑛(𝑘) = max1≤𝑘≤𝑁

𝛿𝑛−1(𝑗)𝐴𝑗𝑘 𝐵𝑘 xn

The most likely state sequence probability at 𝑛 having x1, x2, … , x𝑛 and ending in state 𝑘

𝛿𝑛(𝑘) = 𝑝 x1, x2, … , x𝑛 , 𝑧1, z2, … , z𝑛−1 , 𝑧𝑛 = 𝑘|

𝜓1(𝑘) = 0

𝜓𝑛(𝑘) = argmax1≤𝑘≤𝑁

𝛿𝑛−1(𝑗)𝐴𝑗𝑘

The best score = max1≤𝑘≤𝑁

𝛿𝑁(𝑗) Ƹ𝑧𝑁 = argmax1≤𝑘≤𝑁

𝜓𝑁(𝑘)

Ƹ𝑧𝑛 = 𝜓𝑁(𝑘) Ƹ𝑧𝑛+1

Page 72: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ビタビアルゴリズム

72Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• ビタビアルゴリズムViterbi Algorithm

𝐴11=0.9𝐴21=0.2

𝒌 = 𝟏

𝒌 = 𝟐

𝒏 = 𝟏 𝒏 = 𝟐 𝒏 = 𝟑𝑯 𝑯 𝑻

𝜋1 = 0.6

𝜋2 = 0.4

𝐵1 𝐻 = 0.5 𝐵1 𝐻 = 0.5 𝐵1 𝑇 = 0.5

𝐵2 𝐻 = 0.3 𝐵2 𝐻 = 0.3 𝐵2 𝑇 = 0.7

𝐴11=0.9𝐴21=0.2

𝐴22=0.8 𝐴22=0.8𝐴12=0.1 𝐴12=0.1

𝛿1 1 = 0.6 ∗ 0.5 = 0.3

𝛿1 2 = 0.4 ∗ 0.3 = 0.12

𝛿2 1 = 𝑚𝑎𝑥 0.3 ∗ 0.9 , 0.12 ∗ 0.2 ∗ 0.5 = 0.135

𝛿2 2 = 𝑚𝑎𝑥 0.3 ∗ 0.1 , 0.12 ∗ 0.8 ∗ 0.3 = 0.029

𝛿3 1 = 𝑚𝑎𝑥 0.135 ∗ 0.9 , 0.029 ∗ 0.2 ∗ 0.5= 0.0608

𝛿3 2 = 𝑚𝑎𝑥 0.135 ∗ 0.1 , 0.029 ∗ 0.8 ∗ 0.7]= 0.0162

𝑝 X| = max[0.0608, 0.0162] = 0.0608

Best state sequence𝟎. 𝟑

𝟎. 𝟏𝟐

𝟎. 𝟏𝟑𝟓

𝟎. 𝟎𝟐𝟗

𝟎. 𝟎𝟔𝟎𝟖

𝟎. 𝟎𝟏𝟔𝟐

Page 73: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音声入力からのHMM状態に

73Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• From Speech to HMM States

Page 74: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計モデルによる認識 (Statistical-based ASR)

74Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

/my/ /speech/

音声信号

単語 Words

音素 Phonemes

特徴 Features

文章 Sentences

音響モデル

AM

発音辞書LEX

言語モデルLM

HMM

state

HMM

言語レベル

Linguistic

Level

生理学レベル

Physiological

Level

音響レベル

Acoustic

Level

最も可能性の高い言葉

Page 75: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

発音辞書 (Pronunciation Lexicon)

75Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 発音辞書 (Pronunciation lexicon):

音素から単語にマッピング

例:数字の発音

Page 76: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音素ベースのHMM+発音辞書

76Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 例 (Example):

Page 77: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計モデルによる認識 (Statistical-based ASR)

77Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

/my speech/

/my/ /speech/

音声信号

単語 Words

音素 Phonemes

特徴Features

文章Sentences

音響モデル

AM

発音辞書LEX

言語モデルLM

HMM

state

HMM

言語レベル

Linguistic

Level

生理学レベル

Physiological

Level

音響レベル

Acoustic

Level

最も可能性の高い言葉

Page 78: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

言語モデル (Language Model)

78Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

•言語モデル (Language Modeling):

言語の文字列の傾向を数値的に表すモデルです

Example:

確率的言語モデルによれば

私 は 学校 へ 行きます私 わ 学校 へ 行きます私 は 学校 へ 生きます

P(私 は 学校 へ 行きます)>P(私 わ 学校 へ 行きます)

Page 79: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計的言語モデル

79Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• N-gram Language Modeling:

Example:

Often not enough data to estimate probability of long word sequence

Solution: Reduce complexity

Page 80: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

確率推定 (Probability Estimation)

80Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 確率推定

Example:

Page 81: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

LMの効果 (Effect of LM in Recognition)

81Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 82: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

サーチアルゴリズム (Search Algorithm)

82Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• サーチアルゴリズム (Search Algorithm)

すべての可能な単語列Wの中で最も確率の高い単語列を見つける

Bayes Rule:

Page 83: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

確率推定 (Probability Estimation)

83Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 84: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音素ベースのHMM+発音辞書

84Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• 例 (Example):

Page 85: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

連続音声認識

85Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• Connected Word Recognition:

Unigram:

Bigram:

Page 86: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

連続音声認識

86Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• Trellis Network:

Page 87: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Part 4:ディープラーニングによる認識

Deep learning-based ASR

87Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 88: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

統計的音声認識(ASR)

88

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

/my speech/

“MY SPEECH”

/my/ /speech/

Feature Extraction

SearchAlgorithm

最も可能性の高い言葉音声信号

音素 単語 文章

音響モデル 発音辞書 言語モデル

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 89: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

深層学習ベースの音声認識(ASR)

89Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

X1X2X3X4… …XT-1XT

/m/ /a/ /i/ /s/ /p/ /ee/ /t/ /sh/

/my speech/

“MY SPEECH”

/my/ /speech/

X1X2X3X4… …XT-1XT

“MY SPEECH”

Deep Learning

Important factors of Deep Learning: Simplify many complicated

hand-engineered models Let the networks find the way

that map from speech to text

Page 90: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

フレームベースのDNN

90Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 91: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ハイブリッドHMM/DNN:特徴-セノン(HMM状態)

91Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 92: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ハイブリッドHMM/DNN:特徴-セノン(HMM状態)

92

[Dahl et al. 2012]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 93: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ハイブリッドHMM/CLDNN

93

Direct mapping from features to phoneme

Standard HMM-GMM:o Extract robust features

o Model temporally via GMM/HMM system

o Training GMM/HMM model discriminatively

CLDNN:o CNNs for extract features

o LSTM to perform temporal modeling

o DNN layers for better discrimination[Sainath et. al 2015]

Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 94: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

エンドツーエンドASR (End-to-End ASR):Wav-文字

94Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 95: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

接続主義時間分類Connectionist Temporal Classification

95Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Graves et. al 2006]

Page 96: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

接続主義時間分類Connectionist Temporal Classification

96Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• CTC Gradient DescentのトレーニングCTC

Forward-Backwardアルゴリズムを使用して、

希望の出力シーケンスに一致する反復的に拡張する接頭辞と接尾辞

Iteratively expanding prefixes & suffixes that match the desired output sequence, using Forward-Backward algorithm

Page 97: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

時間遅れニューラルネットワークTime Delay Neural Network

97Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• TDNN 2D入力

Early model of CNN

[Waibel 1987]

Page 98: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

畳み込みニューラルネットワークConvolutional Neural Network

98Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

•フィーチャーマップ (Feature Maps) Use inputs that preserve locality in both axes of frequency and time.

[Amdel-Hamid et al. 2014]

Page 99: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音素認識のためのCNNCNN for Phoneme Recognition

99Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Amdel-Hamid et al. 2014]

Page 100: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Sequence-to-Sequence (Seq2Seq)

100Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Source: karpathy.github.io]

Page 101: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Seq2Seq ネットワークと Attention

101Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

[Chorowski et. al 2015, Bahdanau et. al 2015]

Output

Hidden state

Input

Hidden

state

Context is a weighted sum of input

Weight is normalized of score

Alignment model which scores

how well the inputs & outputs match

Page 102: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

音素認識のためのSeq2SeqSeq2Seq for Phoneme Recognition

102Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Attention Generator:

At each time step t, an MLP

combines the hidden state with all the

input vectors to compute the attention

weights α

[Bahdanau et. al 2016]

Page 103: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Listen, Attend, and Spell (LAS)

103Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• LAS 2つのコンポーネント (Two components)

リスナー (Listener):

フィルタバンクスペクトルを入力として受け

入れるピラミッド型RNNエンコーダ

RNN encoder that accepts filter bank spectra as inputs

スペルラー (Speller):

出力として文字を出力するRNNデコーダRNN decoder that emits characters as outputs

[Chan et. al 2016]

Page 104: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Wav2Text

104Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• Wav2Text生の音声波形からテキストの転写に直接変換する

[Tjandra et. al 2017]

Page 105: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

敵対的生成ネットワークGenerative Adversarial Network

105Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• GAN 生成ネットワーク(generator)

生成側がイメージを出力し (Tries to produce fake but realistic-looking samples) 識別ネットワーク(discriminator)

識別側がその正否を判定する (Tries to distinguish between real and fake samples) 生成側は識別側を欺こうと学習し、識別側はより正確に識別しようと学習する

Train them against each other

Generator tries to minimize it, Discriminator tries to maximize it.

Page 106: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

頑強な音声認識のためのGANGAN for ASR

106Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• Encoder as Generative Model

[Sriram et. al 2017]

Page 107: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Part 4:ASRシステムの評価

Evaluation of ASR System

107Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Page 108: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

ASRシステムの評価

108Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• ASRシステムの評価 (Evaluating ASR System) 3種類のエラー(Three types of errors)

置換 (Substitutions) :間違った単語が認識されている削除 (Deletion) :単語が省略されている挿入(Insertions) :余分な単語が認識される

ワード誤り率 word error rate (WER)

where:

N = 発話中の単語の数 (number of words)

C(x) =エラーの数

Page 109: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Minimum Edit Distance アルゴリズム

109Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

• Minimum Edit Distance アルゴリズム類似度を測定します (Measuring similarity)

Initialization:

Recursion:

Page 110: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

例 Example

110Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

CER =𝐶 𝑠𝑢𝑏𝑠 +𝐶 𝑑𝑒𝑙 +𝐶(𝑖𝑛𝑠)

𝑁=

3

5x100% =0.6

Page 111: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

人間の音声認識 対 機械音声認識

111Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理| November 14th, 2018

Human at least 5 times better than machine

Far more robust in noisy and conversational speech

Page 112: 第5回音声言語処理 音声認識理論と音声認識システム - NAIST · 2018-11-14 · 講義の構成(Syllabus) 2 Sakriani Sakti @ AHC Labs, NAIST, Japan |音声言語処理|

Thank You