Spoken Language Processing

G2P(grapheme to phoneme)란? - 발음열 정보의 중요성

햇농nongnong 2022. 9. 28. 22:14

음성인식과 발음 모델(G2P)


(출처 :ETRI 박전규 박사님의 언어교육 성과 특강 강의)

 

 

 

 

전통적인 HMM 기반 모델

  • HMM 기반 모델 : 음향모델, 발음모델, 언어모델로 나눌 수 있음.
  • 발음 모델 : 단어를 음소로 매핑하는 과정에서 발음 모델 사용. 발음 모델 정의할 때는 타겟 언어에 대한 특별한 지식 필요.
  • G2P (Grapheme to Phoneme) = 발음 모델
    - 철자 발음을 매칭하는 모델
    - 발음변이 규칙을 찾고 예외처리를 적용해주는 모델
    - 이러한 발음 모델(G2P)을 통해 철자와 단어에 대한 발음 사전을 만들어서 음성 정보와 텍스트 정보를 상호 변환해주는 역할
    - 즉, 음소 시퀀스 단어 시퀀스로 변경하기 위해 참고하는 모델
  • 음향 모델 : 입력 오디오와 HMM 상태 간의 매핑을 모델링
    - 위에서 발음 모델(G2P)을 통해 발음 사전이 만들어졌다면, 이제 다양한 발음과 억양에 대한 학습이 필요
    - 모든 사람들이 아나운서와 같은 발음은 아니기 때문에 이러한 다양한 억양과 발음에 대한 학습 필요
  • 언어 모델 : 단어 시퀀스를 문장으로 매핑
    - 들은 정보를 실제 사람이 사용하는 말인 '자연어' 로 인식하는 과정
    - 단어의 연속성을 기준으로 n-gram 언어 모델을 사용해 인접한 단어들이 연속적으로 나올 확률 계산
    - ex) "오늘 날씨" 다음에는 "종이컵" 이라는 쌩뚱맞은 단어보다는 "어때" 가 더 자연스러움
            아무리 음향 모델을 통해서 '종이컵' 이 인식되더라도 이는 언어 모델에서 확률값이 매우 낮기 때문에 첫번째 인식 어휘인 1-best 에서 빠지게 될 확률이 높음. 

 

 

https://nongnongai.tistory.com/63?category=924001 

 

음성인식(ASR)의 과정과 기본 구조

이 글은 ETRI 박전규 박사님의 언어교육 성과 특강 강의를 듣고 정리한 글입니다. 음성인식의 기본 구조 위 사진은 음성인식의 가장 기본적인 설계구조 음성인식, 음성합성 모두 acoustic model 이 존

nongnongai.tistory.com

 

위의 포스팅에서 자세한 음성인식 과정을 확인할 수 있다.

- 음성 frame에서 음소로 mapping 되는 음소인식 과정을 거친 후, 출력된 음소의 sequence 를 보고 어떤 단어인지 추정하는 과정에서 G2P 가 사용된다.

 

 

 

G2P (grapheme to phoneme) 


발음사전 제작을 위해 필요한 "G2P" 과정

 

ex) 한글의 경우, 단어의 철자와 발음이 항상 일치하지 않기 때문단어단어에 대응되는 발음열이 명시된 발음사전을 제작하여 사용

  • 한국어 문자는 앞과 뒤에 이어지는 문자에 따라 다양한 발음
  • 살구[살구], 볼살[볼쌀], 살의[사릐] : '살' 은 동일한 문자로 표기되지만 모두 다른 발음
  • 이러한 문자표기와 실제 발음 사이의 불일치를 극복하기 위해 발음사전 이용

 

이러한 발음사전을 만들기 위해서 발음변이 규칙을 찾고 예외처리를 적용하는G2P (grapheme to phoneme) 과정이 필요

 

ex) 한국어의 경우

  • 자소-음소간, 음소-변이음간 변환규칙, 예외 발음에 대해 일관적으로 적용할 수 있는 발음변이 규정 필요
  • 국내 여러 연구기관별로 발음변이를 규정하는 규정집 보유
  • 이 규정집 이용하여 문자표기를 음소열로 치환 가능

 

음소기반 음성인식

  • 음소기반 음성인식에서 음향 모델 : 음성의 특정 구간을 입력 받아 음소를 출력
  • 즉, 음소들의 존재 확률 분포를 출력
  • 출력된 음소존재 확률 분포를 이용해 음성인식의 최종 출력인 문장을 얻는 것임
  • 음소 확률분포에서 문장, 즉 단어를 얻기 위해서는 음소열과 단어의 철자를 연결해주는 매개가 필요
  • 매개체가 "발음사전"

 

 

G2P 와 end-to-end 음성인식


(출처 : 한국어 종단간 음성인식에서의 성능 향상을 위한 Lexicon Transducer를 적용한 Convolution Augmented Transformer (손현수, 서강대학교))

 

  • end-to-end 음성인식 방식은 전통적인 음성인식 방법과 비교했을 때 구조적인 문제로 인해 외부 발음열 정보와 언어 모델의 정보를 사용하지 못함
  • 따라서 학습 자료에 없는 발음열 변환 규칙에 대한 대응이 쉽지 않음
  • 예를 들어 '학교'
    - 자소열 : 'ㅎ ㅏ ㄱ ㄱ ㅛ'
    - 첫번째 'ㄱ'  과 두번째 'ㄱ'동일한 소이지만 실제로는 다르게 발음
  • end-to-end 모델의 경우, 학습 자료에 위와 같은 발음열 규칙이 포함된 문장 데이터가 없는 경우 올바른 정답 출력하기 어려움
    - Table 1 & Table 2 : end-to-end 음성인식에서 발생한 오류 예시
    - Table 1 : 소수의 프레임에서 올바른 확률 분포를 출력하지 못한 경우의 예
    - Table 2 : 올바른 발음열 변환이 되지 않은 경우
  • 그래서 "Lexicon transducer를 적용한 conformer 기반 한국어 end-to-end 음성인식(손현수, 서강대학교)" 논문에서는 발음열 정보를 담고 있는 L transducer를 Weighted Finite State Transducer(WFST)를 통해 미리 가능한 음소열에 대한 정보를 그래프화하여 end-to-end 모델의 탐색 범위를 제한하여 앞서 언급한 문제를 해결하고자 했음 
  • 위의 논문처럼 end-to-end 에서도 결국 '발음열 정보' 는 간과해서는 안될 중요한 정보.
  • end-to-end 모델에서는 전통적 HMM 방법의 발음사전, G2P 의 역할을 보완하는 연구가 필요할 것임

 

 

 

 

 

 Reference