bambi: Unexpected Error when testing Bambi package

I’m working on a laptop with Windows 10 and using Anaconda 64-bit. I have created an environment for working with Pymc3 and bambi. I have been able to test Pymc3 and it is working for an Hierarchical Linear Regression model. For bambi I was testing the example described at this link (growth curves of Pigs example) [https://bambinos.github.io/bambi/master/notebooks/multi-level_regression.html]. I run into an error I had not seen with bambi before (actually from the output this looks like it is occurring at Theano, but I’m not a programmer or a developer).

Here is my environment and the complete traceback of the error

# packages in environment at C:\ProgramData\Anaconda3\envs\pm3env:
#
# Name                    Version                   Build  Channel
argon2-cffi               20.1.0           py37hcc03f2d_2    conda-forge
arviz                     0.11.1                   pypi_0    pypi
async_generator           1.10                       py_0    conda-forge
attrs                     21.2.0             pyhd8ed1ab_0    conda-forge
backcall                  0.2.0              pyh9f0ad1d_0    conda-forge
backports                 1.0                        py_2    conda-forge
backports.functools_lru_cache 1.6.4              pyhd8ed1ab_0    conda-forge
bambi                     0.5.0                    pypi_0    pypi
blas                      1.0                         mkl
bleach                    4.0.0              pyhd8ed1ab_0    conda-forge
ca-certificates           2021.5.30            h5b45459_0    conda-forge
cached-property           1.5.2                    pypi_0    pypi
cachetools                4.2.2                    pypi_0    pypi
cairo                     1.16.0            hb19e0ff_1008    conda-forge
certifi                   2021.5.30        py37h03978a9_0    conda-forge
cffi                      1.14.6           py37hd8e9650_0    conda-forge
cftime                    1.5.0                    pypi_0    pypi
colorama                  0.4.4              pyh9f0ad1d_0    conda-forge
cycler                    0.10.0                     py_2    conda-forge
decorator                 5.0.9              pyhd8ed1ab_0    conda-forge
defusedxml                0.7.1              pyhd8ed1ab_0    conda-forge
dill                      0.3.4                    pypi_0    pypi
entrypoints               0.3             pyhd8ed1ab_1003    conda-forge
et-xmlfile                1.1.0                    pypi_0    pypi
expat                     2.4.1                h39d44d4_0    conda-forge
fastprogress              1.0.0                    pypi_0    pypi
filelock                  3.0.12                   pypi_0    pypi
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.13.1            h1989441_1005    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
formulae                  0.1.3                    pypi_0    pypi
freetype                  2.10.4               h546665d_1    conda-forge
fribidi                   1.0.10               h8d14728_0    conda-forge
getopt-win32              0.1                  h8ffe710_0    conda-forge
gettext                   0.19.8.1          h1a89ca6_1005    conda-forge
graphite2                 1.3.13                     1000    conda-forge
graphviz                  2.48.0               hefbd956_0    conda-forge
gts                       0.7.6                h7c369d9_2    conda-forge
h5py                      3.1.0                    pypi_0    pypi
harfbuzz                  2.8.2                hc601d6f_0    conda-forge
icc_rt                    2019.0.0             h0cc432a_1
icu                       68.1                 h0e60522_0    conda-forge
importlib-metadata        2.1.1                    pypi_0    pypi
intel-openmp              2021.3.0          h57928b3_3372    conda-forge
ipykernel                 5.5.5            py37h7813e69_0    conda-forge
ipython                   7.26.0           py37h4038f58_0    conda-forge
ipython_genutils          0.2.0                      py_1    conda-forge
ipywidgets                7.6.3              pyhd3eb1b0_1
jbig                      2.1               h8d14728_2003    conda-forge
jedi                      0.18.0           py37h03978a9_2    conda-forge
jinja2                    3.0.1              pyhd8ed1ab_0    conda-forge
jpeg                      9d                   h8ffe710_0    conda-forge
jsonschema                3.2.0              pyhd8ed1ab_3    conda-forge
jupyter                   1.0.0                    py37_7
jupyter_client            6.1.12             pyhd8ed1ab_0    conda-forge
jupyter_console           6.4.0              pyhd8ed1ab_0    conda-forge
jupyter_core              4.7.1            py37h03978a9_0    conda-forge
jupyterlab_pygments       0.1.2              pyh9f0ad1d_0    conda-forge
jupyterlab_widgets        1.0.0              pyhd8ed1ab_1    conda-forge
kiwisolver                1.3.1            py37h8c56517_1    conda-forge
lcms2                     2.12                 h2a16943_0    conda-forge
lerc                      2.2.1                h0e60522_0    conda-forge
libclang                  11.1.0          default_h5c34c98_1    conda-forge
libdeflate                1.7                  h8ffe710_5    conda-forge
libffi                    3.3                  h0e60522_2    conda-forge
libgd                     2.3.2                h138e682_0    conda-forge
libglib                   2.68.3               h1e62bf3_0    conda-forge
libiconv                  1.16                 he774522_0    conda-forge
libpng                    1.6.37               h1d00b33_2    conda-forge
libpython                 2.1                      py37_0
libsodium                 1.0.18               h8d14728_1    conda-forge
libtiff                   4.3.0                h0c97f57_1    conda-forge
libwebp                   1.2.0                h57928b3_0    conda-forge
libwebp-base              1.2.0                h8ffe710_2    conda-forge
libxcb                    1.13              hcd874cb_1003    conda-forge
libxml2                   2.9.12               hf5bbc77_0    conda-forge
llvmlite                  0.36.0           py37habb0c8c_0    conda-forge
lz4-c                     1.9.3                h8ffe710_1    conda-forge
m2w64-gcc-libgfortran     5.3.0                         6    conda-forge
m2w64-gcc-libs            5.3.0                         7    conda-forge
m2w64-gcc-libs-core       5.3.0                         7    conda-forge
m2w64-gmp                 6.1.0                         2    conda-forge
m2w64-libwinpthread-git   5.0.0.4634.697f757               2    conda-forge
markupsafe                2.0.1            py37hcc03f2d_0    conda-forge
matplotlib                3.3.2                haa95532_0
matplotlib-base           3.3.2            py37h3379fd5_1    conda-forge
matplotlib-inline         0.1.2              pyhd8ed1ab_2    conda-forge
mistune                   0.8.4           py37hcc03f2d_1004    conda-forge
mkl                       2020.4             hb70f87d_311    conda-forge
mkl-service               2.3.0            py37h196d8e1_0
mkl_fft                   1.3.0            py37hda49f71_1    conda-forge
mkl_random                1.2.0            py37h414f9d2_1    conda-forge
mpmath                    1.2.1              pyhd8ed1ab_0    conda-forge
msys2-conda-epoch         20160418                      1    conda-forge
nbclient                  0.5.3              pyhd8ed1ab_0    conda-forge
nbconvert                 6.1.0            py37h03978a9_0    conda-forge
nbformat                  5.1.3              pyhd8ed1ab_0    conda-forge
nest-asyncio              1.5.1              pyhd8ed1ab_0    conda-forge
netcdf4                   1.5.7                    pypi_0    pypi
notebook                  6.4.0              pyha770c72_0    conda-forge
numba                     0.53.1           py37h4e635f9_0    conda-forge
numpy                     1.19.2           py37hadc3359_0
numpy-base                1.19.2           py37ha3acd2a_0
olefile                   0.46               pyh9f0ad1d_1    conda-forge
openjpeg                  2.4.0                hb211442_1    conda-forge
openpyxl                  3.0.7                    pypi_0    pypi
openssl                   1.1.1k               h8ffe710_0    conda-forge
packaging                 21.0               pyhd8ed1ab_0    conda-forge
pandas                    1.2.1            py37hf11a4ad_0
pandoc                    2.14.1               h8ffe710_0    conda-forge
pandocfilters             1.4.2                      py_1    conda-forge
pango                     1.48.7               hd84fcdd_0    conda-forge
parso                     0.8.2              pyhd8ed1ab_0    conda-forge
patsy                     0.5.1                    pypi_0    pypi
pcre                      8.45                 h0e60522_0    conda-forge
pickleshare               0.7.5                   py_1003    conda-forge
pillow                    8.3.1            py37hd7d9ad0_0    conda-forge
pip                       20.3.3           py37haa95532_0
pixman                    0.40.0               h8ffe710_0    conda-forge
prometheus_client         0.11.0             pyhd8ed1ab_0    conda-forge
prompt-toolkit            3.0.19             pyha770c72_0    conda-forge
prompt_toolkit            3.0.19               hd8ed1ab_0    conda-forge
pthread-stubs             0.4               hcd874cb_1001    conda-forge
pycparser                 2.20               pyh9f0ad1d_2    conda-forge
pygments                  2.9.0              pyhd8ed1ab_0    conda-forge
pymc3                     3.11.2                   pypi_0    pypi
pyparsing                 2.4.7              pyh9f0ad1d_0    conda-forge
pyqt                      5.12.3           py37h03978a9_7    conda-forge
pyqt-impl                 5.12.3           py37hf2a7229_7    conda-forge
pyqt5-sip                 4.19.18          py37hf2a7229_7    conda-forge
pyqtchart                 5.12             py37hf2a7229_7    conda-forge
pyqtwebengine             5.12.1           py37hf2a7229_7    conda-forge
pyrsistent                0.17.3           py37hcc03f2d_2    conda-forge
python                    3.7.9                h60c2a47_0
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-graphviz           0.16               pyh243d235_2    conda-forge
python_abi                3.7                     2_cp37m    conda-forge
pytz                      2021.1             pyhd8ed1ab_0    conda-forge
pywin32                   300              py37hcc03f2d_0    conda-forge
pywinpty                  1.1.3            py37h7f67f24_0    conda-forge
pyzmq                     22.2.0           py37hcce574b_0    conda-forge
qt                        5.12.9               h5909a2a_4    conda-forge
qtconsole                 5.1.1              pyhd8ed1ab_0    conda-forge
qtpy                      1.9.0                      py_0    conda-forge
scipy                     1.7.1                    pypi_0    pypi
semver                    2.13.0                   pypi_0    pypi
send2trash                1.7.1              pyhd8ed1ab_0    conda-forge
setuptools                49.6.0           py37h03978a9_3    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
sqlite                    3.36.0               h8ffe710_0    conda-forge
statsmodels               0.12.2                   pypi_0    pypi
sympy                     1.7.1            py37h03978a9_1    conda-forge
terminado                 0.10.1           py37h03978a9_0    conda-forge
testpath                  0.5.0              pyhd8ed1ab_0    conda-forge
theano-pymc               1.1.2                    pypi_0    pypi
tk                        8.6.10               h8ffe710_1    conda-forge
tornado                   6.1              py37hcc03f2d_1    conda-forge
traitlets                 5.0.5                      py_0    conda-forge
typing                    3.7.4.3                  pypi_0    pypi
typing_extensions         3.10.0.0           pyha770c72_0    conda-forge
ucrt                      10.0.20348.0         h57928b3_0    conda-forge
vc                        14.2                 hb210afc_5    conda-forge
vs2015_runtime            14.29.30037          h902a5da_5    conda-forge
watermark                 2.2.0                    pypi_0    pypi
wcwidth                   0.2.5              pyh9f0ad1d_2    conda-forge
webencodings              0.5.1                      py_1    conda-forge
wheel                     0.36.2             pyhd3deb0d_0    conda-forge
widgetsnbextension        3.5.1            py37h03978a9_4    conda-forge
wincertstore              0.2             py37h03978a9_1006    conda-forge
winpty                    0.4.3                         4    conda-forge
xarray                    0.16.2                   pypi_0    pypi
xorg-kbproto              1.0.7             hcd874cb_1002    conda-forge
xorg-libice               1.0.10               hcd874cb_0    conda-forge
xorg-libsm                1.2.3             hcd874cb_1000    conda-forge
xorg-libx11               1.7.2                hcd874cb_0    conda-forge
xorg-libxau               1.0.9                hcd874cb_0    conda-forge
xorg-libxdmcp             1.1.3                hcd874cb_0    conda-forge
xorg-libxext              1.3.4                hcd874cb_1    conda-forge
xorg-libxpm               3.5.13               hcd874cb_0    conda-forge
xorg-libxt                1.2.1                hcd874cb_2    conda-forge
xorg-xextproto            7.3.0             hcd874cb_1002    conda-forge
xorg-xproto               7.0.31            hcd874cb_1007    conda-forge
xz                        5.2.5                h62dcd97_1    conda-forge
zeromq                    4.3.4                h0e60522_0    conda-forge
zipp                      3.5.0              pyhd8ed1ab_0    conda-forge
zlib                      1.2.11            h62dcd97_1010    conda-forge
zstd                      1.5.0                h6255e5f_0    conda-forge

Model I tried to run is:

model = bmb.Model("Weight ~ Time + (Time|Pig)", data)
results = model.fit()

And the error I get is:

---------------------------------------------------------------------------
Exception                                 Traceback (most recent call last)
<ipython-input-11-99071b9bde96> in <module>
      1 model = bmb.Model("Weight ~ Time + (Time|Pig)", data)
----> 2 results = model.fit()

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\bambi\models.py in fit(self, omit_offsets, backend, **kwargs)
    213             )
    214 
