MATLAB Answers

how does the gaussian mixture model regularization value work?

43 views (last 30 days)
I used fitgmdist to make gmm with my data.
Since my model includes too many parameters(too high dimension), I got an error message that 'covariance matrix is ill-conditioned'.
And I saw the 'RegularizationValue' option in fitgmdist function. By setting Regularization value to 0.0001, I was able to make GMM.
I know that regularization value prevents one feature from blowing up or getting very small so it can be a solution for overfitting problem.
But I don't know how it works.
I adding very small positive number(i.e. 0.0001) on the diagonal of covariance matrix, how this action can make covariance matrix's condition better(positive definite)?


Sign in to comment.

Accepted Answer

Dheeraj Singh
Dheeraj Singh on 2 Aug 2019
By adding very small positive number (say c) on the diagonal of covariance matrix, you are basically shifting the eigen values by c, this makes all the eigen values positive hence making the covariance matrix positive definite.To avoid ill-conditioned covariance matrices please refer to the documentation of fitgmdist Tips Section


Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by