<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/probability/blob/v0.25.0/tensorflow_probability/python/vi/__init__.py) |

Methods and objectives for variational inference.

## Modules

[`mutual_information`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/mutual_information) module: Mutual information estimators and helpers.

## Classes

[`class GradientEstimators`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/GradientEstimators): Gradient estimators for variational losses.

## Functions

[`amari_alpha(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/amari_alpha): The Amari-alpha Csiszar-function in log-space.

[`arithmetic_geometric(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/arithmetic_geometric): The Arithmetic-Geometric Csiszar-function in log-space.

[`chi_square(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/chi_square): The chi-Square Csiszar-function in log-space.

[`csiszar_vimco(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/csiszar_vimco): Use VIMCO to lower the variance of gradient\[csiszar_function(log(Avg(u))\]. (deprecated)

[`dual_csiszar_function(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/dual_csiszar_function): Calculates the dual Csiszar-function in log-space.

[`fit_surrogate_posterior(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/fit_surrogate_posterior): Fit a surrogate posterior to a target (unnormalized) log density.

[`fit_surrogate_posterior_stateless(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/fit_surrogate_posterior_stateless): Fit a surrogate posterior to a target (unnormalized) log density.

[`jeffreys(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/jeffreys): The Jeffreys Csiszar-function in log-space.

[`jensen_shannon(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/jensen_shannon): The Jensen-Shannon Csiszar-function in log-space.

[`kl_forward(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/kl_forward): The forward Kullback-Leibler Csiszar-function in log-space.

[`kl_reverse(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/kl_reverse): The reverse Kullback-Leibler Csiszar-function in log-space.

[`log1p_abs(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/log1p_abs): The log1p-abs Csiszar-function in log-space.

[`modified_gan(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/modified_gan): The Modified-GAN Csiszar-function in log-space.

[`monte_carlo_variational_loss(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/monte_carlo_variational_loss): Monte-Carlo approximation of an f-Divergence variational loss. (deprecated arguments)

[`pearson(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/pearson): The Pearson Csiszar-function in log-space.

[`squared_hellinger(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/squared_hellinger): The Squared-Hellinger Csiszar-function in log-space.

[`symmetrized_csiszar_function(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/symmetrized_csiszar_function): Symmetrizes a Csiszar-function in log-space.

[`t_power(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/t_power): The T-Power Csiszar-function in log-space.

[`total_variation(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/total_variation): The Total Variation Csiszar-function in log-space.

[`triangular(...)`](https://www.tensorflow.org/probability/api_docs/python/tfp/vi/triangular): The Triangular Csiszar-function in log-space.