Skip to content
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

Support State.transition_lovecat with non-normal/categorical primitive cgpms #136

Open
fsaad opened this issue Sep 7, 2016 · 0 comments

Comments

@fsaad
Copy link
Collaborator

fsaad commented Sep 7, 2016

Currently, an error is thrown if the user tries to invoked State.transition_lovecat with non-normal/categorical columns.

https://github.com/probcomp/cgpm/blob/master/src/crosscat/state.py#L492-L495

The difficulty is that lovecat requires X_L to have entries for the column hyperparameters. If the State object does not model columns using normal/categorical, then lovecat._crosscat_X_L cannot correctly generate the dictionary for column hypers.

The solution is the following:

  • Teach lovecat._crosscat_X_L to use some default hyperparameters for non-normal/categorical columns.
  • Run a single column transition from lovecat to obtain good initial values of the column hypers that match the row partitions.
  • Run full lovecat Gibbs sweeps as we do now.
  • Run a single cgpm column hyper sweep, as we do now, updating the hypers based on the returned lovecat partitions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant