我ridge在 MATLAB 中有两种不同的实现。一是简单
(如维基百科的岭回归页面所示),与是大小列的单位矩阵()列(), 和
我只是用
x = ridge(A, b, lambda)
我的问题是两者都返回不同的结果。(1)返回我想要的结果(我通过与其他人比较结果知道这一点)但为什么(2)不返回相同的结果?
我的矩阵是稀疏的,它充满了 1% 的 1 和 99% 的 0。有些列几乎不包含 1。最大的区别似乎是那些只有很少 1 的列的系数在 (1) 中非常接近 0,但在 (2) 中可能与 0 相差甚远
有谁知道它为什么不同以及如何修改 (2) 中的调用以给出与 (1) 相同的结果?