{
  "beta_fit": {
    "beta": 5.0,
    "excluded_training_ties": 0,
    "grid": [
      0.0,
      0.25,
      0.5,
      0.75,
      1.0,
      1.25,
      1.5,
      1.75,
      2.0,
      2.25,
      2.5,
      2.75,
      3.0,
      3.25,
      3.5,
      3.75,
      4.0,
      4.25,
      4.5,
      4.75,
      5.0,
      5.25,
      5.5,
      5.75,
      6.0,
      6.25,
      6.5,
      6.75,
      7.0,
      7.25,
      7.5,
      7.75,
      8.0,
      8.25,
      8.5,
      8.75,
      9.0,
      9.25,
      9.5,
      9.75,
      10.0,
      10.25,
      10.5,
      10.75,
      11.0,
      11.25,
      11.5,
      11.75,
      12.0,
      12.25,
      12.5,
      12.75,
      13.0,
      13.25,
      13.5,
      13.75,
      14.0,
      14.25,
      14.5,
      14.75,
      15.0,
      15.25,
      15.5,
      15.75,
      16.0,
      16.25,
      16.5,
      16.75,
      17.0,
      17.25,
      17.5,
      17.75,
      18.0,
      18.25,
      18.5,
      18.75,
      19.0,
      19.25,
      19.5,
      19.75,
      20.0
    ],
    "grid_losses": [
      {
        "beta": 0.0,
        "log_loss": 0.6931471805599453
      },
      {
        "beta": 0.25,
        "log_loss": 0.6807825757088822
      },
      {
        "beta": 0.5,
        "log_loss": 0.6692428793520949
      },
      {
        "beta": 0.75,
        "log_loss": 0.6585215827473992
      },
      {
        "beta": 1.0,
        "log_loss": 0.648608065397544
      },
      {
        "beta": 1.25,
        "log_loss": 0.6394879169571085
      },
      {
        "beta": 1.5,
        "log_loss": 0.6311433524956664
      },
      {
        "beta": 1.75,
        "log_loss": 0.6235536919628093
      },
      {
        "beta": 2.0,
        "log_loss": 0.6166958736532564
      },
      {
        "beta": 2.25,
        "log_loss": 0.6105449736049647
      },
      {
        "beta": 2.5,
        "log_loss": 0.6050747072726782
      },
      {
        "beta": 2.75,
        "log_loss": 0.600257895447506
      },
      {
        "beta": 3.0,
        "log_loss": 0.5960668822795092
      },
      {
        "beta": 3.25,
        "log_loss": 0.592473898685849
      },
      {
        "beta": 3.5,
        "log_loss": 0.5894513689580879
      },
      {
        "beta": 3.75,
        "log_loss": 0.5869721618410766
      },
      {
        "beta": 4.0,
        "log_loss": 0.5850097897546075
      },
      {
        "beta": 4.25,
        "log_loss": 0.5835385612963782
      },
      {
        "beta": 4.5,
        "log_loss": 0.5825336928834883
      },
      {
        "beta": 4.75,
        "log_loss": 0.5819713855519209
      },
      {
        "beta": 5.0,
        "log_loss": 0.5818288727139386
      },
      {
        "beta": 5.25,
        "log_loss": 0.5820844442165131
      },
      {
        "beta": 5.5,
        "log_loss": 0.5827174514606649
      },
      {
        "beta": 5.75,
        "log_loss": 0.5837082977116161
      },
      {
        "beta": 6.0,
        "log_loss": 0.5850384171064322
      },
      {
        "beta": 6.25,
        "log_loss": 0.5866902452823933
      },
      {
        "beta": 6.5,
        "log_loss": 0.5886471840236722
      },
      {
        "beta": 6.75,
        "log_loss": 0.5908935618635648
      },
      {
        "beta": 7.0,
        "log_loss": 0.5934145921851511
      },
      {
        "beta": 7.25,
        "log_loss": 0.5961963300313745
      },
      {
        "beta": 7.5,
        "log_loss": 0.599225628560298
      },
      {
        "beta": 7.75,
        "log_loss": 0.6024900958559412
      },
      {
        "beta": 8.0,
        "log_loss": 0.6059780526226547
      },
      {
        "beta": 8.25,
        "log_loss": 0.609678491144824
      },
      {
        "beta": 8.5,
        "log_loss": 0.6135810357777517
      },
      {
        "beta": 8.75,
        "log_loss": 0.6176759051445404
      },
      {
        "beta": 9.0,
        "log_loss": 0.6219538761430805
      },
      {
        "beta": 9.25,
        "log_loss": 0.6264062498129518
      },
      {
        "beta": 9.5,
        "log_loss": 0.6310248190709413
      },
      {
        "beta": 9.75,
        "log_loss": 0.6358018382932533
      },
      {
        "beta": 10.0,
        "log_loss": 0.6407299947001791
      },
      {
        "beta": 10.25,
        "log_loss": 0.645802381483191
      },
      {
        "beta": 10.5,
        "log_loss": 0.651012472603713
      },
      {
        "beta": 10.75,
        "log_loss": 0.6563540991860273
      },
      {
        "beta": 11.0,
        "log_loss": 0.661821427422999
      },
      {
        "beta": 11.25,
        "log_loss": 0.667408937911796
      },
      {
        "beta": 11.5,
        "log_loss": 0.6731114063369837
      },
      {
        "beta": 11.75,
        "log_loss": 0.6789238854198177
      },
      {
        "beta": 12.0,
        "log_loss": 0.6848416880549053
      },
      {
        "beta": 12.25,
        "log_loss": 0.6908603715583675
      },
      {
        "beta": 12.5,
        "log_loss": 0.6969757229550009
      },
      {
        "beta": 12.75,
        "log_loss": 0.7031837452355603
      },
      {
        "beta": 13.0,
        "log_loss": 0.7094806445190117
      },
      {
        "beta": 13.25,
        "log_loss": 0.7158628180583789
      },
      {
        "beta": 13.5,
        "log_loss": 0.7223268430325216
      },
      {
        "beta": 13.75,
        "log_loss": 0.7288694660698308
      },
      {
        "beta": 14.0,
        "log_loss": 0.7354875934533345
      },
      {
        "beta": 14.25,
        "log_loss": 0.7421782819600645
      },
      {
        "beta": 14.5,
        "log_loss": 0.7489387302907556
      },
      {
        "beta": 14.75,
        "log_loss": 0.7557662710489567
      },
      {
        "beta": 15.0,
        "log_loss": 0.7626583632315148
      },
      {
        "beta": 15.25,
        "log_loss": 0.7696125851950549
      },
      {
        "beta": 15.5,
        "log_loss": 0.7766266280656147
      },
      {
        "beta": 15.75,
        "log_loss": 0.7836982895609206
      },
      {
        "beta": 16.0,
        "log_loss": 0.7908254681970011
      },
      {
        "beta": 16.25,
        "log_loss": 0.7980061578528632
      },
      {
        "beta": 16.5,
        "log_loss": 0.8052384426688457
      },
      {
        "beta": 16.75,
        "log_loss": 0.8125204922560358
      },
      {
        "beta": 17.0,
        "log_loss": 0.8198505571957854
      },
      {
        "beta": 17.25,
        "log_loss": 0.8272269648098143
      },
      {
        "beta": 17.5,
        "log_loss": 0.8346481151828689
      },
      {
        "beta": 17.75,
        "log_loss": 0.8421124774211552
      },
      {
        "beta": 18.0,
        "log_loss": 0.8496185861309816
      },
      {
        "beta": 18.25,
        "log_loss": 0.8571650381031378
      },
      {
        "beta": 18.5,
        "log_loss": 0.8647504891896401
      },
      {
        "beta": 18.75,
        "log_loss": 0.8723736513603003
      },
      {
        "beta": 19.0,
        "log_loss": 0.8800332899275839
      },
      {
        "beta": 19.25,
        "log_loss": 0.8877282209289523
      },
      {
        "beta": 19.5,
        "log_loss": 0.8954573086567116
      },
      {
        "beta": 19.75,
        "log_loss": 0.9032194633259834
      },
      {
        "beta": 20.0,
        "log_loss": 0.9110136388721687
      }
    ],
    "intercept": 0.0,
    "objective": "mean_binary_log_loss",
    "probability_clip_epsilon": 1e-12,
    "selected_training_log_loss": 0.5818288727139386,
    "tie_break": "lowest_beta",
    "training_games": 792,
    "training_rows_sha256": "cf7ee3d118148cecce6789b556c332d59f28c20901fc7684cd09a7f5ebcdbf0e",
    "training_season": 2023
  },
  "diagnostic_type": "historical_winner_prediction_from_results_only_team_ratings",
  "limitations": [
    "This tests winner forecasts from the underlying team-strength ratings, not whether SOS or playoff rankings are correct.",
    "The pinned source is retrospective. Earlier UTC dates reconstruct event ordering, not verified pregame publication availability.",
    "TBD kickoffs are excluded from both training and evaluation. Games on the forecast UTC date never train that forecast.",
    "Only the logistic slope is fitted on 2023; rating hyperparameters and the simple Elo settings are fixed experimental choices, not established optima.",
    "2023 probability results are in-sample calibration diagnostics; only 2024 and 2025 are held out from the slope fit.",
    "All teams start each season at equal priors, with no carryover, polls, conference bonus, venue or player-availability adjustment.",
    "FCS and lower-division games are observed supporting evidence; complete schedules and original source availability are not verified.",
    "Calibration bins and sample counts are descriptive diagnostics, not confidence intervals or proof of superiority.",
    "No margin, totals, market-beating, betting-profitability or player-ranking claim is evaluated."
  ],
  "model_config": {
    "availability_adjustment_applied": false,
    "calibration_bins": 10,
    "chronology_mode": "previous_utc_date",
    "elo": {
      "home_advantage": 0.0,
      "initial_rating": 1500.0,
      "k": 20.0,
      "reset_each_season": true,
      "scale": 400.0,
      "update_boundary": "previous_utc_date"
    },
    "evaluation_cohort": "completed_non_TBD_FBS_vs_FBS_binary_results",
    "probability_clip_epsilon": 1e-12,
    "rating": {
      "margin_scale": 21.0,
      "max_iterations": 1000,
      "ridge": 4.0,
      "tolerance": 1e-09
    },
    "rating_model_version": "independent-chronological-sos/1",
    "seasons_reset_to_equal_priors": true,
    "training_cohort": "all_observed_divisions_completed_non_TBD_games",
    "venue_adjustment_applied": false
  },
  "schema_version": "apex-sos-winner-diagnostic/1",
  "seasons": {
    "2023": {
      "beta": 5.0,
      "comparisons": {
        "constant_half": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.18497474747474751,
          "ridge_minus_baseline_brier": -0.0498678472556264,
          "ridge_minus_baseline_log_loss": -0.11131830784600671
        },
        "elo": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.029671717171717238,
          "ridge_minus_baseline_brier": -0.03340294424474119,
          "ridge_minus_baseline_log_loss": -0.0780193449784824
        }
      },
      "coverage": {
        "cutoff_utc": "2024-02-01T00:00:00Z",
        "fbs_v_fbs_games": 792,
        "full_fcs_schedules_available": false,
        "games_by_subdivision_pair": {
          "fbs-fbs": 792,
          "fbs-fcs": 118,
          "fcs-fcs": 626,
          "fcs-other": 51,
          "other-other": 2106
        },
        "games_with_at_least_one_prior_only_team": 52,
        "source_exclusions": {
          "not_reported_completed": 10,
          "tbd_kickoff_excluded_from_training_and_scoring": 31
        },
        "tbd_kickoffs_excluded": 31,
        "team_ids": 704,
        "teams_by_subdivision": {
          "fbs": 133,
          "fcs": 128,
          "other": 443
        },
        "training_source_games": 3693,
        "withheld_by_rating_model": 0
      },
      "models": {
        "constant_half": {
          "accuracy": 0.5,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.25,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.2,
              "mean_probability": null,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.3,
              "mean_probability": null,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.4,
              "mean_probability": null,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 792,
              "home_win_rate": 0.5795454545454546,
              "lower_bound": 0.5,
              "mean_probability": 0.5,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.6,
              "mean_probability": null,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.7,
              "mean_probability": null,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6931471805599453,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 792
        },
        "elo": {
          "accuracy": 0.6553030303030303,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.2335350969891148,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.2,
              "mean_probability": null,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 39,
              "home_win_rate": 0.1282051282051282,
              "lower_bound": 0.3,
              "mean_probability": 0.37728425879887956,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 320,
              "home_win_rate": 0.421875,
              "lower_bound": 0.4,
              "mean_probability": 0.46464988775805605,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 399,
              "home_win_rate": 0.7268170426065163,
              "lower_bound": 0.5,
              "mean_probability": 0.5287659881888714,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 34,
              "home_win_rate": 0.8529411764705882,
              "lower_bound": 0.6,
              "mean_probability": 0.6266742648852559,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.7,
              "mean_probability": null,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.659848217692421,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 792
        },
        "ridge_margin": {
          "accuracy": 0.6849747474747475,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.2001321527443736,
          "calibration_bins": [
            {
              "count": 33,
              "home_win_rate": 0.06060606060606061,
              "lower_bound": 0.0,
              "mean_probability": 0.07389421030270642,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 57,
              "home_win_rate": 0.17543859649122806,
              "lower_bound": 0.1,
              "mean_probability": 0.15794074759233595,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 79,
              "home_win_rate": 0.27848101265822783,
              "lower_bound": 0.2,
              "mean_probability": 0.2507013724748738,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 99,
              "home_win_rate": 0.5050505050505051,
              "lower_bound": 0.3,
              "mean_probability": 0.347313080958206,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 95,
              "home_win_rate": 0.5157894736842106,
              "lower_bound": 0.4,
              "mean_probability": 0.4511455641365708,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 159,
              "home_win_rate": 0.7169811320754716,
              "lower_bound": 0.5,
              "mean_probability": 0.5319385106969737,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 96,
              "home_win_rate": 0.6979166666666666,
              "lower_bound": 0.6,
              "mean_probability": 0.6492004082101044,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 86,
              "home_win_rate": 0.7325581395348837,
              "lower_bound": 0.7,
              "mean_probability": 0.745668251381658,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 62,
              "home_win_rate": 0.9516129032258065,
              "lower_bound": 0.8,
              "mean_probability": 0.8427280775479286,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 26,
              "home_win_rate": 0.8846153846153846,
              "lower_bound": 0.9,
              "mean_probability": 0.9322897224244057,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.5818288727139386,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 792
        }
      },
      "rating_fit_diagnostics": {
        "diagnostics_are_calibrated_uncertainty": false,
        "max_final_change": 9.958594365810924e-10,
        "max_iterations": 59,
        "utc_date_fits": 83
      },
      "role": "training_probability_calibration"
    },
    "2024": {
      "beta": 5.0,
      "comparisons": {
        "constant_half": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.16478696741854637,
          "ridge_minus_baseline_brier": -0.039823169400185626,
          "ridge_minus_baseline_log_loss": -0.08505483663652202
        },
        "elo": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.0457393483709273,
          "ridge_minus_baseline_brier": -0.02516260984642235,
          "ridge_minus_baseline_log_loss": -0.05537495721334196
        }
      },
      "coverage": {
        "cutoff_utc": "2025-02-01T00:00:00Z",
        "fbs_v_fbs_games": 798,
        "full_fcs_schedules_available": false,
        "games_by_subdivision_pair": {
          "fbs-fbs": 798,
          "fbs-fcs": 120,
          "fcs-fcs": 692,
          "fcs-other": 58,
          "other-other": 2124
        },
        "games_with_at_least_one_prior_only_team": 40,
        "source_exclusions": {
          "not_reported_completed": 2,
          "tbd_kickoff_excluded_from_training_and_scoring": 7
        },
        "tbd_kickoffs_excluded": 7,
        "team_ids": 706,
        "teams_by_subdivision": {
          "fbs": 134,
          "fcs": 129,
          "other": 443
        },
        "training_source_games": 3792,
        "withheld_by_rating_model": 0
      },
      "models": {
        "constant_half": {
          "accuracy": 0.5,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.25,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.2,
              "mean_probability": null,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.3,
              "mean_probability": null,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.4,
              "mean_probability": null,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 798,
              "home_win_rate": 0.5839598997493735,
              "lower_bound": 0.5,
              "mean_probability": 0.5,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.6,
              "mean_probability": null,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.7,
              "mean_probability": null,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6931471805599453,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 798
        },
        "elo": {
          "accuracy": 0.6190476190476191,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.23533944044623673,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.2,
              "mean_probability": null,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 33,
              "home_win_rate": 0.30303030303030304,
              "lower_bound": 0.3,
              "mean_probability": 0.38396568830286776,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 329,
              "home_win_rate": 0.47416413373860183,
              "lower_bound": 0.4,
              "mean_probability": 0.465577493889344,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 391,
              "home_win_rate": 0.6675191815856778,
              "lower_bound": 0.5,
              "mean_probability": 0.527532620122565,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 44,
              "home_win_rate": 0.8636363636363636,
              "lower_bound": 0.6,
              "mean_probability": 0.6253668111656681,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 1,
              "home_win_rate": 1.0,
              "lower_bound": 0.7,
              "mean_probability": 0.7094521737828974,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6634673011367652,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 798
        },
        "ridge_margin": {
          "accuracy": 0.6647869674185464,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.21017683059981437,
          "calibration_bins": [
            {
              "count": 20,
              "home_win_rate": 0.2,
              "lower_bound": 0.0,
              "mean_probability": 0.07346879863341402,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 71,
              "home_win_rate": 0.352112676056338,
              "lower_bound": 0.1,
              "mean_probability": 0.15531014397525258,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 77,
              "home_win_rate": 0.3116883116883117,
              "lower_bound": 0.2,
              "mean_probability": 0.25254381733250975,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 89,
              "home_win_rate": 0.4044943820224719,
              "lower_bound": 0.3,
              "mean_probability": 0.35535297778282365,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 119,
              "home_win_rate": 0.5462184873949579,
              "lower_bound": 0.4,
              "mean_probability": 0.4508660178513543,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 145,
              "home_win_rate": 0.6137931034482759,
              "lower_bound": 0.5,
              "mean_probability": 0.535957447301406,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 100,
              "home_win_rate": 0.72,
              "lower_bound": 0.6,
              "mean_probability": 0.6454005785169684,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 66,
              "home_win_rate": 0.7575757575757576,
              "lower_bound": 0.7,
              "mean_probability": 0.7452322450828421,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 74,
              "home_win_rate": 0.8918918918918919,
              "lower_bound": 0.8,
              "mean_probability": 0.8419060461580227,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 37,
              "home_win_rate": 0.9459459459459459,
              "lower_bound": 0.9,
              "mean_probability": 0.9332985988353468,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6080923439234233,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 798
        }
      },
      "rating_fit_diagnostics": {
        "diagnostics_are_calibrated_uncertainty": false,
        "max_final_change": 9.818101331937612e-10,
        "max_iterations": 60,
        "utc_date_fits": 93
      },
      "role": "held_out_season"
    },
    "2025": {
      "beta": 5.0,
      "comparisons": {
        "constant_half": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.1714108910891089,
          "ridge_minus_baseline_brier": -0.047311026688569235,
          "ridge_minus_baseline_log_loss": -0.10457287305080143
        },
        "elo": {
          "ridge_lower_brier_and_log_loss": true,
          "ridge_minus_baseline_accuracy": 0.037747524752475226,
          "ridge_minus_baseline_brier": -0.029760748543510296,
          "ridge_minus_baseline_log_loss": -0.06899229434844012
        }
      },
      "coverage": {
        "cutoff_utc": "2026-02-01T00:00:00Z",
        "fbs_v_fbs_games": 808,
        "full_fcs_schedules_available": false,
        "games_by_subdivision_pair": {
          "fbs-fbs": 808,
          "fbs-fcs": 126,
          "fcs-fcs": 691,
          "fcs-other": 62,
          "other-other": 2142
        },
        "games_with_at_least_one_prior_only_team": 47,
        "source_exclusions": {
          "reported_completed_but_missing_final_score": 2
        },
        "tbd_kickoffs_excluded": 0,
        "team_ids": 699,
        "teams_by_subdivision": {
          "fbs": 136,
          "fcs": 129,
          "other": 434
        },
        "training_source_games": 3829,
        "withheld_by_rating_model": 0
      },
      "models": {
        "constant_half": {
          "accuracy": 0.5,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.25,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.2,
              "mean_probability": null,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.3,
              "mean_probability": null,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.4,
              "mean_probability": null,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 808,
              "home_win_rate": 0.5952970297029703,
              "lower_bound": 0.5,
              "mean_probability": 0.5,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.6,
              "mean_probability": null,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.7,
              "mean_probability": null,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6931471805599454,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 808
        },
        "elo": {
          "accuracy": 0.6336633663366337,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.23244972185494106,
          "calibration_bins": [
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.0,
              "mean_probability": null,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.1,
              "mean_probability": null,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 1,
              "home_win_rate": 0.0,
              "lower_bound": 0.2,
              "mean_probability": 0.28808281667670116,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 30,
              "home_win_rate": 0.13333333333333333,
              "lower_bound": 0.3,
              "mean_probability": 0.3792440398602278,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 352,
              "home_win_rate": 0.46875,
              "lower_bound": 0.4,
              "mean_probability": 0.4642265277172125,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 387,
              "home_win_rate": 0.7131782945736435,
              "lower_bound": 0.5,
              "mean_probability": 0.5281980920398511,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 38,
              "home_win_rate": 0.9473684210526315,
              "lower_bound": 0.6,
              "mean_probability": 0.6265659574258584,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.7,
              "mean_probability": null,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.8,
              "mean_probability": null,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 0,
              "home_win_rate": null,
              "lower_bound": 0.9,
              "mean_probability": null,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.6575666018575841,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 808
        },
        "ridge_margin": {
          "accuracy": 0.6714108910891089,
          "accuracy_half_credit_at_50_percent": true,
          "brier": 0.20268897331143076,
          "calibration_bins": [
            {
              "count": 24,
              "home_win_rate": 0.08333333333333333,
              "lower_bound": 0.0,
              "mean_probability": 0.06190904870611386,
              "upper_bound": 0.1,
              "upper_inclusive": false
            },
            {
              "count": 62,
              "home_win_rate": 0.3225806451612903,
              "lower_bound": 0.1,
              "mean_probability": 0.15774777634797166,
              "upper_bound": 0.2,
              "upper_inclusive": false
            },
            {
              "count": 99,
              "home_win_rate": 0.3434343434343434,
              "lower_bound": 0.2,
              "mean_probability": 0.2510873608890918,
              "upper_bound": 0.3,
              "upper_inclusive": false
            },
            {
              "count": 98,
              "home_win_rate": 0.42857142857142855,
              "lower_bound": 0.3,
              "mean_probability": 0.3506201933571496,
              "upper_bound": 0.4,
              "upper_inclusive": false
            },
            {
              "count": 105,
              "home_win_rate": 0.580952380952381,
              "lower_bound": 0.4,
              "mean_probability": 0.45326997532428737,
              "upper_bound": 0.5,
              "upper_inclusive": false
            },
            {
              "count": 152,
              "home_win_rate": 0.618421052631579,
              "lower_bound": 0.5,
              "mean_probability": 0.5336361758416649,
              "upper_bound": 0.6,
              "upper_inclusive": false
            },
            {
              "count": 95,
              "home_win_rate": 0.7578947368421053,
              "lower_bound": 0.6,
              "mean_probability": 0.6481688113477738,
              "upper_bound": 0.7,
              "upper_inclusive": false
            },
            {
              "count": 80,
              "home_win_rate": 0.8375,
              "lower_bound": 0.7,
              "mean_probability": 0.7490396219642157,
              "upper_bound": 0.8,
              "upper_inclusive": false
            },
            {
              "count": 66,
              "home_win_rate": 0.9393939393939394,
              "lower_bound": 0.8,
              "mean_probability": 0.847597447623224,
              "upper_bound": 0.9,
              "upper_inclusive": false
            },
            {
              "count": 27,
              "home_win_rate": 1.0,
              "lower_bound": 0.9,
              "mean_probability": 0.943700814005058,
              "upper_bound": 1.0,
              "upper_inclusive": true
            }
          ],
          "log_loss": 0.588574307509144,
          "log_loss_infinite": false,
          "n_excluded_ties": 0,
          "n_games": 808
        }
      },
      "rating_fit_diagnostics": {
        "diagnostics_are_calibrated_uncertainty": false,
        "max_final_change": 9.983353033149456e-10,
        "max_iterations": 60,
        "utc_date_fits": 91
      },
      "role": "held_out_season"
    }
  },
  "source_time_verified": false,
  "sources": [
    {
      "git_blob_sha1": "219370abc93233b237f528b998fc08ea1008f875",
      "gzip_sha256": "70400e714730451758042a56ade6ebb95985096ad1a06f2e83e1388f236da475",
      "original_bytes": 884855,
      "original_sha256": "7ffc245da1242fc44c021dae724029074aece78544ba498937cc7703417f0dff",
      "season": 2023,
      "source_commit": "a5e6469597b32800513b95a0e1a16414c335513a",
      "source_license": "CC BY 4.0",
      "source_path": "data/backtest/source/cfb_schedules_2023.csv.gz",
      "source_rows": 3734,
      "source_time_verified": false,
      "source_url": "https://github.com/sportsdataverse/cfbfastR-data/blob/a5e6469597b32800513b95a0e1a16414c335513a/schedules/csv/cfb_schedules_2023.csv"
    },
    {
      "git_blob_sha1": "c89eb934c4ebbf8958f6385d4771870d7add6fba",
      "gzip_sha256": "4925498934f18ec155fa4569e838eda18e17302d1876c8c2638eb6652edc8a98",
      "original_bytes": 905442,
      "original_sha256": "3e4f3cab542657015ff73d1b527c41df58e6a17acf5fbe7d6fb518a1aabcac61",
      "season": 2024,
      "source_commit": "a5e6469597b32800513b95a0e1a16414c335513a",
      "source_license": "CC BY 4.0",
      "source_path": "data/backtest/source/cfb_schedules_2024.csv.gz",
      "source_rows": 3801,
      "source_time_verified": false,
      "source_url": "https://github.com/sportsdataverse/cfbfastR-data/blob/a5e6469597b32800513b95a0e1a16414c335513a/schedules/csv/cfb_schedules_2024.csv"
    },
    {
      "git_blob_sha1": "d26f9b9c6bcb747df7bbdd4945851de7f215eb08",
      "gzip_sha256": "10614d9392afcf9e061306413cd797968934d7ccd0eeb50839fde80adfd4499e",
      "original_bytes": 840928,
      "original_sha256": "bfecf10bc5a8ffd2e3b6a76b5f0b03b406e17c1a0e03b2000bdf7e2263712db4",
      "season": 2025,
      "source_commit": "a5e6469597b32800513b95a0e1a16414c335513a",
      "source_license": "CC BY 4.0",
      "source_path": "data/backtest/source/cfb_schedules_2025.csv.gz",
      "source_rows": 3831,
      "source_time_verified": false,
      "source_url": "https://github.com/sportsdataverse/cfbfastR-data/blob/a5e6469597b32800513b95a0e1a16414c335513a/schedules/csv/cfb_schedules_2025.csv"
    }
  ]
}
