How do I normalise a Matrix that is close to Singular or badly scale

9 vues (au cours des 30 derniers jours)
Cutie
Cutie le 10 Jan 2022
I have an extracted features to be used for HMM training.
However, I am having an error Warning: Matrix is close to singular or badly scales. Results may be inaccurate. RCOND
I want a situation whereby i can 'normalize' or avoid this entirely in order to proceed to the next phase of the code.
  1 commentaire
Matt J
Matt J le 10 Jan 2022
The appropriate steps depend a lot on how the matrix got that way.

Connectez-vous pour commenter.

Réponses (1)

John D'Errico
John D'Errico le 24 Oct 2022
You CAN'T do it. Or, sometimes, you can. And it all depends on what makes the matrix singular, or badly scaled. How was the matrix created? Where did it come from?
For example, I can give you a matrix that can never be normalized in any way, to remove a singularity. (Not difficult to create.) And I can give you others that have trivially removed problem. In fact, I can think of several ways that might arise. But can I give you an automatic scheme to always normalize a matrix so it is no longer numerically singular? NO WAY.
What you need to know is to understand WHY is the matrix numerically singular. Then you may be able to deal with the problem. Until you do, that you are faced with the issue that you can't know how to solve the problem.
Finally, there are sometimes schemes to resolve the issue in a way that avoids the singularity, thus if a pseudo-inverse might be appropriate. Sadly, much of the time that too has issues, because it may be inappropriate for specific problems. Again, unless you understand what is happening, and WHY it is happening, you cannot solve the problem.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by