본문 바로가기
Spoken Language Processing

음성언어처리, 인간의 청지각과정, 베이즈정리, HMM 에 대하여

by 햇농nongnong 2022. 3. 10.

<1> speech <-> text <-> interpretation 의 전환 과정을 다루는 음성언어처리의 연구 분야

- 음성언어처리음성신호처리자연언어처리, 그리고 언어학이 융합된 연구분야이다. speech에서 text로 전환되는 과정에서 '음성 인식'이 이루어지고, 그 반대 과정에서 '음성 합성'이 이루어진다. 그리고 이 두 과정을 연구하는 분야'음성신호처리'이다. text 에서 interpretation 으로 전환되는 과정에서 '텍스트 이해' 가 이루어지고, 그 반대 과정에서 '텍스트 생성' 이 이루어진다. 그리고 이 두 과정을 연구하는 분야가 '자연언어처리' 이다. speech 에서 interpretation 으로 전환되는 과정에서 음성언어 이해가 필요하고, 그렇게 해서 interpretation 이 되면 다시 speech 로 음성언어생성이 가능하다. 그리고 음성언어를 이해하는 과정에서 '언어학'의 이론들이 필요하다. 음성, 텍스트, 이해의 연결에 따라 기계번역자동통역 등으로 응용될 수 있다.

 

* 음성언어처리 분야 연구에서 언어학과 공학의 학제적 연구가 필요한 이유

- 난이도가 낮은 음성인식과 음성합성은 speech signal 이 가지고 있는 특성만을 신호처리 기법을 통해 처리가 가능하지만, 높은 수준으로 처리하기 위해서는 speech signal 만을 입력으로해서는 할 수 없다. 언어학의 기초 이론을 바탕으로 이해 과정을 거쳐야 음성 언어로서 높은 수준의 처리가 가능하다.

- 음성을 단순히 텍스트로 받아쓰기하는 것 뿐만 아니라 어떤 내용인지 이해하는 과정에서 언어로서 들어온 입력을 해석해야하고, 음성학, 의미론 등의 언어학 기초 이론을 바탕으로 해석할 수 있다. 언어학에서 다루는 speech sound 에서 의미까지 연결시키는 과정은 그 현상을 설명하는 이론이 필수적이고, 음성언어이해를 위한 언어학과 공학의 학제적 연구가 필요한 것이다.

- 예를 들어, 컴퓨터에 인간의 언어처리 능력을 넣어주기 위해서 어떤식으로 해야하는지 연구하는 전산언어학의 경우나 여러 응용언어학들의 경우에도 언어학 기초 이론들을 바탕으로 응용이 이루어진다. '자동통역'의 경우에도 한국어 음성에서 한국어 텍스트로 받아쓰기 한 후, 한국어 텍스트가 어떤 내용을 가지고 있는지 이해 과정을 거치고, 영어로 텍스트 생성, 음성 합성을 통해 english speech 로 변환하는 통역이 이루어진다. 이런 모든 언어를 바탕으로 한 응용을 위해서는 공학 기술과 언어 이해를 위한 언어학의 학제적 연구가 필요하다.

 

<2> 인간의 음성생성 과정

* LPC 모델 - 인간의 조음기관 구조를 바탕으로 개발한 계산모델

 

- 인간의 음성생성 과정은 처음에 횡격막이 피스톤 운동을 하면서 공기 압력을 성대쪽으로 불어 넣어 폐에서 기류가 생성되는 발동 과정을 거친다. 그 이후 기류가 후두를 통과하면서 성대의 작용에 의해 1차적으로 변형되는 발성 단계를 거치고, 그 이후 후두를 통과한 기류가 성도를 통과하면서 인강, 비강, 구강 등을 울리는 조음 단계를 통해 구체적인 말소리가 생성된다. 이 조음 과정을 더 세분화시킨 수학적인 모델LPC 모델인데, LPC 모델의 앞부분은 sound source, 중간은 vocal tract, 뒷부분은 speech output 을 나타낸다.

 

 

 

- sound source 에서는 유성음, 무성음을 따로 모델링하고, 유성음시간에 따라 공기압력이 들어가는데, 이 discrete time impulse 성분들이 DT impulse generator 블록에서 만들어진다. 그 다음 각각의 음소마다 period 가 달라지는데 이게 pitch period 라는 P 파라미터로 들어가고, 그 다음 glottal filter 를 통해 인후부 쪽의 소리가 변형되는 것을 모델링한다. 그 다음 gain 을 통해 소리의 크기를 조절한다. 이렇게 pulse 가 들어가고, pitch를 조절하고, 소리의 크기를 조절하여 유성음에 대한 모델링이 만들어지고, 무성음은 noise generator, 즉 잡음을 생성하는 블록으로 모델링이 된다. 그 다음 유성음이냐 무성음이냐 sound source 를 선택하는 스위치가 있고, 유성음이든 무성음이든 소리의 크기는 gain 을 통해 곱해준다. 그 다음 조음 시스템vocal tract filter, lip radiation filter 에서 입술이 안테나 역할을 하면서 radiation 이 어떻게 되느냐를 모델링한다. 그 이후 speech signal 이 나오게 된다. 

 

