[Speech] Automatic Speech Recognition Overview

누렁이·2024년 1월 17일
0

Reference: [재작성] https://ratsgo.github.io/speechbook/docs/introduction

Problem Setting

  • Automatic Speech Recognition:

    • acoustic signal을 word 혹은 음소(phoneme) 시퀀스로 변환하는 시스템
    • 사람 말소리를 텍스트로 바꾸는 모델(Speech to Text model)
  • Goal:

    • input에 대해 가장 likely 한 시퀀스 inference
      | Y^=argmaxP(YX)Ŷ = argmaxP(Y|X)

    • but! 음성신호 사람마다 너무 다양함. (같은 음소나 단어라도 사람마다 발음 양상 다름). X의 분포를 우리가 generalization 하기 어려움. a가 감기걸렸을 때여도 "딸기", 신났을 때 말해도 "딸기"....
      그럼 특정 단어 (y)의 모든 경우의 수에 해당하는 X 발생확률 추정이 너무 어려움.
      So, bayes' Theorem 활용해서, 계산 가능하도록 바꿔보는 것임. 시퀀스는 한정된 범위니까, 입력신호를 고정해놓고, 어떤 단어가 저 목소리랑 비슷할지 찾는다는 것이구만!!!
      | Y^=argmaxP(XY)P(Y)P(X)Ŷ =argmax\frac{P(X|Y)P(Y)}{P(X)}
      | Y^=argmaxP(XY)P(Y)Ŷ =argmax{P(X|Y)P(Y)}

  • 음성인식 모델의 컴포넌트:

    • P(XY)P(X|Y) : Acoustic Model
      • word sequence랑 input 신호가 어느정도 관계를 맺고 있는지 추출
    • P(Y)P(Y): Language Model
      • 해당 word sequence가 얼마나 자연스러운지 확률값 형태로 (오홍?)

Architecture

  • 1) P(Y)P(Y): Language Model
    • word sequence의 확률분포. 옛날엔 n-gram 모델이 자주 쓰였다고 함.
  • 2) 각각을 발음기호를 보는군 ! 오
  • 3) P(XY)P(X|Y) : Acoustic Model
    • Y가 주어지면 그게 음성신호 전처리된 X로 나타날 확률을 계산
      => 약간쓰.. alignment느낌인가..? 그래서 이걸 둘의 관계를 표현한다고 하나봄. 요즘엔 각각 부분이 다 deep learning으로 하거나 end to end로 바로 P(YX)P(Y|X) 추정한다고 함.

Acoustic Features

뒤에 나오니까 그때 하겠음

profile
왈왈

0개의 댓글