선형예측부호화 (Linear Predictive Coding)

전기전자공학
한 줄 정의: 현재 신호 샘플을 과거 샘플들의 선형 결합으로 예측하고, 그 예측값과 실제값의 차이(예측 오차)만을 부호화해 신호를 압축·모델링하는 기법입니다.

쉽게 풀면

음성 신호는 인접한 샘플끼리 값이 비슷하게 이어지는 경향이 있습니다. 선형예측부호화는 "바로 앞의 몇 개 샘플을 보면 다음 샘플이 어느 정도 값일지 예측할 수 있다"는 원리를 이용합니다. 예측이 맞을수록 실제값과 예측값의 차이는 작아지고, 이 작은 차이만 저장하거나 전송하면 되므로 전체 데이터양을 크게 줄일 수 있습니다. 특히 사람의 목이 소리를 낼 때 성도(입안과 목구멍의 관 모양 구조)가 필터처럼 작동한다는 점에서, 이 예측 필터의 계수는 성도의 형태 정보를 압축해서 담고 있다고 볼 수 있습니다.

왜 중요한가

선형예측부호화는 적은 수의 계수만으로 음성의 스펙트럼 포락선을 효율적으로 표현할 수 있어, 저전송률 음성 압축, 음성 합성, 음성 인식의 특징 추출 등 여러 응용 분야에서 오랫동안 핵심 기법으로 쓰여 왔습니다.

논문에서는 이렇게 쓰입니다

"Linear predictive coding coefficients were computed using the Levinson-Durbin recursion for each 20 ms speech frame."

20밀리초 단위의 음성 프레임마다 레빈슨-더빈 재귀 알고리즘으로 선형예측부호화 계수를 계산했다는 내용입니다.

"The residual signal from linear predictive coding is further quantized to reduce the bit rate of the codec."

선형예측부호화로 얻은 잔차 신호를 추가로 양자화해 코덱의 전송률을 낮췄다는 예문입니다.

조금 더 깊게 보면

선형예측부호화 계수는 대체로 자기상관 방법과 레빈슨-더빈 재귀 알고리즘을 통해 효율적으로 계산됩니다. 예측 차수(사용하는 과거 샘플 개수)가 높을수록 스펙트럼을 더 세밀하게 표현할 수 있지만 계산량과 전송해야 할 계수 수도 늘어나므로, 응용 목적에 맞는 차수 선택이 중요합니다.

주의할 점

선형예측부호화는 음성처럼 인접 샘플 간 상관성이 큰 신호에는 효과적이지만, 상관성이 낮은 신호나 급격히 변하는 구간에서는 예측 오차가 커져 압축 효율이 떨어질 수 있습니다.

관련 용어