我必须按顺序解决多个最小二乘问题 - 这是逐个问题。前一个问题中的每个最小二乘问题仅改变一行。右手边对所有人来说都是一样的。例如,问题1:|| Ax-b ||和问题2:|| Cy-b ||其中C和A仅改变一行。也就是说,它相当于从A中删除一行并在A中包含一个新行。当解决问题2时,我也有x。是否有解决问题2的快速方法?
答案 0 :(得分:7)
您可以使用Sherman-Morrison公式。
线性回归解决方案的关键部分是计算A'A
的倒数。
如果b
是来自A
的旧行而a
是C
中的新行,那么
C'C=A'A-bb'+aa'=A'A+(a-b)(a+b)'
这个表达式可以插入到Sherman-Morrison公式中来计算(C'C)^ { - 1}给定(A'A)^ { - 1}。
答案 1 :(得分:0)
不幸的是答案可能不是......
更改矩阵的一行将导致矩阵的光谱完全不同。所有特征值和特征向量都随着幅度和方向而改变。因此,问题1的梯度不会保留在问题2中。您可以尝试使用问题1中的x
作为问题2中y
的初始猜测,但不能保证减少优化中的搜索时间。
然而,使用功能强大的软件包解决线性矩阵方程并不难。您可以使用LU decomposition或QR decomposition来提高计算效率。