18. Ordinal probit model

Bayesian estimation of an ordinal probit model. This is just to illustrate the syntax, as the data are not ordered. But the example assume, for the sake of it, that the alternatives are ordered as 1->2->3

Michel Bierlaire, EPFL Mon Nov 17 2025, 16:44:27

from IPython.core.display_functions import display

import biogeme.biogeme_logging as blog
from biogeme.bayesian_estimation import BayesianResults, get_pandas_estimated_parameters
from biogeme.biogeme import BIOGEME
from biogeme.expressions import Beta, OrderedLogProbit

See the data processing script: Data preparation for Swissmetro.

from swissmetro_data import CHOICE, TRAIN_COST_SCALED, TRAIN_TT_SCALED, database

We define a small but positive lower bound

POSITIVE_LOWER_BOUND = 1.0e-5

logger = blog.get_screen_logger(level=blog.INFO)
logger.info('Example b18b_ordinal_probit.py')
Example b18b_ordinal_probit.py

Parameters to be estimated

b_time = Beta('b_time', 0, None, None, 0)
b_cost = Beta('b_cost', 0, None, None, 0)

Threshold parameters for the ordered probit.

\(\tau_1 \leq 0\).

tau1 = Beta('tau1', -1, None, 0, 0)

\(\delta_2 \geq 0\).

delta2 = Beta('delta2', 2, POSITIVE_LOWER_BOUND, None, 0)

\(\tau_2 = \tau_1 + \delta_2\)

tau2 = tau1 + delta2

Utility

utility = b_time * TRAIN_TT_SCALED + b_cost * TRAIN_COST_SCALED

Associate each discrete indicator with an interval.

log_probability = OrderedLogProbit(
    eta=utility,
    cutpoints=[tau1, tau2],
    y=CHOICE,
    categories=[1, 2, 3],
    neutral_labels=[],
)

Create the Biogeme object.

the_biogeme = BIOGEME(database, log_probability)
the_biogeme.model_name = 'b18b_ordinal_probit'
Biogeme parameters read from biogeme.toml.

Estimate the parameters.

try:
    results = BayesianResults.from_netcdf(
        filename=f'saved_results/{the_biogeme.model_name}.nc'
    )
except FileNotFoundError:
    results = the_biogeme.bayesian_estimation()
*** Initial values of the parameters are obtained from the file __b18b_ordinal_probit.iter
Cannot read file __b18b_ordinal_probit.iter. Statement is ignored.
Starting values for the algorithm: {}
/Users/bierlair/MyFiles/github/biogeme/src/biogeme/biogeme.py:832: UserWarning: Note: JAX currently sees 1 CPU device. To parallelize across CPU devices, set XLA_FLAGS as above and restart Python/Jupyter.
macOS / Linux (bash/zsh):
  export XLA_FLAGS="--xla_force_host_platform_device_count=<number_of_cores>"

Jupyter (new cell, before `import jax`):
  %env XLA_FLAGS="--xla_force_host_platform_device_count=<number_of_cores>"

  warning_cpu_devices()
Detected CPU devices: 1 | System logical cores: 12
Current XLA_FLAGS: (none set)
Platform: Darwin 24.6.0 | Python: 3.13.1

