VIP#

class pymc_experimental.model.transforms.autoreparam.VIP(_logit_lambda: Dict[str, TensorSharedVariable])[source]#

Helper to reparemetrize VIP model.

Manipulation of \(\lambda\) in the below equation is done using this helper class.

\[\begin{split}\begin{align*} \eta_{k} &\sim \text{normal}(\lambda_{k} \cdot \mu, \sigma^{\lambda_{k}})\\ \theta_{k} &= \mu + \sigma^{1 - \lambda_{k}} ( \eta_{k} - \lambda_{k} \cdot \mu) \sim \text{normal}(\mu, \sigma). \end{align*}\end{split}\]
__init__(_logit_lambda: Dict[str, TensorSharedVariable]) None#

Methods

__init__(_logit_lambda)

fit(*args, **kwargs)

Set \(\lambda_k\) using Variational Inference.

get_lambda()

Get \(\lambda_k\) that are currently used by the model.

set_all_lambda(value)

Set \(\lambda_k\) globally.

set_lambda(**kwargs)

Set \(\lambda_k\) per variable.

truncate_all_lambda(value)

Truncate all \(\lambda_k\) with \(\varepsilon\).

truncate_lambda(**kwargs)

Truncate \(\lambda_k\) with \(\varepsilon\).

Attributes

variational_parameters

Return raw \(\operatorname{logit}(\lambda_k)\) for custom optimization.