-
-
Notifications
You must be signed in to change notification settings - Fork 25.8k
dpgmm sample not working #1637
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Thanks for reporting. I'll try to have a look soon (if no one else does before me). |
By the way, thanks for trying to help us with DPGMM. Maybe one good step forward would be to improve test coverage to prevent such mishaps :-/ |
Ok, so it seems that the |
So the sample method should probably be rewritten in the subclass. |
I am interested but I don't have much time over the next couple of weeks. Looking at this, I think the sampling code is the easy part. We just need More of an issue is that the variances produced by get_covar are not -e On Wed, Jan 30, 2013 at 3:24 AM, Gael Varoquaux [email protected]:
Erin Scott Sheldon |
This is probably the wrong function to get the covariances. The VBGMM stores the precision values, not covariances iirc. |
It just inverts the precisions
-e On Wed, Jan 30, 2013 at 9:44 AM, Andreas Mueller
Erin Scott Sheldon |
Ok I'll have to have a closer look. What gave you the impression they are wrong? |
Looks like they are off by a factor of two, so maybe it is just definitional.
|
hm that is a bit irritating behavior, though.... |
The |
Maybe I'm sorely mistaken / missing something obvious, but this appears to be correct behavior to me. Precision is inverse covariance, and the covariance returned by _get_covars() is equal to the inverse precision in your example:
I don't see any off-by-two error here. |
Closing: the new Dirichlet process GMM re-write has been merged in master. Its sample method is properly tested. |
Hi Guys -
Trying out DPGMM to see if I can get a more stable solution. Things look good so far except for one problem.
The sample() method does not work for dpgmm. The primary reason is that sample() assumes there is a self.covars_, but this does not exist.
There is a secondary problem however. I tried using get_covars to set the covars but these covariances are not correct, perhaps because of a different convention somehow in the definitions of these covariances.
best, and thanks for the good work on sklearn,
-e
The text was updated successfully, but these errors were encountered: