Voice, Acoustic AI/Speaker Verification

Speaker Verification (화자 검증), EER (Equal-Error-Rate)

진성01 2024. 8. 7. 16:06

Speaker Verification(화자 검증)은 목소리가 특정 사람의 것 인지 확인하는 분야이다. 이는 종종 Speaker Identification(화자 확인)과 혼동되곤 한다.

 

Speaker verification (화자 검증) VS Speaker identification (화자 확인)

두 Task는 핵심 기술을 공유하는 경우도 많지만 기본적으로 다르다. 

Speaker verifiaction VS Speaker identification

  • Speaker verification: 목소리가 특정한 사람의 것인지 아닌지 확인
  • Speaker identification: 목소리가 어떠한 사람의 것인지 구별

Speaker verification은 목소리가 누구의 것인지는 관심이 없고 오로지 주인의 목소리인지 아닌지에만 관심있다. 따라서 보안과 같은 용도로 많이 사용된다. 
이 카테고리에서는 Speaker verification에 대해 중점적으로 설명한다.

 

Text-dependent (텍스트 종속) VS Text-independent (텍스트 독립)

Speaker Verification은 텍스트에 종속적이냐/아니냐로 나눌 수 있다.

Text-dependent VS Text-independent

  • Text-dependent: 특정 Text를 발화한다는 조건 하에 SV(speaker verification)이 작동함
  • Text-independent: 어떠한 Text를 발화하는지에는 상관 없이 SV이 작동

기본적으로는 TD보다 TI가 어려운 task에 속한다. TD의 경우 speech의 contents 정보가 일정하므로 speaker의 정보를 판단하는데에만 집중할 수 있는 반면 TI는 contents정보가 달라져도 발화 안에서 Speaker의 정보만을 판단할 수 있어야 한다. 현재의 연구 동향은 TI에 조금 더 집중되고 있는 것 같다.

 

Evaluation Metrics (평가 지표)

SV모델은 EER(Equal Error Rate)을 통해 성능을 평가한다.

 

EER

EER 곡선

EER(Equal Error Rate)은 음성 인식 시스템, 특히 speaker verification 시스템의 성능을 평가하는 데 사용되는 중요한 지표이다. EER은 False Acceptance Rate(FAR)와 False Rejection Rate(FRR)가 같아지는 지점을 의미한다. 이를 통해 SV모델의 인식 능력을 간단하게 평가할 수 있다.

 

  • False Acceptance Rate (FAR): 비인증 사용자가 인증된 사용자로 잘못 인식되는 비율
  • False Rejection Rate (FRR): 인증된 사용자가 비인증 사용자로 잘못 인식되는 비율

Verification (검증) 모델의 경우 Thresholding에 따라 FAR 혹은 FRR이 비정상적으로 높아질 수 있다. 따라서 두 지표가 만나는 지점을 EER로 선택하여 공정하게 모델을 평가할 수 있다. 이에 관해 자세한 내용은 해당 post에 정리되어 있다.

7. 정밀도와 재현율 (tistory.com)

 

7. 정밀도와 재현율

이전 장에서 정확도와 오차행렬에 대해 다루었다. 정확도는 가장 직관적인 성능 지표이지만 불균등한 label을 가진 데이터셋에서 성능을 왜곡할 수 있다. 정확도는 '정확히 예측한 건 수'에 초점

mldiary.tistory.com

 

Speaker Verification Model

일반적인 Speaker Verification model

 

SV 모델은 기본적으로 위의 파이프라인과 같은 방식을 따른다.

  • Acoustic Feature Extraction: 음성학적 특징의 추출. raw 오디오 파일을 음성학적으로 분석 가능하도록 전처리 하는 과정이다. wav 파일을 받아 spectrogram, mel-spectrogram, MFCC 등 목적에 맞는 feature로 변환하는 과정이다.
  • Speech Embedding: 기본적인 전처리가 된 feature를 통계학적 기법 혹은 딥러닝 모델을 이용하여 embedding vector로 변환하는 과정이다. Acoustic feature extraction이 기본적인 전처리 과정이라면 Speech embedding은 더 high-level의 처리 작업이다. 이 과정에서 얼마나 speech의 contents 정보를 잘 제거하고 speaker의 특성만 남기는지가 성능에 중요한 관건이다.
  • Decision: speaker embedding vector를 이용하여 해당 벡터가 화자의 것이 맞는지 결정을 내리는 과정이다. Softmax, PLDA 등의 방법이 사용된다.

 

 

 

Speaker Verification의 Background에 대해 소개했으니 다음 post는 GMM부터 시작하여 SV모델의 역사를 정리할 것이다.