please help me to solve bayesian compressive sensing code

17 ビュー (過去 30 日間)
vidhya p
vidhya p 2018 年 1 月 5 日
コメント済み: Walter Roberson 2018 年 1 月 5 日
clc; clear all; close all; %check if terminates? if count > 2 && abs(ML(count)-ML(count-1)) < (max(ML)-ML(count))*eta break; end % update alphas which = find(index==idx); if theta(idx) > 0 if ~isempty(which) % re-estimate Alpha = theta(idx); delta = Alpha-alpha(which); for k = 1:NT Sigii = Sig{k}(which,which); mui = mu{k}(which); Sigi = Sig{k}(:,which); ki = delta/(1+Sigii*delta); mu{k} = mu{k}-ki*mui*Sigi; Sig{k} = Sig{k}-ki*Sigi*Sigi'; comm = PHI{k}'*(phi{k}*Sigi); S(:,k) = S(:,k) + ki*(comm.^2); Q(:,k) = Q(:,k) + ki*mui*comm; G(:,k) = G(:,k) + ki*(Sigi'*PHIt(index,k))^2; end % alpha(which) = Alpha; else % adding Alpha = theta(idx); for k = 1:NT phii = PHI{k}(:,idx); Sigii = 1/(Alpha+S(idx,k)); mui = Sigii*Q(idx,k); comm1 = Sig{k}*(phi{k}'*phii); ei = phii-phi{k}*comm1; off = -Sigii*comm1; Sig{k} = [Sig{k}+Sigii*comm1*comm1', off; off', Sigii]; mu{k} = [mu{k}-mui*comm1; mui]; comm2 = PHI{k}'*ei; S(:,k) = S(:,k) - Sigii*(comm2.^2); Q(:,k) = Q(:,k) - mui*comm2; G(:,k) = G(:,k) - Sigii*(t{k}'*ei)^2; phi{k} = [phi{k},phii]; end % index = [index;idx]; alpha = [alpha;Alpha]; end else if ~isempty(which) % deleting for k = 1:NT Sigii = Sig{k}(which,which); mui = mu{k}(which); Sigi = Sig{k}(:,which); Sig{k} = Sig{k}-Sigi*Sigi'/Sigii; Sig{k}(:,which) = []; Sig{k}(which,:) = []; mu{k} = mu{k}-mui/Sigii*Sigi; mu{k}(which) = []; comm = PHI{k}'*(phi{k}*Sigi); S(:,k) = S(:,k) + (comm.^2)/Sigii; Q(:,k) = Q(:,k) + mui/Sigii*comm; G(:,k) = G(:,k) + (Sigi'*PHIt(index,k))^2/Sigii; phi{k}(:,which) = []; end % index(which) = []; alpha(which) = []; end end
%end % output weights = zeros(M,NT); for k = 1:NT weights(index,k) = mu{k}; end
  1 件のコメント
Walter Roberson
Walter Roberson 2018 年 1 月 5 日
You did not post an error message and you did not describe the difference between the output you get and the output you expect

サインインしてコメントする。

回答 (0 件)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by