30
HMM 기기 기기기기기기 기기기기기 기기기 기기기기기 기기기기기기기기기

HMM 기반 연속음성인식 베이스라인 시스템

  • Upload
    zelia

  • View
    129

  • Download
    0

Embed Size (px)

DESCRIPTION

HMM 기반 연속음성인식 베이스라인 시스템. 서강대학교 음성언어처리연구실. 차 례. 개 요 언어 모델 네트워크 인식 네트워크 토큰 전파 방식의 디코딩 실험 결과 결 론. 개 요. HMM 기반의 연속 음성 인식 시스템. 개 요. HMM 기반의 연속 음성 인식 시스템 각종 지식원 (knowledge source) 음향 , 어휘 , 언어 모델 및 영역 의존 지식 학습 정도에 따라 탐색 공간의 해상도 결정 시스템의 인식률에 결정적인 영향 디코더 (decoder) - PowerPoint PPT Presentation

Citation preview

Page 1: HMM  기반 연속음성인식 베이스라인 시스템

HMM 기반 연속음성인식베이스라인 시스템

서강대학교음성언어처리연구실

Page 2: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 2

차 례

개 요언어 모델 네트워크인식 네트워크토큰 전파 방식의 디코딩실험 결과결 론

Page 3: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 3

개 요

HMM 기반의 연속 음성 인식 시스템

디코더

언어 모델

Other KS

“ 국내 환경 …”안 에 는

음향 모델

음성 패턴

Page 4: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 4

개 요

HMM 기반의 연속 음성 인식 시스템 각종 지식원 (knowledge source)

음향 , 어휘 , 언어 모델 및 영역 의존 지식 학습 정도에 따라 탐색 공간의 해상도 결정

시스템의 인식률에 결정적인 영향

디코더 (decoder) 탐색 공간 ( 인식 네트워크 ) 의 효율적인 구성 및

운영 탐색 오류의 최소화 및 최적의 단어열 결정

Page 5: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 5

개 요

탐색 공간의 효율적인 구성 및 운영 언어 모델 네트워크 (LM network)

FSN 형태의 언어 모델 인터페이스 대부분의 언어 모델에 대해 공통된 인터페이스를 제공 언어 모델에 대한 디코더의 의존성 최소화

0

1

2

a/p(a|0)

b/p(b|0)

b/p(b|a) a/p(a|b)

p(a|0)

p(b|0)

p(a|b)p(b|a)

Page 6: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 6

개 요 언어 모델 네트워크

점진적인 인식 네트워크의 생성 FSN 레벨의 이론적인 접근

네트워크 결합을 통해 상황에 따른 언어 모델의 선택 사용 네트워크 최적화 ( 최소화 ) 알고리듬의 적용

토큰 전파 방식의 Viterbi 디코더 구현 토큰 단위의 동적인 탐색 공간으로 재구성

Page 7: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 7

언어 모델 네트워크

언어 모델 네트워크의 정의 단어열 W=w1w2wn 에 대한 확률 값

hi : 언어 모델 히스토리 (history)

p(wi|hi) : 언어 모델에서 제공

iii

iii

nn

n

hwpwwwp

wwwpwwpwp

