VIP#

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

用于重参数化 VIP 模型的辅助类。

以下方程中 \(\lambda\) 的操作通过此类辅助类完成。

\[\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#

方法

__init__(_logit_lambda)

fit(*args, **kwargs)

使用变分推断设置 \(\lambda_k\)

get_lambda()

获取模型当前使用的 \(\lambda_k\)

set_all_lambda(value)

全局设置 \(\lambda_k\)

set_lambda(**kwargs)

为每个变量设置 \(\lambda_k\)

truncate_all_lambda(value)

使用 \(\varepsilon\) 截断所有 \(\lambda_k\)

truncate_lambda(**kwargs)

使用 \(\varepsilon\) 截断 \(\lambda_k\)

属性

variational_parameters

返回原始 \(\operatorname{logit}(\lambda_k)\) 用于自定义优化。