Ich bin relativ neu in PYMC3 und ich versuche, eine Bayes-Struktur Time Series (BSTS) ohne Regressoren zu implementieren, beispielsweise das Modell here in R. Das Modell passt sich wie folgt:PYMC3 Saison Variablen
kann ich den lokalen linearen Trend mit einem GaussianRandomWalk wie folgt implementieren:
delta = pymc3.GaussianRandomWalk('delta',mu=0,sd=1,shape=99)
mu = pymc3.GaussianRandomWalk('mu',mu=delta,sd=1,shape=100)
, ich bin ratlos jedoch dafür, wie die saisonale Variable (tau) in PYMC3 zu kodieren. Muss ich einen benutzerdefinierten Random-Walk-Kurs rollen oder gibt es einen anderen Trick?
Es ist mir nicht wirklich klar, warum das die richtige Form von Tau geben würde, können Sie das ausarbeiten? Auf jeden Fall erzeugt dies eine Dimensionsabweichung. Wenn ich S = 12 nehme, dann ist tau ein 12-dimensionaler Vektor, während mu ein 100-dimensionaler ist. Dies verhindert, dass ich y = pm.Normal ('y', mu = mu + tau, sd = sigma_y, beobachtet = y_train) bilden kann. Ich schätze, wenn du Cumsum-Trick für die Spaziergänge sagst, meinst du u = pm.Normal ('u', sd = sigma_delta) und delta = u + tt.concatenate ([[0.], U.cumsum() [: -1]])? – Paul
Ich möchte Ihre Antwort akzeptieren, so dass Sie Ihren Ruf bekommen können, aber ich kann nicht ohne Berücksichtigung der Tensor Formen und Form y (siehe vorherigen Kommentar). – Paul