From d85ff53d344def1b91936105731f4bd70df640aa Mon Sep 17 00:00:00 2001 From: Davide Cappellini Date: Fri, 25 Sep 2026 08:43:36 +0200 Subject: [PATCH] State-window gate: a temporal window of wave-relative states does NOT beat a single state Re-runs the SBC coincidence premise as a cheap veto test on the 70-battle live-vs-DrussGT corpus (/tmp/tfil_ab2). Defines the wave-relative state (lat/vlat/toa/room/turn, 5/7.9/10 bits at Q=2/3/4), quantises the miss offset at the bullet's arrival into 7 bins, and sweeps window length K in {1,4,8,16,32,48} with an interpolated suffix-backoff model under a BY-BATTLE 70/30 split (3 seeds). Result: NO. On the pre-fire frame the window is worse than the single fire-tick state at every K/Q/A (e.g. K=8 costs +0.35..+0.46 bits). On the during-flight frame the entire apparent gain is the later decision tick, not the window; the single state alone drops 2.70 -> 1.31 bits as K goes 1 -> 32. The shuffle-order control confirms recency matters but the windows do not: by Q=4/K=8 they average ~1 observation and never recur. The single state survives as a strong predictor (log-loss 2.346 vs 2.698 majority; bin accuracy 0.409 vs 0.235). Gate only: no gun, no live-win claim. --- .../tests/fixtures/state_window_gate.json | 10510 ++++++++++++++++ .../fixtures/state_window_gate_report.txt | 178 + common_libs/tests/state_window_gate.py | 579 + docs/state_window_gate.md | 321 + 4 files changed, 11588 insertions(+) create mode 100644 common_libs/tests/fixtures/state_window_gate.json create mode 100644 common_libs/tests/fixtures/state_window_gate_report.txt create mode 100644 common_libs/tests/state_window_gate.py create mode 100644 docs/state_window_gate.md diff --git a/common_libs/tests/fixtures/state_window_gate.json b/common_libs/tests/fixtures/state_window_gate.json new file mode 100644 index 0000000..4420a1b --- /dev/null +++ b/common_libs/tests/fixtures/state_window_gate.json @@ -0,0 +1,10510 @@ +{ + "samples": 54939, + "battles": 70, + "seeds": [ + 1, + 2, + 3 + ], + "fly_samples": 8156, + "alphas": [ + 1.0, + 5.0, + 20.0 + ], + "A_primary": 5.0, + "A_all": [ + 1.0, + 5.0, + 20.0 + ], + "D_cap": 12, + "target_edges": [ + -120.0, + -60.0, + -18.0, + 18.0, + 60.0, + 120.0 + ], + "hit_bin": 3, + "k_pre": [ + 1, + 4, + 8, + 16, + 32, + 48 + ], + "k_fly": [ + 1, + 4, + 8, + 16, + 32 + ], + "report": [ + "====================================================================================================", + "FRAME pre (window ENDS at the fire tick, looks BACK)", + "====================================================================================================", + "MAJORITY / NO-WINDOW FLOOR (test acc 0.2348, log-loss 2.6983 bits, empirical hit 0.0906)", + " target-bin edges [-120.0, -60.0, -18.0, 18.0, 60.0, 120.0] px -> central +-18 px hit bin. At the median", + " fire range (487 px) the 36 px hit window subtends 4.23 deg; at 450 px", + " it is 4.58 deg; at 100 px 20.41 deg. (atan(18/range).)", + " target-bin distribution on train: 0:0.231, 1:0.125, 2:0.102, 3:0.089, 4:0.097, 5:0.126, 6:0.230", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=2 -> 32 distinct single states (5.0 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.4524 0.4072 0.0896 | 2.4524 0.4072 0.0896 | 2.5464 | 2.5787", + " 4 | 2.4524 0.4072 0.0896 | 2.5107 0.3990 0.0898 | 2.7611 | 2.6403", + " 8 | 2.4524 0.4072 0.0896 | 2.8015 0.3700 0.0889 | 2.8188 | 2.9373", + " 16 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8120 | 3.2793", + " 32 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8026 | 3.2793", + " 48 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8115 | 3.2793", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=16 of 54939 (mean count 3433.69, repeat_frac 1.000)", + " K=4 distinct=1747 of 54939 (mean count 31.45, repeat_frac 0.990)", + " K=8 distinct=13474 of 54939 (mean count 4.08, repeat_frac 0.836)", + " K=16 distinct=41447 of 54939 (mean count 1.33, repeat_frac 0.311)", + " K=32 distinct=54454 of 54939 (mean count 1.01, repeat_frac 0.011)", + " K=48 distinct=54744 of 54939 (mean count 1.00, repeat_frac 0.004)", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=3 -> 243 distinct single states (7.9 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.3782 0.4032 0.0897 | 2.3782 0.4032 0.0897 | 2.5116 | 2.5502", + " 4 | 2.3782 0.4032 0.0897 | 2.5461 0.3912 0.0903 | 2.6214 | 2.7670", + " 8 | 2.3782 0.4032 0.0897 | 2.8336 0.3594 0.0898 | 2.6284 | 3.0753", + " 16 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6221 | 3.1881", + " 32 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6225 | 3.1881", + " 48 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6216 | 3.1881", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=82 of 54939 (mean count 669.99, repeat_frac 1.000)", + " K=4 distinct=11018 of 54939 (mean count 4.99, repeat_frac 0.891)", + " K=8 distinct=37337 of 54939 (mean count 1.47, repeat_frac 0.404)", + " K=16 distinct=54163 of 54939 (mean count 1.01, repeat_frac 0.020)", + " K=32 distinct=54754 of 54939 (mean count 1.00, repeat_frac 0.004)", + " K=48 distinct=54772 of 54939 (mean count 1.00, repeat_frac 0.004)", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=4 -> 1024 distinct single states (10.0 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.3460 0.4094 0.0895 | 2.3460 0.4094 0.0895 | 2.5280 | 2.5352", + " 4 | 2.3460 0.4094 0.0895 | 2.5656 0.3833 0.0894 | 2.5672 | 2.8203", + " 8 | 2.3460 0.4094 0.0895 | 2.7265 0.3641 0.0885 | 2.5666 | 3.0138", + " 16 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5613 | 3.0377", + " 32 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5613 | 3.0377", + " 48 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5640 | 3.0377", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=372 of 54939 (mean count 147.69, repeat_frac 0.999)", + " K=4 distinct=24223 of 54939 (mean count 2.27, repeat_frac 0.685)", + " K=8 distinct=49891 of 54939 (mean count 1.10, repeat_frac 0.134)", + " K=16 distinct=54707 of 54939 (mean count 1.00, repeat_frac 0.005)", + " K=32 distinct=54779 of 54939 (mean count 1.00, repeat_frac 0.004)", + " K=48 distinct=54789 of 54939 (mean count 1.00, repeat_frac 0.004)", + "", + "====================================================================================================", + "HEADLINE (mean over 3 battle-split seeds; A=5)", + " held-out log-loss. delta_window = window - single@D (NEGATIVE = the", + " window beats the single state at the same decision tick)", + " Q=2 single@D K=1 2.4524 K=4 2.4524 K=8 2.4524 K=16 2.4524 K=32 2.4524 K=48 2.4524", + " window K=1 2.4524(+0.0000) K=4 2.5107(+0.0583) K=8 2.8015(+0.3491) K=16 3.1310(+0.6786) K=32 3.1310(+0.6786) K=48 3.1310(+0.6786)", + " Q=3 single@D K=1 2.3782 K=4 2.3782 K=8 2.3782 K=16 2.3782 K=32 2.3782 K=48 2.3782", + " window K=1 2.3782(+0.0000) K=4 2.5461(+0.1679) K=8 2.8336(+0.4554) K=16 2.9473(+0.5691) K=32 2.9473(+0.5691) K=48 2.9473(+0.5691)", + " Q=4 single@D K=1 2.3460 K=4 2.3460 K=8 2.3460 K=16 2.3460 K=32 2.3460 K=48 2.3460", + " window K=1 2.3460(+0.0000) K=4 2.5656(+0.2196) K=8 2.7265(+0.3805) K=16 2.7450(+0.3990) K=32 2.7450(+0.3990) K=48 2.7450(+0.3990)", + " shuffle control: window(shuffled) - window(temporal) (must be >>0)", + " Q=2 K=1 +0.0940 K=4 +0.2504 K=8 +0.0173 K=16 -0.3190 K=32 -0.3284 K=48 -0.3195", + " Q=3 K=1 +0.1334 K=4 +0.0753 K=8 -0.2051 K=16 -0.3252 K=32 -0.3248 K=48 -0.3257", + " Q=4 K=1 +0.1820 K=4 +0.0016 K=8 -0.1599 K=16 -0.1837 K=32 -0.1838 K=48 -0.1810", + " reverse control: window(reverse) - window(temporal)", + " Q=2 K=1 +0.1263 K=4 +0.1296 K=8 +0.1358 K=16 +0.1483 K=32 +0.1483 K=48 +0.1483", + " Q=3 K=1 +0.1720 K=4 +0.2210 K=8 +0.2417 K=16 +0.2409 K=32 +0.2409 K=48 +0.2409", + " Q=4 K=1 +0.1892 K=4 +0.2547 K=8 +0.2873 K=16 +0.2927 K=32 +0.2927 K=48 +0.2927", + " robustness in the interpolation strength A (window temporal log-loss):", + " Q=2 A=1 K=1 2.4526 K=4 2.6094 K=8 3.4554 K=16 4.4613 K=32 4.4613 K=48 4.4613", + " Q=2 A=5 K=1 2.4524 K=4 2.5107 K=8 2.8015 K=16 3.1310 K=32 3.1310 K=48 3.1310", + " Q=2 A=20 K=1 2.4524 K=4 2.4643 K=8 2.5491 K=16 2.6407 K=32 2.6407 K=48 2.6407", + " Q=3 A=1 K=1 2.3782 K=4 2.8964 K=8 3.8419 K=16 4.2381 K=32 4.2381 K=48 4.2381", + " Q=3 A=5 K=1 2.3782 K=4 2.5461 K=8 2.8336 K=16 2.9473 K=32 2.9473 K=48 2.9473", + " Q=3 A=20 K=1 2.3810 K=4 2.4149 K=8 2.4868 K=16 2.5134 K=32 2.5134 K=48 2.5134", + " Q=4 A=1 K=1 2.3499 K=4 3.0860 K=8 3.6606 K=16 3.7319 K=32 3.7319 K=48 3.7319", + " Q=4 A=5 K=1 2.3460 K=4 2.5656 K=8 2.7265 K=16 2.7450 K=32 2.7450 K=48 2.7450", + " Q=4 A=20 K=1 2.3557 K=4 2.3928 K=8 2.4289 K=16 2.4327 K=32 2.4327 K=48 2.4327", + "====================================================================================================", + "====================================================================================================", + "FRAME fly (window STARTS at the fire tick, ends at t0+K-1)", + "====================================================================================================", + "MAJORITY / NO-WINDOW FLOOR (test acc 0.1912, log-loss 2.7810 bits, empirical hit 0.1100)", + " target-bin edges [-120.0, -60.0, -18.0, 18.0, 60.0, 120.0] px -> central +-18 px hit bin. At the median", + " fire range (487 px) the 36 px hit window subtends 4.23 deg; at 450 px", + " it is 4.58 deg; at 100 px 20.41 deg. (atan(18/range).)", + " target-bin distribution on train: 0:0.192, 1:0.145, 2:0.125, 3:0.109, 4:0.118, 5:0.139, 6:0.172", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=2 -> 32 distinct single states (5.0 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.6645 0.2935 0.1099 | 2.6645 0.2935 0.1099 | 2.6645 | 2.6645", + " 4 | 2.6376 0.2988 0.1101 | 2.7695 0.2808 0.1106 | 2.8096 | 2.7957", + " 8 | 2.5659 0.3076 0.1102 | 3.0331 0.2785 0.1107 | 3.1212 | 3.1197", + " 16 | 2.4047 0.3405 0.1104 | 3.1643 0.3070 0.1098 | 2.9981 | 3.3696", + " 32 | 1.8365 0.4189 0.1083 | 1.9970 0.4430 0.1078 | 2.3517 | 3.3696", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=16 of 8156 (mean count 509.75, repeat_frac 1.000)", + " K=4 distinct=872 of 8156 (mean count 9.35, repeat_frac 0.954)", + " K=8 distinct=3557 of 8156 (mean count 2.29, repeat_frac 0.665)", + " K=16 distinct=7389 of 8156 (mean count 1.10, repeat_frac 0.133)", + " K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000)", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=3 -> 243 distinct single states (7.9 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.6741 0.2901 0.1105 | 2.6741 0.2901 0.1105 | 2.6741 | 2.6741", + " 4 | 2.6262 0.2950 0.1103 | 2.8858 0.2658 0.1086 | 2.9378 | 2.9633", + " 8 | 2.5302 0.3184 0.1100 | 3.0207 0.2759 0.1089 | 2.9292 | 3.1779", + " 16 | 2.3103 0.3661 0.1090 | 2.6362 0.3390 0.1110 | 2.6531 | 3.2373", + " 32 | 1.4355 0.5221 0.1081 | 1.4625 0.5384 0.1030 | 2.2674 | 3.2373", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=81 of 8156 (mean count 100.69, repeat_frac 1.000)", + " K=4 distinct=3383 of 8156 (mean count 2.41, repeat_frac 0.714)", + " K=8 distinct=6857 of 8156 (mean count 1.19, repeat_frac 0.226)", + " K=16 distinct=8140 of 8156 (mean count 1.00, repeat_frac 0.004)", + " K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000)", + "", + "----------------------------------------------------------------------------------------------------", + "COARSENESS Q=4 -> 1024 distinct single states (10.0 bits)", + " K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE", + " | logloss acc hitP | logloss acc hitP | logloss | logloss ", + " 1 | 2.7020 0.2817 0.1113 | 2.7020 0.2817 0.1113 | 2.7020 | 2.7020", + " 4 | 2.6397 0.2982 0.1112 | 2.9108 0.2750 0.1117 | 2.9175 | 3.0026", + " 8 | 2.6101 0.3037 0.1137 | 2.9084 0.2793 0.1159 | 2.8151 | 3.0861", + " 16 | 2.3853 0.3617 0.1123 | 2.5918 0.3377 0.1135 | 2.6342 | 3.0891", + " 32 | 1.3121 0.5988 0.1055 | 1.2668 0.6027 0.1089 | 2.3830 | 3.0891", + " recurrence, distinct ordered window tuples over the whole corpus:", + " K=1 distinct=252 of 8156 (mean count 32.37, repeat_frac 1.000)", + " K=4 distinct=5368 of 8156 (mean count 1.52, repeat_frac 0.465)", + " K=8 distinct=7983 of 8156 (mean count 1.02, repeat_frac 0.037)", + " K=16 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000)", + " K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000)", + "", + "====================================================================================================", + "HEADLINE (mean over 3 battle-split seeds; A=5)", + " held-out log-loss. delta_window = window - single@D (NEGATIVE = the", + " window beats the single state at the same decision tick)", + " Q=2 single@D K=1 2.6645 K=4 2.6376 K=8 2.5659 K=16 2.4047 K=32 1.8365", + " window K=1 2.6645(+0.0000) K=4 2.7695(+0.1319) K=8 3.0331(+0.4673) K=16 3.1643(+0.7596) K=32 1.9970(+0.1605)", + " Q=3 single@D K=1 2.6741 K=4 2.6262 K=8 2.5302 K=16 2.3103 K=32 1.4355", + " window K=1 2.6741(+0.0000) K=4 2.8858(+0.2597) K=8 3.0207(+0.4904) K=16 2.6362(+0.3259) K=32 1.4625(+0.0270)", + " Q=4 single@D K=1 2.7020 K=4 2.6397 K=8 2.6101 K=16 2.3853 K=32 1.3121", + " window K=1 2.7020(+0.0000) K=4 2.9108(+0.2711) K=8 2.9084(+0.2984) K=16 2.5918(+0.2065) K=32 1.2668(-0.0453)", + " shuffle control: window(shuffled) - window(temporal) (must be >>0)", + " Q=2 K=1 +0.0000 K=4 +0.0400 K=8 +0.0881 K=16 -0.1662 K=32 +0.3548", + " Q=3 K=1 +0.0000 K=4 +0.0520 K=8 -0.0914 K=16 +0.0169 K=32 +0.8048", + " Q=4 K=1 +0.0000 K=4 +0.0068 K=8 -0.0933 K=16 +0.0425 K=32 +1.1162", + " reverse control: window(reverse) - window(temporal)", + " Q=2 K=1 +0.0000 K=4 +0.0262 K=8 +0.0865 K=16 +0.2053 K=32 +1.3726", + " Q=3 K=1 +0.0000 K=4 +0.0774 K=8 +0.1572 K=16 +0.6011 K=32 +1.7748", + " Q=4 K=1 +0.0000 K=4 +0.0918 K=8 +0.1776 K=16 +0.4974 K=32 +1.8223", + " robustness in the interpolation strength A (window temporal log-loss):", + " Q=2 A=1 K=1 2.6653 K=4 3.0442 K=8 4.0190 K=16 4.8738 K=32 2.8391", + " Q=2 A=5 K=1 2.6645 K=4 2.7695 K=8 3.0331 K=16 3.1643 K=32 1.9970", + " Q=2 A=20 K=1 2.6638 K=4 2.6681 K=8 2.6862 K=16 2.5833 K=32 1.7668", + " Q=3 A=1 K=1 2.6844 K=4 3.5284 K=8 4.2822 K=16 3.6127 K=32 1.9264", + " Q=3 A=5 K=1 2.6741 K=4 2.8858 K=8 3.0207 K=16 2.6362 K=32 1.4625", + " Q=3 A=20 K=1 2.6681 K=4 2.6773 K=8 2.6250 K=16 2.3607 K=32 1.4132", + " Q=4 A=1 K=1 2.7908 K=4 3.6658 K=8 3.9767 K=16 3.4357 K=32 1.4693", + " Q=4 A=5 K=1 2.7020 K=4 2.9108 K=8 2.9084 K=16 2.5918 K=32 1.2668", + " Q=4 A=20 K=1 2.6736 K=4 2.6783 K=8 2.6388 K=16 2.4433 K=32 1.4137", + "====================================================================================================" + ], + "raw": { + "pre": { + "frame": "pre", + "seeds": { + "1": { + "majority": { + "top": 0, + "n": 16616, + "acc": 0.23675974963890226, + "logloss": 2.6962576710014994, + "emp_hit": 0.09135772749157439, + "dist": { + "0": 0.23064478250658874, + "1": 0.12496412076298828, + "2": 0.10205359705659786, + "3": 0.08924144769459594, + "4": 0.09665214101192496, + "5": 0.12616444432847115, + "6": 0.23027946663883309 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3977491574386134, + "logloss": 2.59627483139251, + "implied_hit": 0.08935043338861608 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.36163938372652865, + "logloss": 3.4276796112697876, + "implied_hit": 0.08908236468620924 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3323302840635532, + "logloss": 4.456377429937034, + "implied_hit": 0.09014865089323383 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3323302840635532, + "logloss": 4.456377429937034, + "implied_hit": 0.09014865089323383 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3323302840635532, + "logloss": 4.456377429937034, + "implied_hit": 0.09014865089323383 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.4015406836783823, + "logloss": 2.5011836809411947, + "implied_hit": 0.08981150107463667 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.37301396244583535, + "logloss": 2.7894597036019144, + "implied_hit": 0.08887848366927548 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.34623254694270583, + "logloss": 3.128167848905169, + "implied_hit": 0.0899417241371835 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.34623254694270583, + "logloss": 3.128167848905169, + "implied_hit": 0.0899417241371835 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.34623254694270583, + "logloss": 3.128167848905169, + "implied_hit": 0.0899417241371835 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.4084015406836784, + "logloss": 2.4565895953715717, + "implied_hit": 0.09020257433130809 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.397869523350987, + "logloss": 2.5409799940678623, + "implied_hit": 0.08941243917825753 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.38222195474241694, + "logloss": 2.6354610951142035, + "implied_hit": 0.0899665120791213 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.38222195474241694, + "logloss": 2.6354610951142035, + "implied_hit": 0.0899665120791213 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.38222195474241694, + "logloss": 2.6354610951142035, + "implied_hit": 0.0899665120791213 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3754814636494945, + "logloss": 2.542856679727637, + "implied_hit": 0.08925513033579302 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3124699085219066, + "logloss": 3.262373319642181, + "implied_hit": 0.09108210452550505 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.28719306692344726, + "logloss": 3.5177499377238086, + "implied_hit": 0.09174195445018674 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.28851709195955705, + "logloss": 3.529691366129672, + "implied_hit": 0.08968544616782312 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.2894198363023592, + "logloss": 3.488539745769887, + "implied_hit": 0.08983939725985286 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.28960038517091957, + "logloss": 3.5282278421799633, + "implied_hit": 0.0915043342530509 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3754814636494945, + "logloss": 2.5427900945943316, + "implied_hit": 0.08926210509458216 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.34647327876745304, + "logloss": 2.73517431991467, + "implied_hit": 0.09063248362289608 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.32366393837265284, + "logloss": 2.811058777626091, + "implied_hit": 0.0914168233801522 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.32558979297063073, + "logloss": 2.810416441841951, + "implied_hit": 0.08990886479793467 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.32805729417428986, + "logloss": 2.7908087822849175, + "implied_hit": 0.09012492039411396 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3243861338468946, + "logloss": 2.80958081945327, + "implied_hit": 0.09116717234671119 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3754814636494945, + "logloss": 2.542727989981794, + "implied_hit": 0.08928572369853421 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3778887818969668, + "logloss": 2.565271257466336, + "implied_hit": 0.09041151707983981 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3688613384689456, + "logloss": 2.591821776735272, + "implied_hit": 0.09101078861579878 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3719908521906596, + "logloss": 2.587207575697827, + "implied_hit": 0.08998253333528326 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3728935965334617, + "logloss": 2.5801450220877284, + "implied_hit": 0.09027886567641846 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3717501203659124, + "logloss": 2.587230856050489, + "implied_hit": 0.09081039334397262 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3591718825228695, + "logloss": 2.575842263613715, + "implied_hit": 0.08933240626964122 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.350565719788156, + "logloss": 2.7195259749090477, + "implied_hit": 0.08936137731094777 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3116875300914781, + "logloss": 3.586684525995913, + "implied_hit": 0.08930511590708176 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.28225806451612906, + "logloss": 4.68266148162346, + "implied_hit": 0.08949354064318864 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.28225806451612906, + "logloss": 4.68266148162346, + "implied_hit": 0.08949354064318864 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.28225806451612906, + "logloss": 4.68266148162346, + "implied_hit": 0.08949354064318864 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3591718825228695, + "logloss": 2.575715073576784, + "implied_hit": 0.08930070171521921 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.35339431872893595, + "logloss": 2.6343938325518064, + "implied_hit": 0.08932502441717036 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.31872893596533464, + "logloss": 2.932065699019138, + "implied_hit": 0.08940689644239423 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.2904429465575349, + "logloss": 3.289733338671066, + "implied_hit": 0.0895985035771356 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.2904429465575349, + "logloss": 3.289733338671066, + "implied_hit": 0.0895985035771356 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.2904429465575349, + "logloss": 3.289733338671066, + "implied_hit": 0.0895985035771356 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3589913336543091, + "logloss": 2.5756114747166805, + "implied_hit": 0.08924407824602983 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.36007462686567165, + "logloss": 2.5972263341269115, + "implied_hit": 0.0893610929965117 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.34551035146846415, + "logloss": 2.6854398231872563, + "implied_hit": 0.08935842159305275 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3293813192103996, + "logloss": 2.7837110173042916, + "implied_hit": 0.08952048632070259 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3293813192103996, + "logloss": 2.7837110173042916, + "implied_hit": 0.08952048632070259 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3293813192103996, + "logloss": 2.7837110173042916, + "implied_hit": 0.08952048632070259 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + }, + "4": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + }, + "8": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + }, + "16": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + }, + "32": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + }, + "48": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.4439535093033085, + "implied_hit": 0.08926696889633244 + } + }, + "5.0": { + "1": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + }, + "4": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + }, + "8": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + }, + "16": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + }, + "32": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + }, + "48": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.44398680997246, + "implied_hit": 0.08927687032737237 + } + }, + "20.0": { + "1": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + }, + "4": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + }, + "8": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + }, + "16": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + }, + "32": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + }, + "48": { + "n": 16616, + "acc": 0.4102672123254694, + "logloss": 2.444202597378122, + "implied_hit": 0.08931321538170625 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 54939, + "repeat_frac": 1.0, + "mean_count": 3433.6875 + }, + "4": { + "distinct": 1747, + "total": 54939, + "repeat_frac": 0.9901709168350352, + "mean_count": 31.447624499141384 + }, + "8": { + "distinct": 13474, + "total": 54939, + "repeat_frac": 0.8358361091392271, + "mean_count": 4.077408341991984 + }, + "16": { + "distinct": 41447, + "total": 54939, + "repeat_frac": 0.31116329019457944, + "mean_count": 1.3255241633893888 + }, + "32": { + "distinct": 54454, + "total": 54939, + "repeat_frac": 0.011230637616265313, + "mean_count": 1.0089066000661109 + }, + "48": { + "distinct": 54744, + "total": 54939, + "repeat_frac": 0.004313875389067875, + "mean_count": 1.0035620341955283 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3779489648531536, + "logloss": 2.882514169105673, + "implied_hit": 0.08954708831207406 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3376865671641791, + "logloss": 3.8248638234841534, + "implied_hit": 0.09038259689648524 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.32209918151179584, + "logloss": 4.215389875553939, + "implied_hit": 0.09065133769765264 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.32209918151179584, + "logloss": 4.215389875553939, + "implied_hit": 0.09065133769765264 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.32209918151179584, + "logloss": 4.215389875553939, + "implied_hit": 0.09065133769765264 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3901059220028888, + "logloss": 2.5334758597691525, + "implied_hit": 0.0893776002605272 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3556812710640347, + "logloss": 2.820245280164474, + "implied_hit": 0.08940174668731439 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.34340394800192586, + "logloss": 2.932695825546348, + "implied_hit": 0.08964347244079171 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.34340394800192586, + "logloss": 2.932695825546348, + "implied_hit": 0.08964347244079171 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.34340394800192586, + "logloss": 2.932695825546348, + "implied_hit": 0.08964347244079171 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.40448964853153585, + "logloss": 2.4042660210962725, + "implied_hit": 0.08934949597872364 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3919715936446798, + "logloss": 2.4759728271066286, + "implied_hit": 0.08893841786948291 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.38763842079922967, + "logloss": 2.502951883941198, + "implied_hit": 0.08917178021068269 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.38763842079922967, + "logloss": 2.502951883941198, + "implied_hit": 0.08917178021068269 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.38763842079922967, + "logloss": 2.502951883941198, + "implied_hit": 0.08917178021068269 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.37861097737120847, + "logloss": 2.5131768365187863, + "implied_hit": 0.0894588078782728 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3111458834857968, + "logloss": 3.0116643979109545, + "implied_hit": 0.0900457148681886 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3111458834857968, + "logloss": 3.0137973918169054, + "implied_hit": 0.0896589206735747 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3162012518054887, + "logloss": 3.010663892707308, + "implied_hit": 0.08918218205414481 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.32005296100144437, + "logloss": 3.011448711847028, + "implied_hit": 0.08826858661787762 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.309520943668753, + "logloss": 3.0202770036511435, + "implied_hit": 0.08965237710496965 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.37861097737120847, + "logloss": 2.510020290943944, + "implied_hit": 0.0895147111656488 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.34863986519017814, + "logloss": 2.616339452517723, + "implied_hit": 0.08962989896072203 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3485194992778045, + "logloss": 2.6199032157311244, + "implied_hit": 0.0893057190592776 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.34894077997111217, + "logloss": 2.616181024264554, + "implied_hit": 0.08921912643150402 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3514684641309581, + "logloss": 2.6202154068901424, + "implied_hit": 0.0887989598369473 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3485194992778045, + "logloss": 2.6200109959414033, + "implied_hit": 0.08943096636924829 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3799951853635051, + "logloss": 2.50988395342642, + "implied_hit": 0.08960624604934944 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.37626384207992297, + "logloss": 2.5194379153309274, + "implied_hit": 0.08951652014629853 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3725926817525277, + "logloss": 2.5239244464808337, + "implied_hit": 0.08934666737248487 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.37704622051035147, + "logloss": 2.5190412526041186, + "implied_hit": 0.0894408444841643 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3754814636494945, + "logloss": 2.5232856917927533, + "implied_hit": 0.0891562448301274 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.37457871930669234, + "logloss": 2.5204632334901786, + "implied_hit": 0.08948399322419924 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3617597496389023, + "logloss": 2.5466265449039285, + "implied_hit": 0.0894004281175089 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3281174771304767, + "logloss": 3.162152803919222, + "implied_hit": 0.088744716500579 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.28165623495426095, + "logloss": 4.199102030125051, + "implied_hit": 0.08934315947024034 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.2714853153586904, + "logloss": 4.583493994534156, + "implied_hit": 0.09031550819196206 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.2714853153586904, + "logloss": 4.583493994534156, + "implied_hit": 0.09031550819196206 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.2714853153586904, + "logloss": 4.583493994534156, + "implied_hit": 0.09031550819196206 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3617597496389023, + "logloss": 2.5447174957511125, + "implied_hit": 0.08931905986557193 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3390707751564757, + "logloss": 2.7593679301756953, + "implied_hit": 0.08906700769595846 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3003731343283582, + "logloss": 3.0646264883583716, + "implied_hit": 0.08912186565337579 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.2889383726528647, + "logloss": 3.175105129184059, + "implied_hit": 0.0896761154938186 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.2889383726528647, + "logloss": 3.175105129184059, + "implied_hit": 0.0896761154938186 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.2889383726528647, + "logloss": 3.175105129184059, + "implied_hit": 0.0896761154938186 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3613384689455946, + "logloss": 2.544317883863017, + "implied_hit": 0.08927157285742073 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3585700529610014, + "logloss": 2.606219232062574, + "implied_hit": 0.08940241063463346 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3450890707751565, + "logloss": 2.678291034503379, + "implied_hit": 0.0890477979257109 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.33828839672604716, + "logloss": 2.704170608771671, + "implied_hit": 0.08925944158850965 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.33828839672604716, + "logloss": 2.704170608771671, + "implied_hit": 0.08925944158850965 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.33828839672604716, + "logloss": 2.704170608771671, + "implied_hit": 0.08925944158850965 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + }, + "4": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + }, + "8": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + }, + "16": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + }, + "32": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + }, + "48": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.373291857228326, + "implied_hit": 0.08913920114791961 + } + }, + "5.0": { + "1": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + }, + "4": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + }, + "8": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + }, + "16": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + }, + "32": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + }, + "48": { + "n": 16616, + "acc": 0.4049711121810303, + "logloss": 2.372817149865328, + "implied_hit": 0.0892221968699016 + } + }, + "20.0": { + "1": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + }, + "4": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + }, + "8": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + }, + "16": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + }, + "32": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + }, + "48": { + "n": 16616, + "acc": 0.4052118440057776, + "logloss": 2.375721151051451, + "implied_hit": 0.08944017255212727 + } + } + }, + "recurrence": { + "1": { + "distinct": 82, + "total": 54939, + "repeat_frac": 0.999981797994139, + "mean_count": 669.9878048780488 + }, + "4": { + "distinct": 11018, + "total": 54939, + "repeat_frac": 0.8911884089626677, + "mean_count": 4.986295153385369 + }, + "8": { + "distinct": 37337, + "total": 54939, + "repeat_frac": 0.4035202679335263, + "mean_count": 1.4714358411227468 + }, + "16": { + "distinct": 54163, + "total": 54939, + "repeat_frac": 0.02018602449989989, + "mean_count": 1.0143271236822184 + }, + "32": { + "distinct": 54754, + "total": 54939, + "repeat_frac": 0.004186461348040554, + "mean_count": 1.0033787485845782 + }, + "48": { + "distinct": 54772, + "total": 54939, + "repeat_frac": 0.0037678152132364987, + "mean_count": 1.0030490031402906 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3657920077034184, + "logloss": 3.077405158231736, + "implied_hit": 0.08940284005258622 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.34117717862301394, + "logloss": 3.662701726859079, + "implied_hit": 0.08802186626380203 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.33780693307655274, + "logloss": 3.732671092407645, + "implied_hit": 0.08807346455801077 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.33780693307655274, + "logloss": 3.732671092407645, + "implied_hit": 0.08807346455801077 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.33780693307655274, + "logloss": 3.732671092407645, + "implied_hit": 0.08807346455801077 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3848098218584497, + "logloss": 2.5562817884060154, + "implied_hit": 0.08952052995511561 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3662734713529129, + "logloss": 2.7222564214564904, + "implied_hit": 0.0888048647918941 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3641068849301878, + "logloss": 2.739020332265836, + "implied_hit": 0.08889319903161493 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3641068849301878, + "logloss": 2.739020332265836, + "implied_hit": 0.08889319903161493 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3641068849301878, + "logloss": 2.739020332265836, + "implied_hit": 0.08889319903161493 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.4083413577274916, + "logloss": 2.3828203226863107, + "implied_hit": 0.0897246526158672 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.40136013480982186, + "logloss": 2.420580932919187, + "implied_hit": 0.08951324099703446 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.40003610977371207, + "logloss": 2.423350050886413, + "implied_hit": 0.08956707371070986 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.40003610977371207, + "logloss": 2.423350050886413, + "implied_hit": 0.08956707371070986 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.40003610977371207, + "logloss": 2.423350050886413, + "implied_hit": 0.08956707371070986 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.38174049109292246, + "logloss": 2.556343899549511, + "implied_hit": 0.08993937846104108 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3416586422725084, + "logloss": 2.7571351584009016, + "implied_hit": 0.09025998276389742 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3418993740972557, + "logloss": 2.7581442262007823, + "implied_hit": 0.08995738700144575 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3437650457390467, + "logloss": 2.7372430911122674, + "implied_hit": 0.0897213659365854 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3416586422725084, + "logloss": 2.755339113633981, + "implied_hit": 0.08850254469943364 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.33955223880597013, + "logloss": 2.761529271647772, + "implied_hit": 0.08968850227921814 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.38174049109292246, + "logloss": 2.5189893434324584, + "implied_hit": 0.09011482223368522 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3674169475204622, + "logloss": 2.5538154883668933, + "implied_hit": 0.09014638738984201 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3675373134328358, + "logloss": 2.5552328773930366, + "implied_hit": 0.08996117781494908 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.3667549350024073, + "logloss": 2.5415823381175118, + "implied_hit": 0.0898207419615938 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3686807896003852, + "logloss": 2.5543812862741526, + "implied_hit": 0.08922901613558398 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.36765767934520943, + "logloss": 2.5572035058585123, + "implied_hit": 0.08966968040319863 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.385652383245065, + "logloss": 2.5146491582624173, + "implied_hit": 0.09027072944039094 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.38119884448724123, + "logloss": 2.5160776329020282, + "implied_hit": 0.09024360820016081 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3811386615310544, + "logloss": 2.5180538143157527, + "implied_hit": 0.0901455670120364 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.38523110255175735, + "logloss": 2.5079710610971855, + "implied_hit": 0.0900307329618285 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.3819210399614829, + "logloss": 2.5162302911739243, + "implied_hit": 0.08978659788497474 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.3810182956186808, + "logloss": 2.518436584502635, + "implied_hit": 0.08987409429921134 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3704260953298026, + "logloss": 2.5441404836642145, + "implied_hit": 0.08923582759820349 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3122893596533462, + "logloss": 3.4174713059878425, + "implied_hit": 0.08893983878584841 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.28219788155994224, + "logloss": 4.1018545347097755, + "implied_hit": 0.09022810419514728 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.2804525758305248, + "logloss": 4.180366954441736, + "implied_hit": 0.09037100877467302 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.2804525758305248, + "logloss": 4.180366954441736, + "implied_hit": 0.09037100877467302 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.2804525758305248, + "logloss": 4.180366954441736, + "implied_hit": 0.09037100877467302 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.3704260953298026, + "logloss": 2.531256832478154, + "implied_hit": 0.08923085150457995 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3313071738083775, + "logloss": 2.8223277517144885, + "implied_hit": 0.08869487860618562 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.30380356283100624, + "logloss": 3.0153437445288915, + "implied_hit": 0.08955030998465321 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.30211844005777566, + "logloss": 3.037480537430365, + "implied_hit": 0.08974490338577361 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.30211844005777566, + "logloss": 3.037480537430365, + "implied_hit": 0.08974490338577361 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.30211844005777566, + "logloss": 3.037480537430365, + "implied_hit": 0.08974490338577361 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16616, + "acc": 0.37253249879634087, + "logloss": 2.527530336502615, + "implied_hit": 0.08943306889378498 + } + }, + "4": { + "window": { + "n": 16616, + "acc": 0.3605560905151661, + "logloss": 2.6079158884734563, + "implied_hit": 0.08923207187112354 + } + }, + "8": { + "window": { + "n": 16616, + "acc": 0.3491213288396726, + "logloss": 2.6514557135294377, + "implied_hit": 0.08971611101842794 + } + }, + "16": { + "window": { + "n": 16616, + "acc": 0.34803803562831004, + "logloss": 2.6564826321318886, + "implied_hit": 0.0898354136969243 + } + }, + "32": { + "window": { + "n": 16616, + "acc": 0.34803803562831004, + "logloss": 2.6564826321318886, + "implied_hit": 0.0898354136969243 + } + }, + "48": { + "window": { + "n": 16616, + "acc": 0.34803803562831004, + "logloss": 2.6564826321318886, + "implied_hit": 0.0898354136969243 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + }, + "4": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + }, + "8": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + }, + "16": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + }, + "32": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + }, + "48": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.345814247535037, + "implied_hit": 0.08893767563210582 + } + }, + "5.0": { + "1": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + }, + "4": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + }, + "8": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + }, + "16": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + }, + "32": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + }, + "48": { + "n": 16616, + "acc": 0.4109894077997111, + "logloss": 2.340787068647498, + "implied_hit": 0.08908006125024992 + } + }, + "20.0": { + "1": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + }, + "4": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + }, + "8": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + }, + "16": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + }, + "32": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + }, + "48": { + "n": 16616, + "acc": 0.4108088589311507, + "logloss": 2.350002101737971, + "implied_hit": 0.08955850230699093 + } + } + }, + "recurrence": { + "1": { + "distinct": 372, + "total": 54939, + "repeat_frac": 0.9986894555780047, + "mean_count": 147.68548387096774 + }, + "4": { + "distinct": 24223, + "total": 54939, + "repeat_frac": 0.685032490580462, + "mean_count": 2.26805102588449 + }, + "8": { + "distinct": 49891, + "total": 54939, + "repeat_frac": 0.1339121571197146, + "mean_count": 1.1011805736505582 + }, + "16": { + "distinct": 54707, + "total": 54939, + "repeat_frac": 0.005060157629370757, + "mean_count": 1.0042407735755936 + }, + "32": { + "distinct": 54779, + "total": 54939, + "repeat_frac": 0.0038224212308196363, + "mean_count": 1.0029208273243395 + }, + "48": { + "distinct": 54789, + "total": 54939, + "repeat_frac": 0.0036221991663481314, + "mean_count": 1.002737775830915 + } + } + } + } + }, + "2": { + "majority": { + "top": 0, + "n": 16553, + "acc": 0.23077387784691597, + "logloss": 2.7093887975863056, + "emp_hit": 0.09212831510904368, + "dist": { + "0": 0.23323607565258167, + "1": 0.12559266399208044, + "2": 0.09836919710311051, + "3": 0.08891262439431043, + "4": 0.09592038764132757, + "5": 0.12577502214348982, + "6": 0.23219402907309958 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3864556273787229, + "logloss": 2.6234091431257722, + "implied_hit": 0.08895178350524362 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3541352020781731, + "logloss": 3.471566178130738, + "implied_hit": 0.08736328071004446 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3276143297287501, + "logloss": 4.449920871571011, + "implied_hit": 0.08783324913334123 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3276143297287501, + "logloss": 4.449920871571011, + "implied_hit": 0.08783324913334123 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3276143297287501, + "logloss": 4.449920871571011, + "implied_hit": 0.08783324913334123 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3902615840028998, + "logloss": 2.52484581156474, + "implied_hit": 0.08912005025372241 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.36440524376246, + "logloss": 2.8141618489302127, + "implied_hit": 0.08781629230764962 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3407237358786927, + "logloss": 3.130531276566839, + "implied_hit": 0.08823888771131315 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3407237358786927, + "logloss": 3.130531276566839, + "implied_hit": 0.08823888771131315 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3407237358786927, + "logloss": 3.130531276566839, + "implied_hit": 0.08823888771131315 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.39563825288467347, + "logloss": 2.479858560402501, + "implied_hit": 0.08934140863476839 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.38579109526973965, + "logloss": 2.564510420652188, + "implied_hit": 0.08862207430770089 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.37262127710988946, + "logloss": 2.6506130149255984, + "implied_hit": 0.08879385166845888 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.37262127710988946, + "logloss": 2.6506130149255984, + "implied_hit": 0.08879385166845888 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.37262127710988946, + "logloss": 2.6506130149255984, + "implied_hit": 0.08879385166845888 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36247205944541777, + "logloss": 2.5665582819583292, + "implied_hit": 0.08883444161947071 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.2993415090920075, + "logloss": 3.329647167407756, + "implied_hit": 0.08835886941513686 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.28605086691234216, + "logloss": 3.552846515452697, + "implied_hit": 0.0898011707973667 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.28961517549688875, + "logloss": 3.54708802339673, + "implied_hit": 0.08780834564562429 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.28417809460520754, + "logloss": 3.556181069116633, + "implied_hit": 0.08818052906575474 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.2867153990213254, + "logloss": 3.531675497318786, + "implied_hit": 0.08784506197295656 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36247205944541777, + "logloss": 2.566404701973625, + "implied_hit": 0.08884848582607723 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.330151634144868, + "logloss": 2.781748771732879, + "implied_hit": 0.08862347860266043 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3177671721138162, + "logloss": 2.838946408860739, + "implied_hit": 0.08925437823169857 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.32169395275780827, + "logloss": 2.833917482695914, + "implied_hit": 0.08847795496305454 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.31734428804446324, + "logloss": 2.837107101052287, + "implied_hit": 0.08849488471943191 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.32169395275780827, + "logloss": 2.8262554378786566, + "implied_hit": 0.08878554987077371 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36247205944541777, + "logloss": 2.5660587096249983, + "implied_hit": 0.08889871794884155 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3659759560200568, + "logloss": 2.602420035342022, + "implied_hit": 0.08902062457641807 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.36168670331661934, + "logloss": 2.6178860260624313, + "implied_hit": 0.08914890992638133 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3622304114057875, + "logloss": 2.612896738043577, + "implied_hit": 0.08908929217288428 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.362290823415695, + "logloss": 2.614585303151408, + "implied_hit": 0.08894738152804467 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3621699993958799, + "logloss": 2.6098469477483173, + "implied_hit": 0.08928371581316999 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3504500694738114, + "logloss": 2.594597867239098, + "implied_hit": 0.08873236141020516 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.34301939225518036, + "logloss": 2.7586177436195976, + "implied_hit": 0.08833578501551816 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.30423488189452064, + "logloss": 3.648766121896723, + "implied_hit": 0.09010776115110962 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.27807648160454296, + "logloss": 4.695884550163275, + "implied_hit": 0.09008161498209284 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.27807648160454296, + "logloss": 4.695884550163275, + "implied_hit": 0.09008161498209284 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.27807648160454296, + "logloss": 4.695884550163275, + "implied_hit": 0.09008161498209284 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3504500694738114, + "logloss": 2.594352192022631, + "implied_hit": 0.08869663420239265 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3454962846613907, + "logloss": 2.661222967334284, + "implied_hit": 0.08855977617412861 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3118467951428744, + "logloss": 2.9623010959383174, + "implied_hit": 0.0898227221536432 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.28611127892224975, + "logloss": 3.293424560236431, + "implied_hit": 0.09037523600749289 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.28611127892224975, + "logloss": 3.293424560236431, + "implied_hit": 0.09037523600749289 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.28611127892224975, + "logloss": 3.293424560236431, + "implied_hit": 0.09037523600749289 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.35051048148371894, + "logloss": 2.594191669880164, + "implied_hit": 0.08864506073517793 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3504500694738114, + "logloss": 2.618353070399934, + "implied_hit": 0.08879513447252574 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.33504500694738115, + "logloss": 2.70531358223175, + "implied_hit": 0.08960540483893753 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3198815924605812, + "logloss": 2.7932605524786567, + "implied_hit": 0.0902544939035164 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3198815924605812, + "logloss": 2.7932605524786567, + "implied_hit": 0.0902544939035164 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3198815924605812, + "logloss": 2.7932605524786567, + "implied_hit": 0.0902544939035164 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + }, + "4": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + }, + "8": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + }, + "16": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + }, + "32": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + }, + "48": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471540926601587, + "implied_hit": 0.08893585663929277 + } + }, + "5.0": { + "1": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + }, + "4": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + }, + "8": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + }, + "16": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + }, + "32": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + }, + "48": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.4714648962003927, + "implied_hit": 0.08894399774725847 + } + }, + "20.0": { + "1": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + }, + "4": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + }, + "8": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + }, + "16": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + }, + "32": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + }, + "48": { + "n": 16553, + "acc": 0.3975714372017157, + "logloss": 2.471335718672754, + "implied_hit": 0.08897392161610658 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 54939, + "repeat_frac": 1.0, + "mean_count": 3433.6875 + }, + "4": { + "distinct": 1754, + "total": 54939, + "repeat_frac": 0.9900253007881469, + "mean_count": 31.32212086659065 + }, + "8": { + "distinct": 13490, + "total": 54939, + "repeat_frac": 0.835763301115783, + "mean_count": 4.072572275759822 + }, + "16": { + "distinct": 41430, + "total": 54939, + "repeat_frac": 0.3110722801652742, + "mean_count": 1.3260680666183924 + }, + "32": { + "distinct": 54452, + "total": 54939, + "repeat_frac": 0.01128524363384845, + "mean_count": 1.0089436567986483 + }, + "48": { + "distinct": 54743, + "total": 54939, + "repeat_frac": 0.004386683412512059, + "mean_count": 1.0035803664395448 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3754606415755452, + "logloss": 2.911922105808877, + "implied_hit": 0.09031236148581061 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3413278559777684, + "logloss": 3.840376978260134, + "implied_hit": 0.08874114967049244 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.32525826134235486, + "logloss": 4.232473431062816, + "implied_hit": 0.08805870027433393 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.32525826134235486, + "logloss": 4.232473431062816, + "implied_hit": 0.08805870027433393 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.32525826134235486, + "logloss": 4.232473431062816, + "implied_hit": 0.08805870027433393 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.38397873497251256, + "logloss": 2.5653772968142543, + "implied_hit": 0.09030144074775051 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.35649127046456835, + "logloss": 2.8462443704620077, + "implied_hit": 0.08925422100702067 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3438651603938863, + "logloss": 2.9574629810137965, + "implied_hit": 0.0889882947135294 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3438651603938863, + "logloss": 2.9574629810137965, + "implied_hit": 0.0889882947135294 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3438651603938863, + "logloss": 2.9574629810137965, + "implied_hit": 0.0889882947135294 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.396544433033287, + "logloss": 2.4360877502605796, + "implied_hit": 0.09023954266248291 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3871201594877062, + "logloss": 2.50518214076968, + "implied_hit": 0.08941431816131146 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.38301214281399143, + "logloss": 2.5304214835642016, + "implied_hit": 0.08945899502395177 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.38301214281399143, + "logloss": 2.5304214835642016, + "implied_hit": 0.08945899502395177 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.38301214281399143, + "logloss": 2.5304214835642016, + "implied_hit": 0.08945899502395177 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36821120038663685, + "logloss": 2.532531325513546, + "implied_hit": 0.08907458777697631 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3098531988159246, + "logloss": 3.030592413237474, + "implied_hit": 0.0890899535789082 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3031474657161844, + "logloss": 3.0394211585020825, + "implied_hit": 0.08958008805290413 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3081616625385127, + "logloss": 3.02288394220021, + "implied_hit": 0.08978930240299718 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3083428985682354, + "logloss": 3.035993721351169, + "implied_hit": 0.09021729467224888 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3128133873013955, + "logloss": 3.0232696472020315, + "implied_hit": 0.08810215615406623 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36821120038663685, + "logloss": 2.528092421601082, + "implied_hit": 0.08918153723649846 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3454962846613907, + "logloss": 2.6332460156002204, + "implied_hit": 0.08927495146935742 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.34301939225518036, + "logloss": 2.6471218594284465, + "implied_hit": 0.08906856985450513 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.344892164562315, + "logloss": 2.6360808971512677, + "implied_hit": 0.08938869321516288 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3432610402948106, + "logloss": 2.638344543134127, + "implied_hit": 0.08945883426760726 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3462212287802815, + "logloss": 2.631694398970916, + "implied_hit": 0.0885338676927915 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36839243641635955, + "logloss": 2.527725419046169, + "implied_hit": 0.08941236826304304 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.36966108862441854, + "logloss": 2.536211468972711, + "implied_hit": 0.08948595142145903 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3654926599407962, + "logloss": 2.551381783942234, + "implied_hit": 0.08912199701069763 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.36658007611913246, + "logloss": 2.5405138921314605, + "implied_hit": 0.08934541415596277 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.36790914033709904, + "logloss": 2.541380249033183, + "implied_hit": 0.08934584687113903 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3685736724460823, + "logloss": 2.5374040590762665, + "implied_hit": 0.08896249057862358 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.35449767413761857, + "logloss": 2.5690090794422358, + "implied_hit": 0.08867707321243194 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.32392919712438834, + "logloss": 3.1951781576801572, + "implied_hit": 0.0885032680100002 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.28290944239714855, + "logloss": 4.222102681560603, + "implied_hit": 0.0895287187325325 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.2707666284057271, + "logloss": 4.604533467940325, + "implied_hit": 0.09056151521236622 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.2707666284057271, + "logloss": 4.604533467940325, + "implied_hit": 0.09056151521236622 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.2707666284057271, + "logloss": 4.604533467940325, + "implied_hit": 0.09056151521236622 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.35449767413761857, + "logloss": 2.5665322934675303, + "implied_hit": 0.08864479214867191 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3342596508185827, + "logloss": 2.78609989613765, + "implied_hit": 0.0884837026851947 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.2993415090920075, + "logloss": 3.0887513006454212, + "implied_hit": 0.08878383626040365 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.28786322720956925, + "logloss": 3.199509933067586, + "implied_hit": 0.08949023689666404 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.28786322720956925, + "logloss": 3.199509933067586, + "implied_hit": 0.08949023689666404 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.28786322720956925, + "logloss": 3.199509933067586, + "implied_hit": 0.08949023689666404 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.35431643810789587, + "logloss": 2.5654634262955165, + "implied_hit": 0.08866304087743954 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3523832537908536, + "logloss": 2.6286735532738237, + "implied_hit": 0.08850062391265906 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.33981755573007916, + "logloss": 2.7001029229389073, + "implied_hit": 0.08832303346087231 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.33359511870959946, + "logloss": 2.7261221116199037, + "implied_hit": 0.0886693235803846 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.33359511870959946, + "logloss": 2.7261221116199037, + "implied_hit": 0.0886693235803846 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.33359511870959946, + "logloss": 2.7261221116199037, + "implied_hit": 0.0886693235803846 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + }, + "4": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + }, + "8": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + }, + "16": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + }, + "32": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + }, + "48": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.396474710166058, + "implied_hit": 0.08949786132388085 + } + }, + "5.0": { + "1": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + }, + "4": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + }, + "8": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + }, + "16": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + }, + "32": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + }, + "48": { + "n": 16553, + "acc": 0.39551742886485836, + "logloss": 2.3965873493160554, + "implied_hit": 0.08956166667021857 + } + }, + "20.0": { + "1": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + }, + "4": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + }, + "8": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + }, + "16": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + }, + "32": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + }, + "48": { + "n": 16553, + "acc": 0.39587990092430375, + "logloss": 2.3990471124175863, + "implied_hit": 0.08974604308823714 + } + } + }, + "recurrence": { + "1": { + "distinct": 82, + "total": 54939, + "repeat_frac": 0.999981797994139, + "mean_count": 669.9878048780488 + }, + "4": { + "distinct": 11037, + "total": 54939, + "repeat_frac": 0.890933580880613, + "mean_count": 4.977711334601794 + }, + "8": { + "distinct": 37296, + "total": 54939, + "repeat_frac": 0.40419374215038495, + "mean_count": 1.4730534105534105 + }, + "16": { + "distinct": 54164, + "total": 54939, + "repeat_frac": 0.02009501447059466, + "mean_count": 1.0143083967210693 + }, + "32": { + "distinct": 54754, + "total": 54939, + "repeat_frac": 0.004186461348040554, + "mean_count": 1.0033787485845782 + }, + "48": { + "distinct": 54772, + "total": 54939, + "repeat_frac": 0.0037678152132364987, + "mean_count": 1.0030490031402906 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3555246783060472, + "logloss": 3.1251665463776193, + "implied_hit": 0.08919015894794934 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.33178275841237237, + "logloss": 3.7103802010162816, + "implied_hit": 0.08816510401610178 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.32966833806560747, + "logloss": 3.781230064362701, + "implied_hit": 0.088480661384705 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.32966833806560747, + "logloss": 3.781230064362701, + "implied_hit": 0.088480661384705 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.32966833806560747, + "logloss": 3.781230064362701, + "implied_hit": 0.088480661384705 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.37757506192231016, + "logloss": 2.5947801367510928, + "implied_hit": 0.08936362988128921 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3578203346825349, + "logloss": 2.7590464460909074, + "implied_hit": 0.0886271879207902 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3560079743853078, + "logloss": 2.7766635485163005, + "implied_hit": 0.0888531110289936 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.3560079743853078, + "logloss": 2.7766635485163005, + "implied_hit": 0.0888531110289936 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.3560079743853078, + "logloss": 2.7766635485163005, + "implied_hit": 0.0888531110289936 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.396544433033287, + "logloss": 2.4162135272076313, + "implied_hit": 0.08976201065195963 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3903824080227149, + "logloss": 2.453180706499398, + "implied_hit": 0.08937646729744397 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.38965746390382405, + "logloss": 2.4564416019025663, + "implied_hit": 0.08948734227404385 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.38965746390382405, + "logloss": 2.4564416019025663, + "implied_hit": 0.08948734227404385 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.38965746390382405, + "logloss": 2.4564416019025663, + "implied_hit": 0.08948734227404385 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3705672687730321, + "logloss": 2.5763380342204982, + "implied_hit": 0.08912343370656052 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.33558871503654925, + "logloss": 2.7926508192923705, + "implied_hit": 0.08969432747259182 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3359511870959947, + "logloss": 2.789671121622145, + "implied_hit": 0.09006169094892723 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.32888298193680904, + "logloss": 2.8011295741610254, + "implied_hit": 0.08981701219817692 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.329305866006162, + "logloss": 2.779551970033489, + "implied_hit": 0.09000140757680802 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.33341388267987676, + "logloss": 2.78449237179746, + "implied_hit": 0.09031997581736025 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3705672687730321, + "logloss": 2.5397586663176765, + "implied_hit": 0.08956022485443413 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.35806198272216516, + "logloss": 2.5842169703335847, + "implied_hit": 0.09025432081358772 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.35661209448438347, + "logloss": 2.5871769393828834, + "implied_hit": 0.09013878221693251 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.354014378058358, + "logloss": 2.5890425317733095, + "implied_hit": 0.0898110931273997 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.35328943393946716, + "logloss": 2.5803872288660314, + "implied_hit": 0.09046316781941986 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.35516220624660183, + "logloss": 2.5822290432236596, + "implied_hit": 0.09038950613707111 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3741315773575787, + "logloss": 2.5341364757254325, + "implied_hit": 0.08994807607061117 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.372681689119797, + "logloss": 2.5432130195933595, + "implied_hit": 0.09049244005011074 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3702652087234942, + "logloss": 2.546279345587742, + "implied_hit": 0.09020513961428159 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.3699631486739564, + "logloss": 2.5441514936408693, + "implied_hit": 0.0899501464190639 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.37117138887210777, + "logloss": 2.5426382170274975, + "implied_hit": 0.09055454498504147 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.36923820455506556, + "logloss": 2.541954120838114, + "implied_hit": 0.09048891829871335 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36452606778227514, + "logloss": 2.565798111497068, + "implied_hit": 0.08905596416900612 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3081616625385127, + "logloss": 3.430738912773805, + "implied_hit": 0.0904810424261583 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.2789826617531565, + "logloss": 4.108967659465625, + "implied_hit": 0.09273041409702998 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.27753277351537486, + "logloss": 4.186039401775684, + "implied_hit": 0.0933569167768794 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.27753277351537486, + "logloss": 4.186039401775684, + "implied_hit": 0.0933569167768794 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.27753277351537486, + "logloss": 4.186039401775684, + "implied_hit": 0.0933569167768794 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.36452606778227514, + "logloss": 2.552654348241168, + "implied_hit": 0.08900530371244195 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.32664773757022897, + "logloss": 2.8399194206699634, + "implied_hit": 0.09037546450492263 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.30254334561710866, + "logloss": 3.0334910889915268, + "implied_hit": 0.09193553333017156 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.30097263335951185, + "logloss": 3.0573279397707966, + "implied_hit": 0.09245306491864595 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.30097263335951185, + "logloss": 3.0573279397707966, + "implied_hit": 0.09245306491864595 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.30097263335951185, + "logloss": 3.0573279397707966, + "implied_hit": 0.09245306491864595 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16553, + "acc": 0.3649489518516281, + "logloss": 2.5485182096991834, + "implied_hit": 0.0891275546412922 + } + }, + "4": { + "window": { + "n": 16553, + "acc": 0.3554038542862321, + "logloss": 2.626335479482441, + "implied_hit": 0.09028941001550551 + } + }, + "8": { + "window": { + "n": 16553, + "acc": 0.3477919410378783, + "logloss": 2.671550132727566, + "implied_hit": 0.09115747784333257 + } + }, + "16": { + "window": { + "n": 16553, + "acc": 0.34640246481000425, + "logloss": 2.677430047917098, + "implied_hit": 0.0914646136711732 + } + }, + "32": { + "window": { + "n": 16553, + "acc": 0.34640246481000425, + "logloss": 2.677430047917098, + "implied_hit": 0.0914646136711732 + } + }, + "48": { + "window": { + "n": 16553, + "acc": 0.34640246481000425, + "logloss": 2.677430047917098, + "implied_hit": 0.0914646136711732 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + }, + "4": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + }, + "8": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + }, + "16": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + }, + "32": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + }, + "48": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3685198388447963, + "implied_hit": 0.08912266284620123 + } + }, + "5.0": { + "1": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + }, + "4": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + }, + "8": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + }, + "16": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + }, + "32": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + }, + "48": { + "n": 16553, + "acc": 0.4016190418655229, + "logloss": 2.3645398977114387, + "implied_hit": 0.08924312266935087 + } + }, + "20.0": { + "1": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + }, + "4": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + }, + "8": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + }, + "16": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + }, + "32": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + }, + "48": { + "n": 16553, + "acc": 0.40210233794478345, + "logloss": 2.3735912649829896, + "implied_hit": 0.08965480260350733 + } + } + }, + "recurrence": { + "1": { + "distinct": 371, + "total": 54939, + "repeat_frac": 0.9987440615955878, + "mean_count": 148.08355795148248 + }, + "4": { + "distinct": 24158, + "total": 54939, + "repeat_frac": 0.6860700049145416, + "mean_count": 2.274153489527279 + }, + "8": { + "distinct": 49838, + "total": 54939, + "repeat_frac": 0.1354593276179035, + "mean_count": 1.1023516192463583 + }, + "16": { + "distinct": 54707, + "total": 54939, + "repeat_frac": 0.005096561641092848, + "mean_count": 1.0042407735755936 + }, + "32": { + "distinct": 54779, + "total": 54939, + "repeat_frac": 0.003877027248402774, + "mean_count": 1.0029208273243395 + }, + "48": { + "distinct": 54789, + "total": 54939, + "repeat_frac": 0.003676805183931269, + "mean_count": 1.002737775830915 + } + } + } + } + }, + "3": { + "majority": { + "top": 0, + "n": 16409, + "acc": 0.23682125662746054, + "logloss": 2.689222844567459, + "emp_hit": 0.08830519836674995, + "dist": { + "0": 0.23065144043602387, + "1": 0.1257721256164028, + "2": 0.10179081235400986, + "3": 0.09055281598754218, + "4": 0.09724889696340513, + "5": 0.12626524785881132, + "6": 0.22771866078380482 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.4019135840087757, + "logloss": 2.608606711469902, + "implied_hit": 0.09053263805107839 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3629715400085319, + "logloss": 3.4669888810210145, + "implied_hit": 0.09001384790665362 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3333536473886282, + "logloss": 4.477735606733184, + "implied_hit": 0.09107459619233702 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3333536473886282, + "logloss": 4.477735606733184, + "implied_hit": 0.09107459619233702 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3333536473886282, + "logloss": 4.477735606733184, + "implied_hit": 0.09107459619233702 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.4050825766347736, + "logloss": 2.5062078562867605, + "implied_hit": 0.09052586840720174 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3725394600524103, + "logloss": 2.8008395976689378, + "implied_hit": 0.08986278125321874 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.34596867572673534, + "logloss": 3.134294633577577, + "implied_hit": 0.09057382177982155 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.34596867572673534, + "logloss": 3.134294633577577, + "implied_hit": 0.09057382177982155 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.34596867572673534, + "logloss": 3.134294633577577, + "implied_hit": 0.09057382177982155 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.41044548723261626, + "logloss": 2.4563278985331216, + "implied_hit": 0.09076390092126646 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.39789140106039367, + "logloss": 2.54187741865559, + "implied_hit": 0.08989261724493632 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3838137607410567, + "logloss": 2.6361625130005097, + "implied_hit": 0.09035164573366895 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3838137607410567, + "logloss": 2.6361625130005097, + "implied_hit": 0.09035164573366895 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3838137607410567, + "logloss": 2.6361625130005097, + "implied_hit": 0.09035164573366895 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.38107136327625085, + "logloss": 2.530090220816701, + "implied_hit": 0.09035485874430907 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3092205496983363, + "logloss": 3.3235960335458943, + "implied_hit": 0.08990294574963942 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.28856115546346517, + "logloss": 3.516138689928414, + "implied_hit": 0.09086259082573883 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.29532573587665306, + "logloss": 3.494102457428381, + "implied_hit": 0.09023927724905492 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.2967274056919983, + "logloss": 3.4796260535354446, + "implied_hit": 0.09080951344703005 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.2946553720519227, + "logloss": 3.501155725105388, + "implied_hit": 0.08823370130528917 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.38107136327625085, + "logloss": 2.530120129166396, + "implied_hit": 0.09036312635968942 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3465171552196965, + "logloss": 2.766425763976959, + "implied_hit": 0.09027382816307224 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3258577609848254, + "logloss": 2.806337956039251, + "implied_hit": 0.09083970630378586 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.33274422572978246, + "logloss": 2.791550356245807, + "implied_hit": 0.09049102115829574 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3340240112133585, + "logloss": 2.779946320972406, + "implied_hit": 0.09067574203510217 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.33042842342616857, + "logloss": 2.798655574780413, + "implied_hit": 0.08954861131317013 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.38107136327625085, + "logloss": 2.5303700337916, + "implied_hit": 0.09039253771433474 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3804009994515205, + "logloss": 2.5813347945125176, + "implied_hit": 0.09054208311634557 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.37540374184898534, + "logloss": 2.588522106552927, + "implied_hit": 0.09100388078173999 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.37747577548906086, + "logloss": 2.5756196906890545, + "implied_hit": 0.09082752884871284 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3792430982997136, + "logloss": 2.569116730743069, + "implied_hit": 0.09077621007013652 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3761959900054848, + "logloss": 2.584035585268487, + "implied_hit": 0.09057221212079541 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.566233253043304, + "implied_hit": 0.09031949709172397 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.35986348954841857, + "logloss": 2.7113806877324222, + "implied_hit": 0.09022779795259449 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.31872752757633005, + "logloss": 3.575255576045853, + "implied_hit": 0.09030353198269432 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.28313730269973797, + "logloss": 4.628018982891767, + "implied_hit": 0.0916603721359636 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.28313730269973797, + "logloss": 4.628018982891767, + "implied_hit": 0.0916603721359636 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.28313730269973797, + "logloss": 4.628018982891767, + "implied_hit": 0.0916603721359636 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.5661021012756744, + "implied_hit": 0.09029429139464748 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.36175269669084037, + "logloss": 2.625415043627156, + "implied_hit": 0.0901767629384736 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3274422572978244, + "logloss": 2.917436092571772, + "implied_hit": 0.09026337791447506 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.2927052227436163, + "logloss": 3.2546272604920587, + "implied_hit": 0.09154888309337025 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.2927052227436163, + "logloss": 3.2546272604920587, + "implied_hit": 0.09154888309337025 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.2927052227436163, + "logloss": 3.2546272604920587, + "implied_hit": 0.09154888309337025 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3665061856298373, + "logloss": 2.566017169558933, + "implied_hit": 0.09024862560229165 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.5869424200316113, + "implied_hit": 0.09014571315882335 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3545005789505759, + "logloss": 2.6717873034766426, + "implied_hit": 0.0901075928718768 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3339021268815894, + "logloss": 2.7631991430939524, + "implied_hit": 0.09113660410201305 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3339021268815894, + "logloss": 2.7631991430939524, + "implied_hit": 0.09113660410201305 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3339021268815894, + "logloss": 2.7631991430939524, + "implied_hit": 0.09113660410201305 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + }, + "4": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + }, + "8": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + }, + "16": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + }, + "32": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + }, + "48": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.44222461348082, + "implied_hit": 0.09053573961193262 + } + }, + "5.0": { + "1": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + }, + "4": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + }, + "8": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + }, + "16": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + }, + "32": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + }, + "48": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.4418444510294806, + "implied_hit": 0.09054318381671977 + } + }, + "20.0": { + "1": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + }, + "4": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + }, + "8": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + }, + "16": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + }, + "32": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + }, + "48": { + "n": 16409, + "acc": 0.4137973063562679, + "logloss": 2.441694282960364, + "implied_hit": 0.09057067411789353 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 54939, + "repeat_frac": 1.0, + "mean_count": 3433.6875 + }, + "4": { + "distinct": 1754, + "total": 54939, + "repeat_frac": 0.99007990680573, + "mean_count": 31.32212086659065 + }, + "8": { + "distinct": 13483, + "total": 54939, + "repeat_frac": 0.8355630790513114, + "mean_count": 4.0746866424386265 + }, + "16": { + "distinct": 41449, + "total": 54939, + "repeat_frac": 0.31099947214183005, + "mean_count": 1.325460204106251 + }, + "32": { + "distinct": 54454, + "total": 54939, + "repeat_frac": 0.011230637616265313, + "mean_count": 1.0089066000661109 + }, + "48": { + "distinct": 54744, + "total": 54939, + "repeat_frac": 0.004313875389067875, + "mean_count": 1.0035620341955283 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3851544883905174, + "logloss": 2.894702079552585, + "implied_hit": 0.09123688814595393 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.34493265890669755, + "logloss": 3.860536013363483, + "implied_hit": 0.09074158399275256 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3271375464684015, + "logloss": 4.2665286047614694, + "implied_hit": 0.09016357277600756 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3271375464684015, + "logloss": 4.2665286047614694, + "implied_hit": 0.09016357277600756 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3271375464684015, + "logloss": 4.2665286047614694, + "implied_hit": 0.09016357277600756 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3994149552075081, + "logloss": 2.5393147310969617, + "implied_hit": 0.09133699123701805 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3658967639709915, + "logloss": 2.8342292328828753, + "implied_hit": 0.09076980432592335 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3499908586751173, + "logloss": 2.9516449816688155, + "implied_hit": 0.09062895294410063 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3499908586751173, + "logloss": 2.9516449816688155, + "implied_hit": 0.09062895294410063 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3499908586751173, + "logloss": 2.9516449816688155, + "implied_hit": 0.09062895294410063 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.41050642939850085, + "logloss": 2.404292873395467, + "implied_hit": 0.09117091002970543 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.40045097202754587, + "logloss": 2.479138599784878, + "implied_hit": 0.09072778901406038 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3946005241026266, + "logloss": 2.506946141997216, + "implied_hit": 0.09081741009036004 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3946005241026266, + "logloss": 2.506946141997216, + "implied_hit": 0.09081741009036004 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3946005241026266, + "logloss": 2.506946141997216, + "implied_hit": 0.09081741009036004 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3824730330915961, + "logloss": 2.4987791014216776, + "implied_hit": 0.09045053785846391 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3141568651349869, + "logloss": 3.0168022572909825, + "implied_hit": 0.09162954113789448 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.31976354439636784, + "logloss": 3.0128332817748342, + "implied_hit": 0.09174577288378026 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3140959229691023, + "logloss": 3.0081966215290383, + "implied_hit": 0.09078337427649873 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3168992625997928, + "logloss": 3.000249595944721, + "implied_hit": 0.09056909593175505 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.31574136144798587, + "logloss": 3.0094431136186577, + "implied_hit": 0.09135136483823854 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3824730330915961, + "logloss": 2.4965635325897715, + "implied_hit": 0.0905630056256253 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3534645621305381, + "logloss": 2.6145474170037932, + "implied_hit": 0.09102202241402167 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.35492717411176794, + "logloss": 2.6182890007982307, + "implied_hit": 0.09114853224531218 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.35133158632457795, + "logloss": 2.6139552689088776, + "implied_hit": 0.09064571871946703 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.358218051069535, + "logloss": 2.608861530477974, + "implied_hit": 0.09078034221548324 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.353342677798769, + "logloss": 2.6131364720773798, + "implied_hit": 0.09113023900681858 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3825949174233652, + "logloss": 2.4975482642219133, + "implied_hit": 0.0908265366611092 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.38320433908221097, + "logloss": 2.5149104073835287, + "implied_hit": 0.0910748848922529 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.38107136327625085, + "logloss": 2.5214742526000262, + "implied_hit": 0.0912346944262035 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3814370162715583, + "logloss": 2.5163228475745614, + "implied_hit": 0.09090450765800681 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.38521543055640195, + "logloss": 2.513654498442964, + "implied_hit": 0.0911904316820471 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.38302151258455724, + "logloss": 2.515520608456028, + "implied_hit": 0.09130088446842737 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.36955329392406605, + "logloss": 2.5417470192489806, + "implied_hit": 0.09029112392626504 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.32896581144493875, + "logloss": 3.1451664757115876, + "implied_hit": 0.08852545654175722 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.28417331951977576, + "logloss": 4.190527704023151, + "implied_hit": 0.08757097720330202 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.2735693826558596, + "logloss": 4.585942928059276, + "implied_hit": 0.08810859343656037 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.2735693826558596, + "logloss": 4.585942928059276, + "implied_hit": 0.08810859343656037 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.2735693826558596, + "logloss": 4.585942928059276, + "implied_hit": 0.08810859343656037 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.36955329392406605, + "logloss": 2.539422086239596, + "implied_hit": 0.09028526610504627 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3395088061429703, + "logloss": 2.7556583723530172, + "implied_hit": 0.08904710586536282 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.30184654762630264, + "logloss": 3.072515140579894, + "implied_hit": 0.08784653453955156 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.29179109025534766, + "logloss": 3.189803190729736, + "implied_hit": 0.088007107062183 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.29179109025534766, + "logloss": 3.189803190729736, + "implied_hit": 0.088007107062183 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.29179109025534766, + "logloss": 3.189803190729736, + "implied_hit": 0.088007107062183 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.36961423608995064, + "logloss": 2.5385818105591476, + "implied_hit": 0.0903430086626056 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.36394661466268513, + "logloss": 2.6040358812344606, + "implied_hit": 0.08957783168861178 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.347735998537388, + "logloss": 2.685023239838224, + "implied_hit": 0.08835024481683522 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.34164178194893047, + "logloss": 2.713855105227641, + "implied_hit": 0.08818087108040196 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.34164178194893047, + "logloss": 2.713855105227641, + "implied_hit": 0.08818087108040196 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.34164178194893047, + "logloss": 2.713855105227641, + "implied_hit": 0.08818087108040196 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + }, + "4": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + }, + "8": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + }, + "16": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + }, + "32": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + }, + "48": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3649571776467235, + "implied_hit": 0.09028388409697195 + } + }, + "5.0": { + "1": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + }, + "4": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + }, + "8": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + }, + "16": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + }, + "32": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + }, + "48": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3651443248539623, + "implied_hit": 0.09036432535601605 + } + }, + "20.0": { + "1": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + }, + "4": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + }, + "8": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + }, + "16": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + }, + "32": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + }, + "48": { + "n": 16409, + "acc": 0.40916570174904016, + "logloss": 2.3681685453140493, + "implied_hit": 0.09059076957104405 + } + } + }, + "recurrence": { + "1": { + "distinct": 82, + "total": 54939, + "repeat_frac": 0.999981797994139, + "mean_count": 669.9878048780488 + }, + "4": { + "distinct": 11041, + "total": 54939, + "repeat_frac": 0.8905695407633921, + "mean_count": 4.975907979349697 + }, + "8": { + "distinct": 37297, + "total": 54939, + "repeat_frac": 0.40444857023243963, + "mean_count": 1.4730139153283106 + }, + "16": { + "distinct": 54162, + "total": 54939, + "repeat_frac": 0.020167822494038843, + "mean_count": 1.0143458513348842 + }, + "32": { + "distinct": 54754, + "total": 54939, + "repeat_frac": 0.004186461348040554, + "mean_count": 1.0033787485845782 + }, + "48": { + "distinct": 54772, + "total": 54939, + "repeat_frac": 0.0037678152132364987, + "mean_count": 1.0030490031402906 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3680297397769517, + "logloss": 3.055522452681472, + "implied_hit": 0.0880524956121138 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3432262782619294, + "logloss": 3.6085891376491865, + "implied_hit": 0.08613932835475069 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.34066670729477727, + "logloss": 3.6819329932502796, + "implied_hit": 0.08589919040297628 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.34066670729477727, + "logloss": 3.6819329932502796, + "implied_hit": 0.08589919040297628 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.34066670729477727, + "logloss": 3.6819329932502796, + "implied_hit": 0.08589919040297628 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.38765311719178497, + "logloss": 2.5457312507705527, + "implied_hit": 0.0892520871483964 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.36833445060637454, + "logloss": 2.6981735162167264, + "implied_hit": 0.08818221165155676 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.7193928945233186, + "implied_hit": 0.0880398001982128 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.7193928945233186, + "implied_hit": 0.0880398001982128 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.36662806996160646, + "logloss": 2.7193928945233186, + "implied_hit": 0.0880398001982128 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.41251752087269183, + "logloss": 2.3794224732397193, + "implied_hit": 0.0904130791621207 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.40471692363946615, + "logloss": 2.4130523830601684, + "implied_hit": 0.08994002771537303 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.4039856176488512, + "logloss": 2.4183330938950602, + "implied_hit": 0.08988098039890956 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.4039856176488512, + "logloss": 2.4183330938950602, + "implied_hit": 0.08988098039890956 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.4039856176488512, + "logloss": 2.4183330938950602, + "implied_hit": 0.08988098039890956 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3794868669632519, + "logloss": 2.5696388233977436, + "implied_hit": 0.09054683060656063 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3435309890913523, + "logloss": 2.7657824549653163, + "implied_hit": 0.09145643099134905 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3443232372478518, + "logloss": 2.761797362387033, + "implied_hit": 0.09113294029161734 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.34267779876896826, + "logloss": 2.7635522976808953, + "implied_hit": 0.09305566373865813 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3454201962337741, + "logloss": 2.755117621181621, + "implied_hit": 0.09067569919661304 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3462733865561582, + "logloss": 2.7613907891872986, + "implied_hit": 0.09088565624848137 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3794868669632519, + "logloss": 2.5253694111057507, + "implied_hit": 0.09092263497836285 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.36784691327929797, + "logloss": 2.563547306448912, + "implied_hit": 0.09141504836051473 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3692485830946432, + "logloss": 2.5573237462055043, + "implied_hit": 0.09111390401865425 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.36784691327929797, + "logloss": 2.5532332078725375, + "implied_hit": 0.0921032840296067 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3722347492229874, + "logloss": 2.5489938349455397, + "implied_hit": 0.09110512726011843 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3725394600524103, + "logloss": 2.552704871860373, + "implied_hit": 0.09152995444196126 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3849716618928637, + "logloss": 2.5153190269164996, + "implied_hit": 0.091388372031924 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.38454506673167166, + "logloss": 2.521594910221357, + "implied_hit": 0.09171993963179915 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.38454506673167166, + "logloss": 2.5166313914835055, + "implied_hit": 0.09144913155441857 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.38545919921994026, + "logloss": 2.510614901950264, + "implied_hit": 0.09179353762669677 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3871046376988238, + "logloss": 2.509075862993115, + "implied_hit": 0.09158719334790566 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3883234810165153, + "logloss": 2.5109750543079894, + "implied_hit": 0.0918934178757265 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3769272959960997, + "logloss": 2.5340062418593114, + "implied_hit": 0.08992461418743292 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3147662867938327, + "logloss": 3.3732411552212462, + "implied_hit": 0.0899922163518071 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.2874641964775428, + "logloss": 4.053378113091497, + "implied_hit": 0.09006590704044852 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.28618441099396674, + "logloss": 4.140825144613457, + "implied_hit": 0.09060256823719426 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.28618441099396674, + "logloss": 4.140825144613457, + "implied_hit": 0.09060256823719426 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.28618441099396674, + "logloss": 4.140825144613457, + "implied_hit": 0.09060256823719426 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.3769272959960997, + "logloss": 2.5217592971414393, + "implied_hit": 0.09005639750925735 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3310378450850143, + "logloss": 2.7987285452711244, + "implied_hit": 0.0903511671466491 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.3084283015418368, + "logloss": 2.9926841421014214, + "implied_hit": 0.09077536103747678 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.3067219208970687, + "logloss": 3.0184067620552515, + "implied_hit": 0.09108900763278954 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.3067219208970687, + "logloss": 3.0184067620552515, + "implied_hit": 0.09108900763278954 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.3067219208970687, + "logloss": 3.0184067620552515, + "implied_hit": 0.09108900763278954 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 16409, + "acc": 0.37784142848436836, + "logloss": 2.518317402190604, + "implied_hit": 0.090390108758129 + } + }, + "4": { + "window": { + "n": 16409, + "acc": 0.3644950941556463, + "logloss": 2.592777194563275, + "implied_hit": 0.09094214213649618 + } + }, + "8": { + "window": { + "n": 16409, + "acc": 0.35492717411176794, + "logloss": 2.638001414638213, + "implied_hit": 0.0915067397280706 + } + }, + "16": { + "window": { + "n": 16409, + "acc": 0.35395209945761474, + "logloss": 2.644422096203798, + "implied_hit": 0.09165336168196841 + } + }, + "32": { + "window": { + "n": 16409, + "acc": 0.35395209945761474, + "logloss": 2.644422096203798, + "implied_hit": 0.09165336168196841 + } + }, + "48": { + "window": { + "n": 16409, + "acc": 0.35395209945761474, + "logloss": 2.644422096203798, + "implied_hit": 0.09165336168196841 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + }, + "4": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + }, + "8": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + }, + "16": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + }, + "32": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + }, + "48": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.335449052219199, + "implied_hit": 0.09010661098969104 + } + }, + "5.0": { + "1": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + }, + "4": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + }, + "8": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + }, + "16": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + }, + "32": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + }, + "48": { + "n": 16409, + "acc": 0.41568651349868974, + "logloss": 2.3327441980494528, + "implied_hit": 0.09030566106525956 + } + }, + "20.0": { + "1": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + }, + "4": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + }, + "8": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + }, + "16": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + }, + "32": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + }, + "48": { + "n": 16409, + "acc": 0.41708818331403497, + "logloss": 2.3436130310240344, + "implied_hit": 0.09076294088891826 + } + } + }, + "recurrence": { + "1": { + "distinct": 373, + "total": 54939, + "repeat_frac": 0.9987076575838657, + "mean_count": 147.28954423592492 + }, + "4": { + "distinct": 24179, + "total": 54939, + "repeat_frac": 0.6852509146507945, + "mean_count": 2.2721783365730595 + }, + "8": { + "distinct": 49831, + "total": 54939, + "repeat_frac": 0.13547752962376453, + "mean_count": 1.1025064718749373 + }, + "16": { + "distinct": 54707, + "total": 54939, + "repeat_frac": 0.005060157629370757, + "mean_count": 1.0042407735755936 + }, + "32": { + "distinct": 54779, + "total": 54939, + "repeat_frac": 0.0038042192249585906, + "mean_count": 1.0029208273243395 + }, + "48": { + "distinct": 54789, + "total": 54939, + "repeat_frac": 0.0036039971604870857, + "mean_count": 1.002737775830915 + } + } + } + } + } + } + }, + "fly": { + "frame": "fly", + "seeds": { + "1": { + "majority": { + "top": 0, + "n": 2443, + "acc": 0.19279574293900942, + "logloss": 2.777953877693671, + "emp_hit": 0.11379451494064674, + "dist": { + "0": 0.19166812532819885, + "1": 0.14528268860493612, + "2": 0.12497812007701734, + "3": 0.10869945737791004, + "4": 0.11815158410642394, + "5": 0.13898127078592684, + "6": 0.1722387537195869 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.659178529524625, + "implied_hit": 0.10860422805861039 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2857142857142857, + "logloss": 3.0369970025546698, + "implied_hit": 0.10825817163238383 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.26811297584936555, + "logloss": 4.077292168563449, + "implied_hit": 0.10763764545802207 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2902169463774048, + "logloss": 5.071941474725014, + "implied_hit": 0.11431571895616532 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.4314367580843226, + "logloss": 2.8061718206315946, + "implied_hit": 0.11089279830109584 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658573369806688, + "implied_hit": 0.10863700490299845 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.28939828080229224, + "logloss": 2.7712415266935415, + "implied_hit": 0.10911257243451944 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2758902988129349, + "logloss": 3.077951279707856, + "implied_hit": 0.10848623324775561 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3004502660663119, + "logloss": 3.2571600866526556, + "implied_hit": 0.11224551392317264 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.43675808432255425, + "logloss": 1.965023042250348, + "implied_hit": 0.10899310447124577 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658112193897137, + "implied_hit": 0.10873814154169947 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2967662709783054, + "logloss": 2.669678639434161, + "implied_hit": 0.10968451111713082 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.29717560376586166, + "logloss": 2.7204086768811333, + "implied_hit": 0.10952455658479952 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.32419156774457636, + "logloss": 2.6276137172533325, + "implied_hit": 0.10900779541394826 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.43634875153499797, + "logloss": 1.741633967016806, + "implied_hit": 0.1060060943834703 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.659178529524625, + "implied_hit": 0.10860422805861039 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2717969709373721, + "logloss": 3.112886656173223, + "implied_hit": 0.11043138048909641 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.22922636103151864, + "logloss": 4.214412178714183, + "implied_hit": 0.10584535961398714 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.24846500204666394, + "logloss": 4.178123150616681, + "implied_hit": 0.10598423309996344 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.36512484650020466, + "logloss": 2.7887693131586104, + "implied_hit": 0.1050607989553861 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658573369806688, + "implied_hit": 0.10863700490299845 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2738436348751535, + "logloss": 2.815682845439499, + "implied_hit": 0.11048858585097718 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.23536635284486288, + "logloss": 3.1266401772369052, + "implied_hit": 0.10691300689003314 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.26606631191158414, + "logloss": 3.012097940323009, + "implied_hit": 0.10691912420580961 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.38027015963978716, + "logloss": 2.314632408026504, + "implied_hit": 0.10486374303729068 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658112193897137, + "implied_hit": 0.10873814154169947 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.28939828080229224, + "logloss": 2.7057609486607483, + "implied_hit": 0.11108690875445135 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.26238231682357754, + "logloss": 2.7649979532421156, + "implied_hit": 0.10897235720565104 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.29512893982808025, + "logloss": 2.6489455452704243, + "implied_hit": 0.10794847164565766 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3790421612771183, + "logloss": 2.2435898987847063, + "implied_hit": 0.10613947552566355 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.659178529524625, + "implied_hit": 0.10860422805861039 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.28939828080229224, + "logloss": 3.0595356648405807, + "implied_hit": 0.10789396024211366 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.25501432664756446, + "logloss": 4.14081476607871, + "implied_hit": 0.10961941154714468 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2517396643471142, + "logloss": 5.069976093994158, + "implied_hit": 0.10714402431501201 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.2517396643471142, + "logloss": 5.069976093994158, + "implied_hit": 0.10714402431501201 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658573369806688, + "implied_hit": 0.10863700490299845 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.29103561195251737, + "logloss": 2.795271058242502, + "implied_hit": 0.10993433139635622 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2566516577977896, + "logloss": 3.1317440053450913, + "implied_hit": 0.11267850417871414 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.25542365943512074, + "logloss": 3.3975959792879493, + "implied_hit": 0.11060874938920415 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.25542365943512074, + "logloss": 3.3975959792879493, + "implied_hit": 0.11060874938920415 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658112193897137, + "implied_hit": 0.10873814154169947 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.3004502660663119, + "logloss": 2.6971398192858627, + "implied_hit": 0.11147690702892336 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.27752762996316005, + "logloss": 2.7783216708966667, + "implied_hit": 0.11383783562280107 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2742529676627098, + "logloss": 2.831563957573235, + "implied_hit": 0.11315429023353722 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.2742529676627098, + "logloss": 2.831563957573235, + "implied_hit": 0.11315429023353722 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.659178529524625, + "implied_hit": 0.10860422805861039 + }, + "4": { + "n": 2443, + "acc": 0.30659025787965616, + "logloss": 2.6309978942053003, + "implied_hit": 0.10833107494316917 + }, + "8": { + "n": 2443, + "acc": 0.30904625460499385, + "logloss": 2.5804427150386973, + "implied_hit": 0.10891867874517143 + }, + "16": { + "n": 2443, + "acc": 0.3417928776094965, + "logloss": 2.413548421875746, + "implied_hit": 0.10968324521604854 + }, + "32": { + "n": 2443, + "acc": 0.41915677445763405, + "logloss": 1.8303377708728124, + "implied_hit": 0.10601533133475864 + } + }, + "5.0": { + "1": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658573369806688, + "implied_hit": 0.10863700490299845 + }, + "4": { + "n": 2443, + "acc": 0.30659025787965616, + "logloss": 2.6303623124136015, + "implied_hit": 0.10838920199146625 + }, + "8": { + "n": 2443, + "acc": 0.30904625460499385, + "logloss": 2.579124948998741, + "implied_hit": 0.1089871716046766 + }, + "16": { + "n": 2443, + "acc": 0.3417928776094965, + "logloss": 2.412367862144201, + "implied_hit": 0.10981568550648795 + }, + "32": { + "n": 2443, + "acc": 0.41915677445763405, + "logloss": 1.8348492311040239, + "implied_hit": 0.10573564818224163 + } + }, + "20.0": { + "1": { + "n": 2443, + "acc": 0.3029062627916496, + "logloss": 2.658112193897137, + "implied_hit": 0.10873814154169947 + }, + "4": { + "n": 2443, + "acc": 0.30659025787965616, + "logloss": 2.630039899067991, + "implied_hit": 0.10857277340670807 + }, + "8": { + "n": 2443, + "acc": 0.30904625460499385, + "logloss": 2.577331441597484, + "implied_hit": 0.1092074355043808 + }, + "16": { + "n": 2443, + "acc": 0.3417928776094965, + "logloss": 2.417083724532841, + "implied_hit": 0.11021622636301445 + }, + "32": { + "n": 2443, + "acc": 0.41915677445763405, + "logloss": 1.85452504442004, + "implied_hit": 0.10481988139773037 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 509.75 + }, + "4": { + "distinct": 872, + "total": 8156, + "repeat_frac": 0.9536537518391368, + "mean_count": 9.353211009174313 + }, + "8": { + "distinct": 3557, + "total": 8156, + "repeat_frac": 0.6649092692496321, + "mean_count": 2.2929434917064944 + }, + "16": { + "distinct": 7389, + "total": 8156, + "repeat_frac": 0.13290828837665522, + "mean_count": 1.103802950331574 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.692928139997624, + "implied_hit": 0.10970282732287208 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.25542365943512074, + "logloss": 3.5271784829040986, + "implied_hit": 0.10562004978003156 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.26238231682357754, + "logloss": 4.433598892834366, + "implied_hit": 0.1135789232295289 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3250102333196889, + "logloss": 3.5931848856441775, + "implied_hit": 0.10786480519193213 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.5472779369627507, + "logloss": 1.8565824877937152, + "implied_hit": 0.10182446543767112 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.6809441410856527, + "implied_hit": 0.10972250977058935 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.261563651248465, + "logloss": 2.8933237302735275, + "implied_hit": 0.10600805076377896 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.27548096602537864, + "logloss": 3.090706682329863, + "implied_hit": 0.11279646152231146 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3417928776094965, + "logloss": 2.614763952919323, + "implied_hit": 0.10833376792273824 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.5513712648383136, + "logloss": 1.4204818852747778, + "implied_hit": 0.10336430284058169 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2984036021285305, + "logloss": 2.6723510457899255, + "implied_hit": 0.10957645484615003 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2881702824396234, + "logloss": 2.6855444608504335, + "implied_hit": 0.1072583580900482 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2939009414654114, + "logloss": 2.65592708341208, + "implied_hit": 0.11157285997815497 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3524355300859599, + "logloss": 2.3453042981533847, + "implied_hit": 0.10655518492329241 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.5571019238641015, + "logloss": 1.38325207943399, + "implied_hit": 0.10535760795132136 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.692928139997624, + "implied_hit": 0.10970282732287208 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.24068767908309455, + "logloss": 3.654025444548731, + "implied_hit": 0.10645470498669748 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.25092099877200164, + "logloss": 3.8475786012443653, + "implied_hit": 0.112880628728615 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.28489562013917313, + "logloss": 3.109651023731492, + "implied_hit": 0.1137579195672351 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3716741711011052, + "logloss": 2.3873816469295885, + "implied_hit": 0.11058342118295184 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.6809441410856527, + "implied_hit": 0.10972250977058935 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.24887433483422022, + "logloss": 2.9506573180750055, + "implied_hit": 0.10812278656119131 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.258698321735571, + "logloss": 2.962112590738219, + "implied_hit": 0.11193385948961895 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2934916086778551, + "logloss": 2.6727991517728142, + "implied_hit": 0.11296419664955898 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3765861645517806, + "logloss": 2.262311667329, + "implied_hit": 0.11009630664032698 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2984036021285305, + "logloss": 2.6723510457899255, + "implied_hit": 0.10957645484615003 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2767089643880475, + "logloss": 2.72219750920691, + "implied_hit": 0.10964989599570447 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2808022922636103, + "logloss": 2.6927525785204236, + "implied_hit": 0.11114477922808028 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.31191158411788783, + "logloss": 2.589412816712354, + "implied_hit": 0.11200734297878283 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3765861645517806, + "logloss": 2.336293194449424, + "implied_hit": 0.10918036432526497 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.692928139997624, + "implied_hit": 0.10970282732287208 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.25010233319688907, + "logloss": 3.6671996444069412, + "implied_hit": 0.10848169949319017 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.23086369218174377, + "logloss": 4.560905789515452, + "implied_hit": 0.11110670997945292 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2271796970937372, + "logloss": 4.796805474058868, + "implied_hit": 0.11145215099800299 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.2271796970937372, + "logloss": 4.796805474058868, + "implied_hit": 0.11145215099800299 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.6809441410856527, + "implied_hit": 0.10972250977058935 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.25501432664756446, + "logloss": 2.982416038333275, + "implied_hit": 0.10893238251721875 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.237003683995088, + "logloss": 3.240186277016057, + "implied_hit": 0.11101418730329066 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.23291035611952518, + "logloss": 3.303670795491192, + "implied_hit": 0.11166090865706382 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.23291035611952518, + "logloss": 3.303670795491192, + "implied_hit": 0.11166090865706382 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2984036021285305, + "logloss": 2.6723510457899255, + "implied_hit": 0.10957645484615003 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.27097830536225953, + "logloss": 2.744273721855552, + "implied_hit": 0.11006443984185658 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2541956610724519, + "logloss": 2.8036890360125715, + "implied_hit": 0.11115343544230871 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2521489971346705, + "logloss": 2.817326141619351, + "implied_hit": 0.11158381479237019 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.2521489971346705, + "logloss": 2.817326141619351, + "implied_hit": 0.11158381479237019 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.692928139997624, + "implied_hit": 0.10970282732287208 + }, + "4": { + "n": 2443, + "acc": 0.30167826442898077, + "logloss": 2.6421518180579153, + "implied_hit": 0.10822181899910757 + }, + "8": { + "n": 2443, + "acc": 0.3172329103561195, + "logloss": 2.539267165769724, + "implied_hit": 0.10911383436112347 + }, + "16": { + "n": 2443, + "acc": 0.3683995088006549, + "logloss": 2.3087850511396155, + "implied_hit": 0.10737381802250326 + }, + "32": { + "n": 2443, + "acc": 0.5264019647973802, + "logloss": 1.386830402696545, + "implied_hit": 0.1105806482243735 + } + }, + "5.0": { + "1": { + "n": 2443, + "acc": 0.2963569381907491, + "logloss": 2.6809441410856527, + "implied_hit": 0.10972250977058935 + }, + "4": { + "n": 2443, + "acc": 0.30167826442898077, + "logloss": 2.6255571994756512, + "implied_hit": 0.10847644059687972 + }, + "8": { + "n": 2443, + "acc": 0.3172329103561195, + "logloss": 2.531289666934786, + "implied_hit": 0.10932099149286464 + }, + "16": { + "n": 2443, + "acc": 0.3683995088006549, + "logloss": 2.301501848214764, + "implied_hit": 0.10733343018664931 + }, + "32": { + "n": 2443, + "acc": 0.5264019647973802, + "logloss": 1.4195852487077427, + "implied_hit": 0.1101547220789677 + } + }, + "20.0": { + "1": { + "n": 2443, + "acc": 0.2984036021285305, + "logloss": 2.6723510457899255, + "implied_hit": 0.10957645484615003 + }, + "4": { + "n": 2443, + "acc": 0.30208759721653705, + "logloss": 2.6250649963560058, + "implied_hit": 0.10887454735099895 + }, + "8": { + "n": 2443, + "acc": 0.3172329103561195, + "logloss": 2.5390022216492962, + "implied_hit": 0.10995491411080999 + }, + "16": { + "n": 2443, + "acc": 0.36758084322554235, + "logloss": 2.3360809995807217, + "implied_hit": 0.1074797716854372 + }, + "32": { + "n": 2443, + "acc": 0.5264019647973802, + "logloss": 1.5343825532297128, + "implied_hit": 0.10848496524207436 + } + } + }, + "recurrence": { + "1": { + "distinct": 81, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 100.69135802469135 + }, + "4": { + "distinct": 3383, + "total": 8156, + "repeat_frac": 0.7143207454634625, + "mean_count": 2.410877919006799 + }, + "8": { + "distinct": 6857, + "total": 8156, + "repeat_frac": 0.22633643943109366, + "mean_count": 1.1894414466968062 + }, + "16": { + "distinct": 8140, + "total": 8156, + "repeat_frac": 0.0038008827856792545, + "mean_count": 1.001965601965602 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.7868750927770125, + "implied_hit": 0.1087717649008202 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.27056897257470325, + "logloss": 3.6934077286011124, + "implied_hit": 0.10468990114276587 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2652476463364716, + "logloss": 4.051124756838465, + "implied_hit": 0.10615188364476374 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.32705689725747034, + "logloss": 3.5279181619854194, + "implied_hit": 0.10773255614809654 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.605403192795743, + "logloss": 1.4049138708308528, + "implied_hit": 0.10969915907781065 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.708357631303936, + "implied_hit": 0.10926301600061901 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.27711829717560377, + "logloss": 2.9354703034351597, + "implied_hit": 0.10959666923866199 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.27097830536225953, + "logloss": 2.9554101842190854, + "implied_hit": 0.11110858709457688 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3368808841588211, + "logloss": 2.6267837312943647, + "implied_hit": 0.1101646272436242 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.6115431846090872, + "logloss": 1.2339336598445665, + "implied_hit": 0.10545630797014806 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.280392959476054, + "logloss": 2.680337015862923, + "implied_hit": 0.10950311159492393 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.29185427752763, + "logloss": 2.6983469358230434, + "implied_hit": 0.11137897679631106 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.28243962341383544, + "logloss": 2.6638083045637755, + "implied_hit": 0.11314573790967329 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3593941874744167, + "logloss": 2.4485719474476273, + "implied_hit": 0.11094040370264972 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.6119525173966435, + "logloss": 1.3887893495017578, + "implied_hit": 0.10004194322329486 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.7868750927770125, + "implied_hit": 0.1087717649008202 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.24600900532132625, + "logloss": 3.628875127257783, + "implied_hit": 0.11037299864952015 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.25542365943512074, + "logloss": 3.3906777129643633, + "implied_hit": 0.10921791458217513 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.2992222677036431, + "logloss": 2.954126821905038, + "implied_hit": 0.10719612122228277 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.38108882521489973, + "logloss": 2.547350639005657, + "implied_hit": 0.11528519609236322 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.708357631303936, + "implied_hit": 0.10926301600061901 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.25706099058534587, + "logloss": 2.9125388861108368, + "implied_hit": 0.11211361758549468 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2632009823986901, + "logloss": 2.826825397449607, + "implied_hit": 0.10981775017199624 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.3061809250920999, + "logloss": 2.6449283236098586, + "implied_hit": 0.10878125913821096 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3823168235775686, + "logloss": 2.3888118164501644, + "implied_hit": 0.11245587784277244 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.280392959476054, + "logloss": 2.680337015862923, + "implied_hit": 0.10950311159492393 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.704875902016683, + "implied_hit": 0.11125924337329411 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.28243962341383544, + "logloss": 2.680854189247916, + "implied_hit": 0.11012695752716535 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.30904625460499385, + "logloss": 2.6173413732441193, + "implied_hit": 0.10918177858818656 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.3839541547277937, + "logloss": 2.494121864300632, + "implied_hit": 0.10998629031388608 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.7868750927770125, + "implied_hit": 0.1087717649008202 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2345476872697503, + "logloss": 3.8801052201128816, + "implied_hit": 0.10848658636119718 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.2251330331559558, + "logloss": 4.239287613624826, + "implied_hit": 0.10846661184938504 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.22431436758084322, + "logloss": 4.255666116646992, + "implied_hit": 0.10866776028036838 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.22431436758084322, + "logloss": 4.255666116646992, + "implied_hit": 0.10866776028036838 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.708357631303936, + "implied_hit": 0.10926301600061901 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.24355300859598855, + "logloss": 3.0297878725156115, + "implied_hit": 0.11006070767313714 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.23577568563241916, + "logloss": 3.122878580781518, + "implied_hit": 0.1101321320495482 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.23536635284486288, + "logloss": 3.1266735744463605, + "implied_hit": 0.11031940380283879 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.23536635284486288, + "logloss": 3.1266735744463605, + "implied_hit": 0.11031940380283879 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2443, + "acc": 0.280392959476054, + "logloss": 2.680337015862923, + "implied_hit": 0.10950311159492393 + } + }, + "4": { + "window": { + "n": 2443, + "acc": 0.2627916496111338, + "logloss": 2.7477562127679147, + "implied_hit": 0.11010467350477032 + } + }, + "8": { + "window": { + "n": 2443, + "acc": 0.25787965616045844, + "logloss": 2.7665138061116314, + "implied_hit": 0.11021310640427899 + } + }, + "16": { + "window": { + "n": 2443, + "acc": 0.25747032337290215, + "logloss": 2.767154141407339, + "implied_hit": 0.11030145174872565 + } + }, + "32": { + "window": { + "n": 2443, + "acc": 0.25747032337290215, + "logloss": 2.767154141407339, + "implied_hit": 0.11030145174872565 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.7868750927770125, + "implied_hit": 0.1087717649008202 + }, + "4": { + "n": 2443, + "acc": 0.30495292672943103, + "logloss": 2.723070685683602, + "implied_hit": 0.1103811097167744 + }, + "8": { + "n": 2443, + "acc": 0.29308227589029884, + "logloss": 2.7679832491583443, + "implied_hit": 0.1121098303876429 + }, + "16": { + "n": 2443, + "acc": 0.36717151043798607, + "logloss": 2.4967677109511706, + "implied_hit": 0.10970649763507434 + }, + "32": { + "n": 2443, + "acc": 0.6123618501841998, + "logloss": 1.201001732124881, + "implied_hit": 0.10496434036467775 + } + }, + "5.0": { + "1": { + "n": 2443, + "acc": 0.2787556283258289, + "logloss": 2.708357631303936, + "implied_hit": 0.10926301600061901 + }, + "4": { + "n": 2443, + "acc": 0.30495292672943103, + "logloss": 2.653711922237142, + "implied_hit": 0.11068990975993037 + }, + "8": { + "n": 2443, + "acc": 0.29308227589029884, + "logloss": 2.6272176665103126, + "implied_hit": 0.11233706542805569 + }, + "16": { + "n": 2443, + "acc": 0.36717151043798607, + "logloss": 2.395437584505859, + "implied_hit": 0.11028049386258504 + }, + "32": { + "n": 2443, + "acc": 0.6123618501841998, + "logloss": 1.2890890760272864, + "implied_hit": 0.1029036304832753 + } + }, + "20.0": { + "1": { + "n": 2443, + "acc": 0.280392959476054, + "logloss": 2.680337015862923, + "implied_hit": 0.10950311159492393 + }, + "4": { + "n": 2443, + "acc": 0.30454359394187475, + "logloss": 2.6412166318433554, + "implied_hit": 0.11052176358998811 + }, + "8": { + "n": 2443, + "acc": 0.29717560376586166, + "logloss": 2.625166454985761, + "implied_hit": 0.11167615165533686 + }, + "16": { + "n": 2443, + "acc": 0.3683995088006549, + "logloss": 2.4653806267910072, + "implied_hit": 0.11050085956652057 + }, + "32": { + "n": 2443, + "acc": 0.6115431846090872, + "logloss": 1.5466496382319943, + "implied_hit": 0.09995477729557802 + } + } + }, + "recurrence": { + "1": { + "distinct": 252, + "total": 8156, + "repeat_frac": 0.9995095635115253, + "mean_count": 32.36507936507937 + }, + "4": { + "distinct": 5368, + "total": 8156, + "repeat_frac": 0.46542422756253066, + "mean_count": 1.5193740685543964 + }, + "8": { + "distinct": 7983, + "total": 8156, + "repeat_frac": 0.03715056400196175, + "mean_count": 1.0216710509833395 + }, + "16": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + } + } + }, + "2": { + "majority": { + "top": 0, + "n": 2528, + "acc": 0.19818037974683544, + "logloss": 2.783381257279695, + "emp_hit": 0.10205696202531646, + "dist": { + "0": 0.1892324093816631, + "1": 0.1377043354655295, + "2": 0.12242359630419332, + "3": 0.11389481165600569, + "4": 0.11798152096659559, + "5": 0.13557213930348258, + "6": 0.1831911869225302 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.670134571683586, + "implied_hit": 0.11354346984086831 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.26938291139240506, + "logloss": 3.075741264688104, + "implied_hit": 0.11668022361340648 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2666139240506329, + "logloss": 3.9933550216064586, + "implied_hit": 0.11388975897319513 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.2998417721518987, + "logloss": 4.799050203983804, + "implied_hit": 0.11394200547000219 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.43552215189873417, + "logloss": 2.8265093029443293, + "implied_hit": 0.10640326441705884 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6694760394921464, + "implied_hit": 0.11357790811539334 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2709651898734177, + "logloss": 2.7834848275307404, + "implied_hit": 0.11581113392461172 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.27729430379746833, + "logloss": 3.0233844095833757, + "implied_hit": 0.11405569218263523 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.30933544303797467, + "logloss": 3.1154974074456123, + "implied_hit": 0.11316084733727914 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.43829113924050633, + "logloss": 2.002902971128512, + "implied_hit": 0.10503304027790697 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.668934042898518, + "implied_hit": 0.11368409838069021 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.283623417721519, + "logloss": 2.6761282081826634, + "implied_hit": 0.11440468184484402 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.29667721518987344, + "logloss": 2.679074733137694, + "implied_hit": 0.11523197040409264 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.3303006329113924, + "logloss": 2.5513602446439267, + "implied_hit": 0.11268738229089993 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.43710443037974683, + "logloss": 1.782887973647614, + "implied_hit": 0.10429164833172769 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.670134571683586, + "implied_hit": 0.11354346984086831 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2662183544303797, + "logloss": 3.103060072325212, + "implied_hit": 0.11134096442394215 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.23259493670886075, + "logloss": 4.254869004434564, + "implied_hit": 0.12082419044587428 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.25079113924050633, + "logloss": 4.1182612194259915, + "implied_hit": 0.11471875094824315 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.33425632911392406, + "logloss": 2.8984379727988636, + "implied_hit": 0.11269079234006647 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6694760394921464, + "implied_hit": 0.11357790811539334 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2713607594936709, + "logloss": 2.8002735035272512, + "implied_hit": 0.11216419681461362 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.23971518987341772, + "logloss": 3.121348960724508, + "implied_hit": 0.1193443937001075 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.26582278481012656, + "logloss": 3.003641411955119, + "implied_hit": 0.11457804548759742 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.346123417721519, + "logloss": 2.3832645514626103, + "implied_hit": 0.11217624174304265 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.668934042898518, + "implied_hit": 0.11368409838069021 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.283623417721519, + "logloss": 2.691678929244209, + "implied_hit": 0.11338786228295354 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2602848101265823, + "logloss": 2.743061540653884, + "implied_hit": 0.1184568471962586 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.29193037974683544, + "logloss": 2.656529024978752, + "implied_hit": 0.11369394736760075 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.34810126582278483, + "logloss": 2.285159509762721, + "implied_hit": 0.11268915340510051 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.670134571683586, + "implied_hit": 0.11354346984086831 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.27175632911392406, + "logloss": 3.0770363664680733, + "implied_hit": 0.11483962510363185 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.25158227848101267, + "logloss": 4.123292519108479, + "implied_hit": 0.11467767938739533 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.24604430379746836, + "logloss": 4.9424077944329525, + "implied_hit": 0.11334515844246938 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.24604430379746836, + "logloss": 4.9424077944329525, + "implied_hit": 0.11334515844246938 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6694760394921464, + "implied_hit": 0.11357790811539334 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.27848101265822783, + "logloss": 2.7977097161279345, + "implied_hit": 0.11485842464675185 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.25830696202531644, + "logloss": 3.107261400316202, + "implied_hit": 0.11568081176289258 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.25316455696202533, + "logloss": 3.335124229879405, + "implied_hit": 0.11467207873867682 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.25316455696202533, + "logloss": 3.335124229879405, + "implied_hit": 0.11467207873867682 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.668934042898518, + "implied_hit": 0.11368409838069021 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.28283227848101267, + "logloss": 2.693251156565477, + "implied_hit": 0.1152392288812124 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2757120253164557, + "logloss": 2.7542000550173578, + "implied_hit": 0.11627163565238544 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.2701740506329114, + "logloss": 2.7964882498481995, + "implied_hit": 0.1160892358225373 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.2701740506329114, + "logloss": 2.7964882498481995, + "implied_hit": 0.1160892358225373 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.670134571683586, + "implied_hit": 0.11354346984086831 + }, + "4": { + "n": 2528, + "acc": 0.28520569620253167, + "logloss": 2.652012981260352, + "implied_hit": 0.11365292912032053 + }, + "8": { + "n": 2528, + "acc": 0.2998417721518987, + "logloss": 2.559043896901819, + "implied_hit": 0.11262692526041744 + }, + "16": { + "n": 2528, + "acc": 0.34375, + "logloss": 2.389249391033772, + "implied_hit": 0.11298036555154681 + }, + "32": { + "n": 2528, + "acc": 0.41218354430379744, + "logloss": 1.833349970342061, + "implied_hit": 0.10911115190750632 + } + }, + "5.0": { + "1": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6694760394921464, + "implied_hit": 0.11357790811539334 + }, + "4": { + "n": 2528, + "acc": 0.28520569620253167, + "logloss": 2.651267240170969, + "implied_hit": 0.11375054585385652 + }, + "8": { + "n": 2528, + "acc": 0.2998417721518987, + "logloss": 2.5583543133571687, + "implied_hit": 0.11272198297545807 + }, + "16": { + "n": 2528, + "acc": 0.34375, + "logloss": 2.3911114762664063, + "implied_hit": 0.11329497195108372 + }, + "32": { + "n": 2528, + "acc": 0.41218354430379744, + "logloss": 1.8385751832885198, + "implied_hit": 0.1088080914717865 + } + }, + "20.0": { + "1": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.668934042898518, + "implied_hit": 0.11368409838069021 + }, + "4": { + "n": 2528, + "acc": 0.28520569620253167, + "logloss": 2.650399883532649, + "implied_hit": 0.11405975721039535 + }, + "8": { + "n": 2528, + "acc": 0.2998417721518987, + "logloss": 2.558898113707389, + "implied_hit": 0.11303736377523091 + }, + "16": { + "n": 2528, + "acc": 0.34098101265822783, + "logloss": 2.4023767186699425, + "implied_hit": 0.11419885269295119 + }, + "32": { + "n": 2528, + "acc": 0.41218354430379744, + "logloss": 1.8600910977284373, + "implied_hit": 0.10782261732539032 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 509.75 + }, + "4": { + "distinct": 867, + "total": 8156, + "repeat_frac": 0.9541441883276116, + "mean_count": 9.407151095732411 + }, + "8": { + "distinct": 3548, + "total": 8156, + "repeat_frac": 0.6655223148602256, + "mean_count": 2.298759864712514 + }, + "16": { + "distinct": 7397, + "total": 8156, + "repeat_frac": 0.13082393330063757, + "mean_count": 1.1026091658780586 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.688978208448129, + "implied_hit": 0.1133545103462556 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2622626582278481, + "logloss": 3.4989270776309493, + "implied_hit": 0.10888828327691032 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2745253164556962, + "logloss": 4.222618429689098, + "implied_hit": 0.1051748755588073 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.307753164556962, + "logloss": 3.6659612194080045, + "implied_hit": 0.11826161356181306 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.5308544303797469, + "logloss": 1.947281729263782, + "implied_hit": 0.10205268338255132 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.6764734997757813, + "implied_hit": 0.11353284088983413 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.26938291139240506, + "logloss": 2.8635083752180805, + "implied_hit": 0.1101945415472146 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.28164556962025317, + "logloss": 2.9855908429120395, + "implied_hit": 0.10869389077747392 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.32555379746835444, + "logloss": 2.679477706283716, + "implied_hit": 0.11541004531787236 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.5356012658227848, + "logloss": 1.486375026208712, + "implied_hit": 0.10293262497574995 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6699470138665076, + "implied_hit": 0.11388882322084892 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.29074367088607594, + "logloss": 2.6635695952640432, + "implied_hit": 0.1120905285525985 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2911392405063291, + "logloss": 2.6066631578414436, + "implied_hit": 0.1120299590853973 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.348496835443038, + "logloss": 2.391234309181157, + "implied_hit": 0.11200878322060509 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.5166139240506329, + "logloss": 1.4338529385737544, + "implied_hit": 0.10515551341585955 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.688978208448129, + "implied_hit": 0.1133545103462556 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.23931962025316456, + "logloss": 3.5809531053332506, + "implied_hit": 0.1153303938695318 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.25079113924050633, + "logloss": 3.771201726270105, + "implied_hit": 0.1182254000242217 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.28955696202531644, + "logloss": 3.09012157497281, + "implied_hit": 0.11479225612830725 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.3639240506329114, + "logloss": 2.4360953904927927, + "implied_hit": 0.11788079199964178 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.6764734997757813, + "implied_hit": 0.11353284088983413 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.24485759493670886, + "logloss": 2.899378176690237, + "implied_hit": 0.11443598574085645 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2567246835443038, + "logloss": 2.9370723242546424, + "implied_hit": 0.1163483906130638 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.2998417721518987, + "logloss": 2.6628677698766463, + "implied_hit": 0.11498453468709131 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.3714398734177215, + "logloss": 2.280535068808288, + "implied_hit": 0.11637470958027972 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6699470138665076, + "implied_hit": 0.11388882322084892 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2733386075949367, + "logloss": 2.693214340880241, + "implied_hit": 0.11428542044882245 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.27808544303797467, + "logloss": 2.687400829997024, + "implied_hit": 0.11587999851775728 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.307753164556962, + "logloss": 2.5839356268717992, + "implied_hit": 0.11520533197018565 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.377373417721519, + "logloss": 2.3439169956800443, + "implied_hit": 0.11452668901065063 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.688978208448129, + "implied_hit": 0.1133545103462556 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.25039556962025317, + "logloss": 3.6106406506449518, + "implied_hit": 0.11028361987599652 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.24406645569620253, + "logloss": 4.3645004615259255, + "implied_hit": 0.10883688022186011 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.24287974683544303, + "logloss": 4.570613262912001, + "implied_hit": 0.11060384049718992 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.24287974683544303, + "logloss": 4.570613262912001, + "implied_hit": 0.11060384049718992 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.6764734997757813, + "implied_hit": 0.11353284088983413 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2610759493670886, + "logloss": 2.9378048645804373, + "implied_hit": 0.11179452634037314 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2579113924050633, + "logloss": 3.1377923149535625, + "implied_hit": 0.11167378599841456 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.25593354430379744, + "logloss": 3.1947789032151572, + "implied_hit": 0.11268407684111564 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.25593354430379744, + "logloss": 3.1947789032151572, + "implied_hit": 0.11268407684111564 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6699470138665076, + "implied_hit": 0.11388882322084892 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2650316455696203, + "logloss": 2.7192101220638647, + "implied_hit": 0.11321595139722244 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2634493670886076, + "logloss": 2.7566901986956207, + "implied_hit": 0.11364202568975135 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.2626582278481013, + "logloss": 2.7693915475524835, + "implied_hit": 0.11418351339283918 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.2626582278481013, + "logloss": 2.7693915475524835, + "implied_hit": 0.11418351339283918 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.688978208448129, + "implied_hit": 0.1133545103462556 + }, + "4": { + "n": 2528, + "acc": 0.28837025316455694, + "logloss": 2.6345968282132928, + "implied_hit": 0.11386311629902826 + }, + "8": { + "n": 2528, + "acc": 0.314873417721519, + "logloss": 2.5334829604770124, + "implied_hit": 0.11146293660195197 + }, + "16": { + "n": 2528, + "acc": 0.35957278481012656, + "logloss": 2.352762921436571, + "implied_hit": 0.11219566109071345 + }, + "32": { + "n": 2528, + "acc": 0.5185917721518988, + "logloss": 1.41761010279781, + "implied_hit": 0.10828649045976955 + } + }, + "5.0": { + "1": { + "n": 2528, + "acc": 0.2800632911392405, + "logloss": 2.6764734997757813, + "implied_hit": 0.11353284088983413 + }, + "4": { + "n": 2528, + "acc": 0.28837025316455694, + "logloss": 2.623652716681516, + "implied_hit": 0.11394289618022443 + }, + "8": { + "n": 2528, + "acc": 0.314873417721519, + "logloss": 2.5224074581948046, + "implied_hit": 0.1123387176832028 + }, + "16": { + "n": 2528, + "acc": 0.35957278481012656, + "logloss": 2.335272194090651, + "implied_hit": 0.11204564317217297 + }, + "32": { + "n": 2528, + "acc": 0.5185917721518988, + "logloss": 1.4453935607559794, + "implied_hit": 0.10841037849337044 + } + }, + "20.0": { + "1": { + "n": 2528, + "acc": 0.28085443037974683, + "logloss": 2.6699470138665076, + "implied_hit": 0.11388882322084892 + }, + "4": { + "n": 2528, + "acc": 0.2887658227848101, + "logloss": 2.6255556413955645, + "implied_hit": 0.11424990986472708 + }, + "8": { + "n": 2528, + "acc": 0.317246835443038, + "logloss": 2.5336134582090515, + "implied_hit": 0.11375438874504408 + }, + "16": { + "n": 2528, + "acc": 0.3583860759493671, + "logloss": 2.360543835104875, + "implied_hit": 0.11227973894488402 + }, + "32": { + "n": 2528, + "acc": 0.5166139240506329, + "logloss": 1.56011967078932, + "implied_hit": 0.1083104263801779 + } + } + }, + "recurrence": { + "1": { + "distinct": 81, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 100.69135802469135 + }, + "4": { + "distinct": 3398, + "total": 8156, + "repeat_frac": 0.7122363903874448, + "mean_count": 2.400235432607416 + }, + "8": { + "distinct": 6868, + "total": 8156, + "repeat_frac": 0.22412947523295734, + "mean_count": 1.1875364006988933 + }, + "16": { + "distinct": 8140, + "total": 8156, + "repeat_frac": 0.0038008827856792545, + "mean_count": 1.001965601965602 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.7993227579010074, + "implied_hit": 0.11552160879347524 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.25593354430379744, + "logloss": 3.6638643678335905, + "implied_hit": 0.11638738885370371 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2689873417721519, + "logloss": 3.9878572228700255, + "implied_hit": 0.12646711480414924 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.3322784810126582, + "logloss": 3.430793333029778, + "implied_hit": 0.11819074089967194 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.59375, + "logloss": 1.5110775211289635, + "implied_hit": 0.11364400363325411 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.702829512094283, + "implied_hit": 0.11607689192093866 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2685917721518987, + "logloss": 2.901724006095957, + "implied_hit": 0.11543839979623914 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2721518987341772, + "logloss": 2.905351032089308, + "implied_hit": 0.1265058192273323 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.34216772151898733, + "logloss": 2.585337122559769, + "implied_hit": 0.11833253493366665 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.5949367088607594, + "logloss": 1.2918605341581817, + "implied_hit": 0.1106215496451428 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.27848101265822783, + "logloss": 2.671829588019427, + "implied_hit": 0.1159451658354225 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.27610759493670883, + "logloss": 2.6723705691197126, + "implied_hit": 0.11550507979405464 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2911392405063291, + "logloss": 2.6385483737167483, + "implied_hit": 0.12430914110359821 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.35561708860759494, + "logloss": 2.4435392728128993, + "implied_hit": 0.11730757028840098 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.5929588607594937, + "logloss": 1.4365898305231029, + "implied_hit": 0.10550502082232859 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.7993227579010074, + "implied_hit": 0.11552160879347524 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.24525316455696203, + "logloss": 3.713264986226796, + "implied_hit": 0.11506488738653442 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2614715189873418, + "logloss": 3.363499777270473, + "implied_hit": 0.11248160578315596 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.28322784810126583, + "logloss": 2.9749402498101603, + "implied_hit": 0.11656372337219356 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.37302215189873417, + "logloss": 2.586700506649864, + "implied_hit": 0.11877739610131123 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.702829512094283, + "implied_hit": 0.11607689192093866 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.24841772151898733, + "logloss": 2.9308347331185263, + "implied_hit": 0.11542967798681784 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.2709651898734177, + "logloss": 2.7928786588170413, + "implied_hit": 0.11216067457463827 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.2899525316455696, + "logloss": 2.651228429551227, + "implied_hit": 0.11657095274479652 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.37341772151898733, + "logloss": 2.412045369890173, + "implied_hit": 0.11635728772466658 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.27848101265822783, + "logloss": 2.671829588019427, + "implied_hit": 0.1159451658354225 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2725474683544304, + "logloss": 2.698972519078413, + "implied_hit": 0.11533788722272935 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.28955696202531644, + "logloss": 2.6590439883422237, + "implied_hit": 0.11379539001853395 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.3037974683544304, + "logloss": 2.625591154560268, + "implied_hit": 0.11596835007784946 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.37341772151898733, + "logloss": 2.508973042845618, + "implied_hit": 0.11408176380397063 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.7993227579010074, + "implied_hit": 0.11552160879347524 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.25039556962025317, + "logloss": 3.8180688802982385, + "implied_hit": 0.11563364560333106 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.24920886075949367, + "logloss": 4.1281637620991045, + "implied_hit": 0.11484483502996654 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.24920886075949367, + "logloss": 4.143060843448185, + "implied_hit": 0.11518969608745479 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.24920886075949367, + "logloss": 4.143060843448185, + "implied_hit": 0.11518969608745479 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.702829512094283, + "implied_hit": 0.11607689192093866 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.25514240506329117, + "logloss": 2.9884028462321597, + "implied_hit": 0.118195800549056 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.25514240506329117, + "logloss": 3.060250733671638, + "implied_hit": 0.1175003420549579 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.25435126582278483, + "logloss": 3.0635305806660673, + "implied_hit": 0.11776772353087611 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.25435126582278483, + "logloss": 3.0635305806660673, + "implied_hit": 0.11776772353087611 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2528, + "acc": 0.27848101265822783, + "logloss": 2.671829588019427, + "implied_hit": 0.1159451658354225 + } + }, + "4": { + "window": { + "n": 2528, + "acc": 0.2650316455696203, + "logloss": 2.7215426215577594, + "implied_hit": 0.11820642099120277 + } + }, + "8": { + "window": { + "n": 2528, + "acc": 0.26700949367088606, + "logloss": 2.7327402633572975, + "implied_hit": 0.1179994904231808 + } + }, + "16": { + "window": { + "n": 2528, + "acc": 0.26819620253164556, + "logloss": 2.733184493167723, + "implied_hit": 0.11810152007062769 + } + }, + "32": { + "window": { + "n": 2528, + "acc": 0.26819620253164556, + "logloss": 2.733184493167723, + "implied_hit": 0.11810152007062769 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.7993227579010074, + "implied_hit": 0.11552160879347524 + }, + "4": { + "n": 2528, + "acc": 0.2911392405063291, + "logloss": 2.7149181933276694, + "implied_hit": 0.11360054004627955 + }, + "8": { + "n": 2528, + "acc": 0.3037974683544304, + "logloss": 2.7372336192952753, + "implied_hit": 0.11860719114159811 + }, + "16": { + "n": 2528, + "acc": 0.36787974683544306, + "logloss": 2.4394585190123723, + "implied_hit": 0.11529723484946307 + }, + "32": { + "n": 2528, + "acc": 0.5818829113924051, + "logloss": 1.252238194113644, + "implied_hit": 0.1105205962529061 + } + }, + "5.0": { + "1": { + "n": 2528, + "acc": 0.2749208860759494, + "logloss": 2.702829512094283, + "implied_hit": 0.11607689192093866 + }, + "4": { + "n": 2528, + "acc": 0.2911392405063291, + "logloss": 2.63873177334452, + "implied_hit": 0.11444688195193609 + }, + "8": { + "n": 2528, + "acc": 0.3037974683544304, + "logloss": 2.602694606193387, + "implied_hit": 0.11991123683032598 + }, + "16": { + "n": 2528, + "acc": 0.36787974683544306, + "logloss": 2.378062741583871, + "implied_hit": 0.11614692293699988 + }, + "32": { + "n": 2528, + "acc": 0.5818829113924051, + "logloss": 1.339673065805853, + "implied_hit": 0.10814819827207582 + } + }, + "20.0": { + "1": { + "n": 2528, + "acc": 0.27848101265822783, + "logloss": 2.671829588019427, + "implied_hit": 0.1159451658354225 + }, + "4": { + "n": 2528, + "acc": 0.2950949367088608, + "logloss": 2.630185590992982, + "implied_hit": 0.11514629506026433 + }, + "8": { + "n": 2528, + "acc": 0.30656645569620256, + "logloss": 2.613644575193835, + "implied_hit": 0.11917750265337676 + }, + "16": { + "n": 2528, + "acc": 0.36669303797468356, + "logloss": 2.4673420461394726, + "implied_hit": 0.11605921077704928 + }, + "32": { + "n": 2528, + "acc": 0.586629746835443, + "logloss": 1.5947766451866816, + "implied_hit": 0.10503905380242931 + } + } + }, + "recurrence": { + "1": { + "distinct": 252, + "total": 8156, + "repeat_frac": 0.9995095635115253, + "mean_count": 32.36507936507937 + }, + "4": { + "distinct": 5350, + "total": 8156, + "repeat_frac": 0.4678764100049044, + "mean_count": 1.5244859813084113 + }, + "8": { + "distinct": 7984, + "total": 8156, + "repeat_frac": 0.03715056400196175, + "mean_count": 1.0215430861723447 + }, + "16": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + } + } + }, + "3": { + "majority": { + "top": 0, + "n": 2542, + "acc": 0.18253343823760818, + "logloss": 2.7815580139477563, + "emp_hit": 0.11408339889850512, + "dist": { + "0": 0.19629497684360528, + "1": 0.14428215176344852, + "2": 0.12914143213395085, + "3": 0.1084788029925187, + "4": 0.11471321695760599, + "5": 0.141254007837549, + "6": 0.1658354114713217 + } + }, + "Q": { + "2": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6666938257200967, + "implied_hit": 0.10733922468061015 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2765538945712038, + "logloss": 3.019943532432263, + "implied_hit": 0.10577095537488432 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.27065302911093625, + "logloss": 3.986298111097394, + "implied_hit": 0.10807362965375285 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3005507474429583, + "logloss": 4.75031940177305, + "implied_hit": 0.10138185579817821 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.45279307631786, + "logloss": 2.884639614642065, + "implied_hit": 0.10842680597266685 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6655234015781284, + "implied_hit": 0.10739188382772674 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.28206136900078677, + "logloss": 2.753833961715593, + "implied_hit": 0.10681287201087349 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.2824547600314713, + "logloss": 2.9979969172688454, + "implied_hit": 0.10962792983723052 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3111723052714398, + "logloss": 3.120236859593464, + "implied_hit": 0.10399588501273745 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.45397324940991346, + "logloss": 2.0229380685527283, + "implied_hit": 0.1092735825172857 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6642118841499, + "implied_hit": 0.10755163135757816 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2859952793076318, + "logloss": 2.658406537989605, + "implied_hit": 0.1077158928353438 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.2946498819826908, + "logloss": 2.659114383359623, + "implied_hit": 0.11096871711266673 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3225806451612903, + "logloss": 2.570825813249554, + "implied_hit": 0.10604335790319058 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.44531864673485444, + "logloss": 1.7758483197351633, + "implied_hit": 0.1087470486003153 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6666938257200967, + "implied_hit": 0.10733922468061015 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.27340676632572775, + "logloss": 3.1267649875753825, + "implied_hit": 0.1091141237774555 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.23878835562549175, + "logloss": 4.237046718418204, + "implied_hit": 0.11114026491819909 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.25255704169944926, + "logloss": 4.128971745440495, + "implied_hit": 0.11533384071549836 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.34067663257277736, + "logloss": 2.8526205493711427, + "implied_hit": 0.1017567540150056 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6655234015781284, + "implied_hit": 0.10739188382772674 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2769472856018883, + "logloss": 2.8127253699396797, + "implied_hit": 0.10957542676234608 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.25413060582218727, + "logloss": 3.11567489078644, + "implied_hit": 0.11033901286421006 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.2718332022029898, + "logloss": 2.978484531447407, + "implied_hit": 0.11089017467016497 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.34146341463414637, + "logloss": 2.3572193582764407, + "implied_hit": 0.10394189315954462 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6642118841499, + "implied_hit": 0.10755163135757816 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2875688434303698, + "logloss": 2.6980103175864287, + "implied_hit": 0.1092888418160581 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.27930763178599527, + "logloss": 2.738524935623691, + "implied_hit": 0.11076397649601796 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3040912667191188, + "logloss": 2.6298569154842912, + "implied_hit": 0.10785301914168921 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3548387096774194, + "logloss": 2.2722110850657096, + "implied_hit": 0.10612284039180161 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6666938257200967, + "implied_hit": 0.10733922468061015 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2726199842643588, + "logloss": 3.088155664108488, + "implied_hit": 0.10672163708426921 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.25609756097560976, + "logloss": 4.19045223546403, + "implied_hit": 0.10531463855099138 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.24508261211644375, + "logloss": 5.079448493173094, + "implied_hit": 0.10478029355383937 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.24508261211644375, + "logloss": 5.079448493173094, + "implied_hit": 0.10478029355383937 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6655234015781284, + "implied_hit": 0.10739188382772674 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2761605035405193, + "logloss": 2.7942426935281217, + "implied_hit": 0.10817645839997943 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.26081825334382375, + "logloss": 3.1199534570713054, + "implied_hit": 0.1083279812244041 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.25295043273013373, + "logloss": 3.376051438810402, + "implied_hit": 0.10809082708271615 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.25295043273013373, + "logloss": 3.376051438810402, + "implied_hit": 0.10809082708271615 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6642118841499, + "implied_hit": 0.10755163135757816 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.28560188827694727, + "logloss": 2.690960743255422, + "implied_hit": 0.10898571860559796 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.27852084972462626, + "logloss": 2.753325868128901, + "implied_hit": 0.11003974700940856 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.27852084972462626, + "logloss": 2.8051481246816232, + "implied_hit": 0.1107666566778448 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.27852084972462626, + "logloss": 2.8051481246816232, + "implied_hit": 0.1107666566778448 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6666938257200967, + "implied_hit": 0.10733922468061015 + }, + "4": { + "n": 2542, + "acc": 0.3044846577498033, + "logloss": 2.6315335339006345, + "implied_hit": 0.10803579840664734 + }, + "8": { + "n": 2542, + "acc": 0.3139260424862313, + "logloss": 2.560438346206338, + "implied_hit": 0.10880213022322426 + }, + "16": { + "n": 2542, + "acc": 0.3359559402045633, + "logloss": 2.4113218038988915, + "implied_hit": 0.10791063000131983 + }, + "32": { + "n": 2542, + "acc": 0.4252557041699449, + "logloss": 1.8317930980203407, + "implied_hit": 0.11080495917141339 + } + }, + "5.0": { + "1": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6655234015781284, + "implied_hit": 0.10739188382772674 + }, + "4": { + "n": 2542, + "acc": 0.3044846577498033, + "logloss": 2.63131567328624, + "implied_hit": 0.10810664227070288 + }, + "8": { + "n": 2542, + "acc": 0.3139260424862313, + "logloss": 2.560095177872721, + "implied_hit": 0.10884524021300016 + }, + "16": { + "n": 2542, + "acc": 0.3359559402045633, + "logloss": 2.4106704486155723, + "implied_hit": 0.10804628039340805 + }, + "32": { + "n": 2542, + "acc": 0.4252557041699449, + "logloss": 1.8360073976472393, + "implied_hit": 0.11045959296666256 + } + }, + "20.0": { + "1": { + "n": 2542, + "acc": 0.2966168371361133, + "logloss": 2.6642118841499, + "implied_hit": 0.10755163135757816 + }, + "4": { + "n": 2542, + "acc": 0.3044846577498033, + "logloss": 2.6317937218412983, + "implied_hit": 0.10833538809209635 + }, + "8": { + "n": 2542, + "acc": 0.3139260424862313, + "logloss": 2.5607467306495098, + "implied_hit": 0.10898145553791606 + }, + "16": { + "n": 2542, + "acc": 0.3359559402045633, + "logloss": 2.4166750782560458, + "implied_hit": 0.10843228309784698 + }, + "32": { + "n": 2542, + "acc": 0.4252557041699449, + "logloss": 1.8566283960686807, + "implied_hit": 0.10930709829886351 + } + } + }, + "recurrence": { + "1": { + "distinct": 16, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 509.75 + }, + "4": { + "distinct": 980, + "total": 8156, + "repeat_frac": 0.9420058852378617, + "mean_count": 8.322448979591837 + }, + "8": { + "distinct": 3676, + "total": 8156, + "repeat_frac": 0.6448013732221677, + "mean_count": 2.2187159956474427 + }, + "16": { + "distinct": 7413, + "total": 8156, + "repeat_frac": 0.12739087788131437, + "mean_count": 1.100229326858222 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "3": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.671239828291207, + "implied_hit": 0.10791292826699563 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.26081825334382375, + "logloss": 3.559090330660991, + "implied_hit": 0.11116431793615182 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.2619984264358773, + "logloss": 4.190371521008632, + "implied_hit": 0.10404521099875613 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.33398898505114083, + "logloss": 3.578843744426803, + "implied_hit": 0.11150055434616979 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.525177025963808, + "logloss": 1.9752070888766697, + "implied_hit": 0.1046115259346696 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.664796429109283, + "implied_hit": 0.10821394432084286 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.26632572777340674, + "logloss": 2.9006691675523717, + "implied_hit": 0.10973098857436965 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.27065302911093625, + "logloss": 2.9856571221341017, + "implied_hit": 0.1052132501778708 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.34972462627852086, + "logloss": 2.6143434203196767, + "implied_hit": 0.10922112896026552 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.528324154209284, + "logloss": 1.4807586665027233, + "implied_hit": 0.10265057583901743 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2930763178599528, + "logloss": 2.6619724277962016, + "implied_hit": 0.10873932999466253 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.28560188827694727, + "logloss": 2.682800316548042, + "implied_hit": 0.10924313881276035 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.3001573564122738, + "logloss": 2.612374796487405, + "implied_hit": 0.1064791821571484 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3583792289535799, + "logloss": 2.345654810483529, + "implied_hit": 0.10593920160823099 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.5263571990558615, + "logloss": 1.4225208655715407, + "implied_hit": 0.10200147384744918 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.671239828291207, + "implied_hit": 0.10791292826699563 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.23603461841070023, + "logloss": 3.704081707639362, + "implied_hit": 0.10996818438345045 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.25177025963808025, + "logloss": 3.7050757639040954, + "implied_hit": 0.11135143227980086 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.28560188827694727, + "logloss": 3.034158848410972, + "implied_hit": 0.11135912197753278 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.37568843430369786, + "logloss": 2.41740722052596, + "implied_hit": 0.10356960734977064 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.664796429109283, + "implied_hit": 0.10821394432084286 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.24822974036191975, + "logloss": 2.9633531861532036, + "implied_hit": 0.11000120137532632 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.2639653815892998, + "logloss": 2.888479710426161, + "implied_hit": 0.11068820855529318 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.2985837922895358, + "logloss": 2.6236396999282157, + "implied_hit": 0.11032570865108161 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3768686073957514, + "logloss": 2.259213221151358, + "implied_hit": 0.10447490605479404 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2930763178599528, + "logloss": 2.6619724277962016, + "implied_hit": 0.10873932999466253 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2745869394177813, + "logloss": 2.7170261613131843, + "implied_hit": 0.10965971511472168 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.29189614476789927, + "logloss": 2.6565273591816982, + "implied_hit": 0.11038426187311005 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3154996066089693, + "logloss": 2.5576230155090114, + "implied_hit": 0.10966775291938588 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3831628638867034, + "logloss": 2.320370437605097, + "implied_hit": 0.10523754362285494 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.671239828291207, + "implied_hit": 0.10791292826699563 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.25098347757671124, + "logloss": 3.6411629264231444, + "implied_hit": 0.10944388534256318 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.23603461841070023, + "logloss": 4.367813584093259, + "implied_hit": 0.10743140751592963 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.23603461841070023, + "logloss": 4.587500780801733, + "implied_hit": 0.10953278240723471 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.23603461841070023, + "logloss": 4.587500780801733, + "implied_hit": 0.10953278240723471 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.664796429109283, + "implied_hit": 0.10821394432084286 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.25531077891424075, + "logloss": 2.969543892100237, + "implied_hit": 0.10866290746505414 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.24272226593233676, + "logloss": 3.1556286380559992, + "implied_hit": 0.1093242225517569 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.24154209284028325, + "logloss": 3.213472995686258, + "implied_hit": 0.11072088385003934 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.24154209284028325, + "logloss": 3.213472995686258, + "implied_hit": 0.11072088385003934 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2930763178599528, + "logloss": 2.6619724277962016, + "implied_hit": 0.10873932999466253 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2753737214791503, + "logloss": 2.737856766696358, + "implied_hit": 0.10836441004660533 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.26514555468135326, + "logloss": 2.7698887837851482, + "implied_hit": 0.10966350914979076 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.26357199055861524, + "logloss": 2.781370766946335, + "implied_hit": 0.11036606585731601 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.26357199055861524, + "logloss": 2.781370766946335, + "implied_hit": 0.11036606585731601 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.671239828291207, + "implied_hit": 0.10791292826699563 + }, + "4": { + "n": 2542, + "acc": 0.2950432730133753, + "logloss": 2.6435830785747894, + "implied_hit": 0.10862000873584121 + }, + "8": { + "n": 2542, + "acc": 0.32297403619197484, + "logloss": 2.553959192092599, + "implied_hit": 0.10778185941798842 + }, + "16": { + "n": 2542, + "acc": 0.37018095987411487, + "logloss": 2.304609241916248, + "implied_hit": 0.10812181964213917 + }, + "32": { + "n": 2542, + "acc": 0.521243115656963, + "logloss": 1.4093257694065695, + "implied_hit": 0.10594016234396614 + } + }, + "5.0": { + "1": { + "n": 2542, + "acc": 0.2938630999213218, + "logloss": 2.664796429109283, + "implied_hit": 0.10821394432084286 + }, + "4": { + "n": 2542, + "acc": 0.2950432730133753, + "logloss": 2.6293071146425144, + "implied_hit": 0.10861441487026056 + }, + "8": { + "n": 2542, + "acc": 0.32297403619197484, + "logloss": 2.536933508144304, + "implied_hit": 0.10834836965194106 + }, + "16": { + "n": 2542, + "acc": 0.37018095987411487, + "logloss": 2.294061257840866, + "implied_hit": 0.10754978244233583 + }, + "32": { + "n": 2542, + "acc": 0.521243115656963, + "logloss": 1.4415635620280125, + "implied_hit": 0.10580887372573163 + } + }, + "20.0": { + "1": { + "n": 2542, + "acc": 0.2930763178599528, + "logloss": 2.6619724277962016, + "implied_hit": 0.10873932999466253 + }, + "4": { + "n": 2542, + "acc": 0.2977970102281668, + "logloss": 2.6270811203311633, + "implied_hit": 0.10874080589535631 + }, + "8": { + "n": 2542, + "acc": 0.3241542092840283, + "logloss": 2.5411955301920948, + "implied_hit": 0.10939553056986324 + }, + "16": { + "n": 2542, + "acc": 0.37018095987411487, + "logloss": 2.329064734108803, + "implied_hit": 0.10733257469120772 + }, + "32": { + "n": 2542, + "acc": 0.518882769472856, + "logloss": 1.5559483900866415, + "implied_hit": 0.10489547155088505 + } + } + }, + "recurrence": { + "1": { + "distinct": 81, + "total": 8156, + "repeat_frac": 1.0, + "mean_count": 100.69135802469135 + }, + "4": { + "distinct": 3399, + "total": 8156, + "repeat_frac": 0.7111329082883766, + "mean_count": 2.399529273315681 + }, + "8": { + "distinct": 6871, + "total": 8156, + "repeat_frac": 0.2244973025993134, + "mean_count": 1.1870179013244069 + }, + "16": { + "distinct": 8139, + "total": 8156, + "repeat_frac": 0.00392349190779794, + "mean_count": 1.0020887086865709 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + }, + "4": { + "temporal": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.7862077434951047, + "implied_hit": 0.10782606252512571 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2745869394177813, + "logloss": 3.6402583001824103, + "implied_hit": 0.1085107167984725 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.28835562549173877, + "logloss": 3.891173899215364, + "implied_hit": 0.10698492324717039 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.32848151062155784, + "logloss": 3.348332579033528, + "implied_hit": 0.11218101925480502 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.5920535011801731, + "logloss": 1.4920425779439552, + "implied_hit": 0.11512715711371764 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.694748965972601, + "implied_hit": 0.10842911991385211 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.27930763178599527, + "logloss": 2.8951688990855757, + "implied_hit": 0.11013640826766295 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.2946498819826908, + "logloss": 2.8645884598178926, + "implied_hit": 0.11012773027188194 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.33398898505114083, + "logloss": 2.563189816553798, + "implied_hit": 0.11193426787572823 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.601494885916601, + "logloss": 1.2745765037662775, + "implied_hit": 0.11049570661362097 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2962234461054288, + "logloss": 2.6685230203218335, + "implied_hit": 0.1087339336943537 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2970102281667978, + "logloss": 2.6641439279531283, + "implied_hit": 0.11060243183072516 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.3040912667191188, + "logloss": 2.6141057066000077, + "implied_hit": 0.11199919880709222 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.34972462627852086, + "logloss": 2.437675104613894, + "implied_hit": 0.11117173777019729 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.6073957513768686, + "logloss": 1.4157360338463798, + "implied_hit": 0.10285280392946096 + } + } + } + }, + "shuffled": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.7862077434951047, + "implied_hit": 0.10782606252512571 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.24665617623918173, + "logloss": 3.6404140695397857, + "implied_hit": 0.11331622417233501 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.25570416994492523, + "logloss": 3.4170891286890988, + "implied_hit": 0.11126526311506388 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3060582218725413, + "logloss": 2.8682925536584363, + "implied_hit": 0.10526477166102566 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3878835562549174, + "logloss": 2.505046860279267, + "implied_hit": 0.10915005353343844 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.694748965972601, + "implied_hit": 0.10842911991385211 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.25413060582218727, + "logloss": 2.909263547368249, + "implied_hit": 0.11177875377912744 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.26868607395751376, + "logloss": 2.82560867121969, + "implied_hit": 0.1098980354342144 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3095987411487018, + "logloss": 2.6065533121839994, + "implied_hit": 0.10731000485454543 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3922108575924469, + "logloss": 2.3481382087311404, + "implied_hit": 0.10778848359059331 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2962234461054288, + "logloss": 2.6685230203218335, + "implied_hit": 0.1087339336943537 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2804878048780488, + "logloss": 2.6960468278231557, + "implied_hit": 0.11039630161567729 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.28914240755310777, + "logloss": 2.6701429024025165, + "implied_hit": 0.10887593462116771 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.3174665617623918, + "logloss": 2.60831380947069, + "implied_hit": 0.10877882914147664 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.3933910306845004, + "logloss": 2.4676359807643746, + "implied_hit": 0.10725973094084999 + } + } + } + }, + "reverse": { + "1.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.7862077434951047, + "implied_hit": 0.10782606252512571 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.24901652242328876, + "logloss": 3.8060347916801467, + "implied_hit": 0.10886081526054417 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.24232887490165225, + "logloss": 4.148646589789024, + "implied_hit": 0.10805561799685251 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.24193548387096775, + "logloss": 4.1605082127649755, + "implied_hit": 0.10798034840809662 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.24193548387096775, + "logloss": 4.1605082127649755, + "implied_hit": 0.10798034840809662 + } + } + }, + "5.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.694748965972601, + "implied_hit": 0.10842911991385211 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.25727773406766324, + "logloss": 2.989618827260486, + "implied_hit": 0.10948179142811618 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.25019669551534224, + "logloss": 3.075084991287677, + "implied_hit": 0.10913962561428323 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.25019669551534224, + "logloss": 3.0771973840774165, + "implied_hit": 0.10909651629218439 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.25019669551534224, + "logloss": 3.0771973840774165, + "implied_hit": 0.10909651629218439 + } + } + }, + "20.0": { + "1": { + "window": { + "n": 2542, + "acc": 0.2962234461054288, + "logloss": 2.6685230203218335, + "implied_hit": 0.1087339336943537 + } + }, + "4": { + "window": { + "n": 2542, + "acc": 0.2718332022029898, + "logloss": 2.724836967810589, + "implied_hit": 0.1098885067837729 + } + }, + "8": { + "window": { + "n": 2542, + "acc": 0.26514555468135326, + "logloss": 2.7400899338943914, + "implied_hit": 0.10996919554451534 + } + }, + "16": { + "window": { + "n": 2542, + "acc": 0.2655389457120378, + "logloss": 2.74010535708491, + "implied_hit": 0.10996087103184085 + } + }, + "32": { + "window": { + "n": 2542, + "acc": 0.2655389457120378, + "logloss": 2.74010535708491, + "implied_hit": 0.10996087103184085 + } + } + } + }, + "single": { + "1.0": { + "1": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.7862077434951047, + "implied_hit": 0.10782606252512571 + }, + "4": { + "n": 2542, + "acc": 0.2985837922895358, + "logloss": 2.6975547292114745, + "implied_hit": 0.1076050452761259 + }, + "8": { + "n": 2542, + "acc": 0.3143194335169158, + "logloss": 2.749170284221059, + "implied_hit": 0.10742087421867826 + }, + "16": { + "n": 2542, + "acc": 0.35011801730920533, + "logloss": 2.4518531956559255, + "implied_hit": 0.1110670580004405 + }, + "32": { + "n": 2542, + "acc": 0.6022816679779701, + "logloss": 1.2208567645874404, + "implied_hit": 0.10810353386407189 + } + }, + "5.0": { + "1": { + "n": 2542, + "acc": 0.2915027537372148, + "logloss": 2.694748965972601, + "implied_hit": 0.10842911991385211 + }, + "4": { + "n": 2542, + "acc": 0.2985837922895358, + "logloss": 2.6265537812984006, + "implied_hit": 0.10833581720616461 + }, + "8": { + "n": 2542, + "acc": 0.3143194335169158, + "logloss": 2.6003624845461286, + "implied_hit": 0.10887447317874355 + }, + "16": { + "n": 2542, + "acc": 0.35011801730920533, + "logloss": 2.382357116257415, + "implied_hit": 0.11059481318262056 + }, + "32": { + "n": 2542, + "acc": 0.6022816679779701, + "logloss": 1.307453079627928, + "implied_hit": 0.10559016087468794 + } + }, + "20.0": { + "1": { + "n": 2542, + "acc": 0.2962234461054288, + "logloss": 2.6685230203218335, + "implied_hit": 0.1087339336943537 + }, + "4": { + "n": 2542, + "acc": 0.3021243115656963, + "logloss": 2.6204387584601117, + "implied_hit": 0.10885102673935744 + }, + "8": { + "n": 2542, + "acc": 0.3139260424862313, + "logloss": 2.606003028492494, + "implied_hit": 0.10985384576921213 + }, + "16": { + "n": 2542, + "acc": 0.35287175452399683, + "logloss": 2.4651055072112023, + "implied_hit": 0.11012639162852945 + }, + "32": { + "n": 2542, + "acc": 0.6034618410700237, + "logloss": 1.565266612152001, + "implied_hit": 0.10149237158131154 + } + } + }, + "recurrence": { + "1": { + "distinct": 252, + "total": 8156, + "repeat_frac": 0.9996321726336439, + "mean_count": 32.36507936507937 + }, + "4": { + "distinct": 5394, + "total": 8156, + "repeat_frac": 0.4592937714565964, + "mean_count": 1.5120504263997034 + }, + "8": { + "distinct": 7984, + "total": 8156, + "repeat_frac": 0.03702795487984306, + "mean_count": 1.0215430861723447 + }, + "16": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + }, + "32": { + "distinct": 8156, + "total": 8156, + "repeat_frac": 0.0, + "mean_count": 1.0 + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/common_libs/tests/fixtures/state_window_gate_report.txt b/common_libs/tests/fixtures/state_window_gate_report.txt new file mode 100644 index 0000000..522c362 --- /dev/null +++ b/common_libs/tests/fixtures/state_window_gate_report.txt @@ -0,0 +1,178 @@ +==================================================================================================== +FRAME pre (window ENDS at the fire tick, looks BACK) +==================================================================================================== +MAJORITY / NO-WINDOW FLOOR (test acc 0.2348, log-loss 2.6983 bits, empirical hit 0.0906) + target-bin edges [-120.0, -60.0, -18.0, 18.0, 60.0, 120.0] px -> central +-18 px hit bin. At the median + fire range (487 px) the 36 px hit window subtends 4.23 deg; at 450 px + it is 4.58 deg; at 100 px 20.41 deg. (atan(18/range).) + target-bin distribution on train: 0:0.231, 1:0.125, 2:0.102, 3:0.089, 4:0.097, 5:0.126, 6:0.230 + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=2 -> 32 distinct single states (5.0 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.4524 0.4072 0.0896 | 2.4524 0.4072 0.0896 | 2.5464 | 2.5787 + 4 | 2.4524 0.4072 0.0896 | 2.5107 0.3990 0.0898 | 2.7611 | 2.6403 + 8 | 2.4524 0.4072 0.0896 | 2.8015 0.3700 0.0889 | 2.8188 | 2.9373 + 16 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8120 | 3.2793 + 32 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8026 | 3.2793 + 48 | 2.4524 0.4072 0.0896 | 3.1310 0.3443 0.0896 | 2.8115 | 3.2793 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=16 of 54939 (mean count 3433.69, repeat_frac 1.000) + K=4 distinct=1747 of 54939 (mean count 31.45, repeat_frac 0.990) + K=8 distinct=13474 of 54939 (mean count 4.08, repeat_frac 0.836) + K=16 distinct=41447 of 54939 (mean count 1.33, repeat_frac 0.311) + K=32 distinct=54454 of 54939 (mean count 1.01, repeat_frac 0.011) + K=48 distinct=54744 of 54939 (mean count 1.00, repeat_frac 0.004) + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=3 -> 243 distinct single states (7.9 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.3782 0.4032 0.0897 | 2.3782 0.4032 0.0897 | 2.5116 | 2.5502 + 4 | 2.3782 0.4032 0.0897 | 2.5461 0.3912 0.0903 | 2.6214 | 2.7670 + 8 | 2.3782 0.4032 0.0897 | 2.8336 0.3594 0.0898 | 2.6284 | 3.0753 + 16 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6221 | 3.1881 + 32 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6225 | 3.1881 + 48 | 2.3782 0.4032 0.0897 | 2.9473 0.3458 0.0898 | 2.6216 | 3.1881 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=82 of 54939 (mean count 669.99, repeat_frac 1.000) + K=4 distinct=11018 of 54939 (mean count 4.99, repeat_frac 0.891) + K=8 distinct=37337 of 54939 (mean count 1.47, repeat_frac 0.404) + K=16 distinct=54163 of 54939 (mean count 1.01, repeat_frac 0.020) + K=32 distinct=54754 of 54939 (mean count 1.00, repeat_frac 0.004) + K=48 distinct=54772 of 54939 (mean count 1.00, repeat_frac 0.004) + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=4 -> 1024 distinct single states (10.0 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.3460 0.4094 0.0895 | 2.3460 0.4094 0.0895 | 2.5280 | 2.5352 + 4 | 2.3460 0.4094 0.0895 | 2.5656 0.3833 0.0894 | 2.5672 | 2.8203 + 8 | 2.3460 0.4094 0.0895 | 2.7265 0.3641 0.0885 | 2.5666 | 3.0138 + 16 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5613 | 3.0377 + 32 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5613 | 3.0377 + 48 | 2.3460 0.4094 0.0895 | 2.7450 0.3622 0.0886 | 2.5640 | 3.0377 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=372 of 54939 (mean count 147.69, repeat_frac 0.999) + K=4 distinct=24223 of 54939 (mean count 2.27, repeat_frac 0.685) + K=8 distinct=49891 of 54939 (mean count 1.10, repeat_frac 0.134) + K=16 distinct=54707 of 54939 (mean count 1.00, repeat_frac 0.005) + K=32 distinct=54779 of 54939 (mean count 1.00, repeat_frac 0.004) + K=48 distinct=54789 of 54939 (mean count 1.00, repeat_frac 0.004) + +==================================================================================================== +HEADLINE (mean over 3 battle-split seeds; A=5) + held-out log-loss. delta_window = window - single@D (NEGATIVE = the + window beats the single state at the same decision tick) + Q=2 single@D K=1 2.4524 K=4 2.4524 K=8 2.4524 K=16 2.4524 K=32 2.4524 K=48 2.4524 + window K=1 2.4524(+0.0000) K=4 2.5107(+0.0583) K=8 2.8015(+0.3491) K=16 3.1310(+0.6786) K=32 3.1310(+0.6786) K=48 3.1310(+0.6786) + Q=3 single@D K=1 2.3782 K=4 2.3782 K=8 2.3782 K=16 2.3782 K=32 2.3782 K=48 2.3782 + window K=1 2.3782(+0.0000) K=4 2.5461(+0.1679) K=8 2.8336(+0.4554) K=16 2.9473(+0.5691) K=32 2.9473(+0.5691) K=48 2.9473(+0.5691) + Q=4 single@D K=1 2.3460 K=4 2.3460 K=8 2.3460 K=16 2.3460 K=32 2.3460 K=48 2.3460 + window K=1 2.3460(+0.0000) K=4 2.5656(+0.2196) K=8 2.7265(+0.3805) K=16 2.7450(+0.3990) K=32 2.7450(+0.3990) K=48 2.7450(+0.3990) + shuffle control: window(shuffled) - window(temporal) (must be >>0) + Q=2 K=1 +0.0940 K=4 +0.2504 K=8 +0.0173 K=16 -0.3190 K=32 -0.3284 K=48 -0.3195 + Q=3 K=1 +0.1334 K=4 +0.0753 K=8 -0.2051 K=16 -0.3252 K=32 -0.3248 K=48 -0.3257 + Q=4 K=1 +0.1820 K=4 +0.0016 K=8 -0.1599 K=16 -0.1837 K=32 -0.1838 K=48 -0.1810 + reverse control: window(reverse) - window(temporal) + Q=2 K=1 +0.1263 K=4 +0.1296 K=8 +0.1358 K=16 +0.1483 K=32 +0.1483 K=48 +0.1483 + Q=3 K=1 +0.1720 K=4 +0.2210 K=8 +0.2417 K=16 +0.2409 K=32 +0.2409 K=48 +0.2409 + Q=4 K=1 +0.1892 K=4 +0.2547 K=8 +0.2873 K=16 +0.2927 K=32 +0.2927 K=48 +0.2927 + robustness in the interpolation strength A (window temporal log-loss): + Q=2 A=1 K=1 2.4526 K=4 2.6094 K=8 3.4554 K=16 4.4613 K=32 4.4613 K=48 4.4613 + Q=2 A=5 K=1 2.4524 K=4 2.5107 K=8 2.8015 K=16 3.1310 K=32 3.1310 K=48 3.1310 + Q=2 A=20 K=1 2.4524 K=4 2.4643 K=8 2.5491 K=16 2.6407 K=32 2.6407 K=48 2.6407 + Q=3 A=1 K=1 2.3782 K=4 2.8964 K=8 3.8419 K=16 4.2381 K=32 4.2381 K=48 4.2381 + Q=3 A=5 K=1 2.3782 K=4 2.5461 K=8 2.8336 K=16 2.9473 K=32 2.9473 K=48 2.9473 + Q=3 A=20 K=1 2.3810 K=4 2.4149 K=8 2.4868 K=16 2.5134 K=32 2.5134 K=48 2.5134 + Q=4 A=1 K=1 2.3499 K=4 3.0860 K=8 3.6606 K=16 3.7319 K=32 3.7319 K=48 3.7319 + Q=4 A=5 K=1 2.3460 K=4 2.5656 K=8 2.7265 K=16 2.7450 K=32 2.7450 K=48 2.7450 + Q=4 A=20 K=1 2.3557 K=4 2.3928 K=8 2.4289 K=16 2.4327 K=32 2.4327 K=48 2.4327 +==================================================================================================== +==================================================================================================== +FRAME fly (window STARTS at the fire tick, ends at t0+K-1) +==================================================================================================== +MAJORITY / NO-WINDOW FLOOR (test acc 0.1912, log-loss 2.7810 bits, empirical hit 0.1100) + target-bin edges [-120.0, -60.0, -18.0, 18.0, 60.0, 120.0] px -> central +-18 px hit bin. At the median + fire range (487 px) the 36 px hit window subtends 4.23 deg; at 450 px + it is 4.58 deg; at 100 px 20.41 deg. (atan(18/range).) + target-bin distribution on train: 0:0.192, 1:0.145, 2:0.125, 3:0.109, 4:0.118, 5:0.139, 6:0.172 + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=2 -> 32 distinct single states (5.0 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.6645 0.2935 0.1099 | 2.6645 0.2935 0.1099 | 2.6645 | 2.6645 + 4 | 2.6376 0.2988 0.1101 | 2.7695 0.2808 0.1106 | 2.8096 | 2.7957 + 8 | 2.5659 0.3076 0.1102 | 3.0331 0.2785 0.1107 | 3.1212 | 3.1197 + 16 | 2.4047 0.3405 0.1104 | 3.1643 0.3070 0.1098 | 2.9981 | 3.3696 + 32 | 1.8365 0.4189 0.1083 | 1.9970 0.4430 0.1078 | 2.3517 | 3.3696 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=16 of 8156 (mean count 509.75, repeat_frac 1.000) + K=4 distinct=872 of 8156 (mean count 9.35, repeat_frac 0.954) + K=8 distinct=3557 of 8156 (mean count 2.29, repeat_frac 0.665) + K=16 distinct=7389 of 8156 (mean count 1.10, repeat_frac 0.133) + K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000) + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=3 -> 243 distinct single states (7.9 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.6741 0.2901 0.1105 | 2.6741 0.2901 0.1105 | 2.6741 | 2.6741 + 4 | 2.6262 0.2950 0.1103 | 2.8858 0.2658 0.1086 | 2.9378 | 2.9633 + 8 | 2.5302 0.3184 0.1100 | 3.0207 0.2759 0.1089 | 2.9292 | 3.1779 + 16 | 2.3103 0.3661 0.1090 | 2.6362 0.3390 0.1110 | 2.6531 | 3.2373 + 32 | 1.4355 0.5221 0.1081 | 1.4625 0.5384 0.1030 | 2.2674 | 3.2373 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=81 of 8156 (mean count 100.69, repeat_frac 1.000) + K=4 distinct=3383 of 8156 (mean count 2.41, repeat_frac 0.714) + K=8 distinct=6857 of 8156 (mean count 1.19, repeat_frac 0.226) + K=16 distinct=8140 of 8156 (mean count 1.00, repeat_frac 0.004) + K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000) + +---------------------------------------------------------------------------------------------------- +COARSENESS Q=4 -> 1024 distinct single states (10.0 bits) + K | single@D (temporal) | window (temporal) | window=SHUFFLED | window=REVERSE + | logloss acc hitP | logloss acc hitP | logloss | logloss + 1 | 2.7020 0.2817 0.1113 | 2.7020 0.2817 0.1113 | 2.7020 | 2.7020 + 4 | 2.6397 0.2982 0.1112 | 2.9108 0.2750 0.1117 | 2.9175 | 3.0026 + 8 | 2.6101 0.3037 0.1137 | 2.9084 0.2793 0.1159 | 2.8151 | 3.0861 + 16 | 2.3853 0.3617 0.1123 | 2.5918 0.3377 0.1135 | 2.6342 | 3.0891 + 32 | 1.3121 0.5988 0.1055 | 1.2668 0.6027 0.1089 | 2.3830 | 3.0891 + recurrence, distinct ordered window tuples over the whole corpus: + K=1 distinct=252 of 8156 (mean count 32.37, repeat_frac 1.000) + K=4 distinct=5368 of 8156 (mean count 1.52, repeat_frac 0.465) + K=8 distinct=7983 of 8156 (mean count 1.02, repeat_frac 0.037) + K=16 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000) + K=32 distinct=8156 of 8156 (mean count 1.00, repeat_frac 0.000) + +==================================================================================================== +HEADLINE (mean over 3 battle-split seeds; A=5) + held-out log-loss. delta_window = window - single@D (NEGATIVE = the + window beats the single state at the same decision tick) + Q=2 single@D K=1 2.6645 K=4 2.6376 K=8 2.5659 K=16 2.4047 K=32 1.8365 + window K=1 2.6645(+0.0000) K=4 2.7695(+0.1319) K=8 3.0331(+0.4673) K=16 3.1643(+0.7596) K=32 1.9970(+0.1605) + Q=3 single@D K=1 2.6741 K=4 2.6262 K=8 2.5302 K=16 2.3103 K=32 1.4355 + window K=1 2.6741(+0.0000) K=4 2.8858(+0.2597) K=8 3.0207(+0.4904) K=16 2.6362(+0.3259) K=32 1.4625(+0.0270) + Q=4 single@D K=1 2.7020 K=4 2.6397 K=8 2.6101 K=16 2.3853 K=32 1.3121 + window K=1 2.7020(+0.0000) K=4 2.9108(+0.2711) K=8 2.9084(+0.2984) K=16 2.5918(+0.2065) K=32 1.2668(-0.0453) + shuffle control: window(shuffled) - window(temporal) (must be >>0) + Q=2 K=1 +0.0000 K=4 +0.0400 K=8 +0.0881 K=16 -0.1662 K=32 +0.3548 + Q=3 K=1 +0.0000 K=4 +0.0520 K=8 -0.0914 K=16 +0.0169 K=32 +0.8048 + Q=4 K=1 +0.0000 K=4 +0.0068 K=8 -0.0933 K=16 +0.0425 K=32 +1.1162 + reverse control: window(reverse) - window(temporal) + Q=2 K=1 +0.0000 K=4 +0.0262 K=8 +0.0865 K=16 +0.2053 K=32 +1.3726 + Q=3 K=1 +0.0000 K=4 +0.0774 K=8 +0.1572 K=16 +0.6011 K=32 +1.7748 + Q=4 K=1 +0.0000 K=4 +0.0918 K=8 +0.1776 K=16 +0.4974 K=32 +1.8223 + robustness in the interpolation strength A (window temporal log-loss): + Q=2 A=1 K=1 2.6653 K=4 3.0442 K=8 4.0190 K=16 4.8738 K=32 2.8391 + Q=2 A=5 K=1 2.6645 K=4 2.7695 K=8 3.0331 K=16 3.1643 K=32 1.9970 + Q=2 A=20 K=1 2.6638 K=4 2.6681 K=8 2.6862 K=16 2.5833 K=32 1.7668 + Q=3 A=1 K=1 2.6844 K=4 3.5284 K=8 4.2822 K=16 3.6127 K=32 1.9264 + Q=3 A=5 K=1 2.6741 K=4 2.8858 K=8 3.0207 K=16 2.6362 K=32 1.4625 + Q=3 A=20 K=1 2.6681 K=4 2.6773 K=8 2.6250 K=16 2.3607 K=32 1.4132 + Q=4 A=1 K=1 2.7908 K=4 3.6658 K=8 3.9767 K=16 3.4357 K=32 1.4693 + Q=4 A=5 K=1 2.7020 K=4 2.9108 K=8 2.9084 K=16 2.5918 K=32 1.2668 + Q=4 A=20 K=1 2.6736 K=4 2.6783 K=8 2.6388 K=16 2.4433 K=32 1.4137 +==================================================================================================== diff --git a/common_libs/tests/state_window_gate.py b/common_libs/tests/state_window_gate.py new file mode 100644 index 0000000..24b85dc --- /dev/null +++ b/common_libs/tests/state_window_gate.py @@ -0,0 +1,579 @@ +#!/usr/bin/env python3 +"""STATE-WINDOW GATE: does a temporal WINDOW of wave-relative states predict +DrussGT's future lateral position better than a SINGLE state? + +This is the cheap veto test for the "feed SBC a temporal list of states" design +(docs/state_window_gate.md). It is NOT a gun and makes no live-win claim. + +DATA (real live battles, never regenerated here) + /tmp/tfil_ab2/out//runN.jsonl + .events.jsonl + .rounds.json + 70 battles / 490 rounds / ~55k shots fired by ModularBot at the real + unmodified DrussGT, recorded by tools/robocode_shim/run_bridge_battle.sh. + In the capture rows `e*` is DrussGT (the subject) and `s*` is ModularBot (us); + the per-shot geometry is re-derived by the validated instrument in + common_libs/tests/analyze_drussgt_dodge_vs_power.py, which this file imports. + +STATE (a design artifact -- see docs/state_window_gate.md for the rationale) + One state at absolute tick t, in the frame of the bullet fired at t0 along + direction u = (cos dir, sin dir): + lat = (D(t) - P0) x u lateral offset from the bullet line, px + vlat = lat(t) - lat(t-1) lateral velocity, px/tick (crossing/returning) + toa = (t0 - t) + karr ticks until the bullet reaches arrival + room = ray distance from D(t) along sign(vlat)*n until the arena wall, px + turn = wrap180(eh(t) - eh(t-1)) signed turn rate, deg/tick + Each field is quantised into Q in {2,3,4} bins (the numerosity dial). A + window is K consecutive states; K=1 is the single-state baseline. + +Two frames are tested, and BOTH compare a window against the single state at + the SAME decision tick D (otherwise a longer window would win only because its + decision tick is later): + pre D = t0 (the fire tick); the window is the K pre-fire states ending at D. + fly D = t0+K-1; the window is the first K states of the flight, and the + baseline is the single state at D. Only shots with karr > 31 are used, + so the whole window is strictly before the bullet's arrival. + +TARGET + perp_arr = DrussGT's SIGNED perpendicular offset from the bullet line at the + tick our bullet reaches its along-track plane (the miss offset that decides + the hit). Quantised into 7 bins (edges +-120, +-60, +-18 px); the central + +-18 px bin is the hit window. + +MODEL (deliberately dull: the question is about INFORMATION, not modelling) + An interpolated (Jelinek-Mercer) suffix-backoff table over the quantised + window: P = global; for j=1..K, P <- (count(suffix_j) + A*P)/(total+A). This + is the direct analogue of the SBC "count coincidences" idea, it is + order-sensitive, and it can never do much worse than the shorter context, so + the sweep isolates information rather than overfitting. The context depth is + capped at 12 (orders above that are never observed often enough to matter). + A in {1,5,20} is swept as a robustness check (A=5 is primary). + +SPLIT + BY BATTLE, never by tick. All rounds of a battle go to one side. 70 %/30 % + battle split, repeated over 3 seeds; model hyper-parameters (bin edges) are + derived from the TRAIN side only. + +CONTROLS + 1. shuffle -- random permutation of the K states inside each window (the + multiset is preserved, order destroyed). MANDATORY. + 2. reverse -- deterministic reversal (preserves recurrence, reverses time). + 3. majority -- no-window floor. + 4. recurrence -- distinct windows, and how often a window repeats. + +Run: + python3 common_libs/tests/state_window_gate.py --tfil /tmp/tfil_ab2/out \ + --json common_libs/tests/fixtures/state_window_gate.json \ + > common_libs/tests/fixtures/state_window_gate_report.txt +""" +from __future__ import annotations + +import argparse +import bisect +import collections +import json +import math +import os +import random +import statistics +import sys +from array import array + +HERE = os.path.dirname(os.path.abspath(__file__)) +sys.path.insert(0, HERE) +import analyze_drussgt_dodge_vs_power as dodge # noqa: E402 + +ARENA_W, ARENA_H = 800.0, 600.0 +BOT_R = 18.0 +MAXK_PRE = 48 # pre-fire history depth (all K <= 48 are feasible) +MAXK_FLY = 32 # during-flight window depth (max real flight is 43) +FIELDS = ("lat", "vlat", "toa", "room", "turn") +D_CAP = 12 # model context depth cap (see docs; orders > cap never observed) +TARGET_EDGES = [-120.0, -60.0, -18.0, 18.0, 60.0, 120.0] +HIT_BIN = 3 # bin [ -18, 18 ) -> the bot radius +K_PRE = (1, 4, 8, 16, 32, 48) +K_FLY = (1, 4, 8, 16, 32) + + +def wrap180(a): + return ((a + 180.0) % 360.0) - 180.0 + + +def room_to_wall(px, py, dx, dy): + """Distance from (px,py) along unit (dx,dy) until leaving the arena + (accounting for the 18 px bot radius).""" + t = float("inf") + for p, d, lo, hi in ((px, dx, BOT_R, ARENA_W - BOT_R), + (py, dy, BOT_R, ARENA_H - BOT_R)): + if abs(d) > 1e-9: + cand = (hi - p) / d if d > 0 else (lo - p) / d + if cand < t: + t = cand + if t == float("inf"): + return 0.0 + return max(0.0, t) + + +def tbin(v): + return bisect.bisect_right(TARGET_EDGES, v) + + +def raw_state(run, t0, karr, P0, ux, uy, t, rnd): + rs = run.start[rnd] + re = rs + run.count[rnd] - 1 + tc = min(max(t, rs), re) + tp = max(tc - 1, rs) + r = run.by_tick.get(tc) + rp = run.by_tick.get(tp) + if r is None or rp is None: + return None + lat = (r["ex"] - P0[0]) * uy - (r["ey"] - P0[1]) * ux + latp = (rp["ex"] - P0[0]) * uy - (rp["ey"] - P0[1]) * ux + vlat = lat - latp + toa = (t0 - tc) + karr + turn = wrap180(r["eh"] - rp["eh"]) + sg = 1.0 if vlat >= 0 else -1.0 + room = room_to_wall(r["ex"], r["ey"], -uy * sg, ux * sg) + return (lat, vlat, toa, room, turn) + + +def extract_run(run): + out = [] + for s in run.shots(): + t0 = s["tick"] + karr = s["flight"] + if karr is None: + continue + th = math.radians(s["_dir"]) + ux, uy = math.cos(th), math.sin(th) + P0 = (s["_x"], s["_y"]) + rnd = s["rnd"] + pre = array("f") + ok = True + for off in range(-(MAXK_PRE - 1), 1): + rs = raw_state(run, t0, karr, P0, ux, uy, t0 + off, rnd) + if rs is None: + ok = False + break + pre.extend(rs) + if not ok: + continue + fly = [] + for off in range(MAXK_FLY): + rs = raw_state(run, t0, karr, P0, ux, uy, t0 + off, rnd) + fly.append(None if rs is None else rs) + out.append(dict( + battle=os.path.basename(os.path.dirname(run.cap_path)) + "/" + + os.path.basename(run.cap_path), + rnd=rnd, t0=t0, karr=karr, perp_arr=s["perp_arr"], + perp_fire=s["perp_fire"], range=s["range"], power=s["power"], + hit=s["hit"], tbin=tbin(s["perp_arr"]), pre=pre, fly=fly, + )) + return out + + +# ------------------------------------------------------------------ quantise +def edges_for(vals, q): + xs = sorted(vals) + n = len(xs) + return [xs[min(n - 1, int((qi / q) * n))] for qi in range(1, q)] + + +def frame_edges(samples, frame, Q): + """Quantile bin edges per field, derived from the TRAIN side only.""" + edges = [] + for f in range(5): + vals = [] + if frame == "pre": + for s in samples: + if s["_split"] != "train": + continue + a = s["pre"] + for i in range(MAXK_PRE): + vals.append(a[i * 5 + f]) + else: + for s in samples: + if s["_split"] != "train": + continue + for st in s["fly"]: + if st is not None: + vals.append(st[f]) + edges.append(edges_for(vals, Q)) + return edges + + +def apply_codes(samples, frame, edges, Q): + res = [] + for s in samples: + if frame == "pre": + a = s["pre"] + n = MAXK_PRE + codes = [0] * n + for i in range(n): + base = i * 5 + c = 0 + for f in range(5): + c += bisect.bisect_right(edges[f], a[base + f]) * (Q ** f) + codes[i] = c + else: + a = s["fly"] + n = MAXK_FLY + codes = [0] * n + for i in range(n): + if a[i] is None: + codes[i] = -1 + continue + c = 0 + for f in range(5): + c += bisect.bisect_right(edges[f], a[i][f]) * (Q ** f) + codes[i] = c + res.append(codes) + return res + + +# ------------------------------------------------------------------ the model +def order_window(w, mode, rng): + if mode == "temporal": + return w + if mode == "reverse": + return w[::-1] + if mode == "shuffled": + return [w[i] for i in rng.sample(range(len(w)), len(w))] + raise ValueError(mode) + + +def build_counts(windows, ys, mode, Dcap, rng): + """cbyorder[j][context] = [ {target_bin: count}, total ]. + + The model is a standard interpolated (Jelinek-Mercer) suffix backoff: for a + window w the prediction for the next-state target is + P = global + for j = 1..K: P = (count(suffix_j) + A*P) / (total(suffix_j) + A) + so a longer context is only believed as far as the data supports it, and the + model can never do much worse than the shorter one. This keeps the MODEL + uninteresting, which is what the gate needs.""" + cbyorder = [dict() for _ in range(Dcap + 1)] + for w, y in zip(windows, ys): + wo = order_window(w, mode, rng) + ctx = () + for j in range(1, min(Dcap, len(wo)) + 1): + ctx = (wo[-j],) + ctx + e = cbyorder[j].get(ctx) + if e is None: + e = [{}, 0] + cbyorder[j][ctx] = e + e[0][y] = e[0].get(y, 0) + 1 + e[1] += 1 + return cbyorder + + +NBINS = len(TARGET_EDGES) + 1 + + +def glob_vec(glob, nbins=NBINS): + tot = sum(glob.values()) + return [(glob.get(b, 0)) / tot for b in range(nbins)] + + +def predict(w, cbyorder, P0, K, A): + P = list(P0) + for j in range(1, min(K, len(w), len(cbyorder) - 1) + 1): + ctx = tuple(w[-j:]) + e = cbyorder[j].get(ctx) + if e is None: + continue + cnt, tot = e + P = [(cnt.get(b, 0) + A * P[b]) / (tot + A) for b in range(len(P))] + return P + + +def evaluate(windows, ys, cbyorder, P0, mode, Kdepth, A, rng): + acc = 0 + n = 0 + ll = 0.0 + hitp = 0.0 + for w, y in zip(windows, ys): + wo = order_window(w, mode, rng) + P = predict(wo, cbyorder, P0, Kdepth, A) + best = max(range(len(P)), key=lambda b: (P[b], -b)) + if best == y: + acc += 1 + ll += -math.log2(max(P[y], 1e-12)) + hitp += P[HIT_BIN] + n += 1 + return {"n": n, "acc": acc / n, "logloss": ll / n, + "implied_hit": hitp / n} + + +def majority_floor(samples): + train = [s for s in samples if s["_split"] == "train"] + glob = collections.Counter(s["tbin"] for s in train) + top = max(glob, key=lambda b: glob[b]) + acc = ll = 0.0 + n = 0 + test_hit = 0 + for s in samples: + if s["_split"] != "test": + continue + n += 1 + if s["tbin"] == top: + acc += 1 + ll += -math.log2(glob[s["tbin"]] / sum(glob.values())) + test_hit += 1 if s["tbin"] == HIT_BIN else 0 + return {"top": top, "n": n, "acc": acc / n, "logloss": ll / n, + "emp_hit": test_hit / n, + "dist": {str(k): v / sum(glob.values()) for k, v in sorted(glob.items())}} + + +def recurrence(windows, K): + """Distinct windows and repeat rate over the WHOLE corpus (no split).""" + seen = collections.Counter() + for w in windows: + k = min(K, len(w)) + seen[tuple(w[len(w) - k:])] += 1 + total = len(windows) + rep2 = sum(c for c in seen.values() if c >= 2) + return {"distinct": len(seen), "total": total, "repeat_frac": rep2 / total, + "mean_count": total / len(seen)} + + +# ------------------------------------------------------------------ driver +def split_battles(samples, seed): + battles = sorted({s["battle"] for s in samples}) + rng = random.Random(seed) + rng.shuffle(battles) + ntr = int(round(0.70 * len(battles))) + train = set(battles[:ntr]) + for s in samples: + s["_split"] = "train" if s["battle"] in train else "test" + + +def window_list(codes, frame, K): + """The ordered window for one sample. + + pre frame: the full 48-state pre-fire history ENDING at the fire tick; the + model's depth parameter selects how many of the most recent + states it may use, so K=1 is the fire-tick state itself. + fly frame: the first K states of the flight, i.e. ending at t0+K-1; the + single-state baseline is then the state at that same tick. + """ + if frame == "pre": + return list(codes) + return list(codes[:K]) + + +def run_frame(samples, frame, Ks, seeds, As): + res = {"frame": frame, "seeds": {}} + for seed in seeds: + split_battles(samples, seed) + tr = [i for i, s in enumerate(samples) if s["_split"] == "train"] + te = [i for i, s in enumerate(samples) if s["_split"] == "test"] + ytr = [samples[i]["tbin"] for i in tr] + yte = [samples[i]["tbin"] for i in te] + seed_res = {"majority": majority_floor(samples), "Q": {}} + for Q in (2, 3, 4): + edges = frame_edges(samples, frame, Q) + codes = apply_codes(samples, frame, edges, Q) + glob = {} + for i in tr: + glob[samples[i]["tbin"]] = glob.get(samples[i]["tbin"], 0) + 1 + P0 = glob_vec(glob) + qres = {} + for mode in ("temporal", "shuffled", "reverse"): + mres = {str(A): {} for A in As} + cache = {} + for K in Ks: + wid = "full" if frame == "pre" else K + if wid not in cache: + wl = [window_list(codes[i], frame, K) for i in range(len(samples))] + cby = build_counts([wl[i] for i in tr], ytr, mode, D_CAP, + random.Random(1000 + seed)) + cache[wid] = (cby, wl) + cby, wl = cache[wid] + wte = [wl[i] for i in te] + kd = min(K, D_CAP) + for A in As: + rnge = random.Random(4000 + seed * 13 + K) + mres[str(A)][str(K)] = { + "window": evaluate(wte, yte, cby, P0, mode, kd, A, rnge)} + qres[mode] = mres + # single-state-at-the-same-decision-tick baseline (true recent state) + sres = {str(A): {} for A in As} + for K in Ks: + wid = "full" if frame == "pre" else K + wl = [window_list(codes[i], frame, K) for i in range(len(samples))] + cby = build_counts([wl[i] for i in tr], ytr, "temporal", D_CAP, + random.Random(1000 + seed)) + wte = [wl[i] for i in te] + for A in As: + sres[str(A)][str(K)] = evaluate( + wte, yte, cby, P0, "temporal", 1, A, + random.Random(5000 + seed * 17 + K)) + qres["single"] = sres + qres["recurrence"] = {str(K): recurrence( + [window_list(codes[i], frame, K) for i in range(len(samples))], K) + for K in Ks} + seed_res["Q"][str(Q)] = qres + res["seeds"][str(seed)] = seed_res + return res + + +def mean_over(xs): + return statistics.fmean(xs) if xs else float("nan") + + +def cell(res, frame, Q, mode, A, K, key="window"): + if key == "single": + q = lambda sd: res[frame]["seeds"][sd]["Q"][str(Q)]["single"][str(A)][str(K)] + else: + q = lambda sd: res[frame]["seeds"][sd]["Q"][str(Q)][mode][str(A)][str(K)][key] + a = [q(sd) for sd in res[frame]["seeds"]] + return (mean_over([c["acc"] for c in a]), + mean_over([c["logloss"] for c in a]), + mean_over([c["implied_hit"] for c in a])) + + +def render(res, out, A_primary): + lines = [] + + def p(s=""): + lines.append(s) + print(s) + + for frame in res: + Ks = K_PRE if frame == "pre" else K_FLY + p("=" * 100) + p("FRAME %s%s" % (frame, " (window ENDS at the fire tick, looks BACK)" + if frame == "pre" else + " (window STARTS at the fire tick, ends at t0+K-1)")) + p("=" * 100) + maj = [res[frame]["seeds"][sd]["majority"] for sd in res[frame]["seeds"]] + p("MAJORITY / NO-WINDOW FLOOR (test acc %.4f, log-loss %.4f bits," + " empirical hit %.4f)" % (mean_over([m["acc"] for m in maj]), + mean_over([m["logloss"] for m in maj]), + mean_over([m["emp_hit"] for m in maj]))) + p(" target-bin edges %s px -> central +-18 px hit bin. At the median" + % TARGET_EDGES) + p(" fire range (487 px) the 36 px hit window subtends %.2f deg; at 450 px" + % math.degrees(2 * math.atan(18.0 / 487.0))) + p(" it is %.2f deg; at 100 px %.2f deg. (atan(18/range).)" + % (math.degrees(2 * math.atan(18.0 / 450.0)), + math.degrees(2 * math.atan(18.0 / 100.0)))) + p(" target-bin distribution on train: %s" % + ", ".join("%s:%.3f" % (k, v) for k, v in sorted(maj[0]["dist"].items()))) + p() + for Q in (2, 3, 4): + nstates = Q ** 5 + p("-" * 100) + p("COARSENESS Q=%d -> %d distinct single states (%.1f bits)" + % (Q, nstates, math.log2(nstates))) + p(" %-4s | %-24s | %-24s | %-13s | %-13s" % + ("K", "single@D (temporal)", "window (temporal)", "window=SHUFFLED", + "window=REVERSE")) + p(" %-4s | %-24s | %-24s | %-13s | %-13s" % + ("", "logloss acc hitP", "logloss acc hitP", "logloss", + "logloss")) + for K in Ks: + sc = cell(res, frame, Q, "temporal", A_primary, K, "single") + tc = cell(res, frame, Q, "temporal", A_primary, K, "window") + sh = cell(res, frame, Q, "shuffled", A_primary, K, "window") + rv = cell(res, frame, Q, "reverse", A_primary, K, "window") + p(" %-4d | %.4f %.4f %.4f | %.4f %.4f %.4f | %.4f | %.4f" + % (K, sc[1], sc[0], sc[2], tc[1], tc[0], tc[2], + sh[1], rv[1])) + rec = res[frame]["seeds"][sorted(res[frame]["seeds"])[0]]["Q"][str(Q)]["recurrence"] + p(" recurrence, distinct ordered window tuples over the whole corpus:") + for K in Ks: + r = rec[str(K)] + p(" K=%-2d distinct=%-8d of %-6d (mean count %.2f, repeat_frac %.3f)" + % (K, r["distinct"], r["total"], r["mean_count"], r["repeat_frac"])) + p() + p("=" * 100) + p("HEADLINE (mean over %d battle-split seeds; A=%g)" % + (len(res[frame]["seeds"]), A_primary)) + p(" held-out log-loss. delta_window = window - single@D (NEGATIVE = the") + p(" window beats the single state at the same decision tick)") + for Q in (2, 3, 4): + srow = [cell(res, frame, Q, "temporal", A_primary, K, "single")[1] for K in Ks] + trow = [cell(res, frame, Q, "temporal", A_primary, K, "window")[1] for K in Ks] + p(" Q=%d single@D " % Q + " ".join("K=%d %.4f" % (K, v) + for K, v in zip(Ks, srow))) + p(" window " + " ".join("K=%d %.4f(%+.4f)" % (K, t, t - s) + for K, t, s in zip(Ks, trow, srow))) + p(" shuffle control: window(shuffled) - window(temporal) (must be >>0)") + for Q in (2, 3, 4): + row = [cell(res, frame, Q, "shuffled", A_primary, K, "window")[1] - + cell(res, frame, Q, "temporal", A_primary, K, "window")[1] + for K in Ks] + p(" Q=%d " % Q + " ".join("K=%d %+.4f" % (K, v) for K, v in zip(Ks, row))) + p(" reverse control: window(reverse) - window(temporal)") + for Q in (2, 3, 4): + row = [cell(res, frame, Q, "reverse", A_primary, K, "window")[1] - + cell(res, frame, Q, "temporal", A_primary, K, "window")[1] + for K in Ks] + p(" Q=%d " % Q + " ".join("K=%d %+.4f" % (K, v) for K, v in zip(Ks, row))) + p(" robustness in the interpolation strength A (window temporal log-loss):") + for Q in (2, 3, 4): + for A in out.get("A_all", []): + row = [cell(res, frame, Q, "temporal", A, K, "window")[1] for K in Ks] + p(" Q=%d A=%-4g " % (Q, A) + + " ".join("K=%d %.4f" % (K, v) for K, v in zip(Ks, row))) + p("=" * 100) + out["report"] = lines + + +def main(): + ap = argparse.ArgumentParser() + ap.add_argument("--tfil", default="/tmp/tfil_ab2/out") + ap.add_argument("--json", default=None) + ap.add_argument("--limit-runs", type=int, default=0) + ap.add_argument("--seed", type=int, default=1) + ap.add_argument("--seeds", type=int, default=3) + ap.add_argument("--frames", default="pre") + ap.add_argument("--alphas", default="1,5,20") + a = ap.parse_args() + + runs = dodge.discover_tfil(a.tfil) + if a.limit_runs: + runs = runs[:a.limit_runs] + print("[gate] %d battles" % len(runs), file=sys.stderr) + samples = [] + for k, run in enumerate(runs): + samples.extend(extract_run(run)) + if (k + 1) % 10 == 0: + print("[gate] %d/%d battles, %d shots" % (k + 1, len(runs), + len(samples)), file=sys.stderr) + print("[gate] %d samples" % len(samples), file=sys.stderr) + hit = sum(1 for s in samples if s["tbin"] == HIT_BIN) + print("[gate] empirical arrival hit bin (|perp|<18): %.4f" % (hit / len(samples)), + file=sys.stderr) + + seeds = [a.seed + i for i in range(a.seeds)] + As = [float(x) for x in a.alphas.split(",")] + A_primary = 5.0 + res = {} + nfly = 0 + for frame in a.frames.split(","): + if frame == "pre": + fs = samples + else: + kmin = max(K_FLY) + 1 # keep the whole window strictly before arrival + fs = [s for s in samples if s["karr"] >= kmin] + nfly = len(fs) + print("[gate] frame %s: %d shots with karr >= %d" % + (frame, len(fs), kmin), file=sys.stderr) + res[frame] = run_frame(fs, frame, K_PRE if frame == "pre" else K_FLY, + seeds, As) + out = {"samples": len(samples), "battles": len(runs), "seeds": seeds, + "fly_samples": nfly, + "alphas": As, "A_primary": A_primary, "A_all": As, + "D_cap": D_CAP, "target_edges": TARGET_EDGES, "hit_bin": HIT_BIN, + "k_pre": list(K_PRE), "k_fly": list(K_FLY)} + render(res, out, A_primary) + out["raw"] = res + if a.json: + with open(a.json, "w") as f: + json.dump(out, f, indent=1, default=str) + return out + + +if __name__ == "__main__": + main() diff --git a/docs/state_window_gate.md b/docs/state_window_gate.md new file mode 100644 index 0000000..8afb4c0 --- /dev/null +++ b/docs/state_window_gate.md @@ -0,0 +1,321 @@ +# The state-window gate: does a temporal WINDOW of wave-relative states beat a SINGLE state? + +**The design under test (the user's words).** *"We decide first what makes an +'environment state' ... then we feed as input a long list of these states, long +enough to have one or more patterns of movement inside."* The premise is that SBC +is a coincidence detector and that a **temporal list** of states, fed instead of a +single tick, turns "coincidence" into "movement pattern". + +**Verdict: NO.** On held-out battles a window of wave-relative states **does not** +predict DrussGT's lateral position at the bullet's arrival better than the single +state at the **same decision tick**. On the pre-fire frame the window is strictly +and substantially *worse* at every window length, every coarseness and every +smoothing strength. On the during-flight frame the apparent gain is entirely the +**later decision tick**, not the window — and where the window finally edges the +single state (K=32, Q=4) it is by 0.045 bits on a subset where the 32-window +**never repeats at all**. The design, as stated, is **dead**. The *state +definition* survives and is the useful result. + +This is a gate, not a gun. **No live win is claimed and none is measured here.** + +--- + +## 1. The state (design artifact) + +The dodge is a response to **our bullet**, so the state is **wave-relative**, never +absolute world coordinates. One state at absolute tick `t`, in the frame of the +bullet fired at `t0` along `u = (cos dir, sin dir)` (with `n = (-u_y, u_x)` the +lateral unit vector): + +| field | definition | why | +|---|---|---| +| `lat` | `(D(t) − P0) × u` — DrussGT's signed perpendicular offset from the bullet line, px | the quantity that decides the hit; signed so "which side" is visible | +| `vlat` | `lat(t) − lat(t−1)` — signed lateral velocity, px/tick | crossing vs returning | +| `toa` | `(t0 − t) + karr` — ticks until the bullet reaches its arrival plane | how much time is left to move | +| `room` | ray distance from `D(t)` along `sign(vlat)·n` until the arena wall (18 px bot radius) | room to keep running vs being cornered — the only *directional* wall field, unlike plain "distance to nearest wall" | +| `turn` | `wrap180(eh(t) − eh(t−1))` — signed turn rate, deg/tick | surfers slow to turn; turning reveals a reversal | + +**Refinements to the starting proposal, and why.** (a) was kept signed, not +absolutised, because the target is signed. (b) was made a *difference of the +lateral offset*, so it is exactly the lateral component of velocity in the bullet +frame rather than a speed. (d) "distance to the wall" was made *directional* +(room to run in the current lateral-motion direction); a plain nearest-wall +distance is not wave-relative and is nearly constant at long range. (e) +"heading/turn rate" was reduced to the **turn rate** alone, because heading +relative to the bullet is already implied by the sign of `vlat`, and the turn rate +is the thing that distinguishes a surf from a corner. + +**Quantisation (the numerosity dial).** Each field is binned into `Q ∈ {2, 3, 4}` +symbols. A state is therefore: + +| Q | bits / state | distinct states | +|---|---|---| +| 2 | **5.0** | 32 | +| 3 | **7.9** | 243 | +| 4 | **10.0** | 1024 | + +Bin edges are **quantiles of the TRAIN side only** (no test leakage); a coarse +state makes two similar situations look the same, which is what lets a +"coincidence" repeat. The sweep below is exactly the question of whether coarser +buys more recurrence than it loses in resolution. + +### The two windows tested, and why both + +A window is `K` consecutive states. Crucially, **the baseline is always the single +state at the same decision tick `D`** — otherwise a longer window would "win" only +because its last state is closer to the answer. + +* **`pre`** — `D = t0` (the fire tick); the window is the `K` pre-fire states + ending at `D`. This is what a bot can compute *before* pulling the trigger. All + `K ≤ 48` are feasible (max recorded flight is 43 ticks). +* **`fly`** — `D = t0+K−1`; the window is the first `K` states of the flight, and + the baseline is the single state at `D`. Only shots with `karr > 31` are used, + so the whole window is strictly before arrival (8156 of 54939 shots). + +The task's field `toa` only exists once a bullet is in the air, so `fly` is the +"reaction" reading; `pre` is the "am I about to be dodged?" reading. Both are +reported. + +### The target + +`perp_arr` — DrussGT's **signed** perpendicular offset from the bullet line at the +tick the bullet reaches its along-track plane. This is the miss offset that +decides the hit; unlike "required lead" it does not depend on the bullet speed. It +is quantised into 7 bins with edges `±120, ±60, ±18` px; the central `±18` px bin +is the hit window (bot radius 18 px). + +**Bin width in degrees-at-450px.** The central hit bin is 36 px wide = one bot +diameter. `atan(18/range)` is the hit half-window: **2.29°** at 450 px, 4.23° at +the median fire range (487 px), and 20.4° at 100 px. So the 36 px central bin is +**4.58° at 450 px**. The three inner bins are 36/42/60 px wide (4.58/5.34/7.63° at +450 px) — the target resolution is *finer* than the ~2.29° hit half-window, so a +model that predicts the bin is not being asked an impossible question. + +--- + +## 2. Data and split + +* **Data (MEASURED present before use):** `/tmp/tfil_ab2/out//runN.jsonl` + + `.events.jsonl` + `.rounds.json` — **70 real live battles vs the unmodified + DrussGT, 490 rounds, 54 939 shots** by ModularBot, recorded by + `tools/robocode_shim/run_bridge_battle.sh`. Per-shot geometry is re-derived by + the validated instrument `common_libs/tests/analyze_drussgt_dodge_vs_power.py` + (which this extractor imports). Attribution (`e*`=DrussGT, `s*`=us) is the one + already documented in `docs/drussgt_dodge_vs_power.md`. +* **Split (stated explicitly): BY BATTLE, never by tick.** All rounds of a battle + go to one side. A 70 %/30 % battle split (**49 train / 21 test battles**), + repeated over **3 seeds**. Bin edges are derived from the train side only. Two + ticks inside one round never straddle the split. + +--- + +## 3. Model (deliberately dull) + +The question is about **information**, not modelling, so the model is a plain +**interpolated (Jelinek–Mercer) suffix-backoff table** — the direct analogue of +SBC "counting coincidences": + +``` +P = global target-bin histogram +for j = 1..K: P <- (count(suffix_j) + A*P) / (total(suffix_j) + A) +``` + +It is order-sensitive, it can never do much worse than the shorter context, and it +degrades gracefully when a suffix is unseen. Context depth is capped at 12 (orders +above that are never repeated often enough to matter — see §5). `A ∈ {1,5,20}` is +swept; **A = 5 is primary**. A majority/no-window predictor is the floor. The +model predicts the 7-bin displacement distribution; we report held-out **accuracy** +(argmax), **log-loss** in bits, and the **implied hit probability** `P(central +bin)`. + +--- + +## 4. Result — does the window beat the single state? **No** *(MEASURED)* + +70 battles, 3 battle-split seeds, mean held-out log-loss (bits). `delta = window − +single@D`; **negative would mean the window wins**. + +### 4.1 `pre` frame — window ends at the fire tick, looks back *(54 939 shots)* + +`single@D` is the fire-tick state; it does **not** change with K. A = 5: + +| K | Q=2 single → window (Δ) | Q=3 single → window (Δ) | Q=4 single → window (Δ) | +|---|---|---|---| +| 1 | 2.4524 → 2.4524 (—) | 2.3782 → 2.3782 (—) | 2.3460 → 2.3460 (—) | +| 4 | 2.4524 → 2.5107 (**+0.058**) | 2.3782 → 2.5461 (**+0.168**) | 2.3460 → 2.5656 (**+0.220**) | +| 8 | 2.4524 → 2.8015 (**+0.349**) | 2.3782 → 2.8336 (**+0.455**) | 2.3460 → 2.7265 (**+0.381**) | +| 16 | 2.4524 → 3.1310 (**+0.679**) | 2.3782 → 2.9473 (**+0.569**) | 2.3460 → 2.7450 (**+0.399**) | +| 32 | same as K=16 (depth cap) | same | same | +| 48 | same as K=16 (depth cap) | same | same | + +Accuracy tells the same story (Q=4: single `0.409` → window `0.383`/`0.364`/ +`0.362`). The per-seed deltas are essentially identical (e.g. Q=2/K=4: +`+0.0572, +0.0534, +0.0644`) — there is no seed where the window helps. The +**heavy-smoothing** arm is the fairest to the window and it still loses: +Q=4, A=20: K=4 `2.3928` vs single `2.3557` (+0.037); Q=2, A=20: K=4 `2.4643` vs +`2.4524` (+0.012). + +**The extra history is not just useless, it is actively harmful**, and the reason +is visible in the shuffle control below: the long ordered contexts are sparse, and +the interpolation spends held-out probability on them. + +The baseline is not trivial: the single state halves the majority floor +(majority log-loss **2.6983**, acc **0.2348**; best single Q=4 **2.3460**, acc +**0.4094**). + +### 4.2 `fly` frame — window starts at the fire tick, ends at `t0+K−1` *(8 156 shots)* + +Here the **single@D itself** improves steeply as K grows, because the decision tick +is later and therefore closer to the answer. A = 5: + +| K | Q=2 single@D → window (Δ) | Q=3 single@D → window (Δ) | Q=4 single@D → window (Δ) | +|---|---|---|---| +| 1 | 2.6645 → 2.6645 (—) | 2.6741 → 2.6741 (—) | 2.7020 → 2.7020 (—) | +| 4 | 2.6376 → 2.7695 (**+0.132**) | 2.6262 → 2.8858 (**+0.260**) | 2.6397 → 2.9108 (**+0.271**) | +| 8 | 2.5659 → 3.0331 (**+0.467**) | 2.5302 → 3.0207 (**+0.490**) | 2.6101 → 2.9084 (**+0.298**) | +| 16 | 2.4047 → 3.1643 (**+0.760**) | 2.3103 → 2.6362 (**+0.326**) | 2.3853 → 2.5918 (**+0.207**) | +| 32 | 1.8365 → 1.9970 (**+0.161**) | 1.4355 → 1.4625 (**+0.027**) | **1.3121 → 1.2668 (−0.045)** | + +Read this as: **the gain is the later tick, not the window.** `single@D` alone drops +from `2.70` at K=1 to `1.31` at K=32 (Q=4) — the single state at `t0+31` is 2 +ticks from arrival and already knows the answer. The window adds nothing on top; +the only cell where it "wins" is K=32/Q=4 by **0.045 bits**, and that subset's +32-state window **never repeats** (§5), so the model is running on the single +state plus a trace of recent acceleration. Q=3 at the same K is *worse*, and +K=4–16 are worse by 5–20× that margin. + +### 4.3 The mandatory shuffle-order control *(MEASURED)* + +The order of the K states inside each window is randomly permuted, preserving the +multiset. In the `pre` frame the shuffled window is **worse** than the temporal +window at K=4 (e.g. Q=4: `2.5672` vs `2.5656`… within noise) but **better** at +K≥8 (Q=4/K=16: shuffled `2.5613` vs temporal `2.7450`). In the `fly` frame at +K=32 the shuffled window is much worse (Δ = `+0.35/ +0.80/ +1.12`). + +**How to read that, honestly.** The shuffle penalty at `fly` K=32 is **not** +evidence the window works: the 32-state window never repeats, so the only order +the model can actually use is the *recency* of the last state. Shuffling destroys +*which state is current*, and the model degrades because recency matters — a +statement about the **single state**, not the window. Where the shuffled window is +*better* than the temporal one (pre frame, K≥8), it is because random order +disables the sparse long contexts that the temporal order feeds to the model. +Either way, the window itself contributes nothing. + +A deterministic **reverse** control (reverse time, preserves recurrence) is worse +than temporal everywhere, confirming the model is genuinely order-sensitive and +that the last state is the informative one. + +--- + +## 5. Recurrence — the "we can find coincidences" premise *(MEASURED)* + +Distinct **ordered** window tuples over the whole corpus (54 939 shots; 8 156 in +the `fly` subset). A window is *learnable by exact coincidence* only if its count +is well above 1. + +| K | Q=2 distinct (mean count) | Q=3 | Q=4 | +|---|---|---|---| +| 1 | 16 (3433) | 82 (670) | 372 (148) | +| 4 | 1 747 (31.4) | 11 018 (5.0) | 24 223 (2.3) | +| 8 | 13 474 (4.1) | 37 337 (1.5) | 49 891 (**1.1**) | +| 16 | 41 447 (1.3) | 54 163 (1.01) | 54 707 (1.00) | +| 32 | 54 454 (**1.01**) | 54 754 (1.00) | 54 779 (1.00) | +| 48 | 54 744 (1.00) | 54 772 (1.00) | 54 789 (1.00) | + +(In the `fly` subset the same collapse happens earlier and harder: Q=4, K=8 already +1.02 mean count, and **K=32 is 8 156 distinct of 8 156 — literally every window is +unique**.) + +So the "long list with patterns inside" premise fails as a **combinatorial** +matter, not merely a modelling one: + +* At the coarsest state worth using (Q=2, 5 bits), only **K ≤ 8** has meaningful + recurrence — and even there the window does not beat the single state. +* At the finest (Q=4, 10 bits), K=4 already averages 2.3 observations; K≥8 is + essentially all singletons. **Learning from a window that never recurs is + impossible**, and the sweep shows it does not happen. +* The single state is the only object with a real coincidence structure: 16–372 + distinct values, every one repeated hundreds of times. + +--- + +## 6. Direct answer + +**Does a window of wave-relative states predict DrussGT's future lateral position +better than a single state on held-out battles? NO.** + +* `pre` frame: the window is worse at **every** K, Q and A; at K=8 it costs + **+0.35 to +0.46 bits** over the single state. +* `fly` frame: the whole apparent improvement is the later decision tick + (`single@D` 2.70 → 1.31 bits as K goes 1 → 32). The window adds nothing except + a 0.045-bit sliver at K=32/Q=4 on a subset whose 32-windows never repeat. +* The recurrence statistics say the same thing independently: re-usable + "patterns" of movement do not recur at any window length that carries extra + information. + +**The design — feed SBC a long temporal list of states — is dead.** Do not build +it. *(MEASURED)* + +**What survives (and is worth keeping).** The **state definition itself is a +strong single-state predictor**: the fire-tick state with 4 symbols/field +(10 bits) halves the majority log-loss (2.6983 → **2.3460** bits) and triples the +chance the predicted displacement bin is right (0.2348 → **0.4094**) on battles +the model has never seen. If anything from this line is taken forward, take the +**single** wave-relative state at Q=4 and use it as a context for a *different* +decision problem — but note the implied hit probability it produces is still the +base rate (~0.09), so it is informative about **which side** the miss falls on, not +about **whether** the shot hits. *(MEASURED/INFERRED)* + +--- + +## 7. MEASURED vs INFERRED + +**MEASURED** (exact commands in §8; numbers above) + +* 70 battles / 490 rounds / 54 939 shots; 8 156 with `karr ≥ 33`. +* Every held-out log-loss / accuracy / implied-hit number in §4, over 3 + battle-split seeds, with bin edges from train only. +* The shuffle-order and reverse-order controls. +* The distinct-window and repeat counts in §5. + +**INFERRED** + +* That the residual fly-frame "win" at K=32/Q=4 is a trace of recent acceleration + rather than a movement pattern — it is consistent with the never-repeating + 32-window and with the single state already containing `vlat`. +* That a *different* (e.g. TSetlin/SBC) learner would not reverse the answer. This + is not proved. What **is** proved is the recurrence floor: a coincidence-based + method cannot learn from windows that never recur, and by Q=4/K=8 they already + essentially never do. +* "Design is dead" applies to the **long temporal window**. It does not say the + state is useless, and it does not say a *short* (K=2) context is worthless — K=2 + was not separately swept because at Q≥3 it is already 1.5–5 observations per + context, i.e. below the point where it could help. + +**Caveats.** (1) The `fly` frame is a biased long-range subset (all shots with +`flight ≥ 33`, i.e. the longest-range quarter). (2) The model's context depth is +capped at 12; K=16/32/48 therefore share a row, but §5 shows orders above ~4 are +never repeated often enough to matter, so the cap is not the binding constraint. +(3) The target is the miss offset, not the hit; the implied hit probability is the +base rate for every model, so nothing here is a hit-rate claim. + +--- + +## 8. Reproducing + +```bash +# corpus (live captures; not in the repo) +ls /tmp/tfil_ab2/out # 70 battles: /runN.jsonl{,.events.jsonl,.rounds.json} + +python3 common_libs/tests/state_window_gate.py \ + --tfil /tmp/tfil_ab2/out --seeds 3 --frames pre,fly \ + --json common_libs/tests/fixtures/state_window_gate.json \ + > common_libs/tests/fixtures/state_window_gate_report.txt +``` + +Runtime ≈ **5 minutes**, single-threaded pure Python (no numpy required). The +script imports `common_libs/tests/analyze_drussgt_dodge_vs_power.py` for the +per-shot geometry; `common_libs/tests/fixtures/state_window_gate_report.txt` is +the verbatim captured output and `…state_window_gate.json` is the same numbers as +JSON (including the per-seed values). No offline fixture replay, no simulator: +these are the recorded real battles.