Khi bạn sử dụng ZGELSS để khắc phục vấn đề này, bạn đang sử dụng phân tách giá trị số ít bị cắt cụt để thường xuyên hóa vấn đề cực kỳ khó điều hòa này. Điều quan trọng là phải hiểu rằng thói quen thư viện này không cố gắng tìm một giải pháp bình phương tối thiểu cho , mà là cố gắng cân bằng việc tìm một giải pháp giảm thiểuchống lại việc giảm thiểu. ‖ x ‖ ‖ Một x - b ‖A x = b∥ x ∥∥ Một x - b ∥
Lưu ý rằng tham số RCOND được truyền cho ZGELSS có thể được sử dụng để chỉ định giá trị số ít nào nên được đưa vào và loại trừ khỏi tính toán của giải pháp. Mọi giá trị số ít hơn RCOND * S (1) (S (1) là giá trị số ít nhất) sẽ bị bỏ qua. Bạn chưa cho chúng tôi biết bạn đã đặt tham số RCOND trong ZGELSS như thế nào và chúng tôi không biết gì về mức độ nhiễu của các hệ số trong ma trận của bạn hoặc ở phía bên phải , vì vậy thật khó để nói bạn đã sử dụng chưa một lượng thích hợp của chính quy. bMộtb
Bạn dường như rất hài lòng với các giải pháp được chính quy hóa mà bạn đang sử dụng với ZGELSS, do đó, có vẻ như việc chính quy hóa được thực hiện bằng phương pháp SVD bị cắt cụt (tìm ra giải pháp tối thiểu trong số các giải pháp bình phương tối thiểu hóa tối thiểu trong không gian của các giải pháp được kéo dài bởi các vectơ số ít liên kết với các giá trị số ít lớn hơn RCOND * S (1)) là thỏa đáng với bạn. ‖ Một x - b ‖∥ x ∥∥ Một x - b ∥
Câu hỏi của bạn có thể được điều chỉnh lại thành "Làm thế nào tôi có thể có được các giải pháp bình phương tối thiểu thường xuyên cho vấn đề bình phương tuyến tính lớn, thưa thớt và rất không điều hòa một cách hiệu quả?"
Đề nghị của tôi sẽ là sử dụng một phương pháp lặp (như CGLS hoặc LSQR) để giảm thiểu vấn đề bình phương tối thiểu được chuẩn hóa rõ ràng
phút ∥ Một x - b ∥2+ α2∥ x ∥2
trong đó tham số chính quy được điều chỉnh sao cho bài toán bình phương nhỏ nhất được làm ẩm được điều hòa tốt và để bạn hài lòng với các giải pháp được chuẩn hóa. α