Auto sampling: JAX available (devices=1, platforms=cpu) → numpyro/vectorized
/Users/bierlair/MyFiles/github/biogeme/src/biogeme/biogeme.py:859: UserWarning: The effect of Potentials on other parameters is ignored during prior predictive sampling. This is likely to lead to invalid or biased predictive samples.
  pm.sample_prior_predictive(

  0%|          | 0/4000 [00:00<?, ?it/s]
warmup:   0%|          | 1/4000 [00:01<1:21:46,  1.23s/it]
warmup:   0%|          | 12/4000 [00:01<05:30, 12.06it/s]
warmup:   0%|          | 18/4000 [00:01<03:56, 16.82it/s]
warmup:   1%|          | 25/4000 [00:01<02:49, 23.42it/s]
warmup:   1%|          | 31/4000 [00:01<02:53, 22.91it/s]
warmup:   1%|          | 35/4000 [00:02<02:49, 23.37it/s]
warmup:   1%|          | 40/4000 [00:02<02:23, 27.56it/s]
warmup:   1%|          | 45/4000 [00:02<02:13, 29.68it/s]
warmup:   1%|          | 49/4000 [00:02<02:11, 30.14it/s]
warmup:   1%|▏         | 53/4000 [00:02<02:08, 30.61it/s]
warmup:   1%|▏         | 59/4000 [00:02<01:49, 35.92it/s]
warmup:   2%|▏         | 65/4000 [00:02<01:43, 37.96it/s]
warmup:   2%|▏         | 70/4000 [00:02<01:42, 38.25it/s]
warmup:   2%|▏         | 75/4000 [00:03<01:39, 39.45it/s]
warmup:   2%|▏         | 80/4000 [00:03<01:36, 40.78it/s]
warmup:   2%|▏         | 85/4000 [00:03<01:42, 38.12it/s]
warmup:   2%|▏         | 91/4000 [00:03<01:31, 42.93it/s]
warmup:   2%|▏         | 96/4000 [00:03<01:27, 44.65it/s]
warmup:   3%|▎         | 101/4000 [00:04<03:57, 16.44it/s]
warmup:   3%|▎         | 105/4000 [00:04<03:34, 18.17it/s]
warmup:   3%|▎         | 111/4000 [00:04<02:43, 23.79it/s]
warmup:   3%|▎         | 117/4000 [00:04<02:11, 29.43it/s]
warmup:   3%|▎         | 122/4000 [00:04<02:16, 28.31it/s]
warmup:   3%|▎         | 126/4000 [00:05<02:36, 24.75it/s]
warmup:   3%|▎         | 131/4000 [00:05<02:14, 28.87it/s]
warmup:   3%|▎         | 135/4000 [00:05<02:07, 30.43it/s]
warmup:   4%|▎         | 142/4000 [00:05<01:43, 37.41it/s]
warmup:   4%|▎         | 147/4000 [00:05<01:40, 38.47it/s]
warmup:   4%|▍         | 152/4000 [00:05<01:55, 33.33it/s]
warmup:   4%|▍         | 156/4000 [00:05<01:57, 32.72it/s]
warmup:   4%|▍         | 161/4000 [00:06<01:54, 33.65it/s]
warmup:   4%|▍         | 165/4000 [00:06<01:56, 32.93it/s]
warmup:   4%|▍         | 169/4000 [00:06<02:04, 30.88it/s]
warmup:   4%|▍         | 174/4000 [00:06<01:52, 33.91it/s]
warmup:   4%|▍         | 180/4000 [00:06<01:36, 39.62it/s]
warmup:   5%|▍         | 187/4000 [00:06<01:24, 45.29it/s]
warmup:   5%|▍         | 194/4000 [00:06<01:16, 49.46it/s]
warmup:   5%|▌         | 200/4000 [00:06<01:26, 44.00it/s]
warmup:   5%|▌         | 207/4000 [00:07<01:16, 49.54it/s]
warmup:   5%|▌         | 213/4000 [00:07<01:19, 47.60it/s]
warmup:   6%|▌         | 220/4000 [00:07<01:13, 51.76it/s]
warmup:   6%|▌         | 226/4000 [00:07<01:12, 51.75it/s]
warmup:   6%|▌         | 234/4000 [00:07<01:04, 58.26it/s]
warmup:   6%|▌         | 240/4000 [00:07<01:09, 53.97it/s]
warmup:   6%|▌         | 249/4000 [00:07<01:01, 60.97it/s]
warmup:   6%|▋         | 256/4000 [00:07<01:03, 58.86it/s]
warmup:   7%|▋         | 262/4000 [00:08<01:22, 45.56it/s]
warmup:   7%|▋         | 268/4000 [00:08<01:50, 33.71it/s]
warmup:   7%|▋         | 273/4000 [00:08<01:50, 33.59it/s]
warmup:   7%|▋         | 277/4000 [00:08<01:50, 33.74it/s]
warmup:   7%|▋         | 281/4000 [00:08<01:49, 33.83it/s]
warmup:   7%|▋         | 286/4000 [00:08<01:40, 36.96it/s]
warmup:   7%|▋         | 291/4000 [00:09<01:36, 38.43it/s]
warmup:   7%|▋         | 296/4000 [00:09<01:31, 40.60it/s]
warmup:   8%|▊         | 301/4000 [00:09<01:41, 36.37it/s]
warmup:   8%|▊         | 309/4000 [00:09<01:19, 46.21it/s]
warmup:   8%|▊         | 316/4000 [00:09<01:11, 51.50it/s]
warmup:   8%|▊         | 322/4000 [00:09<01:13, 50.20it/s]
warmup:   8%|▊         | 328/4000 [00:09<01:16, 47.95it/s]
warmup:   8%|▊         | 334/4000 [00:09<01:12, 50.26it/s]
warmup:   9%|▊         | 341/4000 [00:09<01:07, 54.60it/s]
warmup:   9%|▊         | 348/4000 [00:10<01:03, 57.76it/s]
warmup:   9%|▉         | 355/4000 [00:10<01:00, 60.23it/s]
warmup:   9%|▉         | 362/4000 [00:10<00:58, 61.81it/s]
warmup:   9%|▉         | 370/4000 [00:10<00:56, 64.03it/s]
warmup:   9%|▉         | 377/4000 [00:10<00:56, 64.62it/s]
warmup:  10%|▉         | 385/4000 [00:10<00:53, 67.92it/s]
warmup:  10%|▉         | 392/4000 [00:10<00:55, 65.57it/s]
warmup:  10%|▉         | 399/4000 [00:10<00:56, 63.84it/s]
warmup:  10%|█         | 407/4000 [00:10<00:54, 65.42it/s]
warmup:  10%|█         | 414/4000 [00:11<00:54, 65.65it/s]
warmup:  11%|█         | 423/4000 [00:11<00:50, 71.51it/s]
warmup:  11%|█         | 431/4000 [00:11<00:49, 72.65it/s]
warmup:  11%|█         | 439/4000 [00:11<00:48, 73.30it/s]
warmup:  11%|█         | 447/4000 [00:11<00:49, 71.99it/s]
warmup:  11%|█▏        | 455/4000 [00:11<00:56, 63.06it/s]
warmup:  12%|█▏        | 462/4000 [00:12<01:47, 32.84it/s]
warmup:  12%|█▏        | 468/4000 [00:12<01:56, 30.33it/s]
warmup:  12%|█▏        | 473/4000 [00:12<02:00, 29.38it/s]
warmup:  12%|█▏        | 480/4000 [00:12<01:43, 33.85it/s]
warmup:  12%|█▏        | 485/4000 [00:12<01:37, 36.14it/s]
warmup:  12%|█▏        | 490/4000 [00:12<01:30, 38.90it/s]
warmup:  12%|█▏        | 495/4000 [00:13<01:25, 41.06it/s]
warmup:  13%|█▎        | 501/4000 [00:13<01:18, 44.72it/s]
warmup:  13%|█▎        | 506/4000 [00:13<01:20, 43.28it/s]
warmup:  13%|█▎        | 514/4000 [00:13<01:07, 51.83it/s]
warmup:  13%|█▎        | 520/4000 [00:13<01:05, 52.99it/s]
warmup:  13%|█▎        | 527/4000 [00:13<01:03, 55.11it/s]
warmup:  13%|█▎        | 533/4000 [00:13<01:02, 55.15it/s]
warmup:  14%|█▎        | 541/4000 [00:13<00:56, 60.80it/s]
warmup:  14%|█▎        | 548/4000 [00:13<01:00, 57.27it/s]
warmup:  14%|█▍        | 555/4000 [00:14<00:57, 59.98it/s]
warmup:  14%|█▍        | 562/4000 [00:14<00:59, 58.16it/s]
warmup:  14%|█▍        | 569/4000 [00:14<00:57, 60.09it/s]
warmup:  14%|█▍        | 576/4000 [00:14<00:57, 59.84it/s]
warmup:  15%|█▍        | 584/4000 [00:14<00:54, 62.50it/s]
warmup:  15%|█▍        | 592/4000 [00:14<00:51, 66.50it/s]
warmup:  15%|█▍        | 599/4000 [00:14<00:54, 62.71it/s]
warmup:  15%|█▌        | 606/4000 [00:14<00:55, 61.62it/s]
warmup:  15%|█▌        | 614/4000 [00:14<00:51, 65.91it/s]
warmup:  16%|█▌        | 621/4000 [00:15<00:55, 60.35it/s]
warmup:  16%|█▌        | 628/4000 [00:15<00:56, 59.93it/s]
warmup:  16%|█▌        | 637/4000 [00:15<00:50, 66.68it/s]
warmup:  16%|█▌        | 645/4000 [00:15<00:48, 69.10it/s]
warmup:  16%|█▋        | 654/4000 [00:15<00:45, 73.48it/s]
warmup:  17%|█▋        | 662/4000 [00:15<00:46, 71.70it/s]
warmup:  17%|█▋        | 673/4000 [00:15<00:42, 77.72it/s]
warmup:  17%|█▋        | 681/4000 [00:15<00:43, 76.97it/s]
warmup:  17%|█▋        | 689/4000 [00:16<00:44, 74.36it/s]
warmup:  17%|█▋        | 697/4000 [00:16<00:47, 70.16it/s]
warmup:  18%|█▊        | 706/4000 [00:16<00:44, 74.19it/s]
warmup:  18%|█▊        | 714/4000 [00:16<00:45, 72.15it/s]
warmup:  18%|█▊        | 722/4000 [00:16<00:45, 71.79it/s]
warmup:  18%|█▊        | 730/4000 [00:16<00:47, 68.57it/s]
warmup:  18%|█▊        | 738/4000 [00:16<00:46, 70.67it/s]
warmup:  19%|█▊        | 746/4000 [00:16<00:47, 67.99it/s]
warmup:  19%|█▉        | 753/4000 [00:16<00:48, 67.22it/s]
warmup:  19%|█▉        | 761/4000 [00:17<00:46, 69.24it/s]
warmup:  19%|█▉        | 771/4000 [00:17<00:42, 75.57it/s]
warmup:  20%|█▉        | 781/4000 [00:17<00:40, 79.95it/s]
warmup:  20%|█▉        | 790/4000 [00:17<00:39, 81.76it/s]
warmup:  20%|█▉        | 799/4000 [00:17<00:42, 75.87it/s]
warmup:  20%|██        | 808/4000 [00:17<00:40, 78.19it/s]
warmup:  20%|██        | 816/4000 [00:17<00:43, 73.21it/s]
warmup:  21%|██        | 824/4000 [00:17<00:44, 71.70it/s]
warmup:  21%|██        | 832/4000 [00:18<00:47, 66.82it/s]
warmup:  21%|██        | 841/4000 [00:18<00:44, 71.59it/s]
warmup:  21%|██▏       | 850/4000 [00:18<00:41, 75.19it/s]
warmup:  21%|██▏       | 858/4000 [00:18<00:50, 62.25it/s]
warmup:  22%|██▏       | 865/4000 [00:18<01:13, 42.92it/s]
warmup:  22%|██▏       | 871/4000 [00:18<01:10, 44.57it/s]
warmup:  22%|██▏       | 877/4000 [00:19<01:21, 38.46it/s]
warmup:  22%|██▏       | 885/4000 [00:19<01:08, 45.77it/s]
warmup:  22%|██▏       | 891/4000 [00:19<01:09, 44.94it/s]
warmup:  22%|██▏       | 898/4000 [00:19<01:02, 49.68it/s]
warmup:  23%|██▎       | 905/4000 [00:19<00:59, 52.14it/s]
warmup:  23%|██▎       | 911/4000 [00:19<01:01, 50.34it/s]
warmup:  23%|██▎       | 917/4000 [00:19<00:59, 51.87it/s]
warmup:  23%|██▎       | 925/4000 [00:19<00:53, 58.01it/s]
warmup:  23%|██▎       | 932/4000 [00:20<00:55, 55.32it/s]
warmup:  23%|██▎       | 939/4000 [00:20<00:52, 57.96it/s]
warmup:  24%|██▎       | 947/4000 [00:20<00:48, 62.60it/s]
warmup:  24%|██▍       | 954/4000 [00:20<00:49, 61.68it/s]
warmup:  24%|██▍       | 961/4000 [00:20<00:52, 58.14it/s]
warmup:  24%|██▍       | 967/4000 [00:20<00:52, 57.44it/s]
warmup:  24%|██▍       | 975/4000 [00:20<00:48, 62.44it/s]
warmup:  25%|██▍       | 985/4000 [00:20<00:42, 71.46it/s]
warmup:  25%|██▍       | 993/4000 [00:20<00:46, 65.21it/s]
warmup:  25%|██▌       | 1002/4000 [00:21<00:42, 70.42it/s]
warmup:  25%|██▌       | 1010/4000 [00:21<00:41, 72.00it/s]
warmup:  25%|██▌       | 1019/4000 [00:21<00:39, 75.64it/s]
warmup:  26%|██▌       | 1027/4000 [00:21<00:41, 71.30it/s]
warmup:  26%|██▌       | 1036/4000 [00:21<00:39, 75.91it/s]
warmup:  26%|██▌       | 1044/4000 [00:21<00:39, 75.63it/s]
warmup:  26%|██▋       | 1052/4000 [00:21<00:38, 75.87it/s]
warmup:  26%|██▋       | 1060/4000 [00:21<00:42, 69.79it/s]
warmup:  27%|██▋       | 1068/4000 [00:21<00:44, 65.80it/s]
warmup:  27%|██▋       | 1075/4000 [00:22<00:45, 63.80it/s]
warmup:  27%|██▋       | 1083/4000 [00:22<00:43, 66.95it/s]
warmup:  27%|██▋       | 1090/4000 [00:22<00:43, 66.44it/s]
warmup:  27%|██▋       | 1098/4000 [00:22<00:43, 67.03it/s]
warmup:  28%|██▊       | 1105/4000 [00:22<00:43, 66.68it/s]
warmup:  28%|██▊       | 1113/4000 [00:22<00:41, 69.07it/s]
warmup:  28%|██▊       | 1121/4000 [00:22<00:40, 70.96it/s]
warmup:  28%|██▊       | 1130/4000 [00:22<00:38, 73.96it/s]
warmup:  28%|██▊       | 1139/4000 [00:22<00:38, 74.81it/s]
warmup:  29%|██▊       | 1147/4000 [00:23<00:39, 72.71it/s]
warmup:  29%|██▉       | 1156/4000 [00:23<00:37, 76.13it/s]
warmup:  29%|██▉       | 1164/4000 [00:23<00:39, 71.68it/s]
warmup:  29%|██▉       | 1172/4000 [00:23<00:38, 72.59it/s]
warmup:  30%|██▉       | 1180/4000 [00:23<00:40, 69.19it/s]
warmup:  30%|██▉       | 1189/4000 [00:23<00:38, 73.53it/s]
warmup:  30%|██▉       | 1197/4000 [00:23<00:43, 64.06it/s]
warmup:  30%|███       | 1205/4000 [00:23<00:41, 66.91it/s]
warmup:  30%|███       | 1215/4000 [00:24<00:37, 74.30it/s]
warmup:  31%|███       | 1224/4000 [00:24<00:36, 77.05it/s]
warmup:  31%|███       | 1234/4000 [00:24<00:33, 81.92it/s]
warmup:  31%|███       | 1244/4000 [00:24<00:33, 83.37it/s]
warmup:  31%|███▏      | 1253/4000 [00:24<00:33, 81.31it/s]
warmup:  32%|███▏      | 1262/4000 [00:24<00:36, 75.44it/s]
warmup:  32%|███▏      | 1270/4000 [00:24<00:37, 73.26it/s]
warmup:  32%|███▏      | 1279/4000 [00:24<00:36, 75.19it/s]
warmup:  32%|███▏      | 1287/4000 [00:25<00:38, 71.12it/s]
warmup:  32%|███▏      | 1295/4000 [00:25<00:37, 72.57it/s]
warmup:  33%|███▎      | 1303/4000 [00:25<00:36, 73.93it/s]
warmup:  33%|███▎      | 1311/4000 [00:25<00:36, 74.16it/s]
warmup:  33%|███▎      | 1321/4000 [00:25<00:33, 80.05it/s]
warmup:  33%|███▎      | 1330/4000 [00:25<00:34, 77.03it/s]
warmup:  33%|███▎      | 1338/4000 [00:25<00:38, 68.34it/s]
warmup:  34%|███▎      | 1347/4000 [00:25<00:36, 72.58it/s]
warmup:  34%|███▍      | 1355/4000 [00:25<00:35, 74.38it/s]
warmup:  34%|███▍      | 1363/4000 [00:26<00:37, 70.39it/s]
warmup:  34%|███▍      | 1371/4000 [00:26<00:36, 71.57it/s]
warmup:  34%|███▍      | 1380/4000 [00:26<00:35, 74.17it/s]
warmup:  35%|███▍      | 1388/4000 [00:26<00:36, 72.27it/s]
warmup:  35%|███▍      | 1397/4000 [00:26<00:34, 75.92it/s]
warmup:  35%|███▌      | 1406/4000 [00:26<00:33, 78.28it/s]
warmup:  35%|███▌      | 1416/4000 [00:26<00:31, 83.21it/s]
warmup:  36%|███▌      | 1425/4000 [00:26<00:30, 83.64it/s]
warmup:  36%|███▌      | 1435/4000 [00:26<00:30, 84.27it/s]
warmup:  36%|███▌      | 1445/4000 [00:27<00:28, 88.59it/s]
warmup:  36%|███▋      | 1455/4000 [00:27<00:28, 90.28it/s]
warmup:  37%|███▋      | 1465/4000 [00:27<00:28, 88.76it/s]
warmup:  37%|███▋      | 1475/4000 [00:27<00:27, 90.30it/s]
warmup:  37%|███▋      | 1485/4000 [00:27<00:27, 91.00it/s]
warmup:  37%|███▋      | 1495/4000 [00:27<00:29, 83.95it/s]
warmup:  38%|███▊      | 1504/4000 [00:27<00:31, 79.68it/s]
warmup:  38%|███▊      | 1513/4000 [00:27<00:30, 80.98it/s]
warmup:  38%|███▊      | 1522/4000 [00:27<00:31, 79.63it/s]
warmup:  38%|███▊      | 1531/4000 [00:28<00:32, 76.78it/s]
warmup:  38%|███▊      | 1539/4000 [00:28<00:32, 76.34it/s]
warmup:  39%|███▊      | 1548/4000 [00:28<00:31, 78.98it/s]
warmup:  39%|███▉      | 1557/4000 [00:28<00:29, 81.93it/s]
warmup:  39%|███▉      | 1566/4000 [00:28<00:31, 77.76it/s]
warmup:  39%|███▉      | 1576/4000 [00:28<00:30, 80.27it/s]
warmup:  40%|███▉      | 1585/4000 [00:28<00:30, 79.41it/s]
warmup:  40%|███▉      | 1593/4000 [00:28<00:30, 78.36it/s]
warmup:  40%|████      | 1602/4000 [00:28<00:29, 80.27it/s]
warmup:  40%|████      | 1611/4000 [00:29<00:28, 82.94it/s]
warmup:  40%|████      | 1620/4000 [00:29<00:29, 81.74it/s]
warmup:  41%|████      | 1630/4000 [00:29<00:27, 85.54it/s]
warmup:  41%|████      | 1639/4000 [00:29<00:27, 86.73it/s]
warmup:  41%|████      | 1648/4000 [00:29<00:28, 83.60it/s]
warmup:  41%|████▏     | 1657/4000 [00:29<00:30, 77.98it/s]
warmup:  42%|████▏     | 1665/4000 [00:29<00:30, 77.30it/s]
warmup:  42%|████▏     | 1674/4000 [00:29<00:29, 79.60it/s]
warmup:  42%|████▏     | 1683/4000 [00:29<00:28, 81.69it/s]
warmup:  42%|████▏     | 1693/4000 [00:30<00:27, 85.31it/s]
warmup:  43%|████▎     | 1702/4000 [00:30<00:27, 84.96it/s]
warmup:  43%|████▎     | 1711/4000 [00:30<00:26, 84.88it/s]
warmup:  43%|████▎     | 1720/4000 [00:30<00:28, 80.52it/s]
warmup:  43%|████▎     | 1729/4000 [00:30<00:29, 77.56it/s]
warmup:  43%|████▎     | 1739/4000 [00:30<00:27, 82.11it/s]
warmup:  44%|████▎     | 1748/4000 [00:30<00:27, 83.00it/s]
warmup:  44%|████▍     | 1757/4000 [00:30<00:27, 81.78it/s]
warmup:  44%|████▍     | 1766/4000 [00:30<00:28, 78.12it/s]
warmup:  44%|████▍     | 1774/4000 [00:31<00:28, 77.41it/s]
warmup:  45%|████▍     | 1784/4000 [00:31<00:26, 82.12it/s]
warmup:  45%|████▍     | 1793/4000 [00:31<00:26, 83.00it/s]
warmup:  45%|████▌     | 1804/4000 [00:31<00:24, 87.95it/s]
warmup:  45%|████▌     | 1813/4000 [00:31<00:25, 84.20it/s]
warmup:  46%|████▌     | 1822/4000 [00:31<00:25, 84.33it/s]
warmup:  46%|████▌     | 1831/4000 [00:31<00:27, 79.64it/s]
warmup:  46%|████▌     | 1841/4000 [00:31<00:26, 82.59it/s]
warmup:  46%|████▋     | 1850/4000 [00:31<00:25, 83.13it/s]
warmup:  46%|████▋     | 1860/4000 [00:32<00:24, 86.14it/s]
warmup:  47%|████▋     | 1870/4000 [00:32<00:24, 88.52it/s]
warmup:  47%|████▋     | 1879/4000 [00:32<00:24, 87.15it/s]
warmup:  47%|████▋     | 1889/4000 [00:32<00:23, 89.43it/s]
warmup:  47%|████▋     | 1898/4000 [00:32<00:23, 88.11it/s]
warmup:  48%|████▊     | 1908/4000 [00:32<00:23, 89.93it/s]
warmup:  48%|████▊     | 1918/4000 [00:32<00:24, 83.56it/s]
warmup:  48%|████▊     | 1927/4000 [00:32<00:27, 75.16it/s]
warmup:  48%|████▊     | 1936/4000 [00:33<00:27, 75.56it/s]
warmup:  49%|████▊     | 1945/4000 [00:33<00:27, 74.06it/s]
warmup:  49%|████▉     | 1954/4000 [00:33<00:26, 76.36it/s]
warmup:  49%|████▉     | 1962/4000 [00:33<00:39, 51.36it/s]
warmup:  49%|████▉     | 1969/4000 [00:33<00:43, 46.26it/s]
warmup:  49%|████▉     | 1975/4000 [00:33<00:43, 46.26it/s]
warmup:  50%|████▉     | 1981/4000 [00:34<00:47, 42.68it/s]
warmup:  50%|████▉     | 1987/4000 [00:34<00:51, 39.31it/s]
warmup:  50%|████▉     | 1992/4000 [00:34<01:08, 29.50it/s]
warmup:  50%|████▉     | 1998/4000 [00:34<00:58, 34.15it/s]
sample:  50%|█████     | 2003/4000 [00:34<01:00, 33.08it/s]
sample:  50%|█████     | 2008/4000 [00:34<00:56, 35.40it/s]
sample:  50%|█████     | 2012/4000 [00:35<00:58, 33.99it/s]
sample:  50%|█████     | 2017/4000 [00:35<00:57, 34.19it/s]
sample:  51%|█████     | 2021/4000 [00:35<01:03, 31.31it/s]
sample:  51%|█████     | 2027/4000 [00:35<00:54, 35.94it/s]
sample:  51%|█████     | 2032/4000 [00:35<00:51, 38.41it/s]
sample:  51%|█████     | 2038/4000 [00:35<00:45, 42.73it/s]
sample:  51%|█████     | 2043/4000 [00:35<00:45, 43.24it/s]
sample:  51%|█████     | 2048/4000 [00:35<00:43, 44.98it/s]
sample:  51%|█████▏    | 2053/4000 [00:36<00:43, 45.04it/s]
sample:  51%|█████▏    | 2059/4000 [00:36<00:41, 46.66it/s]
sample:  52%|█████▏    | 2065/4000 [00:36<00:39, 49.04it/s]
sample:  52%|█████▏    | 2071/4000 [00:36<00:39, 49.45it/s]
sample:  52%|█████▏    | 2077/4000 [00:36<00:38, 49.82it/s]
sample:  52%|█████▏    | 2083/4000 [00:36<00:39, 48.56it/s]
sample:  52%|█████▏    | 2088/4000 [00:36<00:39, 47.98it/s]
sample:  52%|█████▏    | 2094/4000 [00:36<00:37, 50.66it/s]
sample:  52%|█████▎    | 2100/4000 [00:36<00:38, 49.10it/s]
sample:  53%|█████▎    | 2105/4000 [00:37<00:39, 48.39it/s]
sample:  53%|█████▎    | 2111/4000 [00:37<00:38, 49.03it/s]
sample:  53%|█████▎    | 2117/4000 [00:37<00:36, 51.01it/s]
sample:  53%|█████▎    | 2123/4000 [00:37<00:37, 49.53it/s]
sample:  53%|█████▎    | 2129/4000 [00:37<00:37, 49.89it/s]
sample:  53%|█████▎    | 2135/4000 [00:37<00:38, 48.71it/s]
sample:  54%|█████▎    | 2140/4000 [00:37<00:38, 47.92it/s]
sample:  54%|█████▎    | 2146/4000 [00:37<00:38, 48.73it/s]
sample:  54%|█████▍    | 2151/4000 [00:37<00:38, 48.11it/s]
sample:  54%|█████▍    | 2158/4000 [00:38<00:35, 51.68it/s]
sample:  54%|█████▍    | 2164/4000 [00:38<00:34, 52.82it/s]
sample:  54%|█████▍    | 2170/4000 [00:38<00:36, 50.76it/s]
sample:  54%|█████▍    | 2176/4000 [00:38<00:35, 50.73it/s]
sample:  55%|█████▍    | 2182/4000 [00:38<00:36, 49.99it/s]
sample:  55%|█████▍    | 2188/4000 [00:38<00:36, 50.22it/s]
sample:  55%|█████▍    | 2195/4000 [00:38<00:34, 52.90it/s]
sample:  55%|█████▌    | 2201/4000 [00:38<00:33, 53.84it/s]
sample:  55%|█████▌    | 2207/4000 [00:39<00:34, 51.51it/s]
sample:  55%|█████▌    | 2213/4000 [00:39<00:34, 51.33it/s]
sample:  55%|█████▌    | 2219/4000 [00:39<00:35, 50.48it/s]
sample:  56%|█████▌    | 2225/4000 [00:39<00:35, 49.34it/s]
sample:  56%|█████▌    | 2230/4000 [00:39<00:36, 48.61it/s]
sample:  56%|█████▌    | 2235/4000 [00:39<00:36, 48.01it/s]
sample:  56%|█████▌    | 2242/4000 [00:39<00:34, 51.44it/s]
sample:  56%|█████▌    | 2248/4000 [00:39<00:34, 51.23it/s]
sample:  56%|█████▋    | 2254/4000 [00:40<00:34, 51.14it/s]
sample:  56%|█████▋    | 2260/4000 [00:40<00:33, 52.47it/s]
sample:  57%|█████▋    | 2266/4000 [00:40<00:34, 50.38it/s]
sample:  57%|█████▋    | 2272/4000 [00:40<00:35, 49.11it/s]
sample:  57%|█████▋    | 2277/4000 [00:40<00:35, 48.22it/s]
sample:  57%|█████▋    | 2283/4000 [00:40<00:35, 48.97it/s]
sample:  57%|█████▋    | 2288/4000 [00:40<00:35, 48.28it/s]
sample:  57%|█████▋    | 2294/4000 [00:40<00:33, 50.48it/s]
sample:  57%|█████▊    | 2300/4000 [00:40<00:34, 48.98it/s]
sample:  58%|█████▊    | 2305/4000 [00:41<00:35, 48.40it/s]
sample:  58%|█████▊    | 2311/4000 [00:41<00:34, 48.97it/s]
sample:  58%|█████▊    | 2318/4000 [00:41<00:31, 53.64it/s]
sample:  58%|█████▊    | 2324/4000 [00:41<00:32, 51.40it/s]
sample:  58%|█████▊    | 2330/4000 [00:41<00:33, 49.88it/s]
sample:  58%|█████▊    | 2336/4000 [00:41<00:34, 48.77it/s]
sample:  59%|█████▊    | 2342/4000 [00:41<00:32, 50.68it/s]
sample:  59%|█████▊    | 2348/4000 [00:41<00:32, 50.54it/s]
sample:  59%|█████▉    | 2354/4000 [00:42<00:32, 50.49it/s]
sample:  59%|█████▉    | 2360/4000 [00:42<00:32, 50.31it/s]
sample:  59%|█████▉    | 2366/4000 [00:42<00:32, 49.72it/s]
sample:  59%|█████▉    | 2371/4000 [00:42<00:33, 48.73it/s]
sample:  59%|█████▉    | 2376/4000 [00:42<00:33, 48.07it/s]
sample:  60%|█████▉    | 2381/4000 [00:42<00:34, 47.57it/s]
sample:  60%|█████▉    | 2386/4000 [00:42<00:34, 47.24it/s]
sample:  60%|█████▉    | 2391/4000 [00:42<00:34, 46.94it/s]
sample:  60%|█████▉    | 2396/4000 [00:42<00:34, 46.83it/s]
sample:  60%|██████    | 2402/4000 [00:43<00:33, 48.14it/s]
sample:  60%|██████    | 2408/4000 [00:43<00:32, 48.89it/s]
sample:  60%|██████    | 2414/4000 [00:43<00:31, 49.90it/s]
sample:  60%|██████    | 2419/4000 [00:43<00:32, 48.78it/s]
sample:  61%|██████    | 2424/4000 [00:43<00:32, 48.03it/s]
sample:  61%|██████    | 2429/4000 [00:43<00:32, 47.62it/s]
sample:  61%|██████    | 2436/4000 [00:43<00:30, 51.26it/s]
sample:  61%|██████    | 2442/4000 [00:43<00:30, 50.99it/s]
sample:  61%|██████    | 2448/4000 [00:43<00:30, 50.76it/s]
sample:  61%|██████▏   | 2454/4000 [00:44<00:30, 50.58it/s]
sample:  62%|██████▏   | 2460/4000 [00:44<00:31, 49.18it/s]
sample:  62%|██████▏   | 2465/4000 [00:44<00:31, 48.50it/s]
sample:  62%|██████▏   | 2471/4000 [00:44<00:31, 49.18it/s]
sample:  62%|██████▏   | 2477/4000 [00:44<00:30, 49.62it/s]
sample:  62%|██████▏   | 2482/4000 [00:44<00:31, 48.58it/s]
sample:  62%|██████▏   | 2487/4000 [00:44<00:31, 47.96it/s]
sample:  62%|██████▏   | 2492/4000 [00:44<00:31, 47.58it/s]
sample:  62%|██████▏   | 2498/4000 [00:44<00:30, 48.58it/s]
sample:  63%|██████▎   | 2504/4000 [00:45<00:30, 49.80it/s]
sample:  63%|██████▎   | 2509/4000 [00:45<00:31, 47.70it/s]
sample:  63%|██████▎   | 2514/4000 [00:45<00:30, 47.98it/s]
sample:  63%|██████▎   | 2519/4000 [00:45<00:31, 47.04it/s]
sample:  63%|██████▎   | 2524/4000 [00:45<00:31, 46.75it/s]
sample:  63%|██████▎   | 2529/4000 [00:45<00:31, 46.73it/s]
sample:  63%|██████▎   | 2534/4000 [00:45<00:38, 38.20it/s]
sample:  63%|██████▎   | 2539/4000 [00:45<00:38, 38.44it/s]
sample:  64%|██████▎   | 2544/4000 [00:46<00:35, 41.14it/s]
sample:  64%|██████▎   | 2549/4000 [00:46<00:34, 42.41it/s]
sample:  64%|██████▍   | 2555/4000 [00:46<00:32, 44.85it/s]
sample:  64%|██████▍   | 2561/4000 [00:46<00:30, 47.81it/s]
sample:  64%|██████▍   | 2566/4000 [00:46<00:30, 47.57it/s]
sample:  64%|██████▍   | 2571/4000 [00:46<00:30, 47.26it/s]
sample:  64%|██████▍   | 2576/4000 [00:46<00:30, 46.97it/s]
sample:  65%|██████▍   | 2582/4000 [00:46<00:29, 48.03it/s]
sample:  65%|██████▍   | 2588/4000 [00:46<00:28, 48.83it/s]
sample:  65%|██████▍   | 2594/4000 [00:47<00:27, 50.84it/s]
sample:  65%|██████▌   | 2600/4000 [00:47<00:27, 50.78it/s]
sample:  65%|██████▌   | 2606/4000 [00:47<00:27, 50.67it/s]
sample:  65%|██████▌   | 2612/4000 [00:47<00:27, 50.63it/s]
sample:  65%|██████▌   | 2618/4000 [00:47<00:27, 50.69it/s]
sample:  66%|██████▌   | 2624/4000 [00:47<00:27, 50.67it/s]
sample:  66%|██████▌   | 2630/4000 [00:47<00:26, 51.29it/s]
sample:  66%|██████▌   | 2636/4000 [00:47<00:27, 49.26it/s]
sample:  66%|██████▌   | 2641/4000 [00:47<00:28, 48.21it/s]
sample:  66%|██████▌   | 2646/4000 [00:48<00:28, 47.62it/s]
sample:  66%|██████▋   | 2651/4000 [00:48<00:29, 45.62it/s]
sample:  66%|██████▋   | 2657/4000 [00:48<00:27, 48.51it/s]
sample:  67%|██████▋   | 2662/4000 [00:48<00:27, 47.88it/s]
sample:  67%|██████▋   | 2667/4000 [00:48<00:28, 47.45it/s]
sample:  67%|██████▋   | 2672/4000 [00:48<00:28, 47.08it/s]
sample:  67%|██████▋   | 2678/4000 [00:48<00:26, 49.51it/s]
sample:  67%|██████▋   | 2684/4000 [00:48<00:25, 51.30it/s]
sample:  67%|██████▋   | 2690/4000 [00:49<00:26, 49.47it/s]
sample:  67%|██████▋   | 2696/4000 [00:49<00:26, 49.83it/s]
sample:  68%|██████▊   | 2702/4000 [00:49<00:25, 51.41it/s]
sample:  68%|██████▊   | 2708/4000 [00:49<00:24, 51.85it/s]
sample:  68%|██████▊   | 2714/4000 [00:49<00:25, 50.08it/s]
sample:  68%|██████▊   | 2720/4000 [00:49<00:26, 48.92it/s]
sample:  68%|██████▊   | 2726/4000 [00:49<00:25, 50.91it/s]
sample:  68%|██████▊   | 2732/4000 [00:49<00:25, 50.69it/s]
sample:  68%|██████▊   | 2738/4000 [00:49<00:24, 52.07it/s]
sample:  69%|██████▊   | 2745/4000 [00:50<00:23, 54.15it/s]
sample:  69%|██████▉   | 2751/4000 [00:50<00:23, 53.00it/s]
sample:  69%|██████▉   | 2757/4000 [00:50<00:25, 49.28it/s]
sample:  69%|██████▉   | 2762/4000 [00:50<00:25, 48.47it/s]
sample:  69%|██████▉   | 2768/4000 [00:50<00:24, 49.43it/s]
sample:  69%|██████▉   | 2773/4000 [00:50<00:25, 48.92it/s]
sample:  69%|██████▉   | 2778/4000 [00:50<00:25, 48.35it/s]
sample:  70%|██████▉   | 2783/4000 [00:50<00:26, 46.43it/s]
sample:  70%|██████▉   | 2788/4000 [00:50<00:26, 46.39it/s]
sample:  70%|██████▉   | 2793/4000 [00:51<00:26, 46.30it/s]
sample:  70%|██████▉   | 2798/4000 [00:51<00:25, 46.24it/s]
sample:  70%|███████   | 2804/4000 [00:51<00:24, 49.02it/s]
sample:  70%|███████   | 2810/4000 [00:51<00:24, 49.51it/s]
sample:  70%|███████   | 2816/4000 [00:51<00:23, 49.78it/s]
sample:  71%|███████   | 2822/4000 [00:51<00:22, 51.55it/s]
sample:  71%|███████   | 2828/4000 [00:51<00:22, 51.06it/s]
sample:  71%|███████   | 2834/4000 [00:51<00:22, 51.11it/s]
sample:  71%|███████   | 2840/4000 [00:52<00:22, 51.12it/s]
sample:  71%|███████   | 2846/4000 [00:52<00:21, 52.72it/s]
sample:  71%|███████▏  | 2852/4000 [00:52<00:22, 50.74it/s]
sample:  71%|███████▏  | 2858/4000 [00:52<00:21, 52.15it/s]
sample:  72%|███████▏  | 2864/4000 [00:52<00:22, 50.28it/s]
sample:  72%|███████▏  | 2870/4000 [00:52<00:22, 50.38it/s]
sample:  72%|███████▏  | 2876/4000 [00:52<00:22, 49.10it/s]
sample:  72%|███████▏  | 2881/4000 [00:52<00:23, 48.37it/s]
sample:  72%|███████▏  | 2887/4000 [00:52<00:22, 48.99it/s]
sample:  72%|███████▏  | 2892/4000 [00:53<00:22, 48.31it/s]
sample:  72%|███████▏  | 2898/4000 [00:53<00:22, 49.01it/s]
sample:  73%|███████▎  | 2904/4000 [00:53<00:22, 49.36it/s]
sample:  73%|███████▎  | 2909/4000 [00:53<00:22, 48.52it/s]
sample:  73%|███████▎  | 2914/4000 [00:53<00:22, 47.80it/s]
sample:  73%|███████▎  | 2920/4000 [00:53<00:21, 50.08it/s]
sample:  73%|███████▎  | 2927/4000 [00:53<00:19, 54.39it/s]
sample:  73%|███████▎  | 2933/4000 [00:53<00:20, 53.25it/s]
sample:  73%|███████▎  | 2939/4000 [00:53<00:20, 50.94it/s]
sample:  74%|███████▎  | 2945/4000 [00:54<00:20, 52.25it/s]
sample:  74%|███████▍  | 2951/4000 [00:54<00:20, 50.24it/s]
sample:  74%|███████▍  | 2957/4000 [00:54<00:20, 50.36it/s]
sample:  74%|███████▍  | 2963/4000 [00:54<00:21, 49.29it/s]
sample:  74%|███████▍  | 2969/4000 [00:54<00:20, 49.73it/s]
sample:  74%|███████▍  | 2974/4000 [00:54<00:21, 48.62it/s]
sample:  74%|███████▍  | 2979/4000 [00:54<00:21, 47.86it/s]
sample:  75%|███████▍  | 2985/4000 [00:54<00:20, 50.08it/s]
sample:  75%|███████▍  | 2991/4000 [00:55<00:20, 48.81it/s]
sample:  75%|███████▍  | 2997/4000 [00:55<00:20, 49.47it/s]
sample:  75%|███████▌  | 3003/4000 [00:55<00:19, 51.08it/s]
sample:  75%|███████▌  | 3009/4000 [00:55<00:19, 49.62it/s]
sample:  75%|███████▌  | 3015/4000 [00:55<00:19, 49.54it/s]
sample:  76%|███████▌  | 3020/4000 [00:55<00:20, 48.50it/s]
sample:  76%|███████▌  | 3025/4000 [00:55<00:20, 47.94it/s]
sample:  76%|███████▌  | 3031/4000 [00:55<00:19, 48.87it/s]
sample:  76%|███████▌  | 3036/4000 [00:55<00:19, 48.21it/s]
sample:  76%|███████▌  | 3042/4000 [00:56<00:19, 50.41it/s]
sample:  76%|███████▌  | 3048/4000 [00:56<00:18, 51.87it/s]
sample:  76%|███████▋  | 3054/4000 [00:56<00:18, 51.21it/s]
sample:  76%|███████▋  | 3060/4000 [00:56<00:18, 50.97it/s]
sample:  77%|███████▋  | 3066/4000 [00:56<00:19, 46.92it/s]
sample:  77%|███████▋  | 3071/4000 [00:56<00:19, 46.76it/s]
sample:  77%|███████▋  | 3077/4000 [00:56<00:19, 48.08it/s]
sample:  77%|███████▋  | 3082/4000 [00:56<00:19, 47.52it/s]
sample:  77%|███████▋  | 3089/4000 [00:57<00:17, 51.16it/s]
sample:  77%|███████▋  | 3095/4000 [00:57<00:17, 50.96it/s]
sample:  78%|███████▊  | 3101/4000 [00:57<00:18, 49.37it/s]
sample:  78%|███████▊  | 3107/4000 [00:57<00:17, 49.75it/s]
sample:  78%|███████▊  | 3112/4000 [00:57<00:18, 48.73it/s]
sample:  78%|███████▊  | 3118/4000 [00:57<00:17, 49.31it/s]
sample:  78%|███████▊  | 3123/4000 [00:57<00:18, 48.37it/s]
sample:  78%|███████▊  | 3128/4000 [00:57<00:18, 47.83it/s]
sample:  78%|███████▊  | 3134/4000 [00:57<00:17, 48.61it/s]
sample:  78%|███████▊  | 3140/4000 [00:58<00:17, 49.21it/s]
sample:  79%|███████▊  | 3145/4000 [00:58<00:17, 48.34it/s]
sample:  79%|███████▉  | 3150/4000 [00:58<00:17, 47.55it/s]
sample:  79%|███████▉  | 3156/4000 [00:58<00:17, 48.63it/s]
sample:  79%|███████▉  | 3162/4000 [00:58<00:17, 49.12it/s]
sample:  79%|███████▉  | 3168/4000 [00:58<00:16, 49.50it/s]
sample:  79%|███████▉  | 3174/4000 [00:58<00:16, 49.84it/s]
sample:  79%|███████▉  | 3179/4000 [00:58<00:16, 48.83it/s]
sample:  80%|███████▉  | 3186/4000 [00:58<00:15, 51.84it/s]
sample:  80%|███████▉  | 3192/4000 [00:59<00:15, 51.57it/s]
sample:  80%|███████▉  | 3198/4000 [00:59<00:15, 51.36it/s]
sample:  80%|████████  | 3204/4000 [00:59<00:16, 49.54it/s]
sample:  80%|████████  | 3210/4000 [00:59<00:15, 51.23it/s]
sample:  80%|████████  | 3216/4000 [00:59<00:15, 49.58it/s]
sample:  81%|████████  | 3222/4000 [00:59<00:15, 49.82it/s]
sample:  81%|████████  | 3228/4000 [00:59<00:15, 51.35it/s]
sample:  81%|████████  | 3234/4000 [00:59<00:15, 49.73it/s]
sample:  81%|████████  | 3240/4000 [01:00<00:15, 48.50it/s]
sample:  81%|████████  | 3245/4000 [01:00<00:15, 47.95it/s]
sample:  81%|████████▏ | 3250/4000 [01:00<00:15, 47.26it/s]
sample:  81%|████████▏ | 3256/4000 [01:00<00:15, 48.28it/s]
sample:  82%|████████▏ | 3262/4000 [01:00<00:15, 48.95it/s]
sample:  82%|████████▏ | 3268/4000 [01:00<00:14, 49.57it/s]
sample:  82%|████████▏ | 3273/4000 [01:00<00:14, 48.72it/s]
sample:  82%|████████▏ | 3279/4000 [01:00<00:14, 50.89it/s]
sample:  82%|████████▏ | 3285/4000 [01:00<00:14, 50.16it/s]
sample:  82%|████████▏ | 3292/4000 [01:01<00:13, 52.86it/s]
sample:  82%|████████▏ | 3298/4000 [01:01<00:13, 50.52it/s]
sample:  83%|████████▎ | 3304/4000 [01:01<00:13, 50.53it/s]
sample:  83%|████████▎ | 3310/4000 [01:01<00:14, 49.14it/s]
sample:  83%|████████▎ | 3315/4000 [01:01<00:14, 48.48it/s]
sample:  83%|████████▎ | 3320/4000 [01:01<00:14, 47.72it/s]
sample:  83%|████████▎ | 3326/4000 [01:01<00:13, 49.98it/s]
sample:  83%|████████▎ | 3332/4000 [01:01<00:13, 48.68it/s]
sample:  83%|████████▎ | 3337/4000 [01:02<00:13, 47.74it/s]
sample:  84%|████████▎ | 3342/4000 [01:02<00:13, 47.10it/s]
sample:  84%|████████▎ | 3348/4000 [01:02<00:13, 47.89it/s]
sample:  84%|████████▍ | 3354/4000 [01:02<00:12, 50.40it/s]
sample:  84%|████████▍ | 3360/4000 [01:02<00:12, 50.46it/s]
sample:  84%|████████▍ | 3366/4000 [01:02<00:12, 50.47it/s]
sample:  84%|████████▍ | 3372/4000 [01:02<00:12, 49.07it/s]
sample:  84%|████████▍ | 3379/4000 [01:02<00:11, 52.13it/s]
sample:  85%|████████▍ | 3385/4000 [01:02<00:11, 51.48it/s]
sample:  85%|████████▍ | 3391/4000 [01:03<00:12, 49.72it/s]
sample:  85%|████████▍ | 3397/4000 [01:03<00:11, 51.21it/s]
sample:  85%|████████▌ | 3403/4000 [01:03<00:12, 49.39it/s]
sample:  85%|████████▌ | 3408/4000 [01:03<00:12, 48.40it/s]
sample:  85%|████████▌ | 3413/4000 [01:03<00:12, 47.85it/s]
sample:  85%|████████▌ | 3418/4000 [01:03<00:12, 47.55it/s]
sample:  86%|████████▌ | 3423/4000 [01:03<00:12, 47.13it/s]
sample:  86%|████████▌ | 3429/4000 [01:03<00:11, 50.19it/s]
sample:  86%|████████▌ | 3435/4000 [01:04<00:11, 49.53it/s]
sample:  86%|████████▌ | 3441/4000 [01:04<00:10, 51.25it/s]
sample:  86%|████████▌ | 3447/4000 [01:04<00:11, 49.60it/s]
sample:  86%|████████▋ | 3452/4000 [01:04<00:11, 47.27it/s]
sample:  86%|████████▋ | 3458/4000 [01:04<00:11, 48.32it/s]
sample:  87%|████████▋ | 3463/4000 [01:04<00:11, 47.71it/s]
sample:  87%|████████▋ | 3469/4000 [01:04<00:10, 49.86it/s]
sample:  87%|████████▋ | 3475/4000 [01:04<00:10, 48.91it/s]
sample:  87%|████████▋ | 3480/4000 [01:04<00:10, 48.15it/s]
sample:  87%|████████▋ | 3485/4000 [01:05<00:10, 47.70it/s]
sample:  87%|████████▋ | 3491/4000 [01:05<00:10, 48.63it/s]
sample:  87%|████████▋ | 3497/4000 [01:05<00:10, 49.21it/s]
sample:  88%|████████▊ | 3502/4000 [01:05<00:10, 48.62it/s]
sample:  88%|████████▊ | 3508/4000 [01:05<00:09, 50.25it/s]
sample:  88%|████████▊ | 3514/4000 [01:05<00:09, 51.83it/s]
sample:  88%|████████▊ | 3520/4000 [01:05<00:09, 49.74it/s]
sample:  88%|████████▊ | 3526/4000 [01:05<00:09, 49.76it/s]
sample:  88%|████████▊ | 3531/4000 [01:05<00:09, 48.49it/s]
sample:  88%|████████▊ | 3537/4000 [01:06<00:09, 49.05it/s]
sample:  89%|████████▊ | 3542/4000 [01:06<00:09, 48.28it/s]
sample:  89%|████████▊ | 3548/4000 [01:06<00:08, 50.44it/s]
sample:  89%|████████▉ | 3554/4000 [01:06<00:08, 50.58it/s]
sample:  89%|████████▉ | 3560/4000 [01:06<00:08, 50.34it/s]
sample:  89%|████████▉ | 3566/4000 [01:06<00:08, 48.90it/s]
sample:  89%|████████▉ | 3571/4000 [01:06<00:08, 48.10it/s]
sample:  89%|████████▉ | 3576/4000 [01:06<00:08, 47.34it/s]
sample:  90%|████████▉ | 3582/4000 [01:07<00:08, 49.82it/s]
sample:  90%|████████▉ | 3588/4000 [01:07<00:08, 49.66it/s]
sample:  90%|████████▉ | 3595/4000 [01:07<00:07, 52.25it/s]
sample:  90%|█████████ | 3601/4000 [01:07<00:07, 50.00it/s]
sample:  90%|█████████ | 3607/4000 [01:07<00:07, 50.20it/s]
sample:  90%|█████████ | 3613/4000 [01:07<00:07, 48.70it/s]
sample:  90%|█████████ | 3618/4000 [01:07<00:07, 47.98it/s]
sample:  91%|█████████ | 3624/4000 [01:07<00:07, 48.74it/s]
sample:  91%|█████████ | 3630/4000 [01:07<00:07, 49.17it/s]
sample:  91%|█████████ | 3635/4000 [01:08<00:07, 48.34it/s]
sample:  91%|█████████ | 3640/4000 [01:08<00:07, 47.74it/s]
sample:  91%|█████████ | 3646/4000 [01:08<00:07, 50.31it/s]
sample:  91%|█████████▏| 3652/4000 [01:08<00:06, 52.35it/s]
sample:  91%|█████████▏| 3658/4000 [01:08<00:06, 51.88it/s]
sample:  92%|█████████▏| 3664/4000 [01:08<00:06, 53.81it/s]
sample:  92%|█████████▏| 3670/4000 [01:08<00:06, 48.50it/s]
sample:  92%|█████████▏| 3677/4000 [01:08<00:06, 53.11it/s]
sample:  92%|█████████▏| 3683/4000 [01:09<00:06, 51.07it/s]
sample:  92%|█████████▏| 3689/4000 [01:09<00:06, 50.81it/s]
sample:  92%|█████████▏| 3695/4000 [01:09<00:06, 50.62it/s]
sample:  93%|█████████▎| 3701/4000 [01:09<00:05, 50.49it/s]
sample:  93%|█████████▎| 3707/4000 [01:09<00:05, 49.11it/s]
sample:  93%|█████████▎| 3713/4000 [01:09<00:05, 49.41it/s]
sample:  93%|█████████▎| 3718/4000 [01:09<00:05, 48.74it/s]
sample:  93%|█████████▎| 3724/4000 [01:09<00:05, 50.72it/s]
sample:  93%|█████████▎| 3730/4000 [01:09<00:05, 50.72it/s]
sample:  93%|█████████▎| 3736/4000 [01:10<00:05, 49.55it/s]
sample:  94%|█████████▎| 3741/4000 [01:10<00:05, 48.49it/s]
sample:  94%|█████████▎| 3747/4000 [01:10<00:05, 48.88it/s]
sample:  94%|█████████▍| 3753/4000 [01:10<00:04, 49.53it/s]
sample:  94%|█████████▍| 3759/4000 [01:10<00:04, 49.71it/s]
sample:  94%|█████████▍| 3764/4000 [01:10<00:04, 48.65it/s]
sample:  94%|█████████▍| 3769/4000 [01:10<00:04, 47.97it/s]
sample:  94%|█████████▍| 3774/4000 [01:10<00:04, 47.53it/s]
sample:  95%|█████████▍| 3781/4000 [01:10<00:04, 51.18it/s]
sample:  95%|█████████▍| 3787/4000 [01:11<00:04, 51.12it/s]
sample:  95%|█████████▍| 3793/4000 [01:11<00:04, 49.41it/s]
sample:  95%|█████████▍| 3798/4000 [01:11<00:04, 48.35it/s]
sample:  95%|█████████▌| 3804/4000 [01:11<00:03, 50.31it/s]
sample:  95%|█████████▌| 3810/4000 [01:11<00:03, 51.84it/s]
sample:  95%|█████████▌| 3816/4000 [01:11<00:03, 50.05it/s]
sample:  96%|█████████▌| 3822/4000 [01:11<00:03, 48.71it/s]
sample:  96%|█████████▌| 3827/4000 [01:11<00:03, 48.09it/s]
sample:  96%|█████████▌| 3833/4000 [01:12<00:03, 48.80it/s]
sample:  96%|█████████▌| 3839/4000 [01:12<00:03, 49.24it/s]
sample:  96%|█████████▌| 3844/4000 [01:12<00:03, 48.29it/s]
sample:  96%|█████████▌| 3849/4000 [01:12<00:03, 47.88it/s]
sample:  96%|█████████▋| 3855/4000 [01:12<00:02, 48.68it/s]
sample:  96%|█████████▋| 3860/4000 [01:12<00:02, 47.83it/s]
sample:  97%|█████████▋| 3865/4000 [01:12<00:02, 47.49it/s]
sample:  97%|█████████▋| 3870/4000 [01:12<00:02, 48.18it/s]
sample:  97%|█████████▋| 3875/4000 [01:12<00:02, 47.48it/s]
sample:  97%|█████████▋| 3881/4000 [01:13<00:02, 49.67it/s]
sample:  97%|█████████▋| 3886/4000 [01:13<00:02, 48.67it/s]
sample:  97%|█████████▋| 3891/4000 [01:13<00:02, 46.42it/s]
sample:  97%|█████████▋| 3897/4000 [01:13<00:02, 47.36it/s]
sample:  98%|█████████▊| 3903/4000 [01:13<00:01, 49.56it/s]
sample:  98%|█████████▊| 3909/4000 [01:13<00:01, 49.66it/s]
sample:  98%|█████████▊| 3915/4000 [01:13<00:01, 50.04it/s]
sample:  98%|█████████▊| 3921/4000 [01:13<00:01, 51.65it/s]
sample:  98%|█████████▊| 3927/4000 [01:13<00:01, 49.72it/s]
sample:  98%|█████████▊| 3933/4000 [01:14<00:01, 50.01it/s]
sample:  98%|█████████▊| 3939/4000 [01:14<00:01, 48.72it/s]
sample:  99%|█████████▊| 3946/4000 [01:14<00:01, 51.74it/s]
sample:  99%|█████████▉| 3952/4000 [01:14<00:00, 50.83it/s]
sample:  99%|█████████▉| 3958/4000 [01:14<00:00, 51.77it/s]
sample:  99%|█████████▉| 3964/4000 [01:14<00:00, 49.69it/s]
sample:  99%|█████████▉| 3969/4000 [01:14<00:00, 48.57it/s]
sample:  99%|█████████▉| 3975/4000 [01:14<00:00, 49.02it/s]
sample: 100%|█████████▉| 3980/4000 [01:15<00:00, 43.52it/s]
sample: 100%|█████████▉| 3985/4000 [01:15<00:00, 44.33it/s]
sample: 100%|█████████▉| 3990/4000 [01:15<00:00, 44.68it/s]
sample: 100%|█████████▉| 3996/4000 [01:15<00:00, 46.50it/s]
sample: 100%|██████████| 4000/4000 [01:15<00:00, 52.97it/s]
posterior_predictive_loglike finished in 295 ms
expected_log_likelihood finished in 11 ms
best_draw_log_likelihood finished in 10 ms
waic_res finished in 629 ms
waic finished in 630 ms
loo_res finished in 7949 ms (7.95 s)
loo finished in 7949 ms (7.95 s)
Diagnostics computation took 24.6 seconds (cached).
File b18b_ordinal_probit.html has been generated.
Save simulation results on b18b_ordinal_probit.nc
Saved Bayesian results (posterior + metadata) to b18b_ordinal_probit.nc
print(results.short_summary())
Sample size                                              6768
Sampler                                                  NUTS
Number of chains                                         4
Number of draws per chain                                2000
Total number of draws                                    8000
Acceptance rate target                                   0.9
Run time                                                 0:01:20.937926
Posterior predictive log-likelihood (sum of log mean p)  -5788.53
Expected log-likelihood E[log L(Y|θ)]                    -5791.09
Best-draw log-likelihood (posterior upper bound)         -5789.06
WAIC (Widely Applicable Information Criterion)           -5793.68
WAIC Standard Error                                      50.22
Effective number of parameters (p_WAIC)                  5.14
LOO (Leave-One-Out Cross-Validation)                     -5793.68
LOO Standard Error                                       50.22
Effective number of parameters (p_LOO)                   5.15
pandas_results = get_pandas_estimated_parameters(estimation_results=results)
display(pandas_results)
     Name  Value (mean)  Value (median)  ...     R hat   ESS (bulk)   ESS (tail)
0  b_time      0.018185        0.018066  ...  1.000283  3567.792410  3915.862286
1  b_cost      0.687145        0.686680  ...  1.000589  3889.787673  3888.711159
2    tau1     -0.604802       -0.604485  ...  1.000811  3684.885412  4010.346058
3  delta2      1.755283        1.755430  ...  1.000272  4091.844948  3768.913913

[4 rows x 12 columns]

Total running time of the script: (2 minutes 17.846 seconds)

Gallery generated by Sphinx-Gallery