wwwpp

)|()|(

)|()|()(

)((W)

11

11121

21

Page 8: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 8

언어 모델 네트워크 언어 모델 p(wi|hi)

히스토리는 동치 관계 (equivalence relation) 에 따라 동치 부류 (class) 로 분할 (partition)

단어 trigram 최근 두개의 단어가 동일하면 동치 관계 성립

학습 상의 데이터 부족 문제를 보완

동치 관계에 따라 다양한 언어 모델 설계 가능 디코더가 언어 모델을 효율적으로 사용할 수 있는

방법 ( 인터페이스 ) 필요

Page 9: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 9

언어 모델 네트워크 언어 모델 컨텍스트 (LM context)

히스토리 h 와 입력 단어 w 의 쌍 (h, w) 연속된 단어 입력에 따라 다음 컨텍스트로 전이

유한 개의 컨텍스트 입력 단어에 따른 결정적 전이

모든 언어 모델에 내재

언어모델 컨텍스트

유한상태네트워크

Page 10: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 10

언어 모델 네트워크

언어 모델 네트워크의 구성 노드 (node)

언어 모델 컨텍스트 네트워크 시작 및 종료 노드

아크 (arc) 컨텍스트의 히스토리와 입력 단어에 따른 확률 모든 노드는 네트워크 종료 노드로의 전이 포함

단어열 W 의 확률값 각 단어에 해당하는 아크의 가중치를 누적

Page 11: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 11

언어 모델 네트워크

Backoff 언어 모델의 사용 학습에 나타나지 않은 단어열의 처리

0)(Nif

0)(Nif

)|()(

)|()|(

h,w

h,w

hwh

hwhwp

h’ : h 를 backoff 한 히스토리, : 히스토리에 따른 조건부 확률(h) : 히스토리 h 에 대한 backoff 가중치

Page 12: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 12

언어 모델 네트워크 Backoff 확률의 적용

Backoff 아크 ( 전이 ) 히스토리 h 로부터 backoff 된 히스토리 h’ 으로의

전이 입력 단어 w 에 대해 두 번의 전이

Backoff 전이 + 단어에 따른 컨텍스트 전이 Backoff 전이는 입력단어를 사용하지 않는 null arc

상태 최소화 알고리듬 언어 모델 네트워크 완성 후 적용

Page 13: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 13

두 단어 {a, b} 에 대한 full bigram network

(a) (b)

Page 14: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 14

Backoff 된 trigram network

p(•) : LM 확률 , b(•) : backoff 가중치 점선 : backoff (null) arc

Page 15: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 15

인식 네트워크

인식 네트워크의 생성 Network instantiation

아크에 포함된 단어를 사전의 HMM 단위 발음열로 대치 (substitution)

트리 구조의 인식 네트워크 LM 네트워크의 노드로부터 전이 가능한

단어들을 하나의 트리로 구성 LM 네트워크의 아크를 이용하여 트리와 트리

연결

Page 16: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 16

인식 네트워크

LM factorization 기법 언어 모델 값을 아크에

분산 저장(a) 원본 네트워크(b)

(c)

0.6

0.3

0.10.1

0.30.30.3

0.60.60.6

0.6

1.0

1.0

1.00.33

1.01.00.5

1.01.01.0

0.6

0.6

0.3

0.11.0

1.01.01.0

1.01.01.0

1.0

0.6

0.3

0.10.1

0.30.30.3

0.60.60.6

0.6

1.0

1.0

1.00.33

1.01.00.5

1.01.01.0

0.6

0.6

0.3

0.11.0

1.01.01.0

1.01.01.0

1.0

(a)

(b)

(c)

)(max)()child(

xparcparcx

))((

)()(

arcparentp

arcparcp

Page 17: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 17

토큰 전파 방식의 디코딩

토큰 전파 알고리듬 토큰 (Token)

활성화된 HMM state 현재까지의 누적

확률값 및 백트래킹 정보 유지

각 state 마다 최대 확률의 토큰 유지

si

sj

sk

+aik

+ajk

+akk

+bk(ot)

Page 18: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 18

토큰 전파 방식의 디코딩

탐색 공간의 동적 구성 Beam pruning

계산량 감소를 위해 정답과 거리가 먼 토큰 탈락 Viterbi 알고리듬은 pruning 에서 살아남은 토큰을

대상으로 진행 2 차원의 그리드 (grid) 대신 , 토큰 리스트를 사용한 Vit

erbi decoder 구현

Token ordering property 리스트 내 토큰의 위치는 전파방향과 일치해야 함

Pruning 으로 탈락한 토큰도 전파 과정에서 리스트에 다시 추가 될 수 있다 .

Page 19: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 19

Implementation Heuristic

Path reclamation 정기적으로 도달 불가능한 path 들을 회수한 후

나중에 재사용Token recycling 토큰 리스트로부터 탈락되었을때 재사용 리스트에

저장한 후 나중에 재사용Central memory management Porting HTK’s memory manger for efficiency

Cached computation of likelihood 동일 HMM/state 가 한 프레임에서 여러 번 사용될

수 있으므로 처음에만 계산한 후 , 캐쉬에 저장

Page 20: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 20

Advanced Features

Semi-dynamic network decoder 네트워크 및 언어모델을 필요한 부분만

메모리에 유지할 수 있는 방법 전체 인식 네트워크를 subnetwork 단위로

분할 후 , subnetwork 들을 caching 기법으로 관리

각 subnetwork 는 다른 subnetwork 과 독립적인 구조를 가진다 .

Page 21: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 21

Advanced Features Subnetwork 단위의 분할

p(a|0)

p(b|0)

p(a|b)p(b|a)

p(a|0)

p(b|0)

p(a|b)p(b|a)

Original network

Partition into subnetwork

Write on disk contiguously

Page 22: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 22

0

1

7

2

9

13

10

3

5

-3.8

-7.1

-1.3

0.0

0.0

-0.6

-1.4

0.0

4

6

8

12

14

11

0.0

0.0

0.0

0.00.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

arc0

arc1

arc23

arc21

(a)

arc2

arc30

1

7

2

9

13

10

3

5

-3.8

-7.1

-1.3

0.0

0.0

-0.6

-1.4

0.0

4

6

8

12

14

11

0.0

0.0

0.0

0.00.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

0.0

arc0

arc1

arc23

arc21

(a)

arc2

arc3

0 1 ... 23

offset to node set

offset to arc set

offset to weight set

0 1 ... 4

arc0's weight

0 ...0

2

0

2

node0

node0's arc index pair

node0's weight index pair

12

2

2

1 14

21

3

4

0

arc23's target tree(subnetwork) index

arc set weight set node set

arc0's targetnode index

(b)

0 1 ... 23

offset to node set

offset to arc set

offset to weight set

0 1 ... 4

arc0's weight

0 ...0

2

0

2

node0

node0's arc index pair

node0's weight index pair

12

2

2

1 14

21

3

4

0

arc23's target tree(subnetwork) index

arc set weight set node set

arc0's targetnode index

(b)

•Node, arc, weight 들을 각각 node set, arc set, weight set 으로 packing•Node 등은 pointer (physical addr.) 대신 index 로 access•노드는 weight 여부에 따라 가변적인 길이를 가짐

Page 23: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 23

실험 결과실험 환경 학습 데이터베이스

낭독체 15,000 문장 (25 시간 분량 , 평균 20 형태소 /문장당 )

음향 모델 11421 개의 트라이폰 , 4855 개의 tied state 12 Gaussian mixture

발음 사전 22622 단어 , 28243 엔트리 ( 다중 발음열 )

언어 모델 Absolute discounting method

테스트 : 154 문장 (no OOV) Perplexity : 151(bigram), 131(trigram)

Page 24: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 24

실험 결과

인식 결과 및 디코딩 비용

74

76

78

80

82

84

b300 b250 b200 b175 b150 b125 b100beam size

(acc

urac

y)인

식률

bigram

trigram

74

76

78

80

82

84

b300 b250 b200 b175 b150 b125 b100beam size

(acc

urac

y)인

식률

bigram

trigram

0

50000

100000

150000

200000

250000

300000

b300 b250 b200 b175 b150 b125 b100

beam sizeH

MM

개수

0

5

10

15

20

25

30

RT

F

bigram/최대HMM수 trigram/최대HMM수

bigram/RTF trigram/RTF

0

50000

100000

150000

200000

250000

300000

b300 b250 b200 b175 b150 b125 b100

beam sizeH

MM

개수

0

5

10

15

20

25

30

RT

F

bigram/최대HMM수 trigram/최대HMM수

bigram/RTF trigram/RTF

(a) 인식률 (b) 디코딩 비용

Page 25: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 25

실험 결과 인식 결과

최대인식률 81.01%/3.22RTF (bigram, beam size 150) 82.57%/5.02RTF (trigram, beam size 175)

인식 시간은 최대 HMM 개수와 비례 빔크기 125 까지는 별다른 인식률의 손실없이

인식 시간이 효과적으로 감소 80.45%/1.90RTF (bigram, 125) 81.61%/1.88RTF (trigram, 125)

실시간 인식 조건이 주어진 경우 75.06%/1.02RTF (bigram, 100) 76.78%/0.96RTF (trigram, 100)

Page 26: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 26

실험 결과

Subnetwork-based Representation 네트워크 크기 비교

Count Size (MB)

node arc base sub

trigram 1,455,979 5,071,048 77.5 47.7

Page 27: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 27

실험 결과 Dynamic Management Cost

Page 28: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 28

실험 결과

Overall Behavior

Page 29: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 29

결 론

효율적인 탐색 공간의 구성 및 운영 언어 모델 네트워크

다양한 언어 모델을 FSN 으로 표현 언어 모델과 다른 모델의 통합 용이

통일된 언어 모델 인터페이스 토큰 전파 방식의 디코딩

Pruning 에 따른 동적인 탐색 공간 재구성 최대 HMM 개수에 따른 인식 시간

Page 30: HMM  기반 연속음성인식 베이스라인 시스템

SGU-SLP 30

결 론 탐색 공간 통합에 따른 메모리 요구량 증가

문제 해결 언어 모델 크기에 기인한 본질적인 문제점 Semi-dynamic network 디코딩 기법

LM 및 네트워크 caching

혹은 , 다단계 탐색 방법 (multi-pass search) 도입 응답시간 (response time) 의 최소화가 관건