0
我有一個具有多個峯的分佈。我想嘗試爲每個駝峯,高斯,指數,威布爾等等擬合幾種不同類型的分佈。然而,就目前而言,似乎我必須爲每個組合手動定義一個隨機類。我想要做的是像pymc中的通用混合模型
@stochastic(model_a, model_b, observed=True)
def mixture(value=observed_time_series, model_a_parameters, model_b_parameters, p):
def logp(value, model_a_parameters, model_b_parameters):
return p*model_a.logp(value, *model_a_parameters) + (1-p)*model_b.logp(value, *model_b_parameters)
def random(model_a_parameters, model_b_paramters, ratio):
if(random() < ratio):
return model_a.random()
return model_b.random()
這樣的代表團是可能的嗎?有沒有一個標準的方法來做到這一點?阻止類似上述事情的主要原因是我無法想出將變量組合在一起的任何方法。