You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It would be nice if we had something like a method option with useful combinations of ebnm_fn, ebnm_param, and init_fn. For example, "fast" could be the usual ebnm_pn. "Nonnegative" could give a nonnegative MF, and we could also have "nonneg_loadings" and "nonneg_factors" (which I've been using quite a bit). As we find new uses for flash, we could add to this list. I am thinking of the method parameter in ashr which has a similar purpose.
The text was updated successfully, but these errors were encountered:
As a long-term goal, it would be nice to have a single flash function. flash_greedy and flash_backfit are already redundant. We can return a sampler function with the flash object and eliminate flash_sampler. We can add S as a parameter to flash and eliminate flash_set_data. We could add parameters FF_init and LL_init with some way to indicate which elements are fixed, and get rid of flash_add_fixed_factors, flash_add_fixed_loadings, and flash_add_factors_from_data. To do this, we need to decide whether it's better to add greedy before fixed or fixed before greedy (this is not an easy problem). flash_fill is a trivial function and does not need to be exported. Finally, flash_zero_out_factor is sort of useful as a utility but is probably best filed alongside other utilities for experienced flash users (that is, not exported).
My ideal interface would be something like flash(Y, S = NULL, var_type = c(...), method = c(...), flash_init = NULL, LL_init = NULL, FF_init = NULL, greedy_Kmax = 100, greedy_maxiter = 500, backfit_maxiter = 0, nullcheck = TRUE, verbose = TRUE, custom_params = list())
where LL_init is either a matrix or a list with one matrix specifying LL and one specifying fixl, and custom_params is a list that can include init_fn, ebnm_fn, ebnm_param, stopping_rule, tol, and verbose_output (which override the method-specific defaults)
It would be nice if we had something like a
method
option with useful combinations ofebnm_fn
,ebnm_param
, andinit_fn
. For example, "fast" could be the usualebnm_pn
. "Nonnegative" could give a nonnegative MF, and we could also have "nonneg_loadings" and "nonneg_factors" (which I've been using quite a bit). As we find new uses for flash, we could add to this list. I am thinking of themethod
parameter inashr
which has a similar purpose.The text was updated successfully, but these errors were encountered: