uber / orbit

A Python package for Bayesian forecasting with object-oriented design and probabilistic models under the hood.
https://orbit-ml.readthedocs.io/en/stable/
Other
1.88k stars 134 forks source link

Selective input of priors #86

Open steveyang90 opened 4 years ago

steveyang90 commented 4 years ago

Allow users to use dictionary for regressor_beta_prior and regressor_sigma_prior args to selectively input priors.

For example, suppose we have feature1 through feature5, but only want custom priors for feature1 and feature4. Users could set the following args:

lgt = LGT(
    regressor_cols=['feature1', 'feature2', 'feature3', 'feature4', 'feature5'],
    regressor_beta_prior={'feature1': 100, 'feature4': 1000} ,
    regressor_sigma_prior={'feature1': 20, 'feature4': 40}
)
edwinnglabs commented 4 years ago

Something slightly related to this: I notice our input args in the LGT and DLT final model are masked. Is there anyway to make it visible in the help manual?

steveyang90 commented 4 years ago

@edwinnglabs I think that is a separate issue. If I understand correctly, what you're looking to do is have docstrings from parent classes be inherited. I'm not sure what the best way to do this is, but let's open a separate issue on this and explore

edwinnglabs commented 4 years ago

Yeah. Let's make a separate issue. Thanks for the clarification. @steveyang90

skyesheng commented 1 year ago

Allow users to use dictionary for regressor_beta_prior and regressor_sigma_prior args to selectively input priors.

For example, suppose we have feature1 through feature5, but only want custom priors for feature1 and feature4. Users could set the following args:

lgt = LGT(
    regressor_cols=['feature1', 'feature2', 'feature3', 'feature4', 'feature5'],
    regressor_beta_prior={'feature1': 100, 'feature4': 1000} ,
    regressor_sigma_prior={'feature1': 20, 'feature4': 40}
)

Backing up this idea. Would love to have selected defined priors and leave others with only specified signs.