我试图在Matlab(脊)中运行岭回归:L
是一些矩阵,x
是一些随机向量和{ {1}}是另一个向量。我希望y=Lx+αn
返回与:
ridge(y,L,α)
,但后者明显更好。我无法理解这个问题,因为我认为这正是(LL'+α^2I)^(−1)L'y
所做的。我甚至试过ridge()
。
例如:
α=1
和n = randn(N^2,1);
n2 = randn(N^2,1);
L = (some N^2*N^2 matrix);
y = L*n + n2;
x_ridge = ridge(y,L,1);
x_ls = (L*L' + eye(N^2))^-1*L'*y;
以及x_ls
显着不同。
感谢任何帮助!