pymc.fit#
- pymc.fit(n=10000, method='advi', model=None, random_seed=None, start=None, start_sigma=None, inf_kwargs=None, **kwargs)[源代码]#
在函数式编程中使用推理方法的便捷快捷方式
- 参数:
- n: `int`
迭代次数
- 方法: str 或 :class:`推理`
字符串名称在以下情况下不区分大小写:
‘advi’ 用于 ADVI
‘fullrank_advi’ 用于 FullRankADVI
‘svgd’ 用于 Stein 变分梯度下降
‘asvgd’ 用于摊销的 Stein 变分梯度下降
- 模型: :class:`模型`
用于推理的 PyMC 模型
- random_seed: None 或 int
- inf_kwargs: dict
传递给
Inference
的额外关键字参数- start: `dict[str, np.ndarray]` 或 `StartDict`
推理的起点
- start_sigma: `dict[str, np.ndarray]`
推理的起始标准差,仅适用于方法 ‘advi’
- 返回:
近似
- 其他参数:
- score: bool
是否在每次迭代时评估损失
- callbacks: list[function: (Approximation, losses, i) -> None]
在每次迭代步骤后调用提供的函数
- progressbar: bool
是否显示进度条
- obj_n_mc: `int`
用于近似目标梯度的蒙特卡洛样本数量
- tf_n_mc: `int`
用于近似测试函数梯度的蒙特卡洛样本数量
- obj_optimizer: function (grads, params) -> updates
用于目标参数的优化器
- test_optimizer: 函数 (grads, params) -> updates
用于测试函数参数的优化器
- more_obj_params: `list`
为目标优化器添加自定义参数
- more_tf_params: `list`
为测试函数优化器添加自定义参数
- more_updates: `dict`
添加自定义更新到生成的更新
- total_grad_norm_constraint: `float`
边界梯度范数,防止梯度爆炸问题
- fn_kwargs: `dict`
将 kwargs 添加到 pytensor.function(例如 {‘profile’: True})
- more_replacements: `dict`
在计算梯度之前应用自定义替换