음성 품질(Speech Quality)을 측정하는데 쓰이는 4가지 객관적 평가지표 (evaluation metric) - SNR, SI-SDR, PESQ, STOI에 대해 알아봅시다. 추가로, 주관적 평가지표 MOS, MUSHRA 개념을 살펴보고 CSIG, CBAK, 그리고 COVL로 구성된 합성측정 방법에 대해서도 정리해봅시다.
* 음성 품질 (Speech Quality)
음성 신호를 처리할 때, 디지털 형식으로 표현된 소리를 reconstruction하여 원신호와 똑같이 들리게 하는 것을 목표로 합니다. 이때 Speech quality는 재구성된 신호가 원래의 음성신호와 얼마나 유사한가를 나타냅니다. Speech quality가 높을수록, 부자연스러운 왜곡이 없다는 점에서 naturalness 자연스러움 정도와 동일시 됩니다. speech quality는 speech signal coding, 전송, 처리 메커니즘에서 사용됩니다.
SNR (Signal-to-Noise Ratio)
Speech Quality를 측정하는 객관적 측정 지표 중 하나로 신호 대 잡음비 (SNR)가 있습니다. SNR은 단일 숫자로 나타나며 speech quality에 비례합니다. Speech quality가 높으면, SNR 또한 높게 나타납니다. 일반적으로, SNR이 20dB, 30dB 정도면 clean하다고 판단합니다.
SNR은 원래의 신호와 상관관계가 없는 noise로 시스템을 모델링한 경우에 사용합니다. SNR과 비슷하지만 다른 개념인 SDR (Signal-to-Distortion Ratio)에 대해서도 알아보겠습니다. SDR은 원본 신호에 비해 얼마나 변했는지, 왜곡 (distortion)된 정도를 측정하는 것으로 noise, interference, artifact를 포함합니다.
- distortion: 원본 신호가 왜곡됨 → SDR
- interference: undesired siganl이 남아 있음 → SIR
- artifact: 원래 없던 신호가 생김 → SAR
- SDR, SIR, SAR은 음원 분리 (audio source separation) task에서 자주 쓰이는 measure
특히, 코덱 (codec)과 같은 신호 압축 시스템에서는 처리 과정에서 artifact가 발생할 수 있기 때문에 SNR 보다는 SDR이 더 정확한 성능 평가 지표로 활용됩니다.
SI-SDR (Scale-Invariant SDR)
기존 SDR의 경우, 입력 신호와 추정된 신호 간 비율을 계산함으로써 얻어지기 때문에 신호의 크기가 변할 경우 SDR의 값도 변하는 문제가 발생하게 됩니다. SDR의 변형인 Scale-invariant SDR은 신호 크기의 영향을 받지 않고 일관된 방식으로 성능을 측정함으로써 이러한 문제를 해결합니다.
위 그림 [2]을 통해, SI-SDR이 어떻게 계산되는지 살펴보겠습니다. $s$는 소스, $n$은 노이즈, $n+s$ 값인 $x$는 noisy mixture를 의미합니다. 여기서 $\hat{s}$은 모델의 출력 값, 즉 소스 예측 값을 나타냅니다. 이 예측 값에서 소스 값을 뺀 잔차 (residual)와 소스가 직교하게 스케일을 조정하여 측정한 것이 바로 SI-SDR 입니다. 이렇게 계산된 평가지표 SI-SDR은 신호의 크기, 즉 scale에 invariant한 특성을 갖게 됩니다.
* Subjective testing - MOS (Mean Opinion Score)
SNR과 같은 객관적인 측정 방법이 디지털 신호의 quality을 적절하게 예측하지 못하는 경우, 주관적인 평가 (subjective testing) 방식을 활용할 수 있습니다. 가장 널리 쓰이는 subjective testing 방법으로는 평균 의견 점수를 나타내는 MOS가 있습니다.
MOS 테스트는 Training, evaluation 두 단계로 진행됩니다. Training 단계에서, 모든 청취자의 주관적인 speech quality 평가 범위를 동일하게 하기 위해 reference signal 세트를 참여자가 듣게 합니다. 이후, Evaluation 단계에서 signal 을 듣고 점수를 매기는 방식으로 진행됩니다.
청취자는 신호의 quality를 총 5가지 분류 중 하나로 평가할 수 있습니다. 점수가 높을수록 speech quality가 우수하고 낮을 수록 quality가 떨어집니다. Test 신호는 다양한 조건으로 처리된 신호와 원 신호를 포함합니다. 주어진 조건 또는 시스템에 대한 점수는 모든 청취자 응답을 평균하여 각각의 조건에 대한 MOS 점수로 환산됩니다. MOS는 모수가 중요하기 때문에 평가에 참여하는 사람이 많을수록 신뢰도가 높아집니다.
* Subjective testing - MUSHRA (Multiple Stimuli with Hidden Reference and Anchor)
MUSHRA는 손실 오디오 압축 알고리즘에서의 신호 출력 품질을 평가하기 위해, 코덱 청취 평가를 하는 방식입니다. 일반인을 포함해서 많은 사람들의 평가를 요하는 MOS와는 달리, MUSHRA는 소수의 전문가들 사이에서 평가를 진행하기 때문에 어느 정도 신뢰성 있는 measure라 볼 수 있고 평가 점수 이상치에 대한 필터링 과정도 포함돼있습니다.
PESQ (Perceptual Evaluation of Speech Quality)
Subjective testing의 경우 시간과 비용이 많이 소모됩니다. 그에 반해, 청각적으로 인지된 음성 품질을 수치적으로 정확하게 나타내는 Objective measure는 바로 계산 가능하고 비용이 거의 들지 않는다는 점에서 그 효용성이 입증돼왔습니다. PESQ는 MOS와 비슷한 결과를 내면서 객관적으로 성능을 측정할 수 있도록 만들어진 평가 방법으로, 음성 품질을 인간의 청각 시스템 관점에서 측정합니다.
일반적으로, 음성 신호의 경우 저주파에 중요한 정보가 많이 포함돼있기 때문에 저주파 신호 처리에 집중할수록 PESQ 성능이 좋게 나오는 경향이 있습니다. 16kHz는 wideband, 8kHz면 narrowband로 간주하며, 점수 범위는 wideband에서 0~5 이고 narrowband에서 -0.5~4.5 입니다. PESQ는 low-bit rate narrowband coder를 위해 설계되었기 때문에 Wideband audio coder의 경우 perceptual evaluation of audio quality (PEAQ)를 쓴다고 합니다.
STOI (Short-Time Objective Intelligibility)
STOI는 원래의 음성과 잡음이 섞이거나 처리된 음성의 상관관계를 통해, 음성 명료도 (Speech Intelligibility)를 평가하는 객관적인 척도입니다. STOI 값은 일반적으로 0에서 1 사이의 범위에 있으며, 1에 가까울수록 음성 명료도가 향상됩니다. STOI 계산은 순서대로 무음 프레임 제거, STFT (Short-time Fourier Transform), 옥타브 밴드 분석, 정규화 및 클리핑, 명료도 측정 등 총 5가지 주요 단계 [3]로 이뤄집니다.
* Composite measure - CSIG, CBAK, COVL
- CSIG: 음성 신호에만 나타나는 신호 왜곡에 대한 MOS 예측
- CBAK: 배경 소음의 개입에 대한 MOS 예측
- COVL: 신호의 전반적인 품질 확인을 위한 MOS 예측
Reference
[1] Rabiner, Lawrence R., and Bernard Gold. "Theory and application of digital signal processing." Englewood Cliffs: Prentice-Hall (1975).
[2] “Noise Suppression,” Record, Feb. 16, 2021. https://jin-choi.tistory.com/34 (accessed Apr. 23, 2024).
[3] “최종연구보고서 한국전자통신연구원 [위탁과제명] 심리음향 모델을 활용한 음향 압축 손실함수 연구 수탁기관 : 연세대학교 원주산학협력단.” Accessed: Apr. 24, 2024. [Online]. Available: https://ksp.etri.re.kr/ksp/report/file?id=27793
[4] L. Li, Wudamu, L. Kürzinger, T. Watzel, and G. Rigoll, “Lightweight End-to-End Speech Enhancement Generative Adversarial Network Using Sinc Convolutions,” Applied Sciences, vol. 11, no. 16, p. 7564, Aug. 2021, doi: https://doi.org/10.3390/app11167564.
'연구 노트 > 음성신호처리' 카테고리의 다른 글
Coherence 개념으로 Diffuse noise 모델링 (0) | 2024.05.09 |
---|---|
2024.04.25-05.02 신입생 세미나 Time-domain Methods for Speech Processing 질문 정리 (0) | 2024.04.25 |
2024.04.11 신입생 세미나 Hearing, Auditory Models, and Speech Perception 2/2 질문 정리 (0) | 2024.04.11 |
Wiener filter: 신호 필터링, 예측을 하는데 쓰는 linear filter (2) | 2024.03.13 |
MVDR beamformer 완전 정복 (1) | 2024.03.12 |