In linear algebra pseudoinverse () of a matrix A is a generalization of the inverse matrix. The most common use of pseudoinverse is to compute the best fit solution to a system of linear equations which lacks a unique solution. Moore – Penrose inverse is the most widely known type of matrix pseudoinverse. The term generalized inverse is sometimes used as a synonym of pseudoinverse.
Let the system is given as:
We know A and , and we want to find .
and are vectors,
A is a matrix
If A is a square matrix, we proceed as below:
But if A is not a square matrix, we cannot compute the usual . Nevertheless, we can form the pseudoinverse.
If we go in detail at the system i.e. , then it represents the following set of equations:
which can also be written in matrix form as below:
Where m > n which means the number of rows is greater than the number of columns or the number of rows is greater than the number of variables.
Solution to the above problem:
There are multiple ways to solve the above problem. One solution involves Moore – Penrose Pseudoinverse. We write the Moore – Penrose pseudoinverse as .
We have but unless A has the usual inverse.
So, to solve the problem we proceed as follow:
This is how simply we solve the linear equations using the Moore – Penrose pseudoinverse. The derivation for Moore – Penrose pseudoinverse is beyond the scope of this article. You can go through this link in case you want to know more about it. Here, it is simply presented the method for computing it. The Moore – Penrose pseudoinverse is computed as
Consider below 3 linear equations: Equivalently we can write above equations in matrix form as shown below: After we compute the Moore - Penrose pseudoinverse using , we will get: Check the matrix product you will get identity matrix I. We have, Then, After you compute above computation, you will get the final answer as
Note: Moore – Penrose pseudoinverse solves the problem in least squared error sense. In general, there is no exact solution to overdetermined problems. So if you cross check the solution you will not get the exact required y but an approx value of y.
- Introduction to Ontologies
- Machine Learning and Data Science
- How Machine Learning Will Change the World?
- Machine Learning Role in Business Growth and Development
- Introduction to Predictive Maintenance
- Difference between Parametric and Non-Parametric Methods
- Upper Confidence Bound Algorithm in Reinforcement Learning
- Structure of Data Science Project
- Python | Multiple Face Recognition using dlib
- ML | Random Intialization Trap in K-Means
- Cognitive Computing
- Python | ARIMA Model for Time Series Forecasting
- ML | Linear Algebra Operations
- Bias Vs Variance in Machine Learning
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.