Matrix 如何加速最小二乘回归中杠杆(hat矩阵对角线)的计算?

Matrix 如何加速最小二乘回归中杠杆(hat矩阵对角线)的计算?,matrix,regression,least-squares,outliers,robust,Matrix,Regression,Least Squares,Outliers,Robust,对于稳健拟合问题,我想通过杠杆值(即“Hat”矩阵的对角元素)找到异常值。假设数据矩阵为X(n*p),则Hat矩阵为: Hat = X(X'X)^{-1}X' 其中X'是X的转置 当n很大时,Hat矩阵很大(n*n)。所以计算它很耗时。我想知道有没有更快的方法来计算杠杆值?您没有指定编程语言,因此我只关注算法部分 若你们已经用正交方法拟合了最小二乘问题,比如QR分解和SVD,那个么hat矩阵就是简单的形式。您可以查看我的答案,了解帽子矩阵的显式形式(用乳胶书写)。注意,OP there需要完整

对于稳健拟合问题,我想通过杠杆值(即“Hat”矩阵的对角元素)找到异常值。假设数据矩阵为
X
(n*p),则Hat矩阵为:

Hat = X(X'X)^{-1}X'
其中
X'
X
的转置


n
很大时,Hat矩阵很大(
n*n
)。所以计算它很耗时。我想知道有没有更快的方法来计算杠杆值?

您没有指定编程语言,因此我只关注算法部分

若你们已经用正交方法拟合了最小二乘问题,比如QR分解和SVD,那个么hat矩阵就是简单的形式。您可以查看我的答案,了解帽子矩阵的显式形式(用乳胶书写)。注意,OP there需要完整的hat矩阵,所以我没有演示如何有效地只计算对角线元素。但这真的很简单。请注意,对于正交方法,hat矩阵以形式
QQ'
结束。对角线是行内积。不同行之间的叉积给出对角线。在R中,这样的行内积可以计算为
行和(Q^2)

我的回答是在一个更一般的背景下。Hat矩阵是
a=X'X
的特例。这个答案着重于使用三角形分解,如Cholesky分解和LU分解,并说明如何仅计算对角线元素。您将在此处看到
colSums
而不是
rowSums
,因为hat矩阵以
Q'Q
形式结束


最后,我想指出一些统计数字。高杠杆率本身并不意味着异常值。高杠杆率和高剩余率(即高库克距离)的组合表明存在异常值。

我刚刚给出了你的答案。这真的很清楚,很有帮助。非常感谢你!