* 음성 생성과정의 세 단계 : 발동, 발성, 조음

 

- 발동폐에서 기류가 생성되는 단계로, 폐에서 발동된 기류공기의 흐름이고, 아직 말소리의 성격을 띠지 않는다.

- 발성기류가 후두를 통과하면서 성대의 작용에 의해 1차적으로 변형되는 단계로, 이제 말소리의 기본 성격을 띠게 된다. 하지만 아직 특정 음가를 가진 말소리로 바뀌지는 않는다.

- 조음후두를 통과한 기류성대 위의 성도를 통과할 때 성도를 울리면서 소리 값을 가지게 되는 2차 변형 단계이다. 성도가 어떤 모양을 하고 있느냐에 따라 말소리의 음가가 형성되고, 이 조음 단계를 통해 우리가 알아듣는 구체적인 말소리의 소리 값이 만들어지게 된다.

 

* 유성음, 무성음, 비음, 자음 및 모음의 발화

 

- 횡격막이 피스톤 운동을 해서 주기적인 공기 압력 변화를 성대 쪽으로 불어 넣었을 때, 성대가 밑으로 내려와 있어 소리가 통과하는 길을 막아, 공기의 압력이 성대를 밀치고 올라가면서 성대가 떨리며 발화되는 것이 유성음이다.

- 무성음의 경우, 성대가 관 있는 곳에 딱 달라붙어 공기 압력이 지나가면서 그냥 통과하게 되어 성대를 울리지 않게 된다.

- 유성음에는 모음과 유성자음이 있고, 무성음은 주로 자음인데, 모음 폐로부터 나오는 기류가 조음기관의 장애를 받지 않고 입 밖으로 탈출하면서 만들어지고, 자음조음 기관에서 기류의 흐름에 방해가 일어나면서 만들어진다..

- 비음의 경우, 공기 압력이 성대와 인강을 통과한 후 연구개가 열리면 공기 압력이 비강으로 올라갈 수 있는데, 비강에서 소리가 울리면서 코로 소리가 나게 된다. 

 

* 피치

 

유성음을 발성할 때 성대가 진동하는 주파수기본 주파수, fundamental frequency(F0) 라고 하는데, 이 기본 주파수우리가 인지하는 소리의 높낮이에 영향을 미치는 요소이다. 이 때 기본주파수 F0의 역수 성대 진동의 주기pitch 라고 한다. F0횡격막에서 성대쪽으로 올라오는 공기 압력이 어떠한 주기로 변하느냐를 나타내기 때문에 sound source 의 특성을 반영한다.

 

 

* 포만트

 

vocal tract소리값을 만들어 주는 소리통 역할을 하는데, 소리통의 특성에 따라서 공명이 이루어지는 주파수 값들이 달라진다. 이 때 공명이 일어나는 주파수 값포만트라고 하고, 이 포만트는 vocal tract 의 모양에 따라서 달라진다. 각각의 음소별로 성도의 모양이 달라지기 때문에 이 포만트의 위치가 소리통의 구조를 설명하는 파라미터가 될 수 있고, 음소의 특성을 설명해줄 수 있다.

 

 

<3> 인간의 청지각 과정

* 주파수 분석 음향신호처리 - 달팽이관

 

- 바깥에서 소리가 들어오면 여러 방향에서 들어오는 소리들을 잘 모을 수 있도록 만들어진 귓바퀴를 통해서 소리가 모인다. 소리를 모아 놓으면 air pressure 이 외도관을 타고 고막으로 전달이 되어 고막을 진동하게 되고, 고막이 진동하면 고막에 연결되어 있는 추골, 침골, 연골이 진동하게 된다. 연골들바깥에서 들어오는 소리의 압력 변화를 mechanical vibration으로 변환시켜 뼈의 진동으로 바꾸어준다. 그리고 그 연골들이 달팽이관의 입력을 받는 stapes 에 연결이 되고, 여기서 기계적인 진동이 일어나 이 진동의 파형과 압력의 변화가 달팽이관을 따라서 전달이 된다. 그러면서 basilar membrane(기저막)이 출렁대며 진동하고, 그 다음 막에 연결된 청각신경들이 기저막의 진동을 센싱해 뇌로 전달해준다. 달팽이관에 전달되는 진동패턴을 가지는데, 달팽이관의 기저막 앞 부분말소리의 고주파 성분을 탐지하는 센서 역할을 해서 고주파 성분을 필터링뇌로 전달해주고, 뒷부분저주파 성분들을 센싱, 필터링뇌로 전달해준다. 

 

 

