Skip to main content

Iterative Approach to using Tikhonov Regularizaiton for inverting a matrix

Project description


InverseProblem.invert(A, b, k, l)
Function that operates on any sized ill conditioned matrix A and noisy vecotr b, to solve
Ax=b by inverting A.
It uses the Tikhonov Regularization method, but rather that using its analytic solution it
uses its iterative solution, which converges to the noiseless solution for b.
A is any dimension matrix m x n
b is a vector m x 1
x is a vector n x 1
k is the number of iterations required
l is lambda, or the dampenign parameter in the regularizaiton problem

In many inversion problems the data frame or matrix X is ill-conditioned, meaning the matrix iself is close to singular (e.g. a Hilbert matrix that has several close to dependent columns),and the solution, b, is therefore is noisy. A small perturbation in the matrix X will lead to wild adjustements in the solution, b, as is well-known.

One way to deal with such instability is to regularize the problem and solve a “nearby” problem using Lasso methods or the more general Tikhanov reguarlization problem, which add a penalty, lambda, to the optimizaiton problem. However, currently, no efficient method exists for searching for lambda.

In this new innovative method, we have derived an iterative approach to solving the general Tikhanov regularization problem, which converges to the noiseless solution, does not depend strongly on the choice of lambda, and yet still avoids the inversion problem.

This alogirithm is written in a few lines of code using Python’s numpy package, and primarily relies on the SVD composition. The solution is applicable to many fields in image processing and data, and the code, as we’ll see in the talk, is quite simple.

Project details

Release history Release notifications

This version


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for InverseProblem, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size InverseProblem-1.0-py3.4.egg (3.3 kB) File type Egg Python version 3.0 Upload date Hashes View hashes
Filename, size InverseProblem-1.0.tar.gz (1.5 kB) File type Egg Python version 3.0 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page