--> 215         return self.backend.run(omit_offsets=omit_offsets, **kwargs)
    216 
    217     def build(self, backend="pymc"):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\bambi\backends\pymc.py in run(self, start, method, init, n_init, omit_offsets, **kwargs)
    139                     n_init=n_init,
    140                     return_inferencedata=True,
--> 141                     **kwargs,
    142                 )
    143 

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\sampling.py in sample(draws, step, init, n_init, start, trace, chain_idx, chains, cores, tune, progressbar, model, random_seed, discard_tuned_samples, compute_convergence_checks, callback, jitter_max_retries, return_inferencedata, idata_kwargs, mp_ctx, pickle_backend, **kwargs)
    502                 progressbar=progressbar,
    503                 jitter_max_retries=jitter_max_retries,
--> 504                 **kwargs,
    505             )
    506             if start is None:

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\sampling.py in init_nuts(init, chains, n_init, model, random_seed, progressbar, jitter_max_retries, **kwargs)
   2185         raise ValueError(f"Unknown initializer: {init}.")
   2186 
-> 2187     step = pm.NUTS(potential=potential, model=model, **kwargs)
   2188 
   2189     return start, step

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\step_methods\hmc\nuts.py in __init__(self, vars, max_treedepth, early_max_treedepth, **kwargs)
    166         `pm.sample` to the desired number of tuning steps.
    167         """
--> 168         super().__init__(vars, **kwargs)
    169 
    170         self.max_treedepth = max_treedepth

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\step_methods\hmc\base_hmc.py in __init__(self, vars, scaling, step_scale, is_cov, model, blocked, potential, dtype, Emax, target_accept, gamma, k, t0, adapt_step_size, step_rand, **theano_kwargs)
     86         vars = inputvars(vars)
     87 
---> 88         super().__init__(vars, blocked=blocked, model=model, dtype=dtype, **theano_kwargs)
     89 
     90         self.adapt_step_size = adapt_step_size

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\step_methods\arraystep.py in __init__(self, vars, model, blocked, dtype, logp_dlogp_func, **theano_kwargs)
    252 
    253         if logp_dlogp_func is None:
--> 254             func = model.logp_dlogp_function(vars, dtype=dtype, **theano_kwargs)
    255         else:
    256             func = logp_dlogp_func

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\model.py in logp_dlogp_function(self, grad_vars, tempered, **kwargs)
   1002         varnames = [var.name for var in grad_vars]
   1003         extra_vars = [var for var in self.free_RVs if var.name not in varnames]
-> 1004         return ValueGradFunction(costs, grad_vars, extra_vars, **kwargs)
   1005 
   1006     @property

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\pymc3\model.py in __init__(self, costs, grad_vars, extra_vars, dtype, casting, compute_grads, **kwargs)
    689 
    690         if compute_grads:
--> 691             grad = tt.grad(self._cost_joined, self._vars_joined)
    692             grad.name = "__grad"
    693             outputs = [self._cost_joined, grad]

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in grad(cost, wrt, consider_constant, disconnected_inputs, add_names, known_grads, return_disconnected, null_gradients)
    637             assert g.type.dtype in theano.tensor.float_dtypes
    638 
--> 639     rval = _populate_grad_dict(var_to_app_to_idx, grad_dict, wrt, cost_name)
    640 
    641     for i in range(len(rval)):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in _populate_grad_dict(var_to_app_to_idx, grad_dict, wrt, cost_name)
   1438         return grad_dict[var]
   1439 
-> 1440     rval = [access_grad_cache(elem) for elem in wrt]
   1441 
   1442     return rval

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1438         return grad_dict[var]
   1439 
-> 1440     rval = [access_grad_cache(elem) for elem in wrt]
   1441 
   1442     return rval

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in <listcomp>(.0)
   1059             inputs = node.inputs
   1060 
-> 1061             output_grads = [access_grad_cache(var) for var in node.outputs]
   1062 
   1063             # list of bools indicating if each output is connected to the cost

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_grad_cache(var)
   1391                     for idx in node_to_idx[node]:
   1392 
-> 1393                         term = access_term_cache(node)[idx]
   1394 
   1395                         if not isinstance(term, Variable):

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\gradient.py in access_term_cache(node)
   1218                             )
   1219 
-> 1220                 input_grads = node.op.L_op(inputs, node.outputs, new_output_grads)
   1221 
   1222                 if input_grads is None:

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\tensor\elemwise.py in L_op(self, inputs, outs, ograds)
    562 
    563         # compute grad with respect to broadcasted input
--> 564         rval = self._bgrad(inputs, outs, ograds)
    565 
    566         # TODO: make sure that zeros are clearly identifiable

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\tensor\elemwise.py in _bgrad(self, inputs, outputs, ograds)
    666                 ret.append(None)
    667                 continue
--> 668             ret.append(transform(scalar_igrad))
    669 
    670         return ret

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\tensor\elemwise.py in transform(r)
    657                 return DimShuffle((), ["x"] * nd)(res)
    658 
--> 659             new_r = Elemwise(node.op, {})(*[transform(ipt) for ipt in node.inputs])
    660             return new_r
    661 

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\tensor\elemwise.py in <listcomp>(.0)
    657                 return DimShuffle((), ["x"] * nd)(res)
    658 
--> 659             new_r = Elemwise(node.op, {})(*[transform(ipt) for ipt in node.inputs])
    660             return new_r
    661 

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\tensor\elemwise.py in transform(r)
    657                 return DimShuffle((), ["x"] * nd)(res)
    658 
--> 659             new_r = Elemwise(node.op, {})(*[transform(ipt) for ipt in node.inputs])
    660             return new_r
    661 

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\graph\op.py in __call__(self, *inputs, **kwargs)
    251 
    252         if config.compute_test_value != "off":
--> 253             compute_test_value(node)
    254 
    255         if self.default_output is not None:

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\graph\op.py in compute_test_value(node)
    124 
    125     # Create a thunk that performs the computation
--> 126     thunk = node.op.make_thunk(node, storage_map, compute_map, no_recycling=[])
    127     thunk.inputs = [storage_map[v] for v in node.inputs]
    128     thunk.outputs = [storage_map[v] for v in node.outputs]

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\graph\op.py in make_thunk(self, node, storage_map, compute_map, no_recycling, impl)
    632             )
    633             try:
--> 634                 return self.make_c_thunk(node, storage_map, compute_map, no_recycling)
    635             except (NotImplementedError, MethodNotDefined):
    636                 # We requested the c code, so don't catch the error.

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\graph\op.py in make_c_thunk(self, node, storage_map, compute_map, no_recycling)
    599                 raise NotImplementedError("float16")
    600         outputs = cl.make_thunk(
--> 601             input_storage=node_input_storage, output_storage=node_output_storage
    602         )
    603         thunk, node_input_filters, node_output_filters = outputs

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\basic.py in make_thunk(self, input_storage, output_storage, storage_map)
   1202         init_tasks, tasks = self.get_init_tasks()
   1203         cthunk, module, in_storage, out_storage, error_storage = self.__compile__(
-> 1204             input_storage, output_storage, storage_map
   1205         )
   1206 

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\basic.py in __compile__(self, input_storage, output_storage, storage_map)
   1140             input_storage,
   1141             output_storage,
-> 1142             storage_map,
   1143         )
   1144         return (

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\basic.py in cthunk_factory(self, error_storage, in_storage, out_storage, storage_map)
   1632             for node in self.node_order:
   1633                 node.op.prepare_node(node, storage_map, None, "c")
-> 1634             module = get_module_cache().module_from_key(key=key, lnk=self)
   1635 
   1636         vars = self.inputs + self.outputs + self.orphans

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\cmodule.py in module_from_key(self, key, lnk)
   1189             try:
   1190                 location = dlimport_workdir(self.dirname)
-> 1191                 module = lnk.compile_cmodule(location)
   1192                 name = module.__file__
   1193                 assert name.startswith(location)

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\basic.py in compile_cmodule(self, location)
   1548                     lib_dirs=self.lib_dirs(),
   1549                     libs=libs,
-> 1550                     preargs=preargs,
   1551                 )
   1552             except Exception as e:

C:\ProgramData\Anaconda3\envs\pm3env\lib\site-packages\theano\link\c\cmodule.py in compile_str(module_name, src_code, location, include_dirs, lib_dirs, libs, preargs, py_module, hide_symbols)
   2545             compile_stderr = compile_stderr.replace("\n", ". ")
   2546             raise Exception(
-> 2547                 f"Compilation failed (return status={status}): {compile_stderr}"
   2548             )
   2549         elif config.cmodule__compilation_warning and compile_stderr:

Exception: ("Compilation failed (return status=1): C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp: In member function 'int {anonymous}::__struct_compiled_op_m67599e776bb0a5edbe20464e4ef6902fada5652e9f038845aa3f408620203691::run()':. C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp:506:39: warning: narrowing conversion of 'V5_n0' from 'npy_intp' {aka 'long long int'} to 'int' inside { } [-Wnarrowing].      int init_totals[2] = {V5_n0, V1_n1};.                                        ^. C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp:506:39: warning: narrowing conversion of 'V1_n1' from 'npy_intp' {aka 'long long int'} to 'int' inside { } [-Wnarrowing]. C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp:521:5: warning: narrowing conversion of 'V5_stride0' from 'ssize_t' {aka 'long long int'} to 'int' inside { } [-Wnarrowing].      };.      ^. C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp:521:5: warning: narrowing conversion of 'V1_stride0' from 'ssize_t' {aka 'long long int'} to 'int' inside { } [-Wnarrowing]. C:\\Users\\sreedatta\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.19041-SP0-Intel64_Family_6_Model_140_Stepping_1_GenuineIntel-3.7.9-64\\tmp81eb_5sq\\mod.cpp:521:5: warning: narrowing conversion of 'V1_stride1' from 'ssize_t' {aka 'long long int'} to 'int' inside { } [-Wnarrowing]. At global scope:. cc1plus.exe: warning: unrecognized command line option '-Wno-c++11-narrowing'. C:\\Users\\SREEDATTA\\AppData\\Local\\Temp\\ccjNNew1.s: Assembler messages:\r. C:\\Users\\SREEDATTA\\AppData\\Local\\Temp\\ccjNNew1.s:4410: Error: invalid register for .seh_savexmm\r. ", 'FunctionGraph(Elemwise{mul}(<TensorType(float64, col)>, <TensorType(int8, (True, True))>))')

Can one of you help?

Sree

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 20

Most upvoted comments

@tomicapretto thanks for the additional information regarding the version with Aesara. As one last attempt to get it to work on Windows 10, I have created an environment.yml file from the Windows 8.1 install where it is working and will test with Windows 10. I have found that when installing pymc3=3.11.2 or bambi=0.6.0, matplotlib=3.4.3 is unable to be compiled. It is breaking the entire installation process. I manually forced on Windows 8.1 to install the previous matplotlib=3.4.2. This compiles well. The issue is cropping on Windows 10 as well where '``matplotlib=3.4.3``` fails compilation.

I now have a good working environment for pymc3=3.11.2 on WIndows 10 and Windows 8.1; I have a good working pymc3=3.11.2 and bambi=0.5.0 together on Windows 8.1. I will see if the approach with the environment file will do the trick for bambi on Windows 10. If I get them to work, I will post those environment files for others to try and use.

Thanks again - Sree

@tomicapretto thank you for a detailed step by step process description. I will get familiar with this process in a couple of days. Beginning this Friday, I will start sharing content. I will reach out if I get stuck or have a question.

Sree