[Speech] 음성인식 개론

2 minute read

TL;DR

  • Automatic speech recognition (ASR)음성인식 또는 speech-to-text (STT) task 정의
    • Acoustic waveform을 일련의 grapheme문자소로 매핑해주는 task이다.
  • 음성인식기 input
    1. Analog아날로그 형태의 acoustic waveform signal을 sampling과 quantization양자화를 거쳐 digital디지털
    2. 1번의 digital signal을 log mel spectrogram과 같은 spectral representation으로 변환
  • 음성인식 분야의 2가지 paradigm
    1. Attention 기반의 encoder-decoder 모델 더 높은 정확도
    2. CTC loss function 기반 모델 전체 acoustic input이 들어올 때까지 기다리지 않고 online 방법으로 grapheme을 출력하여 real-time 모델에 응용하기 쉽다.
  • Word Error Rate (WER) Evaluation metric평가지표
    • Hypothesis와 gold transcription 사이의 거리를 수정한다 (?)

[1] Automatic Speech Recognition (ASR) Task

음성 인식이란 무엇인가?


Figure 1 Smart Speaker 인공지능 스피커
(출처 : Tech Advisor)

Speech-to-text (STT) transcription

STT는 녹음된 오디오 input을 일련의 단어들로 변환시켜주는 일을 말하며, 다음과 같은 acoustic ambiguity 문제를 잘 처리해야 한다.

\[\text{"Recognize speech?" or "Wreck a nice beach?"}\]

STT 과정에서 고려해야 할 것을 세분화 하면 다음과 같다.

  • Speaker diarization 화자 구분 : 누가 언제 말했는지?
  • Speech recognition 음성 인식 : 무엇을 말했는지?
  • Paralinguistic aspects 준언어적 측면 : 어떻게 말했는지? (timing, intonation억양, voice quality목소리 질
  • Speech understanding 음성 이해 : 무슨 뜻인지?

[2] 왜 음성인식이 어려운가?

Linguistic perspective 언어학적 측면

다양한 variation변형, 바리에이션의 source 음원이 존재하기 때문이다.

  1. Speaker 화자 : 화자의 특성 (특정 speaker에만 맞춰져 있는지 or speaker-independent 한지)
  2. Environment 환경 : Noise잡음, 대화 상대의 음성, channel condition (마이크, 통신 상태, room acoustics공간 음향) 등
  3. Vocabulary 단어 집합 : 기계어, 과학적 전문용어, 구어체 표현 등
  4. Accent / dialect 말투, 사투리 : 특정 언어를 말하는 모든 화자의 음성을 인식할 수 있어야 함
  5. Paralinguistics : 감정 상태, 사회적 지위 등
  6. Langauge spoken 사용된 언어 : 약 7천 종류의 언어들이 있는 것으로 추정되고, 대개 training resource가 부족한 문제, code-switching, language change 문제가 있다 (?)

Machine learning perspective

  1. Classification problem : 고차원의 output 공간을 가짐
  2. Sequence-to-sequence problem : Input sequence는 매우 길지만 acoustic sequence와 word sequence 사이를 매핑하고 재배열하는 데 한계
  3. Noise 등 데이터에 음성인식에 방해되는 요소가 많음
  4. Text 기반의 NLP 데이터에 비해 가용한 training data가 많이 부족함

[3] Speech Recognition Problem 음성인식 문제

음성인식 표기법

  • Observations (녹음된 음성) : log mel spectrogram, MFCC 등의 일련의 acoustic feature vector $X$
  • Output : Word sequence $W$

목표

  • 주어진 $X$를 토대로, 가장 가능성이 높은 word sequence $W$를 찾는 것
  • Label이 있는 training utterance 쌍 ($X^n$, $W^n$)으로 이루어진 corpus말뭉치를 이용하여 통계학적 모델을 학습시켜 이 목표를 달성한다.

Labelling speech ($W$)

  • Word단어, phone음성 등의 label이 쓰인다.
  • Label은 time-aligned하다. 즉, 각 acoustic segment에 해당되는 label이 달려있다.

Reference

  1. D. Jurasfsky and J. H. Martin, “Speech and Language Processing (3rd edition)”, Web draft, Chap. 26 : Mostly newly written, expanded from some parts of Chs 8 and 9 in 2nd ed, September 2021.
  2. AUTOMATIC SPEECH RECOGNITION (ASR) 2020-21: LECTURES

Leave a comment