Notice
Recent Posts
Recent Comments
Link
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

프로그래머 메로니

음성인식의 기본 문제 정의와 베이즈 룰 본문

음성인식&기계학습

음성인식의 기본 문제 정의와 베이즈 룰

메로니트 2017. 7. 10. 22:29



본 포스트는 강의와 교재 리뷰하고 덧붙인 포스트입니다.

출처는 본문의 마지막에 있습니다.



먼저, 음성인식의 문제에 대해 정의 하기전에 가장 그럴 듯한 설명(Most likely explanation)에 대해 알고 가자.


Most likely explanation : 일련의 관찰들이 주어졌을 때, 그러한 관찰들이 발생하게 될 가능성이 가장 큰 일련의 상태들을 구하는 것. 즉,

$$ argmax_{x_{1:t}}P(x_{1:t}|e_{1:t})$$

$$x_t : 시간\,t에서의\, 상태\, 변수$$

$$e_t : 시간\, t에서\, 관찰\, 가능한\, 증거\, 변수$$



이제 음성인식의 문제를 정의 하자면 다음과 같다.


주어진 음성 발화를 가장 잘 설명하는 단어열을 찾는 문제.


위에서 보았듯이, 이는 관찰열 $e_{1:t}$가 주어졌을 때 가장 유망한 상태 변수열 $x_{1:t}$를 찾는 문제이다 음성 인식에서는 상태변수가 단어이고 관찰은 소리이다. 

좀 더 정확히 말하면, 관찰은 음향 신호에서 추출한 특징의 벡터다. 즉 음성인식을 수식으로 나타내면


$$arg_wmaxP(W|O)$$ 

$$W: w_1w_2...w_N$$

N개의 단어들로 이루어진 문장

$$O : o_1o_2...o_T$$

T개의 window로부터 생성된 13차 vector sequence.


 그런데 여기서 문제가 발생한다. 

$$P(W|O) = \frac{P(W\wedge O)}{P(O)}$$ 

이고 발생 가능한 $P(O)$의 가지 수가 무한대이기 때문에 이 식은 구할 수 없는 식이 되어 버리고 만다. 

그래서 Bayes' Rule을 적용하여 변환하 도록 하여 보자 




Bayes' Rule

베이즈 정리는 1740년대의 영국의 목사인 토머스 베이즈(Thomas Bayes)가 정립한, 조건부 확률에 대한 수학적 정리이다.

사건 A가 있고 사건 B가 있을 때 사건 B가 일어난 것을 전제로 한 사건 A의 조건부 확률을 구하고 싶다. 그런데 지금 알고 있는 것은 사건 A가 일어난 것을 전제로 한 사건 B의 조건부 확률, A의 확률, B의 확률뿐이다. 그럴 때 다음과 같이 구할 수가 있다.


$$P(A|B) = {P(A)P(B|A)\over P(B)} = {P(A)P(B|A)\over {P(A)P(B|A)+P(A^c)P(B|A^c)}}$$


출처 : 나무위키 



언뜻 보기에 유용해 보이지 않는 이 규칙은 실제에서는 매우 유용하게 적용 될 수 있다. 


의사는 진단을 할 때 병에 걸려서 온 환자가 증상을 호소하는 비율을 알고 있다. 그럴 때 의사는 증상으로 부터 병을 앓고 있을 확률을 계산해야 한다. 

예를 들어 의사는 뇌막염에 걸린 환자의 70%가 목이 뻣뻣한 증상을 호소한다는 점을 알고 있다. 또한 의사는 환자가 뇌막염에 걸렸을 사전 확률이 1/50,000이고 임의의 환자가 목이 뻣뻣할 사전 확률은 1%라는 사실을 알고 있다. 


$$s : symptoms,\,증상,\, 목이\,뻣뻣함$$

$$m : mobility\, rate\,of\,disease, 발병율\,이\,문제에서는\,1/50000$$


$$P(s|m)=0.7$$

$$P(m)=1/50000$$

$$P(s)=0.01$$

$$P(m|s)= {P(s|m)P(m)\over P(s)} = {0.7\times 1/50000 \over 0.01} = 0.0014$$


즉 목이 뻣뻣한 환자가 뇌막염에 걸렸을 확률은 0.014%이다. 뇌막염에 걸린 환자의 70%가 목이 뻣뻣함을 호소 하지만 이 확률이 곧 뇌막염일 확률은 아닌 것이다.


\displaystyle P(A|B) = {P(A)P(B|A)\over P(B)} = {P(A)P(B|A)\over {P(A)P(B|A)+P(A^c)P(B|A^c)}}$P(A|B)$를 구하려 할 때 $P(B|A)$를 알고 있다면 $P(A)$와 $P(B)$를 통하여 이를 구할 수 있다.


다시 음성인식의 문제로 돌아가서 Bases' Rule을 적용해 보면


$$arg_wmaxP(W|O) = arg_wmax{P(O|W)P(W)\over P(O)} = arg_wmaxP(O|W)P(W)$$


$$즉,\, arg_wmaxP(O|W)P(W)$$


여기서 음성인식 시스템 구성의 핵심요소 3가지를 알 수 있다. 

$P(O|W)$ :  음향 모델

$P(W)$ : 언어 모델

$arg_wmax$ : 디코딩 네트워크 




참고 및 출처 

인공지능. 2: 현대적 접근방식 3판 - 스튜어트 러셀  , 피터 노빅 지음 : 13장, 23장



'음성인식&기계학습' 카테고리의 다른 글

마르코프 체인(markov chain) - 1  (0) 2017.07.18
공유하기 링크