致谢:
1)论文
Iterative Reweighted Least Squares:
https://pdfs.semanticscholar.org/9b92/18e7233f4d0b491e1582c893c9a099470a73.pdf
2)卡内基梅隆大学的计算机科学学院 内网:
内含尚没有模块化的irls的matlab代码:http://www.cs.cmu.edu/~ggordon/IRLS-example/
压缩感知重构算法之IRLS算法python实现,有matlab独立例程,非常感谢:https://blog.csdn.net/hjxzb/article/details/51077309
3)公式例程等
含python例程:https://blog.csdn.net/qq_34840129/article/details/83419685
有整理:https://blog.csdn.net/maum61/article/details/87019858
英文:http://blog.sina.com.cn/s/blog_8db50cf70101by25.html
4)百科:
1 概述
IRLS是iterative reweighted least squares,和OSL相比起来,多了两个单词iterative 和 reweighted。
……
2公式
(1)
(2)
Ax = b
(3)
e = Ax − b.
(14)
(15)
(17)a least weighted squared error:
(18)
(19)
3步骤
4例程
% m-file IRLS0.m to find the optimal
% minimizing the L_p norm ||Ax-b||_p, using
% csb 11/10/2012
function x = IRLS0(A,b,p,KK)
if nargin < 4, KK=10; end;
x = pinv(A)*b;
E = [];
for k = 1:KK
e = A*x - b; % Error vector
w = abs(e).^((p-2)/2); % Error weights for IRLS
W = diag(w/sum(w)); % Normalize weight matrix
WA = W*A; % apply weights
x = (WA'*WA)\(WA'*W)*b; % weighted L_2 sol.
ee = norm(e,p); E = [E ee]; % Error at each iteration
E = [E ee];
end
plot(E)
感兴趣的同学,可以在代码中按照常规处理增加epsilon。
5应用
除了Ax=b之外的各种应用,包括非线性方程中的应用,见文首的致谢论文。