%23%20%2F%2F%2F%20script%0A%23%20%5Btool.marimo.opengraph%5D%0A%23%20title%20%3D%20%22Regression%20Benchmarks%22%0A%23%20description%20%3D%20%22Run%20and%20compare%20benchmark%20pipelines%20across%20feature%20views%20and%20validation%20modes.%22%0A%23%20%2F%2F%2F%0A%0Aimport%20marimo%0A%0A__generated_with%20%3D%20%220.23.3%22%0Aapp%20%3D%20marimo.App(width%3D%22full%22%2C%20auto_download%3D%5B%22html%22%5D)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%20Regression%20benchmarks%0A%0A%20%20%20%20This%20is%20the%20main%20notebook%20for%20evaluating%20results%20from%20all%20implemented%20model%20variations.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20init()%3A%0A%20%20%20%20import%20altair%20as%20alt%0A%20%20%20%20import%20json%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20import%20numpy%20as%20np%0A%20%20%20%20import%20pandas%20as%20pd%0A%20%20%20%20from%20pathlib%20import%20Path%0A%20%20%20%20import%20sys%0A%20%20%20%20from%20wigglystuff%20import%20ParallelCoordinates%20as%20_ParallelCoordinates%0A%20%20%20%20from%20wigglystuff%20import%20TangleSlider%20as%20_TangleSlider%0A%0A%20%20%20%20def%20_ensure_repo_root_on_path()%3A%0A%20%20%20%20%20%20%20%20candidates%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20file_value%20%3D%20globals().get(%22__file__%22)%0A%20%20%20%20%20%20%20%20if%20file_value%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20candidates.append(Path(file_value).resolve())%0A%20%20%20%20%20%20%20%20candidates.append(Path.cwd().resolve())%0A%0A%20%20%20%20%20%20%20%20for%20candidate%20in%20candidates%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20current%20%3D%20candidate%20if%20candidate.is_dir()%20else%20candidate.parent%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20parent%20in%20%5Bcurrent%2C%20*current.parents%5D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(parent%20%2F%20%22experiments%22).is_dir()%20and%20(parent%20%2F%20%22notebooks%22).is_dir()%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20parent_str%20%3D%20str(parent)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20parent_str%20not%20in%20sys.path%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20sys.path.insert(0%2C%20parent_str)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20parent%0A%20%20%20%20%20%20%20%20return%20None%0A%0A%20%20%20%20_ensure_repo_root_on_path()%0A%0A%20%20%20%20from%20experiments.regression.core%20import%20(%0A%20%20%20%20%20%20%20%20EMBEDDING_SOURCE_LABELS%2C%0A%20%20%20%20%20%20%20%20estimate_total_steps%2C%0A%20%20%20%20%20%20%20%20evaluate_model_spec%20as%20_evaluate_model_spec%2C%0A%20%20%20%20%20%20%20%20fit_model_for_application%2C%0A%20%20%20%20%20%20%20%20find_pipeline_by_name%2C%0A%20%20%20%20%20%20%20%20load_workspace_bundle%20as%20_load_workspace_bundle%2C%0A%20%20%20%20%20%20%20%20run_regression_benchmark_suite%20as%20_run_regression_benchmark_suite%2C%0A%20%20%20%20%20%20%20%20select_pipelines%2C%0A%20%20%20%20)%0A%20%20%20%20from%20experiments.regression.core.result_log%20import%20append_run_results%20as%20_append_run_results%0A%0A%20%20%20%20JOIN_KEYS%20%3D%20%5B%22location_id%22%2C%20%22timestamp%22%2C%20%22split%22%5D%0A%20%20%20%20BASE_TABLE_PATH%20%3D%20Path(%22inferred%2Fbase_table.parquet%22)%0A%20%20%20%20SATELLITE_FEATURES_PATH%20%3D%20Path(%22inferred%2Fsatellite_features.parquet%22)%0A%20%20%20%20CLAY_EMBEDDINGS_PATH%20%3D%20Path(%22inferred%2Fsentinel2_embeddings.parquet%22)%0A%20%20%20%20SATMAE_EMBEDDINGS_PATH%20%3D%20Path(%22inferred%2Fsatmae_embeddings.parquet%22)%0A%20%20%20%20IMPLISAT_FEATURES_PATH%20%3D%20Path(%22inferred%2Fimplisat_features.parquet%22)%0A%20%20%20%20OUTPUT_DIR%20%3D%20Path(%22inferred%22)%0A%20%20%20%20EVAL_PREDICTIONS_PATH%20%3D%20OUTPUT_DIR%20%2F%20%22regression_benchmark_eval_predictions.parquet%22%0A%20%20%20%20SUBMISSION_PATH%20%3D%20OUTPUT_DIR%20%2F%20%22regression_benchmark_submission.csv%22%0A%20%20%20%20EXPORT_CONFIG_PATH%20%3D%20OUTPUT_DIR%20%2F%20%22regression_benchmark_export_config.json%22%0A%20%20%20%20DEFAULT_SEED%20%3D%2042%0A%0A%20%20%20%20def%20load_workspace_bundle(%0A%20%20%20%20%20%20%20%20base_path%3DBASE_TABLE_PATH%2C%0A%20%20%20%20%20%20%20%20satellite_path%3DSATELLITE_FEATURES_PATH%2C%0A%20%20%20%20%20%20%20%20clay_embeddings_path%3DCLAY_EMBEDDINGS_PATH%2C%0A%20%20%20%20%20%20%20%20satmae_embeddings_path%3DSATMAE_EMBEDDINGS_PATH%2C%0A%20%20%20%20%20%20%20%20implisat_features_path%3DIMPLISAT_FEATURES_PATH%2C%0A%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20return%20_load_workspace_bundle(%0A%20%20%20%20%20%20%20%20%20%20%20%20base_path%3Dbase_path%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20satellite_path%3Dsatellite_path%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20clay_embeddings_path%3Dclay_embeddings_path%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20satmae_embeddings_path%3Dsatmae_embeddings_path%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20implisat_features_path%3Dimplisat_features_path%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20def%20validation_rows(bundle)%3A%0A%20%20%20%20%20%20%20%20rows%20%3D%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22base%20rows%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(bundle.base)%20%3D%3D%202048%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20f%22%7Blen(bundle.base)%3A%2C%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22satellite%20rows%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(bundle.satellite)%20%3D%3D%20len(bundle.base)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20f%22%7Blen(bundle.satellite)%3A%2C%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22train%20rows%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(bundle.train)%20%3D%3D%201024%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20f%22%7Blen(bundle.train)%3A%2C%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22eval%20rows%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(bundle.eval)%20%3D%3D%201024%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20f%22%7Blen(bundle.eval)%3A%2C%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22dead%20columns%20removed%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(bundle.dead_columns)%20%3E%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20%22%2C%20%22.join(bundle.dead_columns)%20if%20bundle.dead_columns%20else%20%22none%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20%22join%20key%20uniqueness%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20not%20bundle.full.duplicated(JOIN_KEYS).any()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20%22one%20row%20per%20location-quarter%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%5D%0A%0A%20%20%20%20%20%20%20%20for%20source%2C%20label%20in%20EMBEDDING_SOURCE_LABELS.items()%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20embedding_table%20%3D%20bundle.embedding_tables%5Bsource%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20embedding_columns%20%3D%20bundle.embedding_columns_by_source%5Bsource%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20missing_train_rows%20%3D%20int(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bundle.train%5Bembedding_columns%5D.isna().any(axis%3D1).sum()%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20rows.extend(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22check%22%3A%20f%22%7Blabel%7D%20embedding%20rows%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22passed%22%3A%20len(embedding_table)%20%3D%3D%20len(bundle.base)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22detail%22%3A%20f%22%7Blen(embedding_table)%3A%2C%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20return%20rows%0A%0A%20%20%20%20def%20evaluate_model_spec(%0A%20%20%20%20%20%20%20%20frame%2C%0A%20%20%20%20%20%20%20%20view_meta%2C%0A%20%20%20%20%20%20%20%20cv_mode%2C%0A%20%20%20%20%20%20%20%20seed%2C%0A%20%20%20%20%20%20%20%20model_spec%2C%0A%20%20%20%20%20%20%20%20tuned_params%3DNone%2C%0A%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20if%20isinstance(model_spec%2C%20dict)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20pipeline_name%20%3D%20model_spec%5B%22name%22%5D%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20pipeline_name%20%3D%20model_spec%0A%20%20%20%20%20%20%20%20pipeline%20%3D%20find_pipeline_by_name(pipeline_name)%0A%20%20%20%20%20%20%20%20return%20_evaluate_model_spec(%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20view_meta%3Dview_meta%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dseed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20pipeline%3Dpipeline%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tuned_params%3Dtuned_params%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20default_seed%3DDEFAULT_SEED%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20output_dir%3DOUTPUT_DIR%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20def%20available_pipelines(view_name%2C%20tabpfn_mode%2C%20nam_mode)%3A%0A%20%20%20%20%20%20%20%20return%20select_pipelines(view_name%3Dview_name%2C%20tabpfn_mode%3Dtabpfn_mode%2C%20nam_mode%3Dnam_mode)%0A%0A%20%20%20%20def%20default_pipeline_name(view_name%2C%20tabpfn_mode%2C%20nam_mode)%3A%0A%20%20%20%20%20%20%20%20pipelines%20%3D%20available_pipelines(view_name%2C%20tabpfn_mode%2C%20nam_mode)%0A%20%20%20%20%20%20%20%20if%20not%20pipelines%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%0A%20%20%20%20%20%20%20%20preferred%20%3D%20next(%0A%20%20%20%20%20%20%20%20%20%20%20%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pipeline%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20pipeline%20in%20pipelines%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20pipeline.spec.name%20!%3D%20%22dummy_mean%22%20and%20pipeline.spec.family%20!%3D%20%22tabpfn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20None%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20if%20preferred%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20preferred%20%3D%20next(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(pipeline%20for%20pipeline%20in%20pipelines%20if%20pipeline.spec.name%20!%3D%20%22dummy_mean%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pipelines%5B0%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20return%20preferred.spec.name%0A%0A%20%20%20%20def%20run_benchmark_suite(%0A%20%20%20%20%20%20%20%20bundle%2C%0A%20%20%20%20%20%20%20%20view_name%2C%0A%20%20%20%20%20%20%20%20cv_mode%2C%0A%20%20%20%20%20%20%20%20seed%2C%0A%20%20%20%20%20%20%20%20tune_catboost%2C%0A%20%20%20%20%20%20%20%20tune_random_forest%2C%0A%20%20%20%20%20%20%20%20n_trials%2C%0A%20%20%20%20%20%20%20%20tabpfn_mode%2C%0A%20%20%20%20%20%20%20%20nam_mode%2C%0A%20%20%20%20%20%20%20%20progress_callback%3DNone%2C%0A%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20result%20%3D%20_run_regression_benchmark_suite(%0A%20%20%20%20%20%20%20%20%20%20%20%20bundle%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20view_name%3Dview_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dseed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tune_catboost%3Dtune_catboost%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tune_random_forest%3Dtune_random_forest%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20n_trials%3Dn_trials%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tabpfn_mode%3Dtabpfn_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20nam_mode%3Dnam_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20default_seed%3DDEFAULT_SEED%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20output_dir%3DOUTPUT_DIR%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20progress_callback%3Dprogress_callback%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20_append_run_results(%0A%20%20%20%20%20%20%20%20%20%20%20%20OUTPUT_DIR%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20view_name%3Dview_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dseed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20results%3Dresult%5B%22results%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tuned_params_by_family%3Dresult%5B%22tuned_params%22%5D%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20return%20result%0A%0A%20%20%20%20def%20fit_export_predictions(%0A%20%20%20%20%20%20%20%20bundle%2C%0A%20%20%20%20%20%20%20%20view_name%2C%0A%20%20%20%20%20%20%20%20model_name%2C%0A%20%20%20%20%20%20%20%20seed%2C%0A%20%20%20%20%20%20%20%20tuned_params_by_family%3DNone%2C%0A%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20view_meta%20%3D%20bundle.feature_views%5Bview_name%5D%0A%20%20%20%20%20%20%20%20pipeline%20%3D%20find_pipeline_by_name(model_name)%0A%20%20%20%20%20%20%20%20train_frame%20%3D%20bundle.train.reset_index(drop%3DTrue)%0A%20%20%20%20%20%20%20%20eval_frame%20%3D%20bundle.eval.reset_index(drop%3DTrue)%0A%20%20%20%20%20%20%20%20family_tuned_params%20%3D%20None%0A%20%20%20%20%20%20%20%20if%20isinstance(tuned_params_by_family%2C%20dict)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20family_tuned_params%20%3D%20tuned_params_by_family.get(pipeline.spec.family)%0A%20%20%20%20%20%20%20%20fit_result%20%3D%20fit_model_for_application(%0A%20%20%20%20%20%20%20%20%20%20%20%20train_frame%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20eval_frame%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20view_meta%3Dview_meta%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20pipeline%3Dpipeline%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dseed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20default_seed%3DDEFAULT_SEED%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20output_dir%3DOUTPUT_DIR%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tuned_params%3Dfamily_tuned_params%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20eval_log_predictions%20%3D%20fit_result%5B%22predicted_log%22%5D%0A%20%20%20%20%20%20%20%20eval_predictions%20%3D%20pd.Series(eval_log_predictions).map(float)%0A%20%20%20%20%20%20%20%20eval_predictions%20%3D%20eval_predictions.map(%0A%20%20%20%20%20%20%20%20%20%20%20%20lambda%20value%3A%20max(0.0%2C%20float(np.expm1(value)))%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20OUTPUT_DIR.mkdir(exist_ok%3DTrue)%0A%20%20%20%20%20%20%20%20eval_prediction_frame%20%3D%20eval_frame%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22data_id%22%2C%20%22location_id%22%2C%20%22timestamp%22%2C%20%22country%22%2C%20%22geolocation_name%22%5D%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20eval_prediction_frame%5B%22feature_view%22%5D%20%3D%20view_name%0A%20%20%20%20%20%20%20%20eval_prediction_frame%5B%22model_name%22%5D%20%3D%20model_name%0A%20%20%20%20%20%20%20%20eval_prediction_frame%5B%22construction_cost_per_m2_usd%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20eval_predictions.to_numpy()%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20eval_prediction_frame.to_parquet(EVAL_PREDICTIONS_PATH%2C%20index%3DFalse)%0A%0A%20%20%20%20%20%20%20%20submission%20%3D%20eval_prediction_frame%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22data_id%22%2C%20%22construction_cost_per_m2_usd%22%5D%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20submission.to_csv(SUBMISSION_PATH%2C%20index%3DFalse)%0A%0A%20%20%20%20%20%20%20%20config_payload%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22version%22%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22feature_view%22%3A%20view_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%22%3A%20model_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22model_family%22%3A%20pipeline.spec.family%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22seed%22%3A%20int(seed)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tuned_params_by_family%22%3A%20tuned_params_by_family%20or%20%7B%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22exported_at%22%3A%20pd.Timestamp.utcnow().isoformat()%2C%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20EXPORT_CONFIG_PATH.write_text(%0A%20%20%20%20%20%20%20%20%20%20%20%20json.dumps(config_payload%2C%20indent%3D2%2C%20sort_keys%3DTrue)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20encoding%3D%22utf-8%22%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20return%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22config%22%3A%20config_payload%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22config_path%22%3A%20str(EXPORT_CONFIG_PATH)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22eval_predictions%22%3A%20eval_prediction_frame%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22submission%22%3A%20submission%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22eval_path%22%3A%20str(EVAL_PREDICTIONS_PATH)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22submission_path%22%3A%20str(SUBMISSION_PATH)%2C%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20def%20run_research_diagnostics(bundle%2C%20seed%3DDEFAULT_SEED)%3A%0A%20%20%20%20%20%20%20%20diagnostics%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20diagnostic_models%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_core%22%3A%20%7B%22name%22%3A%20%22ridge%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_sat%22%3A%20%7B%22name%22%3A%20%22ridge%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_core_plus_viirs_s2_products%22%3A%20%7B%22name%22%3A%20%22ridge%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22clay_pca%22%3A%20%7B%22name%22%3A%20%22ridge_pca64%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22satmae_pca%22%3A%20%7B%22name%22%3A%20%22ridge_pca64%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_core_plus_clay_cluster%22%3A%20%7B%22name%22%3A%20%22ridge_cluster%22%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_core_plus_satmae_cluster%22%3A%20%7B%22name%22%3A%20%22ridge_cluster%22%7D%2C%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20for%20cv_mode%20in%20%5B%22research_country_year%22%2C%20%22group_location%22%2C%20%22kfold%22%5D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20view_name%2C%20model_spec%20in%20diagnostic_models.items()%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20result_row%2C%20_%20%3D%20evaluate_model_spec(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bundle.train.reset_index(drop%3DTrue)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20view_meta%3Dbundle.feature_views%5Bview_name%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dseed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20model_spec%3Dmodel_spec%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20diagnostics.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22feature_view%22%3A%20view_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22feature_label%22%3A%20bundle.feature_views%5Bview_name%5D%5B%22label%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22cv_mode%22%3A%20cv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22mean_rmsle%22%3A%20result_row%5B%22mean_rmsle%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22std_rmsle%22%3A%20result_row%5B%22std_rmsle%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20except%20Exception%20as%20exc%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20diagnostics.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22feature_view%22%3A%20view_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22feature_label%22%3A%20bundle.feature_views%5Bview_name%5D%5B%22label%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22cv_mode%22%3A%20cv_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22mean_rmsle%22%3A%20float(%22nan%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22std_rmsle%22%3A%20float(%22nan%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22notes%22%3A%20str(exc)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20return%20pd.DataFrame(diagnostics)%0A%0A%20%20%20%20def%20build_benchmark_artifacts(benchmark)%3A%0A%20%20%20%20%20%20%20%20empty%20%3D%20pd.DataFrame()%0A%20%20%20%20%20%20%20%20if%20benchmark%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20empty%2C%20empty%2C%20empty%2C%20empty%2C%20empty%0A%0A%20%20%20%20%20%20%20%20results%20%3D%20benchmark%5B%22results%22%5D.copy().reset_index(drop%3DTrue)%0A%20%20%20%20%20%20%20%20leaderboard%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20results%5Bresults%5B%22status%22%5D%20%3D%3D%20%22ok%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20.copy()%0A%20%20%20%20%20%20%20%20%20%20%20%20.sort_values(%5B%22mean_rmsle%22%2C%20%22fit_seconds%22%5D%2C%20na_position%3D%22last%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20.reset_index(drop%3DTrue)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20if%20leaderboard.empty%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20leaderboard%2C%20empty%2C%20empty%2C%20empty%2C%20empty%0A%0A%20%20%20%20%20%20%20%20best_score%20%3D%20float(leaderboard%5B%22mean_rmsle%22%5D.iloc%5B0%5D)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22rank%22%5D%20%3D%20np.arange(1%2C%20len(leaderboard)%20%2B%201)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22delta_vs_best%22%5D%20%3D%20leaderboard%5B%22mean_rmsle%22%5D%20-%20best_score%0A%20%20%20%20%20%20%20%20leaderboard%5B%22mean_rmsle_low%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard%5B%22mean_rmsle%22%5D%20-%20leaderboard%5B%22std_rmsle%22%5D%0A%20%20%20%20%20%20%20%20).clip(lower%3D0)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22mean_rmsle_high%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard%5B%22mean_rmsle%22%5D%20%2B%20leaderboard%5B%22std_rmsle%22%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22fit_seconds%22%5D%20%3D%20leaderboard%5B%22fit_seconds%22%5D.clip(lower%3D1e-3)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22delta_label%22%5D%20%3D%20leaderboard%5B%22delta_vs_best%22%5D.map(%0A%20%20%20%20%20%20%20%20%20%20%20%20lambda%20value%3A%20%22best%22%20if%20abs(value)%20%3C%201e-9%20else%20f%22%2B%7Bvalue%3A.4f%7D%22%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20leaderboard%5B%22selection_label%22%5D%20%3D%20%22Dominated%22%0A%0A%20%20%20%20%20%20%20%20values%20%3D%20leaderboard%5B%5B%22mean_rmsle%22%2C%20%22fit_seconds%22%5D%5D.to_numpy(dtype%3Dfloat)%0A%20%20%20%20%20%20%20%20pareto_mask%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20for%20idx%2C%20row%20in%20enumerate(values)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20dominated%20%3D%20False%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20other_idx%2C%20other%20in%20enumerate(values)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20idx%20%3D%3D%20other_idx%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20continue%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20other%5B0%5D%20%3C%3D%20row%5B0%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20other%5B1%5D%20%3C%3D%20row%5B1%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20and%20(other%5B0%5D%20%3C%20row%5B0%5D%20or%20other%5B1%5D%20%3C%20row%5B1%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20dominated%20%3D%20True%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20break%0A%20%20%20%20%20%20%20%20%20%20%20%20pareto_mask.append(not%20dominated)%0A%0A%20%20%20%20%20%20%20%20leaderboard%5B%22is_pareto%22%5D%20%3D%20pareto_mask%0A%20%20%20%20%20%20%20%20leaderboard.loc%5Bleaderboard%5B%22is_pareto%22%5D%2C%20%22selection_label%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Pareto%20frontier%22%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20leaderboard.loc%5Bleaderboard%5B%22rank%22%5D%20%3D%3D%201%2C%20%22selection_label%22%5D%20%3D%20%22Best%20score%22%0A%0A%20%20%20%20%20%20%20%20oof_frames%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20fold_rows%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20subgroup_rows%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20calibration_rows%20%3D%20%5B%5D%0A%0A%20%20%20%20%20%20%20%20for%20model_name%2C%20raw_frame%20in%20benchmark%5B%22oof_by_model%22%5D.items()%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%20%3D%20raw_frame.copy()%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22model_name%22%5D%20%3D%20model_name%0A%20%20%20%20%20%20%20%20%20%20%20%20safe_actual%20%3D%20frame%5B%22actual_usd%22%5D.clip(lower%3D1.0)%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22signed_pct_error%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22predicted_usd%22%5D%20-%20frame%5B%22actual_usd%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%2F%20safe_actual%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22abs_pct_error%22%5D%20%3D%20frame%5B%22signed_pct_error%22%5D.abs()%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22residual_direction%22%5D%20%3D%20np.where(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22residual_usd%22%5D%20%3E%3D%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Over%20prediction%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Under%20prediction%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20decile_count%20%3D%20max(1%2C%20min(10%2C%20len(frame)))%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22actual_decile%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pd.qcut(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22actual_usd%22%5D.rank(method%3D%22first%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20q%3Ddecile_count%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20labels%3DFalse%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20duplicates%3D%22drop%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20).astype(%22Int64%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%201%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22predicted_decile%22%5D%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pd.qcut(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame%5B%22predicted_usd%22%5D.rank(method%3D%22first%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20q%3Ddecile_count%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20labels%3DFalse%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20duplicates%3D%22drop%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20).astype(%22Int64%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%201%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20oof_frames.append(frame)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20fold_name%2C%20fold_frame%20in%20frame.groupby(%22fold%22%2C%20dropna%3DFalse)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fold_rows.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%22%3A%20model_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22fold%22%3A%20fold_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22rows%22%3A%20int(len(fold_frame))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22rmsle%22%3A%20float(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20np.sqrt(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20np.mean(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fold_frame%5B%22predicted_log%22%5D.to_numpy()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-%20fold_frame%5B%22actual_log%22%5D.to_numpy()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20**%202%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22mae_usd%22%3A%20float(fold_frame%5B%22abs_residual_usd%22%5D.mean())%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22median_signed_pct_error%22%3A%20float(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fold_frame%5B%22signed_pct_error%22%5D.median()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20subgroup_frame%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame.groupby(%5B%22country%22%2C%20%22year%22%5D%2C%20dropna%3DFalse)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.agg(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20rows%3D(%22row_id%22%2C%20%22size%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mean_abs_resid%3D(%22abs_residual_usd%22%2C%20%22mean%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20median_signed_pct_error%3D(%22signed_pct_error%22%2C%20%22median%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20p90_abs_pct_error%3D(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22abs_pct_error%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lambda%20values%3A%20float(np.quantile(values%2C%200.9))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.reset_index()%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20subgroup_frame%5B%22model_name%22%5D%20%3D%20model_name%0A%20%20%20%20%20%20%20%20%20%20%20%20subgroup_rows.append(subgroup_frame)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_frame%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20frame.groupby(%22predicted_decile%22%2C%20dropna%3DFalse)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.agg(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20rows%3D(%22row_id%22%2C%20%22size%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20predicted_bin_mean%3D(%22predicted_usd%22%2C%20%22mean%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20actual_bin_mean%3D(%22actual_usd%22%2C%20%22mean%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mean_abs_pct_error%3D(%22abs_pct_error%22%2C%20%22mean%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20median_signed_pct_error%3D(%22signed_pct_error%22%2C%20%22median%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.reset_index()%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_frame%5B%22model_name%22%5D%20%3D%20model_name%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_frame%5B%22predicted_decile_label%22%5D%20%3D%20calibration_frame%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22predicted_decile%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D.map(lambda%20value%3A%20f%22D%7Bint(value)%7D%22%20if%20pd.notna(value)%20else%20%22n%2Fa%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_rows.append(calibration_frame)%0A%0A%20%20%20%20%20%20%20%20oof_long%20%3D%20pd.concat(oof_frames%2C%20ignore_index%3DTrue)%0A%20%20%20%20%20%20%20%20fold_metrics%20%3D%20pd.DataFrame(fold_rows)%0A%20%20%20%20%20%20%20%20subgroup_metrics%20%3D%20pd.concat(subgroup_rows%2C%20ignore_index%3DTrue)%0A%20%20%20%20%20%20%20%20calibration_metrics%20%3D%20pd.concat(calibration_rows%2C%20ignore_index%3DTrue)%0A%20%20%20%20%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20oof_long%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20fold_metrics%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20subgroup_metrics%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_metrics%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20_%20%3D%20alt.data_transformers.enable(%22vegafusion%22)%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20DEFAULT_SEED%2C%0A%20%20%20%20%20%20%20%20EMBEDDING_SOURCE_LABELS%2C%0A%20%20%20%20%20%20%20%20alt%2C%0A%20%20%20%20%20%20%20%20available_pipelines%2C%0A%20%20%20%20%20%20%20%20build_benchmark_artifacts%2C%0A%20%20%20%20%20%20%20%20default_pipeline_name%2C%0A%20%20%20%20%20%20%20%20estimate_total_steps%2C%0A%20%20%20%20%20%20%20%20find_pipeline_by_name%2C%0A%20%20%20%20%20%20%20%20fit_export_predictions%2C%0A%20%20%20%20%20%20%20%20load_workspace_bundle%2C%0A%20%20%20%20%20%20%20%20mo%2C%0A%20%20%20%20%20%20%20%20pd%2C%0A%20%20%20%20%20%20%20%20run_benchmark_suite%2C%0A%20%20%20%20%20%20%20%20run_research_diagnostics%2C%0A%20%20%20%20%20%20%20%20validation_rows%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20workspace_summary(%0A%20%20%20%20EMBEDDING_SOURCE_LABELS%2C%0A%20%20%20%20alt%2C%0A%20%20%20%20load_workspace_bundle%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20run_research_diagnostics%2C%0A%20%20%20%20validation_rows%2C%0A)%3A%0A%20%20%20%20from%20wigglystuff%20import%20ParallelCoordinates%20as%20_ParallelCoordsSummary%0A%0A%20%20%20%20bundle%20%3D%20load_workspace_bundle()%0A%20%20%20%20checks%20%3D%20validation_rows(bundle)%0A%20%20%20%20validation_frame%20%3D%20__import__(%22pandas%22).DataFrame(checks)%0A%0A%20%20%20%20status_cards%20%3D%20%5B%5D%0A%20%20%20%20for%20row%20in%20checks%3A%0A%20%20%20%20%20%20%20%20kind%20%3D%20%22success%22%20if%20row%5B%22passed%22%5D%20else%20%22danger%22%0A%20%20%20%20%20%20%20%20status_cards.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(f%22**%7Brow%5B'check'%5D%7D**%5Cn%5Cn%7Brow%5B'detail'%5D%7D%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3Dkind%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20stats%20%3D%20%5B%0A%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**%7Blen(bundle.train)%3A%2C%7D%20train%20%2F%20%7Blen(bundle.eval)%3A%2C%7D%20eval**%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bbundle.train%5B'location_id'%5D.nunique()%7D%20locations%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**%7Blen(bundle.satellite_columns)%7D%20engineered%20satellite%20features**%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2B%20%22%20%2F%20%22.join(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bbundle.embedding_dimensions_by_source%5Bsource%5D%7D%20%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7BEMBEDDING_SOURCE_LABELS%5Bsource%5D%7D%20dimensions%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20source%20in%20EMBEDDING_SOURCE_LABELS%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Dropped%20all-null%20schema**%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7B'%2C%20'.join(bundle.dead_columns)%7D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22warn%22%2C%0A%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%5D%0A%0A%20%20%20%20diagnostics%20%3D%20run_research_diagnostics(bundle)%0A%0A%20%20%20%20diagnostics_chart%20%3D%20(%0A%20%20%20%20%20%20%20%20alt.Chart(diagnostics)%0A%20%20%20%20%20%20%20%20.mark_bar(cornerRadiusTopLeft%3D4%2C%20cornerRadiusTopRight%3D4)%0A%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22feature_label%3AN%22%2C%20title%3DNone%2C%20sort%3D%22-y%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22mean_rmsle%3AQ%22%2C%20title%3D%22RMSLE%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22cv_mode%3AN%22%2C%20title%3D%22CV%20mode%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%22feature_label%3AN%22%2C%20%22cv_mode%3AN%22%2C%20alt.Tooltip(%22mean_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20xOffset%3D%22cv_mode%3AN%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20.properties(height%3D320%2C%20width%3D720%2C%20title%3D%22Ridge%20across%20feature%20views%22)%0A%20%20%20%20)%0A%0A%20%20%20%20mo.vstack(%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(stats%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Data%20import%20result%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20mo.hstack(status_cards%5B%3A5%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20mo.hstack(status_cards%5B5%3A%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.ui.table(validation_frame%2C%20label%3D%22Validation%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20diagnostics_chart%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20)%0A%20%20%20%20return%20(bundle%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20controls(DEFAULT_SEED%2C%20bundle%2C%20mo)%3A%0A%20%20%20%20feature_view%20%3D%20mo.ui.dropdown(%0A%20%20%20%20%20%20%20%20options%3D%7Bmeta%5B%22label%22%5D%3A%20name%20for%20name%2C%20meta%20in%20bundle.feature_views.items()%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Tabular%20Baseline%22%2C%0A%20%20%20%20%20%20%20%20label%3D%22Feature%20view%22%2C%0A%20%20%20%20)%0A%20%20%20%20cv_mode%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Hold%20out%20(country-year%20tuples)%22%3A%20%22research_country_year%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22GroupKFold%20by%20location%22%3A%20%22group_location%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22KFold%22%3A%20%22kfold%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Hold%20out%20(country-year%20tuples)%22%2C%0A%20%20%20%20%20%20%20%20inline%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Validation%20method%22%2C%0A%20%20%20%20)%0A%20%20%20%20seed%20%3D%20mo.ui.number(%0A%20%20%20%20%20%20%20%20start%3D0%2C%0A%20%20%20%20%20%20%20%20stop%3D10_000%2C%0A%20%20%20%20%20%20%20%20step%3D1%2C%0A%20%20%20%20%20%20%20%20value%3DDEFAULT_SEED%2C%0A%20%20%20%20%20%20%20%20label%3D%22Random%20seed%22%2C%0A%20%20%20%20)%0A%20%20%20%20tune_catboost%20%3D%20mo.ui.switch(%0A%20%20%20%20%20%20%20%20value%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Tune%20CatBoost%22%2C%0A%20%20%20%20)%0A%20%20%20%20tune_random_forest%20%3D%20mo.ui.switch(%0A%20%20%20%20%20%20%20%20value%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Tune%20Random%20Forest%22%2C%0A%20%20%20%20)%0A%20%20%20%20n_trials%20%3D%20mo.ui.slider(%0A%20%20%20%20%20%20%20%20start%3D4%2C%0A%20%20%20%20%20%20%20%20stop%3D42%2C%0A%20%20%20%20%20%20%20%20step%3D2%2C%0A%20%20%20%20%20%20%20%20value%3D12%2C%0A%20%20%20%20%20%20%20%20show_value%3DTrue%2C%0A%20%20%20%20%20%20%20%20include_input%3DTrue%2C%0A%20%20%20%20%20%20%20%20label%3D%22Optuna%20trials%22%2C%0A%20%20%20%20)%0A%20%20%20%20tabpfn_mode%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Off%22%3A%20%22none%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Numeric%22%3A%20%22numeric%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Full%22%3A%20%22full%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Off%22%2C%0A%20%20%20%20%20%20%20%20inline%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22TabPFN%20mode%22%2C%0A%20%20%20%20)%0A%20%20%20%20nam_mode%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Off%22%3A%20%22none%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Fast%22%3A%20%22fast%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Full%22%3A%20%22full%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Off%22%2C%0A%20%20%20%20%20%20%20%20inline%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22NAM%20mode%22%2C%0A%20%20%20%20)%0A%20%20%20%20include_dummy_mean%20%3D%20mo.ui.checkbox(%0A%20%20%20%20%20%20%20%20value%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Include%20dummy_mean%20in%20leaderboard%2Fplots%22%2C%0A%20%20%20%20)%0A%20%20%20%20run_experiments%20%3D%20mo.ui.run_button(%0A%20%20%20%20%20%20%20%20kind%3D%22success%22%2C%0A%20%20%20%20%20%20%20%20label%3D%22Run%20selected%20regression%20benchmark%22%2C%0A%20%20%20%20%20%20%20%20tooltip%3D%22Benchmarks%20the%20selected%20feature%20view%20under%20the%20selected%20CV%20mode.%22%2C%0A%20%20%20%20)%0A%20%20%20%20export_predictions%20%3D%20mo.ui.run_button(%0A%20%20%20%20%20%20%20%20kind%3D%22warn%22%2C%0A%20%20%20%20%20%20%20%20label%3D%22Fit%20selected%20model%20%2B%20export%20predictions%22%2C%0A%20%20%20%20%20%20%20%20tooltip%3D%22Writes%20Parquet%20predictions%20and%20a%20submission%20CSV%20to%20inferred%2F.%22%2C%0A%20%20%20%20)%0A%0A%20%20%20%20mo.vstack(%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Experiment%20Launch%20Control%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bfeature_view%2C%20cv_mode%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20seed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_catboost%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_random_forest%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tabpfn_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nam_mode%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20include_dummy_mean%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20justify%3D%22start%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bn_trials%2C%20run_experiments%2C%20export_predictions%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20)%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20cv_mode%2C%0A%20%20%20%20%20%20%20%20export_predictions%2C%0A%20%20%20%20%20%20%20%20feature_view%2C%0A%20%20%20%20%20%20%20%20include_dummy_mean%2C%0A%20%20%20%20%20%20%20%20n_trials%2C%0A%20%20%20%20%20%20%20%20nam_mode%2C%0A%20%20%20%20%20%20%20%20run_experiments%2C%0A%20%20%20%20%20%20%20%20seed%2C%0A%20%20%20%20%20%20%20%20tabpfn_mode%2C%0A%20%20%20%20%20%20%20%20tune_catboost%2C%0A%20%20%20%20%20%20%20%20tune_random_forest%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20benchmark_results(%0A%20%20%20%20bundle%2C%0A%20%20%20%20cv_mode%2C%0A%20%20%20%20estimate_total_steps%2C%0A%20%20%20%20feature_view%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20n_trials%2C%0A%20%20%20%20nam_mode%2C%0A%20%20%20%20run_benchmark_suite%2C%0A%20%20%20%20run_experiments%2C%0A%20%20%20%20seed%2C%0A%20%20%20%20tabpfn_mode%2C%0A%20%20%20%20tune_catboost%2C%0A%20%20%20%20tune_random_forest%2C%0A)%3A%0A%20%20%20%20if%20not%20run_experiments.value%3A%0A%20%20%20%20%20%20%20%20benchmark_results_status%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Pick%20a%20feature%20view%2C%20then%20click%20**Run%20selected%20regression%20benchmark**.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20benchmark%20%3D%20None%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20run_seed%20%3D%20int(seed.value)%0A%20%20%20%20%20%20%20%20total_steps%20%3D%20max(%0A%20%20%20%20%20%20%20%20%20%20%20%201%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20estimate_total_steps(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bundle.train.reset_index(drop%3DTrue)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20view_name%3Dfeature_view.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20seed%3Drun_seed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_catboost%3Dtune_catboost.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_random_forest%3Dtune_random_forest.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20n_trials%3Dint(n_trials.value)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tabpfn_mode%3Dtabpfn_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nam_mode%3Dnam_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20with%20mo.status.progress_bar(%0A%20%20%20%20%20%20%20%20%20%20%20%20total%3Dtotal_steps%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Running%20regression%20benchmark%22%2C%0A%20%20%20%20%20%20%20%20)%20as%20bar%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20benchmark%20%3D%20run_benchmark_suite(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bundle%3Dbundle%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20view_name%3Dfeature_view.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20cv_mode%3Dcv_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20seed%3Drun_seed%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_catboost%3Dtune_catboost.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tune_random_forest%3Dtune_random_forest.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20n_trials%3Dint(n_trials.value)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tabpfn_mode%3Dtabpfn_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nam_mode%3Dnam_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20progress_callback%3Dlambda%20_event%3A%20bar.update(1)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20benchmark_results_status%20%3D%20mo.md(%22%22)%0A%0A%20%20%20%20benchmark_results_status%0A%20%20%20%20return%20(benchmark%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(bundle%2C%20feature_view%2C%20mo)%3A%0A%20%20%20%20selected_view_name%20%3D%20feature_view.value%0A%20%20%20%20if%20selected_view_name%20not%20in%20bundle.feature_views%3A%0A%20%20%20%20%20%20%20%20selected_view_name%20%3D%20next(%0A%20%20%20%20%20%20%20%20%20%20%20%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20name%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20name%2C%20meta%20in%20bundle.feature_views.items()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20meta%5B%22label%22%5D%20%3D%3D%20feature_view.value%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22tabular_core%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20selected_view_meta%20%3D%20bundle.feature_views%5Bselected_view_name%5D%0A%20%20%20%20selected_feature_count%20%3D%20selected_view_meta.get(%22feature_count%22)%0A%20%20%20%20if%20selected_feature_count%20is%20None%3A%0A%20%20%20%20%20%20%20%20if%20selected_view_meta%5B%22kind%22%5D%20in%20%7B%22tabular%22%2C%20%22embedding%22%7D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_feature_count%20%3D%20len(selected_view_meta%5B%22columns%22%5D)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_feature_count%20%3D%20len(selected_view_meta%5B%22tabular_columns%22%5D)%20%2B%201%0A%0A%20%20%20%20control_feature_summary%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22**Selected%20feature%20view%3A**%20%60%7Bselected_view_meta%5B'label'%5D%7D%60%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22**Feature%20set%20length%3A**%20%60%7Bint(selected_feature_count)%7D%60%22%0A%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20)%0A%20%20%20%20control_feature_summary%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20benchmark_diagnostics_data(%0A%20%20%20%20benchmark%2C%0A%20%20%20%20build_benchmark_artifacts%2C%0A%20%20%20%20include_dummy_mean%2C%0A)%3A%0A%20%20%20%20(%0A%20%20%20%20%20%20%20%20leaderboard_frame%2C%0A%20%20%20%20%20%20%20%20oof_long%2C%0A%20%20%20%20%20%20%20%20fold_metrics%2C%0A%20%20%20%20%20%20%20%20subgroup_metrics%2C%0A%20%20%20%20%20%20%20%20calibration_metrics%2C%0A%20%20%20%20)%20%3D%20build_benchmark_artifacts(benchmark)%0A%20%20%20%20if%20(%0A%20%20%20%20%20%20%20%20not%20include_dummy_mean.value%0A%20%20%20%20%20%20%20%20and%20not%20leaderboard_frame.empty%0A%20%20%20%20%20%20%20%20and%20%22model_name%22%20in%20leaderboard_frame.columns%0A%20%20%20%20)%3A%0A%20%20%20%20%20%20%20%20model_mask%20%3D%20leaderboard_frame%5B%22model_name%22%5D%20!%3D%20%22dummy_mean%22%0A%20%20%20%20%20%20%20%20leaderboard_frame%20%3D%20leaderboard_frame%5Bmodel_mask%5D.copy()%0A%20%20%20%20%20%20%20%20visible_models%20%3D%20set(leaderboard_frame%5B%22model_name%22%5D.tolist())%0A%0A%20%20%20%20%20%20%20%20def%20_filter_by_visible_models(frame)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20frame.empty%20or%20%22model_name%22%20not%20in%20frame.columns%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%20frame%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20frame%5Bframe%5B%22model_name%22%5D.isin(visible_models)%5D.copy()%0A%0A%20%20%20%20%20%20%20%20oof_long%20%3D%20_filter_by_visible_models(oof_long)%0A%20%20%20%20%20%20%20%20fold_metrics%20%3D%20_filter_by_visible_models(fold_metrics)%0A%20%20%20%20%20%20%20%20subgroup_metrics%20%3D%20_filter_by_visible_models(subgroup_metrics)%0A%20%20%20%20%20%20%20%20calibration_metrics%20%3D%20_filter_by_visible_models(calibration_metrics)%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20calibration_metrics%2C%0A%20%20%20%20%20%20%20%20fold_metrics%2C%0A%20%20%20%20%20%20%20%20leaderboard_frame%2C%0A%20%20%20%20%20%20%20%20oof_long%2C%0A%20%20%20%20%20%20%20%20subgroup_metrics%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20benchmark_view(%0A%20%20%20%20alt%2C%0A%20%20%20%20benchmark%2C%0A%20%20%20%20bundle%2C%0A%20%20%20%20feature_view%2C%0A%20%20%20%20include_dummy_mean%2C%0A%20%20%20%20leaderboard_frame%2C%0A%20%20%20%20mo%2C%0A)%3A%0A%20%20%20%20from%20wigglystuff%20import%20ParallelCoordinates%20as%20_ParallelCoordsBenchmark%0A%0A%20%20%20%20selected_view_label%20%3D%20feature_view.value%0A%20%20%20%20if%20selected_view_label%20in%20bundle.feature_views%3A%0A%20%20%20%20%20%20%20%20selected_view_label%20%3D%20bundle.feature_views%5Bselected_view_label%5D%5B%22label%22%5D%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20selected_view_label%20%3D%20next(%0A%20%20%20%20%20%20%20%20%20%20%20%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20meta%5B%22label%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20meta%20in%20bundle.feature_views.values()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20meta%5B%22label%22%5D%20%3D%3D%20feature_view.value%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20str(feature_view.value)%2C%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20if%20benchmark%20is%20None%3A%0A%20%20%20%20%20%20%20%20benchmark_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Run%20a%20benchmark%20to%20populate%20the%20model-selection%2C%20stability%2C%20calibration%2C%20and%20residual%20diagnostics.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20best_name%20%3D%20None%0A%20%20%20%20%20%20%20%20good_results%20%3D%20__import__(%22pandas%22).DataFrame()%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20results%20%3D%20benchmark%5B%22results%22%5D%0A%20%20%20%20%20%20%20%20if%20not%20include_dummy_mean.value%20and%20%22model_name%22%20in%20results%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20results%20%3D%20results%5Bresults%5B%22model_name%22%5D%20!%3D%20%22dummy_mean%22%5D.copy()%0A%20%20%20%20%20%20%20%20good_results%20%3D%20leaderboard_frame.copy()%0A%20%20%20%20%20%20%20%20best_name%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20good_results%5B%22model_name%22%5D.iloc%5B0%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20not%20good_results.empty%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20None%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20tuning_summary%20%3D%20benchmark%5B%22tuning_summary%22%5D%0A%20%20%20%20%20%20%20%20tuned_params%20%3D%20benchmark%5B%22tuned_params%22%5D%0A%0A%20%20%20%20%20%20%20%20results_table%20%3D%20mo.ui.table(results%2C%20label%3D%22Benchmark%20results%22)%0A%20%20%20%20%20%20%20%20plot_frame%20%3D%20good_results.copy()%0A%20%20%20%20%20%20%20%20if%20not%20plot_frame.empty%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_model_order%20%3D%20plot_frame%5B%22model_name%22%5D.tolist()%0A%20%20%20%20%20%20%20%20%20%20%20%20plot_frame%5B%22model%22%5D%20%3D%20plot_frame%5B%22model_name%22%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20plot_frame%5B%22fit_seconds%22%5D%20%3D%20plot_frame%5B%22fit_seconds%22%5D.round(2)%0A%20%20%20%20%20%20%20%20%20%20%20%20plot_frame%5B%22mean_rmsle%22%5D%20%3D%20plot_frame%5B%22mean_rmsle%22%5D.round(4)%0A%20%20%20%20%20%20%20%20%20%20%20%20plot_frame%5B%22std_rmsle%22%5D%20%3D%20plot_frame%5B%22std_rmsle%22%5D.round(4)%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_pc%20%3D%20_ParallelCoordsBenchmark(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20data%3Dplot_frame%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22mean_rmsle%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22std_rmsle%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22fit_seconds%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22family%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22selection_label%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color_by%3D%22family%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20height%3D360%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_chart%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(plot_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_rule(strokeWidth%3D4%2C%20opacity%3D0.55)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22mean_rmsle_low%3AQ%22%2C%20title%3D%22Mean%20RMSLE%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X2(%22mean_rmsle_high%3AQ%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22model_name%3AN%22%2C%20title%3DNone%2C%20sort%3Dleaderboard_model_order)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22family%3AN%22%2C%20title%3D%22Family%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22selection_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22std_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22delta_vs_best%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22fit_seconds%3AQ%22%2C%20format%3D%22.2f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(plot_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_bar(cornerRadiusEnd%3D4)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22mean_rmsle%3AQ%22%2C%20title%3D%22Mean%20RMSLE%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3DNone%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20sort%3Dleaderboard_model_order%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22family%3AN%22%2C%20title%3D%22Family%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22selection_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22std_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22delta_vs_best%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22fit_seconds%3AQ%22%2C%20format%3D%22.2f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(plot_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_text(align%3D%22left%22%2C%20baseline%3D%22middle%22%2C%20dx%3D6%2C%20fontSize%3D12)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22mean_rmsle_high%3AQ%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22model_name%3AN%22%2C%20sort%3Dleaderboard_model_order)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%3D%22delta_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.resolve_scale(color%3D%22shared%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.properties(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20height%3Dmax(180%2C%2046%20*%20len(plot_frame))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20width%3D460%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3Df%22Leaderboard%20for%20%7Bselected_view_label%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20pareto_chart%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(plot_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_point(size%3D170%2C%20filled%3DTrue%2C%20opacity%3D0.85)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22fit_seconds%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Fit%20seconds%20(log%20scale)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(type%3D%22log%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22mean_rmsle%3AQ%22%2C%20title%3D%22Mean%20RMSLE%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22family%3AN%22%2C%20title%3D%22Family%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Shape(%22selection_label%3AN%22%2C%20title%3D%22Selection%20status%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22family%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22selection_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22std_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22delta_vs_best%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22fit_seconds%3AQ%22%2C%20format%3D%22.2f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.properties(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20height%3Dmax(180%2C%2046%20*%20len(plot_frame))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20width%3D360%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Score%20vs%20fit-time%20Pareto%20view%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_pc%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22No%20successful%20model%20runs.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22danger%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_chart%20%3D%20mo.md(%22No%20leaderboard%20available.%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20pareto_chart%20%3D%20mo.md(%22No%20Pareto%20view%20available.%22)%0A%0A%20%20%20%20%20%20%20%20if%20tuned_params%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20tuning_lines%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20family%20in%20sorted(tuned_params)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary%20%3D%20tuning_summary.get(family%2C%20%7B%7D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tuning_lines.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22-%20%60%7Bfamily%7D%60%3A%20params%20%60%7Btuned_params%5Bfamily%5D%7D%60%20%7C%20%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22best%20mean%20RMSLE%20%60%7Bsummary.get('best_value'%2C%20float('nan'))%3A.4f%7D%60%20%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22over%20%60%7Bsummary.get('n_trials'%2C%200)%7D%60%20trials%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20tuning_text%20%3D%20%22Tuning%20summary%3A%5Cn%22%20%2B%20%22%5Cn%22.join(tuning_lines)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20tuning_text%20%3D%20%22Optuna%20tuning%20was%20not%20used%20for%20this%20run.%22%0A%20%20%20%20%20%20%20%20benchmark_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Best%20available%20model%3A**%20%60%7Bbest_name%7D%60%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Use%20the%20interval%20bars%20to%20read%20score%20uncertainty%20and%20the%20Pareto%20plot%20to%20catch%20slower-and-worse%20options.%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Btuning_text%7D%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Embedding%20geometry%20inspection%20lives%20in%20%60notebooks%2Fembedding_geometry_explorer.py%60.%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CatBoost%20SHAP%20exploration%20lives%20in%20%60notebooks%2Fcatboost_shap_explorer.py%60%20after%20exporting%20a%20selection.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22success%22%20if%20best_name%20else%20%22danger%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bleaderboard_chart%2C%20pareto_chart%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_pc%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20results_table%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20benchmark_panel%0A%20%20%20%20return%20best_name%2C%20good_results%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20benchmark_model_selector(best_name%2C%20good_results%2C%20mo)%3A%0A%20%20%20%20if%20best_name%20is%20None%20or%20good_results.empty%3A%0A%20%20%20%20%20%20%20%20benchmark_model_selector_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22No%20successful%20model%20runs%20are%20available%20to%20inspect%20yet.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20benchmark_model_selector%20%3D%20None%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20benchmark_model_selector%20%3D%20mo.ui.dropdown(%0A%20%20%20%20%20%20%20%20%20%20%20%20options%3Dgood_results%5B%22model_name%22%5D.tolist()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20value%3Dbest_name%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20label%3D%22Benchmark%20result%20model%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20benchmark_model_selector_panel%20%3D%20benchmark_model_selector%0A%20%20%20%20benchmark_model_selector_panel%0A%20%20%20%20return%20(benchmark_model_selector%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20selected_model_summary(benchmark_model_selector%2C%20leaderboard_frame%2C%20mo)%3A%0A%20%20%20%20if%20benchmark_model_selector%20is%20None%20or%20leaderboard_frame.empty%3A%0A%20%20%20%20%20%20%20%20selected_model_record%20%3D%20None%0A%20%20%20%20%20%20%20%20selected_model_summary_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22Select%20a%20successful%20model%20to%20see%20its%20score-vs-speed%20tradeoff.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20selected_frame%20%3D%20leaderboard_frame%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20leaderboard_frame%5B%22model_name%22%5D%20%3D%3D%20benchmark_model_selector.value%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20selected_model_record%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_frame.iloc%5B0%5D.to_dict()%20if%20not%20selected_frame.empty%20else%20None%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20if%20selected_model_record%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_model_summary_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22The%20selected%20model%20is%20not%20available%20in%20the%20current%20leaderboard.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22warn%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_rank%20%3D%20int(selected_model_record%5B%22rank%22%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_delta%20%3D%20float(selected_model_record%5B%22delta_vs_best%22%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20fit_seconds%20%3D%20float(selected_model_record%5B%22fit_seconds%22%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20selected_rank%20%3D%3D%201%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_kind%20%3D%20%22success%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_text%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Selected%20model%3A**%20%60%7Bbenchmark_model_selector.value%7D%60%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22This%20is%20the%20current%20score%20winner%20and%20the%20default%20choice%20to%20export.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_kind%20%3D%20%22warn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_text%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Selected%20model%3A**%20%60%7Bbenchmark_model_selector.value%7D%60%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22Rank%20%60%7Bselected_rank%7D%60%20with%20mean%20RMSLE%20%60%2B%7Bselected_delta%3A.4f%7D%60%20versus%20the%20best%20model%20and%20fit%20time%20%60%7Bfit_seconds%3A.2f%7D%60%20seconds.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20not%20bool(selected_model_record%5B%22is_pareto%22%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_text%20%2B%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5CnThis%20option%20is%20strictly%20slower%20and%20worse%20than%20at%20least%20one%20alternative.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20summary_text%20%2B%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5CnThis%20option%20stays%20on%20the%20Pareto%20frontier%2C%20so%20the%20tradeoff%20is%20at%20least%20defensible.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20selected_model_summary_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(summary_text)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3Dsummary_kind%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20selected_model_summary_panel%0A%20%20%20%20return%20(selected_model_record%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20fold_stability_view(alt%2C%20benchmark%2C%20fold_metrics%2C%20leaderboard_frame%2C%20mo)%3A%0A%20%20%20%20if%20benchmark%20is%20None%20or%20leaderboard_frame.empty%20or%20fold_metrics.empty%3A%0A%20%20%20%20%20%20%20%20fold_stability_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22Run%20a%20benchmark%20to%20compare%20model%20stability%20across%20validation%20folds.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20stability_model_order%20%3D%20leaderboard_frame%5B%22model_name%22%5D.tolist()%0A%20%20%20%20%20%20%20%20fold_order%20%3D%20sorted(fold_metrics%5B%22fold%22%5D.astype(str).unique().tolist())%0A%0A%20%20%20%20%20%20%20%20fold_heatmap%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(fold_metrics)%0A%20%20%20%20%20%20%20%20%20%20%20%20.mark_rect()%0A%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22fold%3AN%22%2C%20title%3D%22Validation%20fold%22%2C%20sort%3Dfold_order)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22model_name%3AN%22%2C%20title%3DNone%2C%20sort%3Dstability_model_order)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22rmsle%3AQ%22%2C%20title%3D%22Fold%20RMSLE%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22fold%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mae_usd%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22median_signed_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22rows%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(height%3Dmax(180%2C%2042%20*%20len(stability_model_order))%2C%20width%3D460)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20stability_interval%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(leaderboard_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_rule(strokeWidth%3D4%2C%20opacity%3D0.6)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22mean_rmsle_low%3AQ%22%2C%20title%3D%22Mean%20RMSLE%20%C2%B1%20std%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X2(%22mean_rmsle_high%3AQ%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3DNone%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20sort%3Dstability_model_order%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22family%3AN%22%2C%20title%3D%22Family%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(leaderboard_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_point(filled%3DTrue%2C%20size%3D130)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22mean_rmsle%3AQ%22%2C%20title%3D%22Mean%20RMSLE%20%C2%B1%20std%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3DNone%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20sort%3Dstability_model_order%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22family%3AN%22%2C%20title%3D%22Family%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Shape(%22selection_label%3AN%22%2C%20title%3D%22Selection%20status%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22model_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22selection_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22std_rmsle%3AQ%22%2C%20format%3D%22.4f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.resolve_scale(color%3D%22shared%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(height%3Dmax(180%2C%2042%20*%20len(stability_model_order))%2C%20width%3D360)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20fold_stability_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Fold%20stability%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22These%20views%20answer%20whether%20tiny%20leaderboard%20differences%20survive%20fold-level%20volatility.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bfold_heatmap%2C%20stability_interval%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20fold_stability_panel%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20diagnostic_controls(mo)%3A%0A%20%20%20%20subgroup_metric%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22P90%20absolute%20percentage%20error%22%3A%20%22p90_abs_pct_error%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Mean%20absolute%20residual%20(USD%2Fm%C2%B2)%22%3A%20%22mean_abs_resid%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22P90%20absolute%20percentage%20error%22%2C%0A%20%20%20%20%20%20%20%20inline%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Heatmap%20metric%22%2C%0A%20%20%20%20)%0A%20%20%20%20residual_rank_metric%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Absolute%20residual%20(USD%2Fm%C2%B2)%22%3A%20%22abs_residual_usd%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Absolute%20percentage%20error%22%3A%20%22abs_pct_error%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Absolute%20residual%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20inline%3DFalse%2C%0A%20%20%20%20%20%20%20%20label%3D%22Residual%20ranking%22%2C%0A%20%20%20%20)%0A%20%20%20%20residual_axis_scale%20%3D%20mo.ui.radio(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Linear%20axes%22%3A%20%22linear%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Log%20axes%22%3A%20%22log%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Linear%20axes%22%2C%0A%20%20%20%20%20%20%20%20inline%3DTrue%2C%0A%20%20%20%20%20%20%20%20label%3D%22Scatter%20scale%22%2C%0A%20%20%20%20)%0A%20%20%20%20residual_color%20%3D%20mo.ui.dropdown(%0A%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Country%22%3A%20%22country%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Year%22%3A%20%22year%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Fold%22%3A%20%22fold%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%22Residual%20sign%22%3A%20%22residual_direction%22%2C%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20value%3D%22Country%22%2C%0A%20%20%20%20%20%20%20%20label%3D%22Residual%20color%22%2C%0A%20%20%20%20)%0A%20%20%20%20diagnostic_controls_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%23%20Diagnostic%20controls%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bsubgroup_metric%2C%20residual_rank_metric%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bresidual_axis_scale%2C%20residual_color%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20)%0A%20%20%20%20diagnostic_controls_panel%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20residual_axis_scale%2C%0A%20%20%20%20%20%20%20%20residual_color%2C%0A%20%20%20%20%20%20%20%20residual_rank_metric%2C%0A%20%20%20%20%20%20%20%20subgroup_metric%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20subgroup_error_map(%0A%20%20%20%20alt%2C%0A%20%20%20%20benchmark_model_selector%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20subgroup_metric%2C%0A%20%20%20%20subgroup_metrics%2C%0A)%3A%0A%20%20%20%20if%20benchmark_model_selector%20is%20None%20or%20subgroup_metrics.empty%3A%0A%20%20%20%20%20%20%20%20subgroup_error_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22Run%20a%20benchmark%20and%20choose%20a%20model%20to%20inspect%20country-year%20behavior.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20metric_field%20%3D%20subgroup_metric.value%0A%20%20%20%20%20%20%20%20metric_title%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%22P90%20absolute%20percentage%20error%22%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20metric_field%20%3D%3D%20%22p90_abs_pct_error%22%0A%20%20%20%20%20%20%20%20%20%20%20%20else%20%22Mean%20absolute%20residual%20(USD%2Fm%C2%B2)%22%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20subgroup_frame%20%3D%20subgroup_metrics%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20subgroup_metrics%5B%22model_name%22%5D%20%3D%3D%20benchmark_model_selector.value%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20subgroup_frame%5B%22metric_value%22%5D%20%3D%20subgroup_frame%5Bmetric_field%5D%0A%20%20%20%20%20%20%20%20subgroup_frame%5B%22metric_label%22%5D%20%3D%20subgroup_frame%5B%22metric_value%22%5D.map(%0A%20%20%20%20%20%20%20%20%20%20%20%20lambda%20value%3A%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bvalue%3A.0%25%7D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20metric_field%20%3D%3D%20%22p90_abs_pct_error%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20else%20f%22%24%7Bvalue%3A%2C.0f%7D%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20hardest_subgroups%20%3D%20subgroup_frame.sort_values(%0A%20%20%20%20%20%20%20%20%20%20%20%20%22metric_value%22%2C%20ascending%3DFalse%0A%20%20%20%20%20%20%20%20).head(8)%0A%20%20%20%20%20%20%20%20heatmap%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(subgroup_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_rect()%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22year%3AO%22%2C%20title%3D%22Year%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22country%3AN%22%2C%20title%3DNone)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22metric_value%3AQ%22%2C%20title%3Dmetric_title)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22country%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22year%3AO%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22rows%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_abs_resid%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22median_signed_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22p90_abs_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(subgroup_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_text(fontSize%3D12)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22year%3AO%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22country%3AN%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20text%3D%22metric_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(width%3D720%2C%20height%3D140)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20subgroup_error_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Subgroup%20error%20map%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Use%20percentage%20error%20here%20to%20see%20where%20the%20model%20is%20proportionally%20wrong%20rather%20than%20construction%20prices%20just%20being%20expensive%20(in%20USD).%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20heatmap%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.ui.table(hardest_subgroups%2C%20label%3D%22Hardest%20country-year%20slices%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20subgroup_error_panel%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20residual_explorer(%0A%20%20%20%20alt%2C%0A%20%20%20%20benchmark_model_selector%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20oof_long%2C%0A%20%20%20%20pd%2C%0A%20%20%20%20residual_axis_scale%2C%0A%20%20%20%20residual_color%2C%0A%20%20%20%20residual_rank_metric%2C%0A%20%20%20%20residual_threshold%2C%0A)%3A%0A%20%20%20%20if%20benchmark_model_selector%20is%20None%20or%20oof_long.empty%3A%0A%20%20%20%20%20%20%20%20residual_explorer_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22Run%20a%20benchmark%20and%20select%20a%20model%20to%20explore%20residuals.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_frame%20%3D%20pd.DataFrame()%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20residual_frame%20%3D%20oof_long%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20oof_long%5B%22model_name%22%5D%20%3D%3D%20benchmark_model_selector.value%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20threshold%20%3D%20residual_threshold.value%5B%22amount%22%5D%0A%20%20%20%20%20%20%20%20residual_frame%5B%22large_error%22%5D%20%3D%20residual_frame%5B%22abs_residual_usd%22%5D%20%3E%3D%20threshold%0A%20%20%20%20%20%20%20%20color_field%20%3D%20residual_color.value%0A%20%20%20%20%20%20%20%20axis_scale%20%3D%20residual_axis_scale.value%0A%20%20%20%20%20%20%20%20ranking_field%20%3D%20residual_rank_metric.value%0A%20%20%20%20%20%20%20%20if%20color_field%20in%20%7B%22country%22%2C%20%22fold%22%2C%20%22residual_direction%22%7D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20color_encoding%20%3D%20alt.Color(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bcolor_field%7D%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3Dcolor_field.replace(%22_%22%2C%20%22%20%22).title()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20color_encoding%20%3D%20alt.Color(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bcolor_field%7D%3AO%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3Dcolor_field.replace(%22_%22%2C%20%22%20%22).title()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_max_axis%20%3D%20float(%0A%20%20%20%20%20%20%20%20%20%20%20%20max(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_frame%5B%22actual_usd%22%5D.max()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_frame%5B%22predicted_usd%22%5D.max()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_min_axis%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20float(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20max(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%201.0%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20min(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_frame%5B%22actual_usd%22%5D.min()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_frame%5B%22predicted_usd%22%5D.min()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20axis_scale%20%3D%3D%20%22log%22%0A%20%20%20%20%20%20%20%20%20%20%20%20else%200.0%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_identity%20%3D%20pd.DataFrame(%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%22value%22%3A%20%5Bresidual_min_axis%2C%20residual_max_axis%5D%7D%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20scatter%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(residual_identity)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_line(color%3D%22%23475569%22%2C%20strokeDash%3D%5B6%2C%204%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22value%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Actual%20cost%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(type%3Daxis_scale)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22value%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22OOF%20prediction%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(type%3Daxis_scale)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(residual_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_circle(size%3D70%2C%20opacity%3D0.75)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22actual_usd%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Actual%20cost%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(type%3Daxis_scale)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22predicted_usd%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22OOF%20prediction%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(type%3Daxis_scale)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color_encoding%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Shape(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22large_error%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3Df%22%7CResidual%7C%20%E2%89%A5%20%24%7Bthreshold%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20scale%3Dalt.Scale(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20domain%3D%5BTrue%2C%20False%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20range%3D%5B%22diamond%22%2C%20%22circle%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22geolocation_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22country%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22year%3AO%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22fold%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22residual_direction%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22actual_usd%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22predicted_usd%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22residual_usd%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22signed_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20width%3D430%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20height%3D360%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3Df%22Actual%20vs%20OOF%20prediction%3A%20%7Bbenchmark_model_selector.value%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20if%20ranking_field%20%3D%3D%20%22abs_pct_error%22%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20residual_title%20%3D%20%22Worst%2025%20OOF%20percentage%20errors%22%0A%20%20%20%20%20%20%20%20%20%20%20%20residual_x%20%3D%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22abs_pct_error%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Absolute%20percentage%20error%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20axis%3Dalt.Axis(format%3D%22.0%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20residual_title%20%3D%20%22Worst%2025%20OOF%20residuals%22%0A%20%20%20%20%20%20%20%20%20%20%20%20residual_x%20%3D%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22abs_residual_usd%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Absolute%20residual%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_bar%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_frame.sort_values(ranking_field%2C%20ascending%3DFalse).head(25)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.mark_bar()%0A%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20residual_x%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22geolocation_name%3AN%22%2C%20title%3DNone%2C%20sort%3D%22-x%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Color(%22country%3AN%22%2C%20title%3D%22Country%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22geolocation_name%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22country%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22year%3AO%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22abs_residual_usd%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22abs_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(width%3D320%2C%20height%3D360%2C%20title%3Dresidual_title)%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20top_rows%20%3D%20residual_frame.sort_values(ranking_field%2C%20ascending%3DFalse).head(20)%0A%20%20%20%20%20%20%20%20residual_explorer_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Exploring%20residuals%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22Use%20the%20threshold%20**%7Bresidual_threshold%7D**%20to%20highlight%20large%20outliers%20and%20fill%20the%20bellow%20table.%20%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Switch%20to%20percentage%20ranking%20when%20you%20want%20to%20see%20where%20the%20model%20is%20proportionally%20wrong%20rather%20than%20building%20prices%20just%20being%20high.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bscatter%2C%20residual_bar%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.ui.table(top_rows%2C%20label%3D%22Largest%20residuals%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20residual_explorer_panel%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20calibration_view(%0A%20%20%20%20alt%2C%0A%20%20%20%20benchmark_model_selector%2C%0A%20%20%20%20calibration_metrics%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20oof_long%2C%0A%20%20%20%20pd%2C%0A)%3A%0A%20%20%20%20if%20benchmark_model_selector%20is%20None%20or%20calibration_metrics.empty%20or%20oof_long.empty%3A%0A%20%20%20%20%20%20%20%20calibration_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22Run%20a%20benchmark%20and%20choose%20a%20model%20to%20inspect%20calibration.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20calibration_model_name%20%3D%20benchmark_model_selector.value%0A%20%20%20%20%20%20%20%20calibration_frame%20%3D%20calibration_metrics%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20calibration_metrics%5B%22model_name%22%5D%20%3D%3D%20calibration_model_name%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20selected_oof%20%3D%20oof_long%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20oof_long%5B%22model_name%22%5D%20%3D%3D%20calibration_model_name%0A%20%20%20%20%20%20%20%20%5D.copy()%0A%20%20%20%20%20%20%20%20calibration_max_axis%20%3D%20float(%0A%20%20%20%20%20%20%20%20%20%20%20%20max(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20calibration_frame%5B%22predicted_bin_mean%22%5D.max()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20calibration_frame%5B%22actual_bin_mean%22%5D.max()%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20calibration_identity%20%3D%20pd.DataFrame(%7B%22value%22%3A%20%5B0.0%2C%20calibration_max_axis%5D%7D)%0A%20%20%20%20%20%20%20%20calibration_zero_rule%20%3D%20pd.DataFrame(%7B%22value%22%3A%20%5B0.0%5D%7D)%0A%20%20%20%20%20%20%20%20calibration_chart%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(calibration_identity)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_line(color%3D%22%23475569%22%2C%20strokeDash%3D%5B6%2C%204%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%22value%3AQ%22%2C%20title%3D%22Mean%20predicted%20cost%20by%20decile%20(USD%2Fm%C2%B2)%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22value%3AQ%22%2C%20title%3D%22Mean%20actual%20cost%20by%20decile%20(USD%2Fm%C2%B2)%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(calibration_frame)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_line(point%3DTrue%2C%20strokeWidth%3D3)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22predicted_bin_mean%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Mean%20predicted%20cost%20by%20decile%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22actual_bin_mean%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Mean%20actual%20cost%20by%20decile%20(USD%2Fm%C2%B2)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Size(%22rows%3AQ%22%2C%20title%3D%22Rows%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tooltip%3D%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22predicted_decile_label%3AN%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22rows%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22predicted_bin_mean%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22actual_bin_mean%3AQ%22%2C%20format%3D%22%2C.0f%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22mean_abs_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Tooltip(%22median_signed_pct_error%3AQ%22%2C%20format%3D%22.1%25%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(width%3D420%2C%20height%3D320%2C%20title%3D%22Calibration%20by%20predicted%20decile%22)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20residual_histogram%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20alt.layer(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(selected_oof)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_bar(color%3D%22%2364748B%22%2C%20opacity%3D0.85)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.X(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22signed_pct_error%3AQ%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bin%3Dalt.Bin(maxbins%3D30)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20title%3D%22Signed%20percentage%20error%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Y(%22count()%3AQ%22%2C%20title%3D%22Rows%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20alt.Chart(calibration_zero_rule)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.mark_rule(color%3D%22%230F172A%22%2C%20strokeDash%3D%5B6%2C%204%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20.encode(x%3D%22value%3AQ%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20.properties(width%3D360%2C%20height%3D320%2C%20title%3D%22Residual%20bias%20distribution%22)%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20calibration_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%20Calibration%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22This%20view%20checks%20whether%20a%20low%20RMSLE%20model%20still%20systematically%20under-%20or%20over-shoots%20certain%20cost%20ranges.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.hstack(%5Bcalibration_chart%2C%20residual_histogram%5D%2C%20justify%3D%22start%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20calibration_panel%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20pipeline_explainer_selector(%0A%20%20%20%20available_pipelines%2C%0A%20%20%20%20default_pipeline_name%2C%0A%20%20%20%20feature_view%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20nam_mode%2C%0A%20%20%20%20tabpfn_mode%2C%0A)%3A%0A%20%20%20%20eligible_pipelines%20%3D%20available_pipelines(%0A%20%20%20%20%20%20%20%20feature_view.value%2C%0A%20%20%20%20%20%20%20%20tabpfn_mode.value%2C%0A%20%20%20%20%20%20%20%20nam_mode.value%2C%0A%20%20%20%20)%0A%20%20%20%20if%20not%20eligible_pipelines%3A%0A%20%20%20%20%20%20%20%20pipeline_explainer_selector_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22No%20pipelines%20are%20available%20for%20the%20current%20feature-view%20settings.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22danger%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20pipeline_explainer_selector%20%3D%20None%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20pipeline_explainer_selector%20%3D%20mo.ui.dropdown(%0A%20%20%20%20%20%20%20%20%20%20%20%20options%3D%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pipeline.spec.name%3A%20pipeline.spec.name%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20pipeline%20in%20eligible_pipelines%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20value%3Ddefault_pipeline_name(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20feature_view.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tabpfn_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nam_mode.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20label%3D%22Please%20explain%3A%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20pipeline_explainer_selector_panel%20%3D%20mo.vstack(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22%23%23%23%20Pipeline%20walkthrough%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20pipeline_explainer_selector%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22This%20selector%20displays%20pipelines%20usable%20with%20the%20currently%20selected%20feature%20view%20(in%20the%20controls%20cell).%20Pick%20one%20to%20get%20an%20explanation%20of%20how%20it%20is%20wired.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20pipeline_explainer_selector_panel%0A%20%20%20%20return%20(pipeline_explainer_selector%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20selected_pipeline_explainer(%0A%20%20%20%20find_pipeline_by_name%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20pipeline_explainer_selector%2C%0A)%3A%0A%20%20%20%20if%20pipeline_explainer_selector%20is%20None%3A%0A%20%20%20%20%20%20%20%20selected_pipeline_explainer%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%22First%20select%20a%20benchmark%20group%20to%20get%20an%20explanation%20of%20each%20pipeline.%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20pipeline%20%3D%20find_pipeline_by_name(pipeline_explainer_selector.value)%0A%20%20%20%20%20%20%20%20selected_pipeline_explainer%20%3D%20mo.md(pipeline.explanation_markdown)%0A%20%20%20%20selected_pipeline_explainer%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20residual_threshold(mo)%3A%0A%20%20%20%20from%20wigglystuff%20import%20TangleSlider%0A%0A%20%20%20%20residual_threshold%20%3D%20mo.ui.anywidget(%0A%20%20%20%20%20%20%20%20TangleSlider(%0A%20%20%20%20%20%20%20%20%20%20%20%20amount%3D250%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20min_value%3D50%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20max_value%3D1000%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20step%3D50%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20prefix%3D%22%7Cresidual%7C%20%3E%20%24%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20suffix%3D%22%2Fm%C2%B2%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20pixels_per_step%3D3%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20)%0A%20%20%20%20residual_threshold%0A%20%20%20%20return%20(residual_threshold%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20export_view(%0A%20%20%20%20benchmark%2C%0A%20%20%20%20benchmark_model_selector%2C%0A%20%20%20%20bundle%2C%0A%20%20%20%20export_predictions%2C%0A%20%20%20%20feature_view%2C%0A%20%20%20%20fit_export_predictions%2C%0A%20%20%20%20mo%2C%0A%20%20%20%20seed%2C%0A%20%20%20%20selected_model_record%2C%0A)%3A%0A%20%20%20%20if%20benchmark%20is%20None%20or%20benchmark_model_selector%20is%20None%3A%0A%20%20%20%20%20%20%20%20export_panel%20%3D%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Run%20a%20benchmark%20first%2C%20then%20choose%20a%20model%20before%20exporting%20predictions.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20export_blocks%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20if%20selected_model_record%20is%20not%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20export_rank%20%3D%20int(selected_model_record%5B%22rank%22%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20export_delta%20%3D%20float(selected_model_record%5B%22delta_vs_best%22%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20export_rank%20%3D%3D%201%20and%20bool(selected_model_record%5B%22is_pareto%22%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20export_blocks.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Export%20note%3A**%20%60%7Bbenchmark_model_selector.value%7D%60%20is%20the%20current%20winner.%20%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22success%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20warning_text%20%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Export%20warning%3A**%20%60%7Bbenchmark_model_selector.value%7D%60%20ranks%20%60%7Bexport_rank%7D%60%20and%20is%20%60%2B%7Bexport_delta%3A.4f%7D%60%20RMSLE%20behind%20the%20best%20model.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20not%20bool(selected_model_record%5B%22is_pareto%22%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20warning_text%20%2B%3D%20(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5CnThis%20choice%20is%20strictly%20slower%20and%20worse%20than%20at%20least%20one%20alternative.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20export_blocks.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(warning_text)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22warn%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20if%20not%20export_predictions.value%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20export_blocks.append(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22If%20you're%20happy%20with%20the%20current%20selection%2C%20press%20**Fit%20selected%20model%20%2B%20export%20eval%20predictions**%20to%20retrieve%20a%20Solafune%20compatible%20CSV.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5Cn%5CnThe%20export%20also%20writes%20the%20last%20selected%20model%20config%20for%20%60notebooks%2Fcatboost_shap_explorer.py%60.%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22info%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20export_panel%20%3D%20mo.vstack(export_blocks)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20export_result%20%3D%20fit_export_predictions(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bundle%3Dbundle%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20view_name%3Dfeature_view.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20model_name%3Dbenchmark_model_selector.value%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20seed%3Dint(seed.value)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tuned_params_by_family%3Dbenchmark%5B%22tuned_params%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20export_blocks.extend(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.callout(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22**Export%20complete**%5Cn%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22-%20Eval%20predictions%3A%20%60%7Bexport_result%5B'eval_path'%5D%7D%60%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22-%20Submission%20CSV%3A%20%60%7Bexport_result%5B'submission_path'%5D%7D%60%5Cn%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22-%20Explorer%20config%3A%20%60%7Bexport_result%5B'config_path'%5D%7D%60%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20kind%3D%22success%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.ui.table(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20export_result%5B%22eval_predictions%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3D%22Eval%20prediction%20preview%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mo.ui.table(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20export_result%5B%22submission%22%5D.head(20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3D%22Submission%20preview%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%20%20%20%20export_panel%20%3D%20mo.vstack(export_blocks)%0A%20%20%20%20export_panel%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
99a5e13a812b575bb994db57d163042a