<4> 음성인식시스템의 구성도

* 음성인식시스템의 동작 원리

 

 

 

- 음성인식소리 값으로부터 소리를 만들어낸 조음과정의 파라미터들을 역으로 찾아내, 파라미터 값을 기반으로 어떤 음소인지, 어떤 소리인지 역으로 추적하는 과정이다.

- 음성인식기지식, 탐색기, 디코더로 이루어져 있는데, 먼저 지식음향모델, 발음모델, 언어모델로 표현된다.

- 음향 모델speech signal 과 phone 사이의 관계를 설명하고, 발음 모델phone 과 word 사이의 관계를 설명하고, phone sequence 의 정보를 가지고 있는 발음 사전으로 구현된다. 그리고 언어 모델단어와 문장 사이의 관계를 설명하고, 문법이라고 할 수 있다.

- 전체적인 음성인식시스템음성신호 입력으로부터 특징을 추출해서 observation을 만들어낸 후, 음향 모델과 사전에 있는 발음 정보를 사용어떤 문장이 어떤 식으로 observation 들의 시퀀스로 나타나는지를 표시하고, language model 을 통해 그 문장이 생성될 확률을 계산해준다. 음성인식기는 이렇게 지식들을 사용해서 모든 가능성 있는 솔루션 집합을 만들어 search space 를 형성하고, feature vectors sequence 인 음성 입력이 들어오면 이 음성 입력을 search space 내에 있는 후보들과 비교해서 베스트 매칭 스코어를 제공해주는 답을 찾아내는 디코딩 과정을 거쳐 음성인식 답을 제시한다.

 

<5> 베이즈 정리

* event A, B : A -> B 와 같은 인과관계

 

- Bayes' rule후험적인 확률조건부 확률선험적 확률을 사용해서 계산할 수 있게 해주는 확률식인 P(A|B) = P(B|A)P(A) / P(B) 이다. "A면 B다." 라는 인과관계로부터 B가 일어났을 때 A가 일어날 확률P(A|B) 어떤 결과를 보고 원인이 무엇인지를 설명하는 확률로, 시간의 흐름이 역으로 가서 실제로 측정할 수 없다.

- 우리들이 일상생활에서 확률을 사용해 추론을 할 때는 이러한 후험적인 확률을 사용해 추론을 한다. 그런데 후험적인 확률인과관계의 사슬을 거슬러가기 때문에 측정할 수 없고, 따라서 조건부 확률의 변환식P(AB) = P(B)P(A|B) = P(A)P(B|A) 를 사용해서 계산할 수 있다.

- A가 일어났을 때 B가 일어날 확률P(B|A)조건부 확률A가 원인이고 B가 결론이다. 이 확률은 인과관계의 흐름을 따라가기 때문에 측정가능하고, A의 확률인 P(A), B의 확률인 P(B)선험적인 확률가정을 하든지, 측정을 할 수 있다. 즉, 측정할 수 없는 결과를 보고 원인을 추정하는 후험적인 확률을, 원인을 보고 결과를 측정하는 조건부 확률선험적 확률을 사용해 계산할 수 있게 해주는 것이 베이즈 정리이다. 이를 통해 확률적인 추론이 가능하다.

 

 

<6> Hidden Markov Model

 

 

- 화자가 무슨 말을 하고자 하는지추정하기 위해서는 관측한 speech signal 을 통해 숨겨져 있는 정보를 찾아 답을 찾아야 한다. 관측 가능한 정보인 음성 입력observation 이라고 하고, 이는 프레임으로 분할되어 feature vector 들의 시퀀스로 변환되고, observation 시퀀스 각각의 feature vectorstate 라고 한다. observation 이 각각 어떤 state 에 해당되는지, observation 시퀀스를 통해 state 의 시퀀스를 찾아내야하는데, 이 때 찾아야 하는 state 시퀀스관측할 수 없기 때문에 hidden information 이고, 그래서 Hidden Markov Model 은 hidden model 이라고 한다.

- Hidden Markov Modelstate 와 state 사이에 어떻게 확률적으로 연관이 되는지 설명하는 transition probability각각의 state에 해당되는 observation 과의 관계를 설명하는 output probability density function두 개의 확률로 정의된다. 우선 transition probability aijstate i 에서 state jtransition 이 이루어지는 확률이고, observation probability t 에서 state 가 j 일 때, 그 시간에서의 observation symbol 이 k 인 확률이다. initial state distribution타임 1 에서의 state 가 i 인 확률이다.

- 이러한 transition probabilityobservation symbol probability, initial state distribution 에서 n 개의 statem 개의 symbol 에 해당되는 파라미터들의 집합hidden markov 모델이다. 

 

 

(이 글은 서울대학교 정민화 교수님의 '언어와정보처리' 과목을 수강하며 배웠던 내용들을 정리하며 작성한 글입니다.)

 

댓글