Main Content

aryule

자기회귀 전극점 모델 파라미터 — Yule-Walker 방법

설명

예제

a = aryule(x,p)는 입력 배열 xp차 모델에 대응하는 정규화된 자기회귀(AR) 파라미터를 반환합니다.

예제

[a,e,rc] = aryule(x,p)는 백색 잡음 입력값에 대한 분산 추정값 e와 반사 계수 rc도 반환합니다.

예제

모두 축소

다항식 계수로 구성된 벡터를 사용하여 백색 잡음의 1024개 샘플을 필터링함으로써 AR(4) 과정을 생성합니다. 재현 가능한 결과를 얻기 위해 난수 생성기를 재설정합니다. Yule-Walker 방법을 사용하여 계수를 추정합니다.

rng default

A = [1 -2.7607 3.8106 -2.6535 0.9238];

y = filter(1,A,0.2*randn(1024,1));

arcoeffs = aryule(y,4)
arcoeffs = 1×5

    1.0000   -2.7262    3.7296   -2.5753    0.8927

매번 입력 잡음의 분산을 변경하여 해당 과정에 대해 50개의 구현을 생성합니다. Yule-Walker 방법으로 추정한 분산과 실제 값을 비교합니다.

nrealiz = 50;

noisestdz = rand(1,nrealiz)+0.5;

randnoise = randn(1024,nrealiz);
noisevar = zeros(1,nrealiz);

for k = 1:nrealiz
    y = filter(1,A,noisestdz(k) * randnoise(:,k));
    [arcoeffs,noisevar(k)] = aryule(y,4);
end

plot(noisestdz.^2,noisevar,'*')
title('Noise Variance')
xlabel('Input')
ylabel('Estimated')

Figure contains an axes object. The axes object with title Noise Variance, xlabel Input, ylabel Estimated contains a line object which displays its values using only markers.

함수의 다중채널 구문을 사용하여 이 절차를 반복합니다.

Y = filter(1,A,noisestdz.*randnoise);

[coeffs,variances] = aryule(Y,4);

hold on
plot(noisestdz.^2,variances,'o')
hold off
legend('Single channel loop','Multichannel','Location','best')

Figure contains an axes object. The axes object with title Noise Variance, xlabel Input, ylabel Estimated contains 2 objects of type line. One or more of the lines displays its values using only markers These objects represent Single channel loop, Multichannel.

다항식 계수로 구성된 벡터를 사용하여 백색 잡음의 1024개 샘플을 필터링함으로써 AR(2) 과정을 생성합니다. 재현 가능한 결과를 얻기 위해 난수 생성기를 재설정합니다.

rng default

y = filter(1,[1 -0.75 0.5],0.2*randn(1024,1));

Yule-Walker 방법을 사용하여 AR(10) 모델을 과정에 피팅합니다. 반사 계수를 출력하고 플로팅합니다. 처음 두 개의 계수만 95% 신뢰한계 밖에 존재합니다. 이는 AR(10) 모델이 데이터의 시간 의존성을 상당히 과대 추정했음을 나타냅니다. 자세한 내용은 AR Order Selection with Partial Autocorrelation Sequence 항목을 참조하십시오.

[ar,nvar,rc] = aryule(y,10);

stem(rc)
xlim([0 11])
conf95 = sqrt(2)*erfinv(0.95)/sqrt(1024);
[X,Y] = ndgrid(xlim,conf95*[-1 1]);
hold on
plot(X,Y,'--r')
hold off
title('Reflection Coefficients')

Figure contains an axes object. The axes object with title Reflection Coefficients contains 3 objects of type stem, line.

입력 인수

모두 축소

입력 배열로, 벡터나 행렬로 지정됩니다.

예: filter(1,[1 -0.75 0.5],0.2*randn(1024,1))은 2차 자기회귀 과정을 지정합니다.

데이터형: single | double
복소수 지원 여부:

모델 차수로, 양의 정수 스칼라로 지정됩니다. px의 요소 개수 또는 행 개수보다 작아야 합니다.

데이터형: single | double

출력 인수

모두 축소

정규화된 자기회귀 파라미터로, 벡터 또는 행렬로 반환됩니다. x가 행렬이면 a의 각 행은 x의 열에 대응됩니다. ap + 1개의 열을 가지며 z의 거듭제곱 내림차순으로 정렬된 AR 시스템 파라미터 A(z)를 포함합니다.

백색 잡음 입력 분산으로, 스칼라 또는 행 벡터로 반환됩니다. x가 행렬이면 e의 각 요소는 x의 열에 대응됩니다.

반사 계수로, 열 벡터 또는 행렬로 반환됩니다. x가 행렬이면 rc의 각 열은 x의 열에 대응됩니다. rcp개 행을 가집니다.

세부 정보

모두 축소

AR(p) 모델

p차 AR 모델의 현재 출력값은 이전 p개 출력값의 선형 결합에 백색 잡음 입력값이 더해진 값입니다.

이전 p개 출력값에 대한 가중치는 자기회귀에 대한 평균제곱 예측 오차를 최소화합니다. y(n)이 출력값의 현재 값이고 x(n)이 평균 0의 백색 잡음 입력값인 경우 AR(p) 모델은 다음과 같습니다.

k=0pa(k)y(nk)=x(n).

반사 계수

반사 계수는 –1로 스케일링된 편자기상관 계수입니다.

반사 계수는 y(n)y(n – k) 사이에 있는 k – 1개의 시간 스텝에 따라 예측값을 뺀 이후 이 두 값 간의 시간 의존성을 나타냅니다.

알고리즘

aryule은 표본 자기상관 시퀀스에 대한 편향 추정값에 Levinson-Durbin 재귀를 사용하여 파라미터를 계산합니다.

참고 문헌

[1] Hayes, Monson H. Statistical Digital Signal Processing and Modeling. New York: John Wiley & Sons, 1996.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

참고 항목

| | | |

도움말 항목