Skip to content

Structure Learning#57

Open
paroma wants to merge 20 commits into
base-graph-testingfrom
transition-deps
Open

Structure Learning#57
paroma wants to merge 20 commits into
base-graph-testingfrom
transition-deps

Conversation

@paroma
Copy link
Copy Markdown
Collaborator

@paroma paroma commented Oct 11, 2018

Structure learning using robust PCA via CVXPY.

Overall Implementation:

  • there is parent class DependencyLearner whose children differ by the learn_dependencies method
  • there is only one subclass currently, which is RPCADependencyLearner. Eventually, we will have others, maybe put a few in contrib/
  • user can pass in a DependencyLearner object to LabelModel.train() instead of the junction_tree in the Sigma_O case, and with L_train in the normal case

Issues/Concerns:

  • Structure learning works with Sigma_O of size m x m only. What's the best way to ensure this? Current implementation turns higher_order_cliques = False when creating the junction tree
  • There's some weirdness with how to pass in either a JunctionTree or DependencyLearner (it works but its not the best implementation/check I think)
  • Where do the hyperparameters for lm.train() go? thresh is a common hyperparameter for all dependency learners, but wasn't sure where to pass it in

@paroma paroma changed the title Transition deps Structure Learning Oct 12, 2018
@paroma paroma requested a review from ajratner October 12, 2018 02:09
@ajratner
Copy link
Copy Markdown
Contributor

Awesome! Will look over soon! First quick question- only working for m x m sigma_O corresponds with binary, ind LFs- so basically this means that SL works if you "start from scratch", but not if you already know some deps? Correct?

@paroma
Copy link
Copy Markdown
Collaborator Author

paroma commented Oct 17, 2018

i didnt get a notification :( i think if some deps are known, we can "add on" to those. the option to pass in deps still exists!

the second thing is i need to index into whatever sigma_O to create the m x m matrix...if that's easily doable then we can get rid of HIGHER _ ORDER _ CLIQUES = False since it has to be true for prediction anyways

@bhancock8
Copy link
Copy Markdown
Contributor

What's the next step here? No one is waiting for review still, right?

@ajratner
Copy link
Copy Markdown
Contributor

This is probably blocked on me finishing a refactor of the LabelModel on this branch- coming soon!!

@paroma
Copy link
Copy Markdown
Collaborator Author

paroma commented Feb 28, 2019

WIP: working on the 3 view class balance model with current LabelModel implementation in master

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

Successfully merging this pull request may close these issues.

3 participants