learn_AR_diagonal.m
上传用户:mozhenmi
上传日期:2008-02-18
资源大小:13k
文件大小:1k
源码类别:

其他小程序

开发平台:

Matlab

  1. function [coef, C] = learn_AR_diagonal(y, k)
  2. % Find the ML parameters for a collection of independent scalar AR processes.
  3. % sep_coef(1,1,t,i) is the coefficient to apply to compopnent i of the state vector t steps ago
  4. % eg. consider two components L and R and let A = coef(:,:,1,:), B = coef(:,:,2,:)
  5. % L3    (AL  0   BL 0)     (L2)   (CL 0 0 0)
  6. % R3 =  (0   AR  0  BR)    (R2)   (0 CR 0 0)
  7. % L2    (1   0   0  0 )    (L1) + (0 0  0 0)
  8. % R2    (0   1   0  0 )    (R1)   (0 0  0 0)
  9. ss = size(y, 1);
  10. sep_coef = zeros(1,1,k,ss);
  11. for i=1:ss
  12.   [sep_coef(:,:,:,i), sep_cov(i)] = learn_AR(k, y(i,:));
  13. end
  14. C = diag(sep_cov);
  15. for t=1:k
  16.   x = sep_coef(1,1,t,:);
  17.   coef(:,:,t) = diag(x(:));
  18. end