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

Remove MoMA::u, MoMA::v #35

Open
Banana1530 opened this issue Jun 25, 2019 · 0 comments
Open

Remove MoMA::u, MoMA::v #35

Banana1530 opened this issue Jun 25, 2019 · 0 comments
Labels
Algorithm Improvements Improvements to core MoMA Algorithm Parameter Selection Issues / feature requests related to tuning parameter selection

Comments

@Banana1530
Copy link
Collaborator

At the very beginning, we include u and v as members of MoMA to facilitate warm-start. They are initialized to be the SVD of data matrix X, and they are updated in real time as the PG loop runs. Ideally, we want

problem = MoMA(X, lambda_u=0)
problem.solve()
arma::vec u1 = problem.u
arma::vec v1 = problem.v

problem.reset(lambda_v=0.1)
problem.solve() // warm-start
arma::vec u2 = problem.u
arma::vec v2 = problem.v

However, as the mix of BIC search and grid search comes into our design, the concept of warm-start becomes intricate. Furthermore, dependence on MoMA::u and MoMA::v as solutions to the current or last penalized SVD problem might be a gotcha.

So lets remove MoMA::u/v and let outside code (wrt to MoMA internal code) take care of warm-start.

@michaelweylandt michaelweylandt added Algorithm Improvements Improvements to core MoMA Algorithm Parameter Selection Issues / feature requests related to tuning parameter selection labels Jun 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Algorithm Improvements Improvements to core MoMA Algorithm Parameter Selection Issues / feature requests related to tuning parameter selection
Projects
None yet
Development

No branches or pull requests

2 participants