簡體   English   中英

線性方程組,帶約束的最小二乘法

[英]linear equation system, least squares with constraints

我嘗試先描述先決條件

我有許多圖像/矩陣,可以想象它們是圖像處理程序中的圖層。 這些層將被添加以形成最終輸出。 每層的系數從0到1

x_1 * M_1 + x_2 * M_2 + ... = S

M_i矩陣是固定的,不會改變。 目標是確定最佳(不一定是最佳)近似於給定S的x_i因子

矩陣的二維與解決該問題無關。 它們可以重新排列以形成矩陣形式的線性方程組。

每個矩陣M_i是M的一列,它們共同構成一個方程

M·x = S

M可能非常大(幾10.000行和100列)

您對最好基於庫的方法有什么建議嗎? 我知道有很多庫可以解決最小二乘問題,但我找不到支持約束的庫。 首先滿足> = 0的條件會為我做

在此先感謝您的幫助

mlpack似乎具有Lagrange乘數,請參閱docs 這些使您能夠求解帶約束的方程式。

您可以使用NLopt庫進行優化,然后將目標函數構造為受壓榨創新的計算(可能使用COBYLA算法)。

您也可以使用QuantLib的General Linear Leaast Squeres類,用法很簡單:

LinearRegression *lr = new LinearRegression( x, y, 1.0);
cout << lr->coefficients();

QuantLib線性回歸

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM