非负最小二乘中的 Tikhonov 正则化

计算科学 Python scipy
2021-12-02 08:57:35

我正在做一个项目,我需要在 NNLS 算法中添加正则化。有没有办法将 Tikhonov 正则化添加到 scipy [1] 的 NNLS 实现中?

[2] 谈论它,但没有显示任何实现。Sklearn 有一个实现,但它不适用于 nnls。

[1] http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.nnls.html

[2] http://icses2012.pwr.wroc.pl/article/34.pdf

1个回答

仍在使用

scipy.optimize.nnls(A1, b1), 在哪里

A1 = np.concatenate((A, lambda*np.matlib.identity(n)))
b1 = np.concatenate((b, numpy.zeros(shape=(n,1))))