"""Allstate Claims Severity config. Kaggle competition: https://www.kaggle.com/c/allstate-claims-severity NOTE: Kaggle competition rules permit non-commercial use. You must accept the competition terms before downloading. Set up Kaggle API auth (~/.kaggle/kaggle.json) then run: python scripts/download_data.py --dataset allstate --kaggle Predicts ``loss`` (claim severity, USD) from 130 anonymised features (116 categorical, 14 continuous, plus ``id``). Gamma + log link. """ import os import sys sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from dataset_config import DatasetConfig # 116 categorical features named cat1..cat116 _CATEGORICAL = [f"cat{i}" for i in range(1, 117)] # 14 continuous features named cont1..cont14 _CONTINUOUS = [f"cont{i}" for i in range(1, 15)] config = DatasetConfig( target_col="loss", weight_col=None, split_col=None, exclude_cols=["id"], continuous_features=_CONTINUOUS, categorical_features=_CATEGORICAL, derived_features={}, glm_factors=_CONTINUOUS[:4] + _CATEGORICAL[:4], base_levels={}, # All features are anonymised - use mode levels at runtime monotone_constraints={}, # No domain knowledge for anonymised features family="gamma", link="log", prediction_floor=1.0, cap_percentile=99.5, )