Эквивалент `ed.copy` в`tenorflow_probability.edward2`
Я пытаюсь изменить свой код с edward
в tensorflow_probability.edward2
, Проблема в том, что всякий раз, когда я определяю апостериорное распределение, я использую a_post = ed.copy(a, {u: qu}, scope='a_post')
но .copy
API, кажется, больше не доступен:
module 'tensorflow_probability.python.edward2' has no attribute 'copy'
Что такое tensorflow_probability
способ сделать ту же операцию?
1 ответ
В Эдварде копирование зависело от неподдерживаемого обхода и копирования TF. В edward2 этот подход основан на отслеживании с использованием "перехватчиков". Посетите https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/deep_exponential_family.py для примера ВП с использованием перехватчика 'tape'.
Обновление: это может быть более простой и / или более знакомый (LDA) пример: https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/latent_dirichlet_allocation_edward2.py