Как принять ожидание недифференцируемой функции с PyMC3 - PullRequest
0 голосов
/ 05 апреля 2019

Я хочу взять ожидание функции, которая является нелинейной функцией нескольких стохастических переменных.Кажется, что вся документация, относящаяся к PyMC3, относится к поиску апостериорных дистрибутивов, но мне кажется, что это должно быть возможно.Вот странный пример:

import numpy as np
import pymc3 as pm

def non_linear_fun(a):
    return np.abs(a, 1.)

with pm.Model() as model:
    a = pm.Exponential('a', lam=7.0)
    b = pm.Deterministic('b', non_linear_fun(a))
    trace = pm.sample(10000)

Это терпит неудачу, потому что я думаю, что я должен украсить метод с типами ввода и вывода.

1) Какими они должны быть?2) Учитывая пользовательскую функцию, нужно ли мне использовать конкретный сэмплер?

Извинения за наивные вопросы.

...