pymc3

    0熱度

    1回答

    我正在從Kaggle(一個關於人類資源)的數據集上工作我試圖實現一些貝葉斯統計(邏輯迴歸),但我不明白如何更改此模型中的先驗(我想攔截是一個無信息高斯和所有其他預測拉普拉斯) import pymc3 as pm priors = {"Intercept": pm.Normal('alpha', mu=0, sd=100), "Regressor": pm.Laplace('bet

    1熱度

    1回答

    我對pymc3相當陌生,我試圖理解如何以不同方式將隨機變量加入模型中。我想適應以下(人爲的)模型,但我無法在文檔中找到任何支持。 我嘗試以下,但numpy的不允許這樣的索引: seq = numpy.arange(10,y_train.size) basic_model = pymc3.Model() with basic_model: alpha = pymc3.Normal('a

    3熱度

    1回答

    我仍在學習PYMC3,但在文檔中找不到任何有關以下問題的內容。考慮從this question沒有季節性的貝葉斯結構時間序列(BSTS)模型。 import pymc3, numpy, matplotlib.pyplot # generate some test data t = numpy.linspace(0,2*numpy.pi,100) y_full = numpy.cos(5*t)

    3熱度

    1回答

    對不起,這個愚蠢的問題,但我無法找到任何方式來禁用消息pymc3.find_MAP()。作爲PyMC3的新手,我想我已經學會了正確使用語法(顫抖)來做一個單一的MAP估計,給定先驗函數和似然函數。我即將嘗試擴展這個範圍來處理大量的變量,但爲了消除我得到的類型的消息,例如: 優化已成功終止。 Current function value: 1.889038 Iterations:2 Func

    1熱度

    1回答

    我想使用相同的pymc3模型來適應許多(~100)數據集。由於我找不到重複使用模型的方法,因此我創建了新模型。這是基本的代碼: for i in range(100): Y = data[i] mod = pm.Model() with mod: p = pm.Uniform('p',lower=0.1,upper=3 ,testval=2) Y_

    0熱度

    1回答

    軟件包pymc3和statsmodels可以在Python處理負二項式GLMS如圖here: E(Y)= E ^(beta_0 +西格瑪(X_I * beta_i)) 在哪裏X_i s是我的預測變量,Y是我的因變量。有沒有辦法強制我的變量(例如X_1)具有beta_1=1,以便算法優化其他係數。我願意同時使用pymc3和statsmodels。謝謝。

    0熱度

    1回答

    我正在嵌套邏輯迴歸模型用3次的成果表示選擇A的適當的規格,B或C的第一級表示A和B或C之間的選擇,並且所述第二級別代表B和C之間的選擇。某些組成數據的代碼位於下方,但我不確定是否正確指定了模型。根據定義,B或C的概率大於B的概率,但是對於非常小的樣本量,當從後驗採樣時,「BorC」可能小於B.這樣的小樣本大小可能不會在實際數據中出現我很感興趣,但事實發生了這種事實讓我覺得我做錯了什麼。謝謝! im

    2熱度

    2回答

    我有一個相當簡單的測試數據集,我試圖適合pymc3。 通過traceplot生成的結果看起來像this. 基本上所有的參數看起來像有一個標準的「毛毛蟲」爲100次迭代,隨後是750次迭代的平線,隨後再次毛蟲的痕跡。 最初的100次迭代發生在25,000次ADVI迭代和10,000次迭代迭代之後。如果我改變這些金額,我隨機將/不會有這些不想要的穩定期。 我想知道如果任何人有任何建議我怎麼能阻止這種情

    1熱度

    1回答

    我試圖使用Mixture from PyMC3來使用兩個Beta分佈(我不知道每個分佈的權重)的混合數據來擬合數據。以下是代碼: model=pm.Model() with model: alpha1=pm.Uniform("alpha1",lower=0,upper=20) beta1=pm.Uniform("beta1",lower=0,upper=20) al

    0熱度

    1回答

    我一直試圖在過去的日子裏習慣於PyMC最終從我有直接代碼(我最終對參數估計感興趣)的某些模型中進行一些MCMC分佈採樣。 據我所知,沒有那麼多的例子顯示他們的代碼(如外部C或FORTRAN代碼),他們成功地使用PyMC3工作。到目前爲止,我發現了here或here賄賂。因此,從簡單的問題開始,我嘗試用PyMC3複製現有Python代碼中的一些結果,這些結果來自於使用PyMC的「複雜」(閱讀:比do