Коли ви використовуєте ZGELSS для вирішення цієї проблеми, ви використовуєте усічене розкладення сингулярного значення для регуляризації цієї надзвичайно умовної проблеми. важливо розуміти, що ця рутина бібліотеки не намагається знайти рішення з найменшим квадратом , а скоріше намагається врівноважити пошук рішення, яке мінімізуєпроти мінімізації. A x = b∥ x∥∥ A x - b ∥
Зауважимо, що параметр RCOND, переданий ZGELSS, може бути використаний для визначення того, які особливі значення слід включити та виключити з обчислення рішення. Будь-яке значення однини менше, ніж RCOND * S (1) (S (1) є найбільшим значенням однини), буде ігноруватися. Ви не сказали нам, як ви встановили параметр RCOND у ZGELSS, і ми нічого про рівень шуму коефіцієнтів у вашій матриці або в правій частині , тому важко сказати, чи використовували ви відповідна кількість регуляризації. Аб
Ви, здається, задоволені регуляризованими рішеннями, які ви отримуєте із ZGELSS, тому, здається, що регуляризація, здійснена методом усіченого SVD (що знаходить мінімальну рішення серед найменших квадратних рішень, що мінімізують над простором розчинів, що охоплюються сингулярними векторами, пов'язаними з величинами сингулярності, більшими, ніж RCOND * S (1), є для вас задовільним. ∥ x ∥∥ Аx - b ∥
Ваше запитання може бути переформульоване так: "Як я можу ефективно отримати розв’язання найменших квадратів для цієї великої, розрідженої та дуже погано обумовленої лінійної проблеми з найменшими квадратами?"
Моя рекомендація полягає у використанні ітеративного методу (наприклад, CGLS або LSQR) для мінімізації явно регульованих проблем з найменшими квадратами.
хв ∥ А x - b∥2+α2∥x∥2
де параметр регуляризації налаштований так, щоб проблема найменших квадратиків була добре обумовлена, і щоб ви були задоволені отриманими рішеннями, що регулюються. α