Skip to content

Commit 52761c2

Browse files
committed
Return identity matrix if no scaling provided
1 parent c3afa00 commit 52761c2

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

pymc3/step_methods/hmc/base_hmc.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
from ..arraystep import ArrayStepShared
2+
from ...blocking import DictToArrayBijection, ArrayOrdering
23
from .trajectory import get_theano_hamiltonian_functions
34

45
from pymc3.tuning import guess_scaling
56
from pymc3.model import modelcontext, Point
67
from .quadpotential import quad_potential
78
from pymc3.theanof import inputvars, make_shared_replacements
9+
import numpy as np
810

911

1012
class BaseHMC(ArrayStepShared):
@@ -41,7 +43,8 @@ def __init__(self, vars=None, scaling=None, step_scale=0.25, is_cov=False,
4143
vars = inputvars(vars)
4244

4345
if scaling is None and potential is None:
44-
scaling = model.test_point
46+
bij = DictToArrayBijection(ArrayOrdering(vars), model.test_point)
47+
scaling = np.ones(bij.map(model.test_point).size)
4548

4649
if isinstance(scaling, dict):
4750
scaling = guess_scaling(Point(scaling, model=model), model=model, vars=vars)

0 commit comments

Comments
 (0)