迭代权重最小二乘(Iteratively reweighted least squares, IRLS) [1] 方法用于求解\(p\)范数(\(p\) norm)的最小化问题。问题如下:
通过迭代的方法,在每次迭代我们都在解决一个加权的最小二乘问题:
此时,我们能够将原始的\(p\) norm问题转化为2-norm的问题。同时我们此时引入了一个随着迭代次数而改变的变量\(w_i(x^t)\)。一般地,我们定义\(t\) step的权重与\(t\) step的误差,即\(| y_i - f_i(x^t) |^p\)有关。我们首先初始化变量\(w_i^{t}\)为:
即\(W\)矩阵的对角元素都为1,其他元素为0。在第\(t\)步,矩阵\(W\)的第\(i\)个对角元素\(w_i^{t}\)为:
例子
例如,我们要求解如下问题[2]:
我们使用迭代权重最小二乘法,可将上式写成
其中,
当然,为了防止分母为零,我们很自然地会将上式写成下式的形式:
其中,\(\epsilon = 1e-6\)。
相比最开始的\(L1\)问题,上面的\(L2\)更容易被解决,因其处处可导且连续。
matlab代码:
matlab code will be uploaded soon!
因此,由于能将\(L_p\)范数的问题转化为\(L_2\)范数的问题,IRLS在压缩感知、稀疏编码等方面取得非常广泛的应用。
[1] Iteratively reweighted least squares
[2] The Constrained Laplacian Rank Algorithm for Graph-Based Clustering