• 大小: 6KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: Matlab
  • 标签: 低秩表示  MATLAB  

资源简介

低秩表示MATLAB代码,自己亲自测试过,是有效可用的呢

资源截图

代码片段和文件信息

function [] = demo()
A = randn(100200);
X = randn(100100);
lambda = 0.01;

disp(‘solve min |Z|_* + lambda |E|_21 s.t. X = AZ + E by exact ALM ...‘);

tic;
[Z1E1] = solve_lrr(XAlambda00);
obj1 = sum(svd(Z1)) + lambda*sum(sqrt(sum(E1.^21)));
toc;

disp([‘objective value=‘ num2str(obj1)]);

disp(‘solve min |Z|_* + lambda |E|_21 s.t. X = AZ + E by inexact ALM ...‘);

tic;
[Z2E2] = solve_lrr(XAlambda01);
obj2 = sum(svd(Z2)) + lambda*sum(sqrt(sum(E2.^21)));
toc;
disp([‘objective value=‘ num2str(obj2)]);

diff = max(max(abs(Z1 - Z2)));

warning([‘difference of the solution found by those two approaches: |Z1 - Z2|_inf=‘ num2str(diff)]);

disp(‘solve min |Z|_* + lambda |E|_1 s.t. X = AZ + E by exact ALM ...‘);
tic;
[Z1E1] = solve_lrr(XAlambda10);
obj1 = sum(svd(Z1)) + lambda*sum(sqrt(sum(E1.^21)));
toc;

disp([‘objective value=‘ num2str(obj1)]);

disp(‘solve min |Z|_* + lambda |E|_1 s.t. X = AZ + E by inexact ALM ...‘);
tic;
[Z2E2] = solve_lrr(XAlambda11);
obj2 = sum(svd(Z2)) + lambda*sum(sqrt(sum(E2.^21)));
toc;
disp([‘objective value=‘ num2str(obj2)]);

diff = max(max(abs(Z1 - Z2)));

warning([‘difference of the solution found by those two approaches: |Z1 - Z2|_inf=‘ num2str(diff) ]);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1223  2013-09-09 14:06  lrr\demo.m
     文件        3005  2013-10-06 18:10  lrr\exact_alm_lrr_l1v2.m
     文件        2899  2013-10-06 18:10  lrr\exact_alm_lrr_l21v2.m
     文件        1749  2013-10-06 18:09  lrr\inexact_alm_lrr_l1.m
     文件        1722  2013-10-06 18:13  lrr\inexact_alm_lrr_l21.m
     文件         289  2013-09-25 16:22  lrr\solve_l1l2.m
     文件        1306  2013-10-06 18:14  lrr\solve_lrr.m

评论

共有 条评论