diff --git a/AGENTS.md b/AGENTS.md index 908c2b6..7c74e95 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -80,6 +80,29 @@ A2/A3 probability adapters and five-fold Adult integration; full Covertype runs and remaining adapters/searches/D5 are open. Sprint 049 records all five full Covertype folds timing out at the 90-second fit cap. Next profile the current CPU path on that same input before expanding adapters; A3 validation is incomplete. +Sprint 050 identifies histogram aggregation and repeated candidate row hashing +in a bounded full-input profile. Next hoist invariant candidate row hashing with +exact identity/candidate checks, then rerun the bounded workload. Sprint 051 +completes that change: fold zero passes in 87.4 seconds with exact fresh replay; +the other folds were pending at that revision. Sprint 052 reuses selected +histogram statistics with exact conformance checks; +all five full Covertype folds pass within the unchanged cap and replay exactly. +Sprint 053 connects A5 independent quantiles to all five frozen Bike origins +with exact fresh replay and independently recomputed pinball scores. Sprint 054 +adds A7 explicit count/exposure binding on all five frozen frequency folds with +exact replay. Sprint 055 adds A8 claim severity on all five frozen grouped folds. +Sprint 056 adds direct A9 annualized Tweedie on all five aggregate folds, with +verified exposure weights and period conversion. Sprint 057 binds matched paid +events to all five frozen A9 input folds. Sprint 058 trains and replays the public +composition on all five packets with independent component selection. Sprint 059 +adds A10 fixed-scale survival on all five frozen folds. Sprint 060 adds A12 +structured Formula with age separated from tree features on all five folds. +Sprint 061 adds the current A4 query-aware adapter with synthetic direct/fresh +parity; MSLR source/binding remains open. [Sprint 062](v1-sprints/062-cpu-exit-and-gpu-entry.md) +reviews CPU exit and GPU entry. Next: installed D5 probes for distinct run-ID RNG +streams and stale preparation rejection, then source/workflow and gate reconciliation. +Real searches, joint A9 selection and formal E5 remain open. F3 has not started; +the review defines its first vertical path without changing phase ordering. These internal trials do not establish E5/E7. Independent validation stopping is implemented in Sprint 039. A6 CPU workflows and shared diff --git a/benchmarks/v1/composition_smoke.py b/benchmarks/v1/composition_smoke.py new file mode 100644 index 0000000..11612ff --- /dev/null +++ b/benchmarks/v1/composition_smoke.py @@ -0,0 +1,161 @@ +"""Five hash-bound composition fits and inference replays; no quality gate.""" + +import argparse +import importlib.metadata +import json +import os +import platform +import subprocess +import sys +from pathlib import Path + +import numpy as np + +from benchmarks.v1.paid_event_data import digest +from benchmarks.v1.process_runner import execute + + +def run(manifest, directory): + manifest, directory = Path(manifest).resolve(), Path(directory).resolve() + bound = json.loads(manifest.read_text()) + if len(bound["cells"]) != 5 or {c["fold"] for c in bound["cells"]} != set(range(5)): + raise ValueError("all five bound folds required") + directory.mkdir(parents=True, exist_ok=True) + if any(directory.iterdir()): + raise ValueError("fresh output directory required") + repo = Path(__file__).resolve().parents[2] + script = Path(__file__).with_name("composition_worker.py") + sources = [ + *sorted((repo / "src/openboost").glob("*.py")), + Path(__file__), + script, + Path(__file__).with_name("process_runner.py"), + Path(__file__).with_name("paid_event_data.py"), + ] + report = dict( + scope="Component-selected composition validation only; no joint selection or quality gate", + revision=subprocess.check_output(["git", "rev-parse", "HEAD"], text=True).strip(), + dirty=bool(subprocess.check_output(["git", "status", "--porcelain"])), + argv=[ + sys.executable, + "-m", + "benchmarks.v1.composition_smoke", + str(manifest), + str(directory), + ], + binding_sha256=digest(manifest), + python=platform.python_version(), + os=platform.platform(), + packages={n: importlib.metadata.version(n) for n in ["numpy", "openboost"]}, + cpu_count=os.cpu_count(), + threads=1, + memory_cap=None, + gpu=None, + sources={str(p.relative_to(repo)): digest(p) for p in sources}, + cells=[], + ) + for cell in bound["cells"]: + packet = manifest.parent / cell["path"] + if digest(packet) != cell["sha256"]: + raise ValueError("composition packet hash differs") + job = dict( + seed=cell["fold"], + patience=3, + config=dict(rounds=4, learning_rate=0.1, bins=32, max_depth=2, reg_lambda=1), + ) + job_path = directory / f"job-{cell['fold']}.json" + job_path.write_text(json.dumps(job, indent=2) + "\n") + output = directory / str(cell["fold"]) + record = execute( + [sys.executable, str(script), "fit", str(job_path), str(packet)], + output, + timeout_s=90, + threads=1, + ) + record.update(fold=cell["fold"], job=job, input_sha256=digest(packet)) + if record["status"] == "pass": + try: + with np.load(packet) as a: + np.savez( + output / "features.npz", + x=a["x_validation"], + row_ids=a["row_ids_validation"], + exposure=a["exposure_validation"], + ) + command = [ + sys.executable, + str(script), + "predict", + str(output / "model.bin"), + str(output / "features.npz"), + str(output / "replay.npz"), + ] + record["replay_command"] = command + subprocess.run( + command, + check=True, + capture_output=True, + timeout=30, + env=dict( + os.environ, + OMP_NUM_THREADS="1", + OPENBLAS_NUM_THREADS="1", + MKL_NUM_THREADS="1", + ), + ) + with ( + np.load(output / "predictions.npz") as a, + np.load(output / "replay.npz") as b, + np.load(output / "features.npz") as f, + ): + assert ( + set(a.files) + == set(b.files) + == { + "row_ids", + "paid_count_rate", + "paid_count_mean", + "severity_mean", + "annualized_mean", + "period_mean", + } + ) + for k in a.files: + np.testing.assert_array_equal(a[k], b[k]) + np.testing.assert_array_equal(a["row_ids"], f["row_ids"]) + for k in set(a.files) - {"row_ids"}: + assert ( + a[k].shape == a["row_ids"].shape + and np.isfinite(a[k]).all() + and (a[k] > 0).all() + ) + np.testing.assert_allclose( + a["annualized_mean"], a["paid_count_rate"] * a["severity_mean"], rtol=1e-12 + ) + np.testing.assert_allclose( + a["period_mean"], a["annualized_mean"] * f["exposure"], rtol=1e-12 + ) + np.testing.assert_allclose( + a["paid_count_mean"], a["paid_count_rate"] * f["exposure"], rtol=1e-12 + ) + record.update( + fresh_process_exact=True, + products_and_units=True, + replay_sha256=digest(output / "replay.npz"), + training=json.loads((output / "training.json").read_text()), + ) + except Exception as error: + record.update(status="error", reason=str(error)) + report["cells"].append(record) + (directory / "summary.json").write_text(json.dumps(report, indent=2) + "\n") + print(f"Fold {cell['fold']}: {record['status']}", flush=True) + return report + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("manifest", type=Path) + parser.add_argument("directory", type=Path) + args = parser.parse_args() + if any(c["status"] != "pass" for c in run(args.manifest, args.directory)["cells"]): + raise SystemExit(1) diff --git a/benchmarks/v1/composition_worker.py b/benchmarks/v1/composition_worker.py new file mode 100644 index 0000000..52f2a3a --- /dev/null +++ b/benchmarks/v1/composition_worker.py @@ -0,0 +1,105 @@ +"""Current CPU matched-payment composition fit and inference-only replay.""" + +import argparse +import json +from dataclasses import asdict +from pathlib import Path + +import numpy as np + +from openboost import NumericData, RunContext +from openboost.composition import FrequencySeverity, paid_loss_problems + + +def fit(job, arrays): + from openboost.recipes import gamma, poisson + + if ( + set(job) != {"seed", "config", "patience"} + or type(job["seed"]) is not int + or job["seed"] < 0 + ): + raise ValueError("explicit composition seed/config/patience required") + cfg = job["config"] + if set(cfg) != {"rounds", "learning_rate", "bins", "max_depth", "reg_lambda"}: + raise ValueError("unsupported composition configuration") + if type(cfg["rounds"]) is not int or cfg["rounds"] <= 0: + raise ValueError("positive round budget required") + roles = {"x", "row_ids", "paid_count", "paid_total", "exposure"} + if set(arrays) != {f"{r}_{p}" for r in roles for p in ("train", "validation")}: + raise ValueError("matched training/validation roles only") + problems = [] + names = None + for part in ("train", "validation"): + x, ids = arrays["x_" + part], arrays["row_ids_" + part] + if x.ndim != 2 or not len(x) or not np.isfinite(x).all(): + raise ValueError("nonempty finite encoded features required") + names = tuple(f"x{i}" for i in range(x.shape[1])) if names is None else names + data = NumericData(x, ids, names) + problems.append( + paid_loss_problems( + data, + arrays["paid_count_" + part], + arrays["paid_total_" + part], + arrays["exposure_" + part], + ) + ) + if np.intersect1d(arrays["row_ids_train"], arrays["row_ids_validation"]).size: + raise ValueError("policy partitions overlap") + models, components = [], {} + selection = "final" if job["patience"] is None else "best_component_validation" + for i, (name, recipe) in enumerate((("frequency", poisson), ("severity", gamma))): + result = recipe( + problems[0][i], + problems[1][i], + context=RunContext(name, job["seed"]), + patience=job["patience"], + **cfg, + ) + model = result.state.model if job["patience"] is None else result.state.best_model + models.append(model) + components[name] = dict( + stop={**asdict(result.stop), "reason": result.stop.reason}, + selected_identity=model.identity, + best_score=result.state.best_score, + accepted_commits=result.state.version, + ) + model = FrequencySeverity(*models) + data = problems[1][0].data + outputs = model.predict(data, data, arrays["exposure_validation"]) + return model, outputs, dict(selection=selection, joint_selection=False, components=components) + + +def replay(model_path, packet): + if set(packet) != {"x", "row_ids", "exposure"}: + raise ValueError("inference features, policy IDs and exposure only") + model = FrequencySeverity.load(model_path) + data = NumericData(packet["x"], packet["row_ids"], model.frequency.feature_names) + return model.predict(data, data, packet["exposure"]) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("mode", choices=("fit", "predict")) + parser.add_argument("spec", type=Path) + parser.add_argument("packet", type=Path) + parser.add_argument("output", type=Path, nargs="?") + args = parser.parse_args() + with np.load(args.packet, allow_pickle=False) as a: + arrays = dict(a) + if args.mode == "predict": + if args.output is None: + raise ValueError("prediction output path required") + outputs = replay(args.spec, arrays) + np.savez(args.output, row_ids=arrays["row_ids"], **outputs) + else: + if args.output is not None: + raise ValueError("fit writes to its dedicated working directory") + model, outputs, training = fit(json.loads(args.spec.read_text()), arrays) + model.save("model.bin") + np.savez("predictions.npz", row_ids=arrays["row_ids_validation"], **outputs) + Path("training.json").write_text(json.dumps(training, indent=2, allow_nan=False) + "\n") + + +if __name__ == "__main__": + main() diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/execution.json b/benchmarks/v1/evidence/aggregate-056/A9/0/execution.json new file mode 100644 index 0000000..7bc8389 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "05cb37e2b36082e4258cea1ee81d26d048d677dcc265df9f06887cf59bec40a2", + "predictions.npz": "106aa1fc8ff5625ddc993ae7dedf00a86eef64ba429f5bda7b93616b9d21c6b5", + "training.json": "73c8cf78fd6b2886c56ae11ccf1cd4c5913541482d811562d36423dd8c252c8e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 19.495609958001296 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/model.bin b/benchmarks/v1/evidence/aggregate-056/A9/0/model.bin new file mode 100644 index 0000000..40a0a9a --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A9", "output": "annualized_paid_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [5.149670587545257], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 1, -1, -1, -1, -1], "threshold": [12, 1, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-9.54423222638206e-14], [-0.2627136584136144], [1.6061178764660147], [-0.5543059322912849], [0.1721382686109479], [0.9714432836759647], [1.861995854731387]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 1, -1, -1, -1, -1], "threshold": [12, 3, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0007328009897863232], [-0.23766848890679584], [1.5526397689946072], [-0.46659393943974903], [0.2280412736427438], [0.8954863597601422], [1.8349179783459242]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 1, -1, -1, -1, -1], "threshold": [12, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0013384582765127192], [-0.21481139014068276], [1.4951782610900943], [-0.47949283907023177], [0.1265518904335951], [0.8224758253815236], [1.8033053773066938]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [12, 3, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0017998216427814917], [-0.19403330629774604], [1.4340426174985519], [-0.3857735731907115], [0.19297578608771745], [1.7727983984548128], [0.7390842619823712]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "power": 1.5} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/period-predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/0/period-predictions.npz new file mode 100644 index 0000000..1879d01 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/0/period-predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/0/predictions.npz new file mode 100644 index 0000000..8ec55cd Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/replay.npz b/benchmarks/v1/evidence/aggregate-056/A9/0/replay.npz new file mode 100644 index 0000000..8ec55cd Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/0/replay.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/training.json b/benchmarks/v1/evidence/aggregate-056/A9/0/training.json new file mode 100644 index 0000000..14e5083 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/0/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 51.70042410974455, + "last_score": 51.70042410974455, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "af0bd669e888ff1edf10426468ca28ff885f247fd1ff08ca9379253aebb40a83", + "best_validation_score": 51.70042410974455, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 51.70042410974455 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/0/worker.log b/benchmarks/v1/evidence/aggregate-056/A9/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/execution.json b/benchmarks/v1/evidence/aggregate-056/A9/1/execution.json new file mode 100644 index 0000000..24001ed --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "15bdd5f6ba73ea3bb3969191dd63354bd083dfdb34635006abfb4a833b56bfe1", + "predictions.npz": "f58ce6bede3751f1b6ff4942dc0fd7a8d35de6798e1d830b88fc3708be239b7e", + "training.json": "8a1741e37dbff6dd7b0c9eeb3bec738cee13bb1216230899020cffc0a783139f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 20.152059833999374 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/model.bin b/benchmarks/v1/evidence/aggregate-056/A9/1/model.bin new file mode 100644 index 0000000..02f95d6 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A9", "output": "annualized_paid_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [4.959490935674175], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [4, 14, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.1798666530638971e-13], [-0.3575610876137376], [0.6527825101636726], [-0.6256481146143362], [-0.11238377400700875], [0.5006128749847838], [1.2423963864529286]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 37, 3, -1, -1, -1, -1], "threshold": [2, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00011992899969090037], [-0.3821165007473333], [0.506688685117028], [-0.47138908585276135], [0.20390572365089363], [0.37808164859646454], [1.1631435714839915]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [4, 14, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00020490144811550332], [-0.2957141026161428], [0.5476490260067521], [-0.5367225593480766], [-0.07788498877662346], [0.41738715549997424], [1.0835686554969384]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 37, 3, -1, -1, -1, -1], "threshold": [2, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00025832950240383323], [-0.31684775618954886], [0.4235225596082306], [-0.3963982290061665], [0.20114663395572785], [0.3156465000275331], [1.0047829200296743]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "power": 1.5} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/period-predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/1/period-predictions.npz new file mode 100644 index 0000000..cbef42c Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/1/period-predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/1/predictions.npz new file mode 100644 index 0000000..e233898 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/replay.npz b/benchmarks/v1/evidence/aggregate-056/A9/1/replay.npz new file mode 100644 index 0000000..e233898 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/1/replay.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/training.json b/benchmarks/v1/evidence/aggregate-056/A9/1/training.json new file mode 100644 index 0000000..4294e04 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/1/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 52.3764006685093, + "last_score": 52.3764006685093, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "930f666118a59084e6ec65e602a1df9b0b2e8564f8993a462dd597cf060559fd", + "best_validation_score": 52.3764006685093, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 52.3764006685093 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/1/worker.log b/benchmarks/v1/evidence/aggregate-056/A9/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/execution.json b/benchmarks/v1/evidence/aggregate-056/A9/2/execution.json new file mode 100644 index 0000000..849f490 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "72ccb03ca4cc86a168aca7ed639fdd99d6277ab698ac18248ffef363adb4fc57", + "predictions.npz": "b67bea8283b4c4e20c4689b4c08072fe222b373ad932c7a23864227c054298e0", + "training.json": "adcf617c8cdaf2192326bd3c655d727fdaff6b069f5786df39e8efbae51b212c", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 19.741415374999633 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/model.bin b/benchmarks/v1/evidence/aggregate-056/A9/2/model.bin new file mode 100644 index 0000000..04b05d7 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A9", "output": "annualized_paid_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [5.163117573431629], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [12, 2, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[7.073177962766725e-14], [-0.215541425337931], [1.5488331747740147], [-0.48176107904873056], [0.23790707010250403], [1.816959435596085], [1.0211986419684642]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 11, -1, -1, -1, -1], "threshold": [12, 4, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.000577405524671694], [-0.19484007095768224], [1.4891541436451838], [-0.3985607428766329], [0.3067546245709811], [1.086835086456442], [1.9097520029251738]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 11, -1, -1, -1, -1], "threshold": [12, 2, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0010605611570906341], [-0.17598620917630836], [1.4260950193602497], [-0.3980029118486341], [0.19976078636611166], [1.0079962294377647], [1.8912787412888998]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [12, 4, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.001426955323240673], [-0.15886354014904677], [1.3600778706427938], [-0.32840210025193656], [0.2571124954232178], [0.9279176935258819], [1.8684309443488576]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "power": 1.5} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/period-predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/2/period-predictions.npz new file mode 100644 index 0000000..cdeaccb Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/2/period-predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/2/predictions.npz new file mode 100644 index 0000000..5014327 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/replay.npz b/benchmarks/v1/evidence/aggregate-056/A9/2/replay.npz new file mode 100644 index 0000000..5014327 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/2/replay.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/training.json b/benchmarks/v1/evidence/aggregate-056/A9/2/training.json new file mode 100644 index 0000000..9bc8c3c --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/2/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 49.34804057969191, + "last_score": 49.34804057969191, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "4d7d373be82611dc5e6fbb1c1651c24e7c33cd7e80249e748800d3b59a331b6d", + "best_validation_score": 49.34804057969191, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 49.34804057969191 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/2/worker.log b/benchmarks/v1/evidence/aggregate-056/A9/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/execution.json b/benchmarks/v1/evidence/aggregate-056/A9/3/execution.json new file mode 100644 index 0000000..837b586 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "33e56109bfc0b9440576e5c1a2dc7c7c95f7ce2ae02f5dafa8a3ec82e6300350", + "predictions.npz": "dffffcb748d3af7b00b0fbbaa88aa3aea636240f7e4c5200b2b7ab2c0241d370", + "training.json": "53f7125180accfad79f7a03a27a3e50c5438847a99eb8a47c07b02855bc1dc83", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 19.94566566600406 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/model.bin b/benchmarks/v1/evidence/aggregate-056/A9/3/model.bin new file mode 100644 index 0000000..e9c99e6 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A9", "output": "annualized_paid_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [5.09731876653807], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 18, 3, -1, -1, -1, -1], "threshold": [4, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.1055308465107223e-13], [-0.3937143709796316], [0.6894697489792551], [-0.412733279980998], [1.3047175154549286], [0.37890040091789196], [1.468769604392438]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 2, 3, -1, -1, -1, -1], "threshold": [4, 29, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00038282842301075467], [-0.35598104319018553], [0.6324457820549839], [-0.4196652822665815], [0.13489194515699182], [0.3422431579651846], [1.3973853977559483]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 18, 3, -1, -1, -1, -1], "threshold": [3, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0006389432362256651], [-0.34971637621636714], [0.5360612342650536], [-0.3685224940151661], [1.2891108118224521], [0.2865057814701273], [1.322321464581675]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 1, -1, -1, -1, -1], "threshold": [12, 2, 11, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0008372731709212771], [-0.1251148715425621], [1.2446090854415757], [-0.3439307156274375], [0.2396038693075186], [0.5392911643745941], [1.6422249572597294]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "power": 1.5} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/period-predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/3/period-predictions.npz new file mode 100644 index 0000000..276ada5 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/3/period-predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/3/predictions.npz new file mode 100644 index 0000000..abd40e0 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/replay.npz b/benchmarks/v1/evidence/aggregate-056/A9/3/replay.npz new file mode 100644 index 0000000..abd40e0 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/3/replay.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/training.json b/benchmarks/v1/evidence/aggregate-056/A9/3/training.json new file mode 100644 index 0000000..3d79313 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/3/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 46.36994019294434, + "last_score": 46.36994019294434, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bd44db95e658015c525c3dee3a28fabec82f215bc36cd5c3047d8a30e8e892ac", + "best_validation_score": 46.36994019294434, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 46.36994019294434 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/3/worker.log b/benchmarks/v1/evidence/aggregate-056/A9/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/execution.json b/benchmarks/v1/evidence/aggregate-056/A9/4/execution.json new file mode 100644 index 0000000..9a85774 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "3d5dbdd0e47cd8a82b2d2fd471f663fa03f62f93b8ea7005aa8d556951721787", + "predictions.npz": "2cb450a55f36e48b81f3c145e09dce733a362631d0a055dd2e797887e24f6054", + "training.json": "e582594b3d93277a5fd62bb26c822604cbb7d856f99ef33595ca8604d23f978e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 19.91552079099347 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/model.bin b/benchmarks/v1/evidence/aggregate-056/A9/4/model.bin new file mode 100644 index 0000000..2cc153f --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A9", "output": "annualized_paid_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [5.076626697623622], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [4, 6, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-1.6219316989066023e-13], [-0.371825806362309], [0.6670913187532498], [-0.16263246500400946], [-0.6145920936850867], [0.42547502873115317], [1.3822220902267934]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [4, 7, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0002301668958814272], [-0.3362859548853917], [0.6102175082847828], [-0.16480646573310326], [-0.5845287516333203], [0.38467467177197595], [1.3065250853879542]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [4, 6, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0003972766389957771], [-0.30388276093202693], [0.556913971987313], [-0.13006467279094183], [-0.5086859202340047], [0.3474973623098552], [1.2284067408212451]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 18, 3, -1, -1, -1, -1], "threshold": [2, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.000514345973443335], [-0.3266875533857458], [0.4371650372474414], [-0.3494293366140453], [1.432384852797403], [0.2699333353054605], [1.1490124503876973]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "power": 1.5} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/period-predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/4/period-predictions.npz new file mode 100644 index 0000000..a1ce245 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/4/period-predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/predictions.npz b/benchmarks/v1/evidence/aggregate-056/A9/4/predictions.npz new file mode 100644 index 0000000..4629bf3 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/replay.npz b/benchmarks/v1/evidence/aggregate-056/A9/4/replay.npz new file mode 100644 index 0000000..4629bf3 Binary files /dev/null and b/benchmarks/v1/evidence/aggregate-056/A9/4/replay.npz differ diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/training.json b/benchmarks/v1/evidence/aggregate-056/A9/4/training.json new file mode 100644 index 0000000..aeabd8f --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/A9/4/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 46.51041983102714, + "last_score": 46.51041983102714, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "6b26ac22d0be34cf25b677ed1c99903854b947676468045a4c32298e6813536b", + "best_validation_score": 46.51041983102714, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 46.51041983102714 +} diff --git a/benchmarks/v1/evidence/aggregate-056/A9/4/worker.log b/benchmarks/v1/evidence/aggregate-056/A9/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/aggregate-056/README.md b/benchmarks/v1/evidence/aggregate-056/README.md new file mode 100644 index 0000000..fb9fa34 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/README.md @@ -0,0 +1,30 @@ +# Current A9 direct annualized aggregate integration + +All five frozen aggregate folds pass the current CPU Tweedie worker and exact +fresh-process replay. Annualized paid totals use positive exposure weights once, +with fixed power 1.5 and no extra offset. Output retains annualized units. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-aggregate-056 --applications A9 +``` + +Requires pinned insurance files in build/v1-data and committed preprocessing +freeze. Four rounds, depth two, 32 bins, learning rate 0.1, patience three and one +CPU thread; 90-second fit/30-second replay caps. No test labels scored, memory +cap, profiler or concurrent regression. Export is outside fit timing. Host: +Apple M4 Max, 51539607552 bytes RAM (same host as Sprint 052); Python reports +x86_64. No CUDA or measured peak memory. + +`summary.json` retains source/revision/dirty state, population/split/packet hashes, +commands, environment and outcomes. Each fold retains raw model, predictions, +replay, training, execution and log artifacts. All source/output hashes match. +`verification.json` records independent weighted Tweedie objectives and exact +source-ID/exposure-weight agreement with the hashed validation-period packet. +Annualized targets times exposure reproduce paid totals. Additional raw +period-predictions.npz files retain annualized predictions times exposure. +Numerical checks use rtol=1e-12/atol=1e-14; fresh replay is exact. + +This is direct aggregate integration, not a complete A9 search, calibrated +compound distribution or performance comparison. Frequency-severity composition +still requires matched positive-payment counts and totals; A7 raw claim counts +cannot be substituted. No required scope is dropped. diff --git a/benchmarks/v1/evidence/aggregate-056/summary.json b/benchmarks/v1/evidence/aggregate-056/summary.json new file mode 100644 index 0000000..399970c --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/summary.json @@ -0,0 +1,601 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A7/A8/A9/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "d7622f4c1d3494d5e6b5019b66db1d80708e6c23", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-aggregate-056", + "--applications", + "A9" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "f659290d0190e6c507876c715bbbc94d11729c3b8f43fa70634ec42c1ae96494", + "benchmarks/v1/openboost_predict.py": "7b0fa9e9231a5259750359f7f191664b93f1fd0160ad85fdb9d7a45c4e790233", + "benchmarks/v1/openboost_worker_smoke.py": "225da1c92963e963e38e8cca47fc7da3ae4c69a9c66a8e49a06e4050cd3bd8de", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A9": { + "application": "A9", + "dataset": "insurance", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "1e3cd8d7e7bd157745bff7db14534bd1fbcecff3abef8f4341fa1f58a9583f0f" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "89ca61cb3b97a660065989fc29d4083af85a8b78081ff71dba6f316710421bbb" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "e9d6286fffd61b5c7dd91b7a027684fa561d72fe0d57a14f0b846b3eae1e8c20" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "6dcf4429e95ed60936e9fce3a8ce1ad4cfe23524dc1ec3115f5ab2ea2a686153" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "0b43c2d68dcea2f014cc1ef202e89fce4055b61723a241d71dbefd6be62efcaf" + }, + "validation-period": { + "path": "0/validation-period.npz", + "sha256": "38b3c8adea524a454dbceb35cb3b18f97a77e332da742607b505cb263d38bdc0" + }, + "test-period": { + "path": "0/test-period.npz", + "sha256": "4a65bf4de6a61bd5434bc9301092c35e4cd0cc636675978d48e0b703978c9a36" + } + }, + "metadata": { + "target_units": "annualized paid total; exposure weight once, no offset" + } + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "e8c4d49a1008615af63446d04a049fadb9eb2c65243942defc4765272d1e8dac" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "34d0dd6b71e9c4c95461c3eb03fd32da250352b89fc9c113f9c44ff6b9f2f8b9" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "0e80cdbb30a5f39d7a0aa66133f65d5f59bdc9a0cdab73560c3606ff09130f4e" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "8db330118e63840ca6ba192426d475f17c43478418a684fa1283698c80f789b4" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "722b45843d3dfa5494bdf2ad027a398b74d0dbe3ca3ffe3f432d12549bed3a40" + }, + "validation-period": { + "path": "1/validation-period.npz", + "sha256": "cc873cd194e217b151323af8c6ca5078357f5b8fc45c97d0c286d1cd624417a4" + }, + "test-period": { + "path": "1/test-period.npz", + "sha256": "627c93a4f32751fc739ac8a6f1d1b9f6ee36d3213ade9cf5c31847073abdcf7b" + } + }, + "metadata": { + "target_units": "annualized paid total; exposure weight once, no offset" + } + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "c2a2c40926e231d1e596f7e4c662219d923e6f926a96df27b4717abd7445f420" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "605ce72c18c2ab8b1b00045782ae01f5a7f22bdb38d4ac24074715e39628a3ab" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "55528b0dadba7c2a172ca8eae888750afa418c91ca22991d62873957466b84a9" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "cabecd0aced4f18a10a6029f372f6f7657a45d5fff5d5bbfafedceb7b1190439" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "aba1155b233c75fc269f02c7ce530fda1146d192d7352c4aa9bf1d0b13907e09" + }, + "validation-period": { + "path": "2/validation-period.npz", + "sha256": "7b42a1c4f591debe3866e1d42886de0a5d74c7a58dc9586296c20e2c16dd80c3" + }, + "test-period": { + "path": "2/test-period.npz", + "sha256": "eb23a461b880d1053a00c712426a1f7132d4e1e86c8bfffeffc0db4338cb8438" + } + }, + "metadata": { + "target_units": "annualized paid total; exposure weight once, no offset" + } + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "7b3cd2b815775626af17f54545b2bbbc1c0bffd23882005f76a8e67e066cfbf2" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "ccc9af5cc82c64fe0ed87d85e8ce2192fc4c685a7c49695a053ec23ff1b49ead" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "5a8f2913e280a26ace47d7d703759109bf6bcc944de930a3aa1bc4f3dc0da054" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "a77c65f78cd60d0ef0765f78721ad123d509c0b911071ea830efa838aee90e2e" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "96ef0af1e84246bec68d60b9d75655873faa375a2d52b436e83e44becd6c4955" + }, + "validation-period": { + "path": "3/validation-period.npz", + "sha256": "1f023d3f7bc39802a59b329474b1e2c80dafd07f29fc6fef6b1fd82447548dc5" + }, + "test-period": { + "path": "3/test-period.npz", + "sha256": "e2c56c144be922042ea2bd671dfd0e99a7d8353d1c8380c767d3418bf7725539" + } + }, + "metadata": { + "target_units": "annualized paid total; exposure weight once, no offset" + } + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "668e0a57c88afc0ab5b6cf73cd578f7b84c6327670cf4a312f450ca65a558781" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "d11bbf0515574a7e4b7d42ef82e433a7e279f587bf353b8e06fc50db5de1861b" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "cfc3c8aa97ef035aceb7ed96d798f7ee922c4a2e86c076e4ddd7431b2ee6a27d" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "df794e119ee5272352c86b5400198061d8a289ccf782ff85c4af81c2d1d22abd" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "ffd62d22198e3cbd25e42308cc6e1509cbc5c386fdecd66bf7282ac8292196c8" + }, + "validation-period": { + "path": "4/validation-period.npz", + "sha256": "e5f545a742edbd9e9a768ad386f2ce59430c3d2a8c7dec99a95edd9885a91b91" + }, + "test-period": { + "path": "4/test-period.npz", + "sha256": "19a4f4480b0c627a83f3a331fe94004368effa70aa56eb0959d7fdec5bccfbbd" + } + }, + "metadata": { + "target_units": "annualized paid total; exposure weight once, no offset" + } + } + ], + "source_freeze_sha256": "ff95579dd1b95595e87027f38afd512cd986b3182f08f50a7a2139ffb63f291f", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 19.495609958001296, + "artifacts": { + "model.bin": "05cb37e2b36082e4258cea1ee81d26d048d677dcc265df9f06887cf59bec40a2", + "training.json": "73c8cf78fd6b2886c56ae11ccf1cd4c5913541482d811562d36423dd8c252c8e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "106aa1fc8ff5625ddc993ae7dedf00a86eef64ba429f5bda7b93616b9d21c6b5" + }, + "application": "A9", + "fold": 0, + "job": { + "application": "A9", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-aggregate-056/A9/0/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-aggregate-056/A9/0/fit/model.bin", + "/private/tmp/openboost-aggregate-056/A9/0/fit/features.npz", + "/private/tmp/openboost-aggregate-056/A9/0/fit/replay.npz" + ], + "prediction_shape": [ + 133882 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 51.70042410974455, + "last_score": 51.70042410974455, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "af0bd669e888ff1edf10426468ca28ff885f247fd1ff08ca9379253aebb40a83", + "best_validation_score": 51.70042410974455, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 51.70042410974455 + }, + "replay_sha256": "106aa1fc8ff5625ddc993ae7dedf00a86eef64ba429f5bda7b93616b9d21c6b5" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 20.152059833999374, + "artifacts": { + "model.bin": "15bdd5f6ba73ea3bb3969191dd63354bd083dfdb34635006abfb4a833b56bfe1", + "training.json": "8a1741e37dbff6dd7b0c9eeb3bec738cee13bb1216230899020cffc0a783139f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "f58ce6bede3751f1b6ff4942dc0fd7a8d35de6798e1d830b88fc3708be239b7e" + }, + "application": "A9", + "fold": 1, + "job": { + "application": "A9", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-aggregate-056/A9/1/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-aggregate-056/A9/1/fit/model.bin", + "/private/tmp/openboost-aggregate-056/A9/1/fit/features.npz", + "/private/tmp/openboost-aggregate-056/A9/1/fit/replay.npz" + ], + "prediction_shape": [ + 133784 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 52.3764006685093, + "last_score": 52.3764006685093, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "930f666118a59084e6ec65e602a1df9b0b2e8564f8993a462dd597cf060559fd", + "best_validation_score": 52.3764006685093, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 52.3764006685093 + }, + "replay_sha256": "f58ce6bede3751f1b6ff4942dc0fd7a8d35de6798e1d830b88fc3708be239b7e" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 19.741415374999633, + "artifacts": { + "model.bin": "72ccb03ca4cc86a168aca7ed639fdd99d6277ab698ac18248ffef363adb4fc57", + "training.json": "adcf617c8cdaf2192326bd3c655d727fdaff6b069f5786df39e8efbae51b212c", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "b67bea8283b4c4e20c4689b4c08072fe222b373ad932c7a23864227c054298e0" + }, + "application": "A9", + "fold": 2, + "job": { + "application": "A9", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-aggregate-056/A9/2/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-aggregate-056/A9/2/fit/model.bin", + "/private/tmp/openboost-aggregate-056/A9/2/fit/features.npz", + "/private/tmp/openboost-aggregate-056/A9/2/fit/replay.npz" + ], + "prediction_shape": [ + 133785 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 49.34804057969191, + "last_score": 49.34804057969191, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "4d7d373be82611dc5e6fbb1c1651c24e7c33cd7e80249e748800d3b59a331b6d", + "best_validation_score": 49.34804057969191, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 49.34804057969191 + }, + "replay_sha256": "b67bea8283b4c4e20c4689b4c08072fe222b373ad932c7a23864227c054298e0" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 19.94566566600406, + "artifacts": { + "model.bin": "33e56109bfc0b9440576e5c1a2dc7c7c95f7ce2ae02f5dafa8a3ec82e6300350", + "training.json": "53f7125180accfad79f7a03a27a3e50c5438847a99eb8a47c07b02855bc1dc83", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "dffffcb748d3af7b00b0fbbaa88aa3aea636240f7e4c5200b2b7ab2c0241d370" + }, + "application": "A9", + "fold": 3, + "job": { + "application": "A9", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-aggregate-056/A9/3/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-aggregate-056/A9/3/fit/model.bin", + "/private/tmp/openboost-aggregate-056/A9/3/fit/features.npz", + "/private/tmp/openboost-aggregate-056/A9/3/fit/replay.npz" + ], + "prediction_shape": [ + 133767 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 46.36994019294434, + "last_score": 46.36994019294434, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bd44db95e658015c525c3dee3a28fabec82f215bc36cd5c3047d8a30e8e892ac", + "best_validation_score": 46.36994019294434, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 46.36994019294434 + }, + "replay_sha256": "dffffcb748d3af7b00b0fbbaa88aa3aea636240f7e4c5200b2b7ab2c0241d370" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-aggregate-056/A9/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 19.91552079099347, + "artifacts": { + "model.bin": "3d5dbdd0e47cd8a82b2d2fd471f663fa03f62f93b8ea7005aa8d556951721787", + "training.json": "e582594b3d93277a5fd62bb26c822604cbb7d856f99ef33595ca8604d23f978e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "2cb450a55f36e48b81f3c145e09dce733a362631d0a055dd2e797887e24f6054" + }, + "application": "A9", + "fold": 4, + "job": { + "application": "A9", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-aggregate-056/A9/4/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-aggregate-056/A9/4/fit/model.bin", + "/private/tmp/openboost-aggregate-056/A9/4/fit/features.npz", + "/private/tmp/openboost-aggregate-056/A9/4/fit/replay.npz" + ], + "prediction_shape": [ + 133883 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 46.51041983102714, + "last_score": 46.51041983102714, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "6b26ac22d0be34cf25b677ed1c99903854b947676468045a4c32298e6813536b", + "best_validation_score": 46.51041983102714, + "output": "annualized_paid_mean", + "selection_metric": "weighted_tweedie_objective", + "power": 1.5, + "target_units": "annualized_paid_total", + "weight_role": "exposure_once", + "selected_validation_tweedie_objective": 46.51041983102714 + }, + "replay_sha256": "2cb450a55f36e48b81f3c145e09dce733a362631d0a055dd2e797887e24f6054" + } + ] +} diff --git a/benchmarks/v1/evidence/aggregate-056/verification.json b/benchmarks/v1/evidence/aggregate-056/verification.json new file mode 100644 index 0000000..ddab343 --- /dev/null +++ b/benchmarks/v1/evidence/aggregate-056/verification.json @@ -0,0 +1,52 @@ +{ + "source_and_artifact_hashes_match": true, + "rtol": 1e-12, + "atol": 1e-14, + "cells": [ + { + "fold": 0, + "selected_tweedie_objective": 51.70042410974668, + "reported_objective": 51.70042410974455, + "absolute_difference": 2.1245227799226996e-12, + "source_ids_and_exposure_weights_exact": true, + "target_period_conversion": true, + "period_prediction_sha256": "a128f0a8223b5fad3faae023e359d0838974f15888fec054a0c33254172905af" + }, + { + "fold": 1, + "selected_tweedie_objective": 52.376400668512424, + "reported_objective": 52.3764006685093, + "absolute_difference": 3.126388037344441e-12, + "source_ids_and_exposure_weights_exact": true, + "target_period_conversion": true, + "period_prediction_sha256": "df49c2ce5152faf28a0835b3f766e8fc575d1cce484c2d5af23467fc2c3483f8" + }, + { + "fold": 2, + "selected_tweedie_objective": 49.3480405796973, + "reported_objective": 49.34804057969191, + "absolute_difference": 5.3859139370615594e-12, + "source_ids_and_exposure_weights_exact": true, + "target_period_conversion": true, + "period_prediction_sha256": "dbaae517003dc5c9d2146a4d865bee9d122f4b3d6f4c642ff0e7fc4d25586e57" + }, + { + "fold": 3, + "selected_tweedie_objective": 46.36994019294462, + "reported_objective": 46.36994019294434, + "absolute_difference": 2.7711166694643907e-13, + "source_ids_and_exposure_weights_exact": true, + "target_period_conversion": true, + "period_prediction_sha256": "de8c51b3f02bc3d60fa0d43e62b7ccde16b9a535cd94e874b98b8d88e79ddd4a" + }, + { + "fold": 4, + "selected_tweedie_objective": 46.51041983102654, + "reported_objective": 46.51041983102714, + "absolute_difference": 6.039613253960852e-13, + "source_ids_and_exposure_weights_exact": true, + "target_period_conversion": true, + "period_prediction_sha256": "4ff8abedf12c76835b059ab147d382cd5fe615922a9f3dece9e7bd4290357f74" + } + ] +} diff --git a/benchmarks/v1/evidence/composition-058/0/execution.json b/benchmarks/v1/evidence/composition-058/0/execution.json new file mode 100644 index 0000000..8c41602 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/0/execution.json @@ -0,0 +1,21 @@ +{ + "artifacts": { + "model.bin": "63f6eff621ed4a7d2f38dce3c8b6987dd3eaf4dc15fa4ee6c1773a2b8a6a2145", + "predictions.npz": "835a62ba6c2a2cdc2000bf2cf559d29bef39bea350b42d9ff8cfdab38586ad35", + "training.json": "20c228c45315f009c1c35c3c262115760e9a493f1afc76c8878bac9d3c8c645f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-0.json", + "/private/tmp/openboost-paid-events-057/fold-0.npz" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.591106708001462 +} diff --git a/benchmarks/v1/evidence/composition-058/0/model.bin b/benchmarks/v1/evidence/composition-058/0/model.bin new file mode 100644 index 0000000..743e620 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-frequency-severity-v1", "frequency": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.5897363853486226], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 43, -1, -1, -1, -1], "threshold": [12, 3, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-6.405785601476999e-14], [-0.07588594428550274], [2.659313906977329], [-0.2755979753648221], [0.5084856011683198], [3.171761738431287], [0.7313503396829402]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0018095116323610728], [-0.2553577520881364], [0.6003083033089823], [-0.36808951472365764], [-0.10766587810150625], [0.5024620148726443], [2.69689026400093]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [4, 16, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.002780602205767917], [-0.21483475984226783], [0.5568647803566645], [-0.3189804749644286], [-0.0638371870190153], [0.399653737632965], [1.4403327214974568]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 186.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 2, -1, -1, -1, -1], "threshold": [2, 15, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0033534826707121448], [-0.23788292414854115], [0.4035723407207767], [-0.33857616597062756], [-0.11050285466571753], [0.23325362472000916], [0.8601479524759594]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "severity": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.739406972893882], "terms": [], "classes": null}} diff --git a/benchmarks/v1/evidence/composition-058/0/predictions.npz b/benchmarks/v1/evidence/composition-058/0/predictions.npz new file mode 100644 index 0000000..8d6e2fe Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/composition-058/0/replay.npz b/benchmarks/v1/evidence/composition-058/0/replay.npz new file mode 100644 index 0000000..8d6e2fe Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/0/replay.npz differ diff --git a/benchmarks/v1/evidence/composition-058/0/training.json b/benchmarks/v1/evidence/composition-058/0/training.json new file mode 100644 index 0000000..7b8cd6d --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/0/training.json @@ -0,0 +1,36 @@ +{ + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.161932312583084, + "last_score": 0.161932312583084, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "3b978da03454e52e76d4dbf4dfcf6148caef80ad71e7ea50703a6bad67c527e4", + "best_score": 0.161932312583084, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.744420199119519, + "last_score": 8.746309046366509, + "completed_rounds": 3, + "stale_rounds": 3, + "reason": "patience" + }, + "selected_identity": "91ae6143c416d7ff084f17cf25df033676b65634253a16f76fced31cb4b8c19e", + "best_score": 8.744420199119519, + "accepted_commits": 3 + } + } +} diff --git a/benchmarks/v1/evidence/composition-058/0/worker.log b/benchmarks/v1/evidence/composition-058/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/composition-058/1/execution.json b/benchmarks/v1/evidence/composition-058/1/execution.json new file mode 100644 index 0000000..ee72afc --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/1/execution.json @@ -0,0 +1,21 @@ +{ + "artifacts": { + "model.bin": "73255261b008df571f1736c19e62e090e8269fd9fb9d43ce918277cf9e40a7a6", + "predictions.npz": "a5edd95bcbefa011482b0feb45d68352213d0388d92890919270b6beec5ecfc5", + "training.json": "d9572bdd52f9b7bcf10fffb4a5a6b57b43d46719a7eb03d0e949b24404dd1f5e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-1.json", + "/private/tmp/openboost-paid-events-057/fold-1.npz" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.712876083009178 +} diff --git a/benchmarks/v1/evidence/composition-058/1/model.bin b/benchmarks/v1/evidence/composition-058/1/model.bin new file mode 100644 index 0000000..a7e64da --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-frequency-severity-v1", "frequency": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.6018849183487998], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 17, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.964086045856594e-14], [-0.2867817250792682], [0.758197613274399], [-0.38060318587231506], [-0.12507718450514424], [0.5448278362510129], [2.668255709177686]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 14, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0017740269063306468], [-0.26609088734492836], [0.6264376038615725], [-0.3777816340980527], [-0.14018288178126895], [0.5299833327677024], [2.692415509829783]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 17, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0027979900972596246], [-0.2463566463415524], [0.526165142148556], [-0.33428532001138234], [-0.10156417700116499], [0.38743614606334875], [1.4495786337819905]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 158.0, 188.0, 222.0, 269.0, 311.0, 393.0, 461.0, 566.0, 677.0, 817.0, 1005.0, 1284.0, 1369.0, 1629.0, 2252.0, 2925.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [2, 23, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.003417700305737195], [-0.2479038890719106], [0.4165561450286229], [-0.3008527869363074], [-0.030972472785999027], [0.3122092943197162], [1.1194692059576639]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "severity": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.561375854022972], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 56.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.0, 61.0, 78.0, 94.0, 115.0, 137.0, 170.0, 209.0, 242.0, 289.0, 358.4375, 416.0, 511.0, 634.0, 745.0, 904.0, 1109.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4087.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 3, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.297663001002598e-15], [-0.0481498048492374], [0.4172503255142362], [0.24077441147529896], [-0.12661741359950918], [0.32377724020055487], [0.8455769915918793]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 56.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.0, 61.0, 78.0, 94.0, 115.0, 137.0, 170.0, 209.0, 242.0, 289.0, 358.4375, 416.0, 511.0, 634.0, 745.0, 904.0, 1109.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4087.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 3, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0002280403827223764], [-0.04299688472127232], [0.3925842864017022], [0.2222786356476373], [-0.11244366462017358], [0.3015415371192966], [0.8320022480115389]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 56.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.0, 61.0, 78.0, 94.0, 115.0, 137.0, 170.0, 209.0, 242.0, 289.0, 358.4375, 416.0, 511.0, 634.0, 745.0, 904.0, 1109.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4087.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 0, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00039821445787349344], [-0.03842613149796781], [0.3684342096914102], [0.42811512657072953], [-0.07242661670418034], [0.2801763408938256], [0.817485982521368]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 56.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.0, 61.0, 78.0, 94.0, 115.0, 137.0, 170.0, 209.0, 242.0, 289.0, 358.4375, 416.0, 511.0, 634.0, 745.0, 904.0, 1109.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4087.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 3, 1, -1, -1, -1, -1], "threshold": [29, 8, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0005268738290319432], [-0.034360134869748656], [0.34490692220939967], [-0.13418376070923663], [0.10780754779699164], [0.2597401128004967], [0.8020073031655531]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/composition-058/1/predictions.npz b/benchmarks/v1/evidence/composition-058/1/predictions.npz new file mode 100644 index 0000000..bda5b5b Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/composition-058/1/replay.npz b/benchmarks/v1/evidence/composition-058/1/replay.npz new file mode 100644 index 0000000..bda5b5b Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/1/replay.npz differ diff --git a/benchmarks/v1/evidence/composition-058/1/training.json b/benchmarks/v1/evidence/composition-058/1/training.json new file mode 100644 index 0000000..8af0946 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/1/training.json @@ -0,0 +1,36 @@ +{ + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.16708248979218976, + "last_score": 0.16708248979218976, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "505a8b6d160e046b85f9dc73f5946a77e66624b9fc45344af3cbcfd538425c5f", + "best_score": 0.16708248979218976, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.760665735441318, + "last_score": 8.760665735441318, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "1a598b37bacbc0bb9e78d24df86099cd26b5b878c0475fb196095480b48fe6f6", + "best_score": 8.760665735441318, + "accepted_commits": 4 + } + } +} diff --git a/benchmarks/v1/evidence/composition-058/1/worker.log b/benchmarks/v1/evidence/composition-058/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/composition-058/2/execution.json b/benchmarks/v1/evidence/composition-058/2/execution.json new file mode 100644 index 0000000..a4150c3 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/2/execution.json @@ -0,0 +1,21 @@ +{ + "artifacts": { + "model.bin": "66ac7b6b4d7f1cf519ed377f90ea8b7a7badbe46a1e22a51ed6a7ad6f67cb607", + "predictions.npz": "983c68b4459498144b13c5ee475baf69d9302e5c1d1ace751310fc3bf859449f", + "training.json": "3f3d5d6044d998873889d8994b1d879d154596ec97c6bc39c1749eece4571c9e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-2.json", + "/private/tmp/openboost-paid-events-057/fold-2.npz" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.789402875001542 +} diff --git a/benchmarks/v1/evidence/composition-058/2/model.bin b/benchmarks/v1/evidence/composition-058/2/model.bin new file mode 100644 index 0000000..f7a9021 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-frequency-severity-v1", "frequency": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.579525046411838], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [4, 2, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.1916602892836666e-14], [-0.24829069266818923], [0.7911411294190418], [-0.289077500725282], [0.12578368686351568], [0.5555564684551219], [2.5920322765695745]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.001612103166094106], [-0.2523573493929137], [0.5963640447716289], [-0.35636511875440446], [-0.11675242500313328], [0.4344379139312793], [1.7732741265350702]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0025525586819920556], [-0.23330729387751498], [0.5025362055002169], [-0.33301838642148224], [-0.10638198951440644], [0.42354687859905055], [2.0000684919947314]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 62.0, 77.0, 92.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 313.0, 393.0, 462.0, 568.0, 679.0, 820.0, 1006.0, 1284.0, 1374.0, 1658.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [4, 15, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.00311672765094321], [-0.19694258487459126], [0.47197877177079406], [-0.29530628138495235], [-0.07601386082299985], [1.6050987485694757], [0.38920944391849444]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "severity": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.742642619843466], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 45.0, 47.0, 48.0, 49.0, 50.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 66.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 97.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 60.0, 75.0, 92.0, 111.0, 133.0, 164.0, 201.75, 233.0, 286.0, 355.0, 405.0, 489.0, 614.0, 745.0, 856.0, 1054.0, 1313.0, 1384.0, 1629.75, 2120.0, 2733.0, 3317.0, 3688.0, 4087.0, 4624.25, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 18, -1, -1, -1, -1], "threshold": [0, 2, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.0733549910775217e-16], [0.7716802907220985], [-0.14162832044978058], [-0.1430509993474017], [0.9117805612738691], [-0.1542605229289921], [0.7400124455294218]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 45.0, 47.0, 48.0, 49.0, 50.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 66.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 97.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 60.0, 75.0, 92.0, 111.0, 133.0, 164.0, 201.75, 233.0, 286.0, 355.0, 405.0, 489.0, 614.0, 745.0, 856.0, 1054.0, 1313.0, 1384.0, 1629.75, 2120.0, 2733.0, 3317.0, 3688.0, 4087.0, 4624.25, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 42, -1, -1, -1, -1], "threshold": [0, 4, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0006836284081690609], [0.7535335972323899], [-0.12550809429128362], [0.14619131124060158], [0.9717836114912207], [-0.14698468688883617], [0.3490899307573209]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 45.0, 47.0, 48.0, 49.0, 50.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 66.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 97.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 60.0, 75.0, 92.0, 111.0, 133.0, 164.0, 201.75, 233.0, 286.0, 355.0, 405.0, 489.0, 614.0, 745.0, 856.0, 1054.0, 1313.0, 1384.0, 1629.75, 2120.0, 2733.0, 3317.0, 3688.0, 4087.0, 4624.25, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 2, -1, -1, -1, -1], "threshold": [0, 4, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0012206773238037359], [0.73443538921532], [-0.11141296583464978], [0.13363851476096777], [0.9689057992232415], [-0.005187857816425652], [-0.19834472460165806]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/composition-058/2/predictions.npz b/benchmarks/v1/evidence/composition-058/2/predictions.npz new file mode 100644 index 0000000..f66d3b5 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/composition-058/2/replay.npz b/benchmarks/v1/evidence/composition-058/2/replay.npz new file mode 100644 index 0000000..f66d3b5 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/2/replay.npz differ diff --git a/benchmarks/v1/evidence/composition-058/2/training.json b/benchmarks/v1/evidence/composition-058/2/training.json new file mode 100644 index 0000000..c0c7314 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/2/training.json @@ -0,0 +1,36 @@ +{ + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.15976309667810976, + "last_score": 0.15976309667810976, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "c75d7dc101485ed0b0c4986c49e746c7feeb7339af749958bfa9d33f9a338e48", + "best_score": 0.15976309667810976, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.694319429072479, + "last_score": 8.695301150208177, + "completed_rounds": 4, + "stale_rounds": 1, + "reason": "budget" + }, + "selected_identity": "7770310e79bd747c6874115f614f2b68c74a176b1f5980dc94fdfdd8b63558f5", + "best_score": 8.694319429072479, + "accepted_commits": 4 + } + } +} diff --git a/benchmarks/v1/evidence/composition-058/2/worker.log b/benchmarks/v1/evidence/composition-058/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/composition-058/3/execution.json b/benchmarks/v1/evidence/composition-058/3/execution.json new file mode 100644 index 0000000..202c581 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/3/execution.json @@ -0,0 +1,21 @@ +{ + "artifacts": { + "model.bin": "3795fb25037999c53a84b4c105e6d2c250b1b4897489814644ec8ac5b3535793", + "predictions.npz": "6cb12b2c5da6e018c9374362db629b3f64c17637f771c933648a611e4583414c", + "training.json": "7276bdfbe941412ab29436cdfc4efd8e9e77613e131853b522445f19e70b0e10", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-3.json", + "/private/tmp/openboost-paid-events-057/fold-3.npz" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 20.75576858400018 +} diff --git a/benchmarks/v1/evidence/composition-058/3/model.bin b/benchmarks/v1/evidence/composition-058/3/model.bin new file mode 100644 index 0000000..58eb390 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-frequency-severity-v1", "frequency": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.596108294508488], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.584843114869135e-13], [-0.2732835947388175], [0.723500512934487], [-0.37484473149353875], [-0.14028552034302205], [0.5203266368505103], [2.5394958240028624]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0016044989903123128], [-0.2532036286848343], [0.6002107674458119], [-0.3509701827238812], [-0.12814245271712557], [0.5085607657192692], [2.6043580045670414]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 15, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.002537044986759116], [-0.23410321390737557], [0.5056227429319252], [-0.327790542030336], [-0.11690068844700477], [0.37171461592061544], [1.4082360877620044]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 393.0, 461.0, 566.0, 675.0, 813.0, 1005.0, 1284.0, 1350.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5763.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [2, 12, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.003107130653443581], [-0.23440527113170817], [0.39960928694122005], [-0.18423796266420092], [-0.43285785603448446], [0.2983682578331429], [1.0923246667984743]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "severity": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.693427061046556], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 96.0, 100.0, 112.0], [16.0, 26.0, 37.0, 48.0, 58.0, 73.0, 91.0, 107.0, 130.0, 161.0, 194.0, 229.0, 282.0, 347.0, 405.0, 483.0, 613.0, 741.0, 854.0, 1054.0, 1313.0, 1384.0, 1622.0, 2103.5, 2733.0, 3317.0, 3688.0, 4087.0, 4646.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-1.082795305281382e-15], [0.7358573561189024], [-0.10702554925610962], [0.1875341463255259], [0.9026671688764051], [-0.1557099867626509], [0.32178080232880896]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 96.0, 100.0, 112.0], [16.0, 26.0, 37.0, 48.0, 58.0, 73.0, 91.0, 107.0, 130.0, 161.0, 194.0, 229.0, 282.0, 347.0, 405.0, 483.0, 613.0, 741.0, 854.0, 1054.0, 1313.0, 1384.0, 1622.0, 2103.5, 2733.0, 3317.0, 3688.0, 4087.0, 4646.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0005386190943258365], [0.7158346790441156], [-0.09512657462765339], [0.1721872015307674], [0.8934790398249589], [-0.13785522439780587], [0.299618338549874]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 96.0, 100.0, 112.0], [16.0, 26.0, 37.0, 48.0, 58.0, 73.0, 91.0, 107.0, 130.0, 161.0, 194.0, 229.0, 282.0, 347.0, 405.0, 483.0, 613.0, 741.0, 854.0, 1054.0, 1313.0, 1384.0, 1622.0, 2103.5, 2733.0, 3317.0, 3688.0, 4087.0, 4646.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0009549137718906573], [0.6949143929474112], [-0.0846667728537943], [0.15784159671485717], [0.8835312134207416], [-0.1222781385906376], [0.2783321665807623]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 52.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 96.0, 100.0, 112.0], [16.0, 26.0, 37.0, 48.0, 58.0, 73.0, 91.0, 107.0, 130.0, 161.0, 194.0, 229.0, 282.0, 347.0, 405.0, 483.0, 613.0, 741.0, 854.0, 1054.0, 1313.0, 1384.0, 1622.0, 2103.5, 2733.0, 3317.0, 3688.0, 4087.0, 4646.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 18, -1, -1, -1, -1], "threshold": [0, 12, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.001270574607641871], [0.6731470991500214], [-0.07544823316811569], [0.1444733789631622], [0.8727816743330192], [-0.08854287610249027], [0.792112510731132]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/composition-058/3/predictions.npz b/benchmarks/v1/evidence/composition-058/3/predictions.npz new file mode 100644 index 0000000..3316d43 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/composition-058/3/replay.npz b/benchmarks/v1/evidence/composition-058/3/replay.npz new file mode 100644 index 0000000..3316d43 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/3/replay.npz differ diff --git a/benchmarks/v1/evidence/composition-058/3/training.json b/benchmarks/v1/evidence/composition-058/3/training.json new file mode 100644 index 0000000..7bb45f2 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/3/training.json @@ -0,0 +1,36 @@ +{ + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.1622191375121619, + "last_score": 0.1622191375121619, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "6119aeda08f0e0078fa3995bba20a5999b182e07e7eb534cce569c25079c3534", + "best_score": 0.1622191375121619, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536422353456352, + "last_score": 8.536422353456352, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "81b946a1677668c0053aa7ecb5d65b2c6cc650e8715bfb91f38cdff976a99b7f", + "best_score": 8.536422353456352, + "accepted_commits": 4 + } + } +} diff --git a/benchmarks/v1/evidence/composition-058/3/worker.log b/benchmarks/v1/evidence/composition-058/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/composition-058/4/execution.json b/benchmarks/v1/evidence/composition-058/4/execution.json new file mode 100644 index 0000000..54a17a2 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/4/execution.json @@ -0,0 +1,21 @@ +{ + "artifacts": { + "model.bin": "2ca494f621066987b274f75f7d8064599af583fb36aceb4880518e126742bfbd", + "predictions.npz": "01f70ebaf869bca6c9f3a3bd99d8cd05d77e614306f67061b31860fb9aec6c4e", + "training.json": "693ee6b7f2ffbe7540ee11e9b4bf407ebff053d0506bda83fd00019615d7938b", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-4.json", + "/private/tmp/openboost-paid-events-057/fold-4.npz" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 20.733523500006413 +} diff --git a/benchmarks/v1/evidence/composition-058/4/model.bin b/benchmarks/v1/evidence/composition-058/4/model.bin new file mode 100644 index 0000000..f578242 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-frequency-severity-v1", "frequency": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.594237520536291], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 43, -1, -1, -1, -1], "threshold": [12, 3, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-3.464598884570771e-14], [-0.07702602334186398], [2.6761186755435142], [-0.27296710181676], [0.49873612200444406], [3.139725740100852], [0.9605889399289336]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 17, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0017817183652255942], [-0.2528499507485739], [0.5967159832494989], [-0.3532006886045608], [-0.07943264231779613], [0.42583980496787555], [1.8046287611669718]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [2, 23, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0027434783639415216], [-0.25446095208530034], [0.46442206632872945], [-0.31637170211877175], [0.007360510597280841], [0.38832407938125], [2.061813008933432]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 40.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 63.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 77.0, 93.0, 109.0, 132.0, 159.0, 189.0, 222.0, 269.0, 315.0, 393.0, 462.0, 568.0, 679.0, 821.0, 1015.0, 1287.0, 1381.0, 1662.0, 2252.0, 2949.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 4, 3, -1, -1, -1, -1], "threshold": [3, 17, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0033305280654239654], [-0.21686306955750984], [0.43229032400796874], [-0.31081799210686073], [-0.06151961070327174], [0.31437804126848146], [1.1137812433137788]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "severity": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.670864218159913], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 37.0, 48.0, 59.0, 75.0, 93.0, 110.0, 134.0, 165.0, 204.0, 237.0, 287.0, 358.0, 416.0, 514.0, 634.0, 745.0, 886.0, 1096.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4646.0, 6729.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 12, 42, -1, -1, -1, -1], "threshold": [0, 0, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.11281947642131e-16], [0.6143120331635344], [-0.06284639053413342], [0.14499542793072281], [0.836001870067853], [-0.09597920201942303], [0.5234607523345179]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 65.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 37.0, 48.0, 59.0, 75.0, 93.0, 110.0, 134.0, 165.0, 204.0, 237.0, 287.0, 358.0, 416.0, 514.0, 634.0, 745.0, 886.0, 1096.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4646.0, 6729.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 12, 42, -1, -1, -1, -1], "threshold": [0, 0, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0003308448123780896], [0.590118708024126], [-0.05608398362753663], [0.13253468671431043], [0.8217177403762385], [-0.08551116176835222], [0.49788640267576273]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/composition-058/4/predictions.npz b/benchmarks/v1/evidence/composition-058/4/predictions.npz new file mode 100644 index 0000000..c4aa425 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/composition-058/4/replay.npz b/benchmarks/v1/evidence/composition-058/4/replay.npz new file mode 100644 index 0000000..c4aa425 Binary files /dev/null and b/benchmarks/v1/evidence/composition-058/4/replay.npz differ diff --git a/benchmarks/v1/evidence/composition-058/4/training.json b/benchmarks/v1/evidence/composition-058/4/training.json new file mode 100644 index 0000000..4e2165a --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/4/training.json @@ -0,0 +1,36 @@ +{ + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.16359409804271152, + "last_score": 0.16359409804271152, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "eabcb8c2e91852747b0e18011f563434b292dd14a5dac19ff6c8b460757b08cd", + "best_score": 0.16359409804271152, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536981751551068, + "last_score": 8.537179094305912, + "completed_rounds": 4, + "stale_rounds": 2, + "reason": "budget" + }, + "selected_identity": "fd102c9f3971e5184365af24aab61b2234ce638cca6d0e70637a5652014b369c", + "best_score": 8.536981751551068, + "accepted_commits": 4 + } + } +} diff --git a/benchmarks/v1/evidence/composition-058/4/worker.log b/benchmarks/v1/evidence/composition-058/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/composition-058/README.md b/benchmarks/v1/evidence/composition-058/README.md new file mode 100644 index 0000000..95d9f79 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/README.md @@ -0,0 +1,26 @@ +# Matched frequency-severity execution and replay + +All five Sprint 057 hash-bound policy packets pass combined Poisson/Gamma fits +and exact fresh-process replay. Frequency uses matched positive-payment counts +with exposure; severity uses positive policy averages weighted by paid count. +No business weights or offsets are added. Separate component validation selects +models; the recorded joint_selection flag is false. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.composition_smoke /tmp/openboost-paid-events-057/manifest.json /tmp/openboost-composition-058 +``` + +Regenerate Sprint 057 packets if absent. Binding hash matches its committed +manifest. Four rounds per component, depth two, 32 bins, learning rate 0.1, +patience three and one CPU thread. Both component fits share the 90-second cap; +fresh inference has 30 seconds. No profiler, concurrent regression, memory cap, +test labels or CUDA. Host: Apple M4 Max, 51539607552 bytes RAM (same host as +Sprint 052); Python reports x86_64. Peak memory was not measured. + +The summary retains revision/dirty state, source and input hashes, exact commands, +environment, statuses and component stopping/model identities. Each fold retains +raw two-model persistence, all five named prediction arrays, replay, training, +execution and log records. All source/output hashes match. All arrays replay +exactly, preserve policy IDs, and are finite and positive. Products and exposure +conversions pass at rtol=1e-12. This does not establish joint aggregate selection, +full A9 quality/search, a compound distribution or comparative performance. diff --git a/benchmarks/v1/evidence/composition-058/summary.json b/benchmarks/v1/evidence/composition-058/summary.json new file mode 100644 index 0000000..78f19d3 --- /dev/null +++ b/benchmarks/v1/evidence/composition-058/summary.json @@ -0,0 +1,455 @@ +{ + "scope": "Component-selected composition validation only; no joint selection or quality gate", + "revision": "e603f1f205a2fe9bc67f49614ea6054ff7f0f28e", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.composition_smoke", + "/private/tmp/openboost-paid-events-057/manifest.json", + "/private/tmp/openboost-composition-058" + ], + "binding_sha256": "884034f4c7f3fe6fd2449a5b0865919209f9db2f8c532a10fa27892933622957", + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "cpu_count": 16, + "threads": 1, + "memory_cap": null, + "gpu": null, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/composition_smoke.py": "d143ddef4129ff6c43f0a6390cb10fa12796560ef2046afcf24a434863c2e956", + "benchmarks/v1/composition_worker.py": "5f3fb7add2639ad846aa4b1176ee97500c2363b8407190982f2527bddb3b9394", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab", + "benchmarks/v1/paid_event_data.py": "e8c807f7f7f484e8f9132836a994e05c1238851f1cb6a42890ca3cd1fc4ecaa8" + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-0.json", + "/private/tmp/openboost-paid-events-057/fold-0.npz" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.591106708001462, + "artifacts": { + "model.bin": "63f6eff621ed4a7d2f38dce3c8b6987dd3eaf4dc15fa4ee6c1773a2b8a6a2145", + "training.json": "20c228c45315f009c1c35c3c262115760e9a493f1afc76c8878bac9d3c8c645f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "835a62ba6c2a2cdc2000bf2cf559d29bef39bea350b42d9ff8cfdab38586ad35" + }, + "fold": 0, + "job": { + "seed": 0, + "patience": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "bins": 32, + "max_depth": 2, + "reg_lambda": 1 + } + }, + "input_sha256": "0c992d9e5c7c77191f4253c3d762f938ce8ec8020010aabb052d6a2ba460584d", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "predict", + "/private/tmp/openboost-composition-058/0/model.bin", + "/private/tmp/openboost-composition-058/0/features.npz", + "/private/tmp/openboost-composition-058/0/replay.npz" + ], + "fresh_process_exact": true, + "products_and_units": true, + "replay_sha256": "835a62ba6c2a2cdc2000bf2cf559d29bef39bea350b42d9ff8cfdab38586ad35", + "training": { + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.161932312583084, + "last_score": 0.161932312583084, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "3b978da03454e52e76d4dbf4dfcf6148caef80ad71e7ea50703a6bad67c527e4", + "best_score": 0.161932312583084, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.744420199119519, + "last_score": 8.746309046366509, + "completed_rounds": 3, + "stale_rounds": 3, + "reason": "patience" + }, + "selected_identity": "91ae6143c416d7ff084f17cf25df033676b65634253a16f76fced31cb4b8c19e", + "best_score": 8.744420199119519, + "accepted_commits": 3 + } + } + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-1.json", + "/private/tmp/openboost-paid-events-057/fold-1.npz" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.712876083009178, + "artifacts": { + "model.bin": "73255261b008df571f1736c19e62e090e8269fd9fb9d43ce918277cf9e40a7a6", + "training.json": "d9572bdd52f9b7bcf10fffb4a5a6b57b43d46719a7eb03d0e949b24404dd1f5e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "a5edd95bcbefa011482b0feb45d68352213d0388d92890919270b6beec5ecfc5" + }, + "fold": 1, + "job": { + "seed": 1, + "patience": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "bins": 32, + "max_depth": 2, + "reg_lambda": 1 + } + }, + "input_sha256": "fe912bb90a41e2ad9722949399d6fb8056120e254bb09e900f0629ddb89ffd24", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "predict", + "/private/tmp/openboost-composition-058/1/model.bin", + "/private/tmp/openboost-composition-058/1/features.npz", + "/private/tmp/openboost-composition-058/1/replay.npz" + ], + "fresh_process_exact": true, + "products_and_units": true, + "replay_sha256": "a5edd95bcbefa011482b0feb45d68352213d0388d92890919270b6beec5ecfc5", + "training": { + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.16708248979218976, + "last_score": 0.16708248979218976, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "505a8b6d160e046b85f9dc73f5946a77e66624b9fc45344af3cbcfd538425c5f", + "best_score": 0.16708248979218976, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.760665735441318, + "last_score": 8.760665735441318, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "1a598b37bacbc0bb9e78d24df86099cd26b5b878c0475fb196095480b48fe6f6", + "best_score": 8.760665735441318, + "accepted_commits": 4 + } + } + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-2.json", + "/private/tmp/openboost-paid-events-057/fold-2.npz" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.789402875001542, + "artifacts": { + "model.bin": "66ac7b6b4d7f1cf519ed377f90ea8b7a7badbe46a1e22a51ed6a7ad6f67cb607", + "training.json": "3f3d5d6044d998873889d8994b1d879d154596ec97c6bc39c1749eece4571c9e", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "983c68b4459498144b13c5ee475baf69d9302e5c1d1ace751310fc3bf859449f" + }, + "fold": 2, + "job": { + "seed": 2, + "patience": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "bins": 32, + "max_depth": 2, + "reg_lambda": 1 + } + }, + "input_sha256": "e2be0ee857dbe10cc36d12721e5f213df28750c1e861a66ea03961e98bcc27ad", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "predict", + "/private/tmp/openboost-composition-058/2/model.bin", + "/private/tmp/openboost-composition-058/2/features.npz", + "/private/tmp/openboost-composition-058/2/replay.npz" + ], + "fresh_process_exact": true, + "products_and_units": true, + "replay_sha256": "983c68b4459498144b13c5ee475baf69d9302e5c1d1ace751310fc3bf859449f", + "training": { + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.15976309667810976, + "last_score": 0.15976309667810976, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "c75d7dc101485ed0b0c4986c49e746c7feeb7339af749958bfa9d33f9a338e48", + "best_score": 0.15976309667810976, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.694319429072479, + "last_score": 8.695301150208177, + "completed_rounds": 4, + "stale_rounds": 1, + "reason": "budget" + }, + "selected_identity": "7770310e79bd747c6874115f614f2b68c74a176b1f5980dc94fdfdd8b63558f5", + "best_score": 8.694319429072479, + "accepted_commits": 4 + } + } + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-3.json", + "/private/tmp/openboost-paid-events-057/fold-3.npz" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 20.75576858400018, + "artifacts": { + "model.bin": "3795fb25037999c53a84b4c105e6d2c250b1b4897489814644ec8ac5b3535793", + "training.json": "7276bdfbe941412ab29436cdfc4efd8e9e77613e131853b522445f19e70b0e10", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "6cb12b2c5da6e018c9374362db629b3f64c17637f771c933648a611e4583414c" + }, + "fold": 3, + "job": { + "seed": 3, + "patience": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "bins": 32, + "max_depth": 2, + "reg_lambda": 1 + } + }, + "input_sha256": "5b26471702b32cc0a25394aefb0dba421b3a1e7e32ddedfe3d7e9bb981a790c4", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "predict", + "/private/tmp/openboost-composition-058/3/model.bin", + "/private/tmp/openboost-composition-058/3/features.npz", + "/private/tmp/openboost-composition-058/3/replay.npz" + ], + "fresh_process_exact": true, + "products_and_units": true, + "replay_sha256": "6cb12b2c5da6e018c9374362db629b3f64c17637f771c933648a611e4583414c", + "training": { + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.1622191375121619, + "last_score": 0.1622191375121619, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "6119aeda08f0e0078fa3995bba20a5999b182e07e7eb534cce569c25079c3534", + "best_score": 0.1622191375121619, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536422353456352, + "last_score": 8.536422353456352, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "81b946a1677668c0053aa7ecb5d65b2c6cc650e8715bfb91f38cdff976a99b7f", + "best_score": 8.536422353456352, + "accepted_commits": 4 + } + } + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "fit", + "/private/tmp/openboost-composition-058/job-4.json", + "/private/tmp/openboost-paid-events-057/fold-4.npz" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 20.733523500006413, + "artifacts": { + "model.bin": "2ca494f621066987b274f75f7d8064599af583fb36aceb4880518e126742bfbd", + "training.json": "693ee6b7f2ffbe7540ee11e9b4bf407ebff053d0506bda83fd00019615d7938b", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "01f70ebaf869bca6c9f3a3bd99d8cd05d77e614306f67061b31860fb9aec6c4e" + }, + "fold": 4, + "job": { + "seed": 4, + "patience": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "bins": 32, + "max_depth": 2, + "reg_lambda": 1 + } + }, + "input_sha256": "7658f4a676385f6a4dec341a9cb8f9649c2954876c641a0504f455917a1d3519", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/composition_worker.py", + "predict", + "/private/tmp/openboost-composition-058/4/model.bin", + "/private/tmp/openboost-composition-058/4/features.npz", + "/private/tmp/openboost-composition-058/4/replay.npz" + ], + "fresh_process_exact": true, + "products_and_units": true, + "replay_sha256": "01f70ebaf869bca6c9f3a3bd99d8cd05d77e614306f67061b31860fb9aec6c4e", + "training": { + "selection": "best_component_validation", + "joint_selection": false, + "components": { + "frequency": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.16359409804271152, + "last_score": 0.16359409804271152, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "selected_identity": "eabcb8c2e91852747b0e18011f563434b292dd14a5dac19ff6c8b460757b08cd", + "best_score": 0.16359409804271152, + "accepted_commits": 4 + }, + "severity": { + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536981751551068, + "last_score": 8.537179094305912, + "completed_rounds": 4, + "stale_rounds": 2, + "reason": "budget" + }, + "selected_identity": "fd102c9f3971e5184365af24aab61b2234ce638cca6d0e70637a5652014b369c", + "best_score": 8.536981751551068, + "accepted_commits": 4 + } + } + } + } + ] +} diff --git a/benchmarks/v1/evidence/count-054/A7/0/execution.json b/benchmarks/v1/evidence/count-054/A7/0/execution.json new file mode 100644 index 0000000..a78fcb1 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "0874d7fa1b02b758abeffc2168af65d175a76209a9fdf363e8cb5dd2725b54d0", + "predictions.npz": "ad0e4938a36be16ee431c23341c4a770f31f666e4ca0aeab82e8047d407633cb", + "training.json": "84a8558552194e40979acafe9c4d46f5e728b4d611ea7578b45dc51ec8a7ff91", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.164322082986473 +} diff --git a/benchmarks/v1/evidence/count-054/A7/0/model.bin b/benchmarks/v1/evidence/count-054/A7/0/model.bin new file mode 100644 index 0000000..ee83cb9 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A7", "output": "period_count_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.28727828473977], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 813.0, 1002.0, 1273.0, 1353.0, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[7.499442774431123e-13], [2.1357148425348607], [-0.10481175964059684], [0.21599463009518471], [3.589998289342932], [-0.16443379572732222], [2.00605432158434]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 813.0, 1002.0, 1273.0, 1353.0, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0025966272904444543], [1.4991732771431108], [-0.09598075341992343], [2.6562125680066675], [0.4686827713807902], [-0.2873787640200746], [0.39784300776484904]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 813.0, 1002.0, 1273.0, 1353.0, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.003902992649580967], [1.1389336858921537], [-0.08769716651771596], [0.037027221711697735], [1.7190749022017302], [-0.25154945676224194], [0.3891049913669517]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 813.0, 1002.0, 1273.0, 1353.0, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [12, 0, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.004601418475809344], [-0.05626092961181936], [1.3226554683913263], [0.8632576754984442], [-0.1325196421949993], [1.024606445331728], [1.863670122360304]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/count-054/A7/0/predictions.npz b/benchmarks/v1/evidence/count-054/A7/0/predictions.npz new file mode 100644 index 0000000..751bd15 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/0/replay.npz b/benchmarks/v1/evidence/count-054/A7/0/replay.npz new file mode 100644 index 0000000..751bd15 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/0/replay.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/0/training.json b/benchmarks/v1/evidence/count-054/A7/0/training.json new file mode 100644 index 0000000..f668551 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/0/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.2083236597373237, + "last_score": 0.2083236597373237, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "86f34d6fd9d289f4d7c825dceed9dd0bd1c18d9d632684093f45bd7fde484ac4", + "best_validation_score": 0.2083236597373237, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.2083236597373237 +} diff --git a/benchmarks/v1/evidence/count-054/A7/0/worker.log b/benchmarks/v1/evidence/count-054/A7/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/count-054/A7/1/execution.json b/benchmarks/v1/evidence/count-054/A7/1/execution.json new file mode 100644 index 0000000..919ce99 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "93cec7231ee4ad1ce1c9761ad605d60c387475ea82d4ea20220d2c508f588496", + "predictions.npz": "b9a58aa4dbcbdf9d67c61ef49b4d3f740f78cde28915ca33d3b7fc754fe8c632", + "training.json": "28014d8e6482b10714710444c37c427ba3f543a826e196eee7a92b233c57ecd9", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.184419583005365 +} diff --git a/benchmarks/v1/evidence/count-054/A7/1/model.bin b/benchmarks/v1/evidence/count-054/A7/1/model.bin new file mode 100644 index 0000000..e88412d --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A7", "output": "period_count_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.2995199290599544], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 12.875, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 817.0, 1005.0, 1284.0, 1357.0625, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.014288654557651e-13], [2.0962497069885666], [-0.10251944114444503], [0.26967241587180113], [3.4690531685658286], [-0.1623783149052463], [2.033202489878845]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 12.875, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 817.0, 1005.0, 1284.0, 1357.0625, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.002472388257793876], [1.480902882718704], [-0.0938834783793182], [2.619707116307079], [0.4713346351294407], [-0.29340278544594584], [0.42338779590061265]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 12.875, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 817.0, 1005.0, 1284.0, 1357.0625, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.003789409802755754], [1.1276369770773875], [-0.08581268657676722], [0.07742992817435214], [1.6872341870006318], [-0.25618585604544936], [0.4108569629819288]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 12.875, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 157.0, 186.0, 222.0, 269.0, 310.0, 392.0, 461.0, 566.0, 675.0, 817.0, 1005.0, 1284.0, 1357.0625, 1629.0, 2252.0, 2907.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [12, 0, 13, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.004492638176752516], [-0.0568301077566177], [1.3403604978403338], [0.8476636774416899], [-0.13085087708664414], [1.065298232315798], [1.8266279307399897]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/count-054/A7/1/predictions.npz b/benchmarks/v1/evidence/count-054/A7/1/predictions.npz new file mode 100644 index 0000000..ee948b9 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/1/replay.npz b/benchmarks/v1/evidence/count-054/A7/1/replay.npz new file mode 100644 index 0000000..ee948b9 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/1/replay.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/1/training.json b/benchmarks/v1/evidence/count-054/A7/1/training.json new file mode 100644 index 0000000..2ae1f23 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/1/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.21490285596051276, + "last_score": 0.21490285596051276, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "6071e53d5196b96fc40a1d023a58b4e91b65ff714a0416e12c296e5f22d2dbdf", + "best_validation_score": 0.21490285596051276, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.21490285596051276 +} diff --git a/benchmarks/v1/evidence/count-054/A7/1/worker.log b/benchmarks/v1/evidence/count-054/A7/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/count-054/A7/2/execution.json b/benchmarks/v1/evidence/count-054/A7/2/execution.json new file mode 100644 index 0000000..ef5234d --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "396c15700ccfa2cb69cab4687742a5de4e272e020313fb2cd9f91997c416dd9a", + "predictions.npz": "0f3ae5fc91dd10b83017c81fed05a339ee26b935d1cbc243242faddd93f2e0ba", + "training.json": "f49411032b854dcea152d2d6e6e36096ff40c4ffa11765a918a1864320173bcd", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 20.89408908301266 +} diff --git a/benchmarks/v1/evidence/count-054/A7/2/model.bin b/benchmarks/v1/evidence/count-054/A7/2/model.bin new file mode 100644 index 0000000..65942cc --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A7", "output": "period_count_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.2849984622891473], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 312.0, 393.0, 461.0, 568.0, 678.0, 817.0, 1005.0, 1284.0, 1370.0, 1658.0, 2252.0, 2928.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-6.530668927837586e-13], [2.0302808200306446], [-0.09931371848693812], [0.22614706578882532], [3.379610300027656], [-0.15791397039195754], [1.994126578245119]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 312.0, 393.0, 461.0, 568.0, 678.0, 817.0, 1005.0, 1284.0, 1370.0, 1658.0, 2252.0, 2928.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.002348979366724905], [1.4449490886509249], [-0.09091266332624653], [2.6085692250776704], [0.4252938578992753], [-0.2654994954719576], [0.45317171807913137]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 312.0, 393.0, 461.0, 568.0, 678.0, 817.0, 1005.0, 1284.0, 1370.0, 1658.0, 2252.0, 2928.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0036103469879646007], [1.1039500635242403], [-0.08305030460990148], [0.04974585264957176], [1.6645421668341291], [-0.26200493793478147], [0.3513913083253763]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 50.0, 61.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 312.0, 393.0, 461.0, 568.0, 678.0, 817.0, 1005.0, 1284.0, 1370.0, 1658.0, 2252.0, 2928.0, 3317.0, 3859.0, 4348.0, 5831.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 2, -1, -1, -1, -1], "threshold": [12, 0, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.004273099853223685], [-0.05560077663307839], [1.3189631642305748], [0.833338547537195], [-0.127176574534507], [1.9638228291355722], [1.0846008767263662]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/count-054/A7/2/predictions.npz b/benchmarks/v1/evidence/count-054/A7/2/predictions.npz new file mode 100644 index 0000000..b95a94d Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/2/replay.npz b/benchmarks/v1/evidence/count-054/A7/2/replay.npz new file mode 100644 index 0000000..b95a94d Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/2/replay.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/2/training.json b/benchmarks/v1/evidence/count-054/A7/2/training.json new file mode 100644 index 0000000..e66f4eb --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/2/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.20879400813868187, + "last_score": 0.20879400813868187, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5da07a6716b5bda1f49d3c196043e9f11497a317e5fba1ba3f60e3c1e28a9d68", + "best_validation_score": 0.20879400813868187, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.20879400813868187 +} diff --git a/benchmarks/v1/evidence/count-054/A7/2/worker.log b/benchmarks/v1/evidence/count-054/A7/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/count-054/A7/3/execution.json b/benchmarks/v1/evidence/count-054/A7/3/execution.json new file mode 100644 index 0000000..87ad180 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "c75b80a3918aab45500a291851fa532d3c5cfb4be3a4cb67578a92e188bdf9b3", + "predictions.npz": "401e8ab1b275caba057479b82b8eeb5bcda94051cd1e24d3c35887e124492fdd", + "training.json": "c542a36e964597a02337a626b7738c7cca26532b376b6a625f2e4c7ee0a28137", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 21.10490912500245 +} diff --git a/benchmarks/v1/evidence/count-054/A7/3/model.bin b/benchmarks/v1/evidence/count-054/A7/3/model.bin new file mode 100644 index 0000000..622bede --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A7", "output": "period_count_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.2993777612443775], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 23.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 156.0, 186.0, 221.0, 269.0, 309.0, 392.0, 458.0, 565.0, 675.0, 804.0, 1002.0, 1273.0, 1343.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5821.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-7.696862348812933e-13], [2.0784414265208158], [-0.10145002889262292], [0.25536391792130525], [3.4388369724669814], [-0.15820814990893092], [1.9320186194724827]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 23.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 156.0, 186.0, 221.0, 269.0, 309.0, 392.0, 458.0, 565.0, 675.0, 804.0, 1002.0, 1273.0, 1343.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5821.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0023759701198907772], [1.4713625670081556], [-0.09283894372066043], [2.619361708223715], [0.4576912863655633], [-0.2840137222356828], [0.4047770601551681]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 23.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 156.0, 186.0, 221.0, 269.0, 309.0, 392.0, 458.0, 565.0, 675.0, 804.0, 1002.0, 1273.0, 1343.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5821.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.003655790830870061], [1.1213280548035498], [-0.08481699361843777], [0.06956817260485613], [1.6772148843236714], [-0.26338864678239965], [0.3490598227206124]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 23.0, 31.0, 42.0, 50.0, 61.0, 76.0, 91.0, 109.0, 131.0, 156.0, 186.0, 221.0, 269.0, 309.0, 392.0, 458.0, 565.0, 675.0, 804.0, 1002.0, 1273.0, 1343.0, 1629.0, 2252.0, 2906.0, 3317.0, 3857.0, 4301.0, 5821.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.004328821075166081], [0.8910893786726938], [-0.07738175479374014], [1.4629048406201937], [0.2533540491943105], [-0.12731579556691489], [1.2423564274638226]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/count-054/A7/3/predictions.npz b/benchmarks/v1/evidence/count-054/A7/3/predictions.npz new file mode 100644 index 0000000..2a0cfc2 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/3/replay.npz b/benchmarks/v1/evidence/count-054/A7/3/replay.npz new file mode 100644 index 0000000..2a0cfc2 Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/3/replay.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/3/training.json b/benchmarks/v1/evidence/count-054/A7/3/training.json new file mode 100644 index 0000000..7797fb6 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/3/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.21052100429834292, + "last_score": 0.21052100429834292, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2e46fda2590a66497de505c4169958996fe9d13baf87e434253cb1c53aead5b6", + "best_validation_score": 0.21052100429834292, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.21052100429834292 +} diff --git a/benchmarks/v1/evidence/count-054/A7/3/worker.log b/benchmarks/v1/evidence/count-054/A7/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/count-054/A7/4/execution.json b/benchmarks/v1/evidence/count-054/A7/4/execution.json new file mode 100644 index 0000000..bf6ae10 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "eef1cb2bcd5031f2a6567ef17f94c24f3083601e1f46041ebc01465af4c45f73", + "predictions.npz": "88d18b1f59f33e0665360bbf1847c6af782f3633acc1bec221241a70e28725a9", + "training.json": "d3ee90d9056f8d460788e5d06ab62f5f082192360b66ff8997288bfd1ae32e0f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 20.812743167000008 +} diff --git a/benchmarks/v1/evidence/count-054/A7/4/model.bin b/benchmarks/v1/evidence/count-054/A7/4/model.bin new file mode 100644 index 0000000..de32c8f --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A7", "output": "period_count_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [-2.297446623022916], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 313.0, 393.0, 461.0, 568.0, 678.0, 820.0, 1006.0, 1284.0, 1381.0, 1662.0, 2252.0, 2936.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.198205873013156e-13], [2.0583328662214964], [-0.10076943356707013], [0.19542274937490567], [3.434872213100888], [-0.16117802017063426], [2.0276917237108747]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 313.0, 393.0, 461.0, 568.0, 678.0, 820.0, 1006.0, 1284.0, 1381.0, 1662.0, 2252.0, 2936.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 52, 3, -1, -1, -1, -1], "threshold": [0, 0, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.002448728794384431], [1.4591548633662916], [-0.09227894633007912], [2.6066708375155425], [0.4371996645866091], [-0.2814986242290562], [0.3986579843539043]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 313.0, 393.0, 461.0, 568.0, 678.0, 820.0, 1006.0, 1284.0, 1381.0, 1662.0, 2252.0, 2936.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [1, 43, 3, -1, -1, -1, -1], "threshold": [0, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.0037029697763363736], [1.1133289025507895], [-0.08429293210928399], [0.025979336277785415], [1.6791740145270428], [-0.13853565370402998], [1.3762989212203043]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0], [23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 33.0, 34.0, 36.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 55.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 52.0, 54.0, 57.0, 60.0, 62.0, 64.0, 68.0, 72.0, 76.0, 80.0, 85.0, 95.0, 100.0], [15.0, 24.0, 31.0, 42.0, 51.0, 62.0, 76.0, 92.0, 109.0, 132.0, 159.0, 188.0, 222.0, 269.0, 313.0, 393.0, 461.0, 568.0, 678.0, 820.0, 1006.0, 1284.0, 1381.0, 1662.0, 2252.0, 2936.0, 3317.0, 3859.0, 4348.0, 5859.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 1, 3, -1, -1, -1, -1], "threshold": [3, 0, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.004392744162322975], [-0.17558301139746083], [0.40358656719776537], [0.7350903046878612], [-0.2506784940016986], [0.2837927002754612], [1.1375742661993562]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/count-054/A7/4/predictions.npz b/benchmarks/v1/evidence/count-054/A7/4/predictions.npz new file mode 100644 index 0000000..6bf040f Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/4/replay.npz b/benchmarks/v1/evidence/count-054/A7/4/replay.npz new file mode 100644 index 0000000..6bf040f Binary files /dev/null and b/benchmarks/v1/evidence/count-054/A7/4/replay.npz differ diff --git a/benchmarks/v1/evidence/count-054/A7/4/training.json b/benchmarks/v1/evidence/count-054/A7/4/training.json new file mode 100644 index 0000000..074d116 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/A7/4/training.json @@ -0,0 +1,22 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.20964191911099933, + "last_score": 0.20964191911099933, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2367e6b5f493d1396b1419938dd956102fdb6b939aeb874ea1b2c96fc094fd19", + "best_validation_score": 0.20964191911099933, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.20964191911099933 +} diff --git a/benchmarks/v1/evidence/count-054/A7/4/worker.log b/benchmarks/v1/evidence/count-054/A7/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/count-054/README.md b/benchmarks/v1/evidence/count-054/README.md new file mode 100644 index 0000000..79e40b7 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/README.md @@ -0,0 +1,32 @@ +# Current A7 count/exposure integration + +All five frozen insurance frequency folds pass the current CPU worker and exact +fresh-process replay. Period counts and separate positive exposure vectors bind +to the public Poisson recipe. Exposure enters likelihood once; the real packets +use unit sample weights. Prediction requires exposure and returns period count +means, preserving source policy IDs. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-count-054 --applications A7 +``` + +Requires pinned source files in build/v1-data and the committed preprocessing +freeze. The exporter validates all source, group split and encoded fold hashes. +Four rounds, depth two, 32 bins, learning rate 0.1, patience three, one CPU thread; +90-second worker and 30-second replay caps. Source export is outside fit timing. +No test labels scored, profiler, concurrent regression suite, CUDA or memory cap. +Host: Apple M4 Max, 51539607552 bytes physical RAM (same host as Sprint 052); +Python reports x86_64. Peak memory was not measured. + +`summary.json` retains source/revision/dirty state, dataset and packet identities, +commands, environment and all outcomes. Each fold retains raw model, predictions, +replay, training metadata, process record and log. All source/output hashes match. +`verification.json` retains independently recomputed mean Poisson NLL including +log-factorial terms, math.fsum checks and exact source IDs. The maximum absolute +NLL discrepancy is approximately 2.4e-14 across different reduction/exp-log paths, +consistent with floating-point rounding. An initial rtol=1e-13 check failed on +fold two; retained final checks use rtol=1e-12 and atol=1e-14. Replay stays exact. + +These are integration outcomes, not a complete search, calibrated quality +acceptance or comparative performance claim. Weighted synthetic tests separately +verify sample weights and exposure are applied independently. diff --git a/benchmarks/v1/evidence/count-054/summary.json b/benchmarks/v1/evidence/count-054/summary.json new file mode 100644 index 0000000..ac6c26d --- /dev/null +++ b/benchmarks/v1/evidence/count-054/summary.json @@ -0,0 +1,561 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A7/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "003fdac127ed782c77e2766f2082a3d33c665077", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-count-054", + "--applications", + "A7" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "6b34bfaf017e6817f87b29aa748150ed54b2d8fe06c92e17eccb7312ebdf6de5", + "benchmarks/v1/openboost_predict.py": "ca01fc530e46fd3446711138858f57e29760ba99869c6bddbda4fa25c99758c6", + "benchmarks/v1/openboost_worker_smoke.py": "dfdd1955d0f6ed4d8b4fcca33e44ebcb92c38ac51c2663c60e69d254b0dc4080", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A7": { + "application": "A7", + "dataset": "insurance", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "0ae4d0a206449d6df81dbc470fd1654d8f33e72f0f5fbd52bec89c27257671ac" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "ae02673c24506bbcab8b6aa80affd2631d19bd11e5dc14065b23f987beecac59" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "72af1635e878c0524add52ee4c8d8f70cfb0c4705c10f75eb8d0d66a4fd35c56" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "ecc90640de9fce6c1ef627406f672173ea6a2864e198124a0353ea0d1d9175bc" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "12f542a463d871e64bf08e9ea5984779c4ce0167ea59e864d3262900b5722a0b" + } + }, + "metadata": { + "target_units": "period count; exposure is an offset, unit training weights" + } + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "e0b36f2fbff96b6f8ddacd97603548f8db752cbcce9af696ac1bc3de86f86ba3" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "b18f410fb6e3a5f10fdb2969abff571aa7ffd953dd95931da33a582ac0c63a2e" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "5f8b9d853ea30d7f5f539ba7824e5c5c56ef0a3c10e68fda464be00e645c6aa9" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "2f34597a81ee7b1bda9c5ca59dc0f42b8b9ff9f83e95397fe46774e978a34c05" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "d2e51308260a3463c71ea77ab2d1c2263e3f5fc6d7f0a7c4c484b08f374502f6" + } + }, + "metadata": { + "target_units": "period count; exposure is an offset, unit training weights" + } + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "c0aa76b4f8a137dfaa3d7d17aa7004445e12681c2e3941e2a25def2e03f7a8c7" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "ab4d1c7b433009c417e74d0f3d65427c5bcb67eabb036e7403a04813f294eb6c" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "d6ee43a322790bbc503a5e241a21ba1f616901efb96d0a2b513381982d86ebb3" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "b55efde0c0ab9b912a7a6a456fb92cd4353f65ccddc92b0c4bdba8a4d0ad8284" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "a937ab72404e6bf594fe0521e71f8027b42668e2305cffd6e684cb51c9922edb" + } + }, + "metadata": { + "target_units": "period count; exposure is an offset, unit training weights" + } + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "2855dd7fb3504747e141f31126324463b928191c5676e7ed7527c71dd820d407" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "6607785a3a6d5c4cae9c35176d79fc1a1fe1cec82b6023578b3585d08203b528" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "ca4d768608b607071dd949acd6e1f79d65bb89387dd9bb925a5356ca6099a580" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "4011f9ac79a4428c817ab04571cd89adde54dbee0a20478c62f80d8a8e76be54" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "7d02ebaaab85c9125403d2cf88c1c4f91e06e4ab7b847d87969533668ec0ec26" + } + }, + "metadata": { + "target_units": "period count; exposure is an offset, unit training weights" + } + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "dd2ce518a7a30d3450ac9482d1ac590704b54049db3be7ae5103a4d4cb140545" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "ca2a814621a984aa23b62ef2d1d5e6b94bfc1e470f5cbc5e6abaed46bc22d0c3" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "e8e5c584010cae9fc538baf3e58dcf0c6afe276bb5e350ee269132f771b76145" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "a05ac0c8203720466d313518d36e72d940f2d75b716c28a453ee2a2bcb27fcb4" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "d0820179812781e72c26a433a71de8113c1c83c00b9740dae328bfe030cb082a" + } + }, + "metadata": { + "target_units": "period count; exposure is an offset, unit training weights" + } + } + ], + "source_freeze_sha256": "ff95579dd1b95595e87027f38afd512cd986b3182f08f50a7a2139ffb63f291f", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.164322082986473, + "artifacts": { + "model.bin": "0874d7fa1b02b758abeffc2168af65d175a76209a9fdf363e8cb5dd2725b54d0", + "training.json": "84a8558552194e40979acafe9c4d46f5e728b4d611ea7578b45dc51ec8a7ff91", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "ad0e4938a36be16ee431c23341c4a770f31f666e4ca0aeab82e8047d407633cb" + }, + "application": "A7", + "fold": 0, + "job": { + "application": "A7", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-count-054/A7/0/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-count-054/A7/0/fit/model.bin", + "/private/tmp/openboost-count-054/A7/0/fit/features.npz", + "/private/tmp/openboost-count-054/A7/0/fit/replay.npz" + ], + "prediction_shape": [ + 135603 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.2083236597373237, + "last_score": 0.2083236597373237, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "86f34d6fd9d289f4d7c825dceed9dd0bd1c18d9d632684093f45bd7fde484ac4", + "best_validation_score": 0.2083236597373237, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.2083236597373237 + }, + "replay_sha256": "ad0e4938a36be16ee431c23341c4a770f31f666e4ca0aeab82e8047d407633cb" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.184419583005365, + "artifacts": { + "model.bin": "93cec7231ee4ad1ce1c9761ad605d60c387475ea82d4ea20220d2c508f588496", + "training.json": "28014d8e6482b10714710444c37c427ba3f543a826e196eee7a92b233c57ecd9", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "b9a58aa4dbcbdf9d67c61ef49b4d3f740f78cde28915ca33d3b7fc754fe8c632" + }, + "application": "A7", + "fold": 1, + "job": { + "application": "A7", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-count-054/A7/1/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-count-054/A7/1/fit/model.bin", + "/private/tmp/openboost-count-054/A7/1/fit/features.npz", + "/private/tmp/openboost-count-054/A7/1/fit/replay.npz" + ], + "prediction_shape": [ + 135603 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.21490285596051276, + "last_score": 0.21490285596051276, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "6071e53d5196b96fc40a1d023a58b4e91b65ff714a0416e12c296e5f22d2dbdf", + "best_validation_score": 0.21490285596051276, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.21490285596051276 + }, + "replay_sha256": "b9a58aa4dbcbdf9d67c61ef49b4d3f740f78cde28915ca33d3b7fc754fe8c632" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 20.89408908301266, + "artifacts": { + "model.bin": "396c15700ccfa2cb69cab4687742a5de4e272e020313fb2cd9f91997c416dd9a", + "training.json": "f49411032b854dcea152d2d6e6e36096ff40c4ffa11765a918a1864320173bcd", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "0f3ae5fc91dd10b83017c81fed05a339ee26b935d1cbc243242faddd93f2e0ba" + }, + "application": "A7", + "fold": 2, + "job": { + "application": "A7", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-count-054/A7/2/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-count-054/A7/2/fit/model.bin", + "/private/tmp/openboost-count-054/A7/2/fit/features.npz", + "/private/tmp/openboost-count-054/A7/2/fit/replay.npz" + ], + "prediction_shape": [ + 135603 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.20879400813868187, + "last_score": 0.20879400813868187, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5da07a6716b5bda1f49d3c196043e9f11497a317e5fba1ba3f60e3c1e28a9d68", + "best_validation_score": 0.20879400813868187, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.20879400813868187 + }, + "replay_sha256": "0f3ae5fc91dd10b83017c81fed05a339ee26b935d1cbc243242faddd93f2e0ba" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 21.10490912500245, + "artifacts": { + "model.bin": "c75b80a3918aab45500a291851fa532d3c5cfb4be3a4cb67578a92e188bdf9b3", + "training.json": "c542a36e964597a02337a626b7738c7cca26532b376b6a625f2e4c7ee0a28137", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "401e8ab1b275caba057479b82b8eeb5bcda94051cd1e24d3c35887e124492fdd" + }, + "application": "A7", + "fold": 3, + "job": { + "application": "A7", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-count-054/A7/3/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-count-054/A7/3/fit/model.bin", + "/private/tmp/openboost-count-054/A7/3/fit/features.npz", + "/private/tmp/openboost-count-054/A7/3/fit/replay.npz" + ], + "prediction_shape": [ + 135603 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.21052100429834292, + "last_score": 0.21052100429834292, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2e46fda2590a66497de505c4169958996fe9d13baf87e434253cb1c53aead5b6", + "best_validation_score": 0.21052100429834292, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.21052100429834292 + }, + "replay_sha256": "401e8ab1b275caba057479b82b8eeb5bcda94051cd1e24d3c35887e124492fdd" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-count-054/A7/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 20.812743167000008, + "artifacts": { + "model.bin": "eef1cb2bcd5031f2a6567ef17f94c24f3083601e1f46041ebc01465af4c45f73", + "training.json": "d3ee90d9056f8d460788e5d06ab62f5f082192360b66ff8997288bfd1ae32e0f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "88d18b1f59f33e0665360bbf1847c6af782f3633acc1bec221241a70e28725a9" + }, + "application": "A7", + "fold": 4, + "job": { + "application": "A7", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-count-054/A7/4/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-count-054/A7/4/fit/model.bin", + "/private/tmp/openboost-count-054/A7/4/fit/features.npz", + "/private/tmp/openboost-count-054/A7/4/fit/replay.npz" + ], + "prediction_shape": [ + 135603 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 0.20964191911099933, + "last_score": 0.20964191911099933, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2367e6b5f493d1396b1419938dd956102fdb6b939aeb874ea1b2c96fc094fd19", + "best_validation_score": 0.20964191911099933, + "output": "period_count_mean", + "selection_metric": "weighted_poisson_nll", + "exposure_role": "likelihood_once", + "target_units": "period_count", + "raw_units": "log_rate", + "selected_validation_nll": 0.20964191911099933 + }, + "replay_sha256": "88d18b1f59f33e0665360bbf1847c6af782f3633acc1bec221241a70e28725a9" + } + ] +} diff --git a/benchmarks/v1/evidence/count-054/verification.json b/benchmarks/v1/evidence/count-054/verification.json new file mode 100644 index 0000000..b7ac558 --- /dev/null +++ b/benchmarks/v1/evidence/count-054/verification.json @@ -0,0 +1,55 @@ +{ + "source_and_artifact_hashes_match": true, + "nll_check": { + "rtol": 1e-12, + "atol": 1e-14, + "initial_attempt": "rtol=1e-13, atol=0 failed at absolute difference 2.38420395e-14; reduction/exp-log rounding; prediction replay remains exact" + }, + "cells": [ + { + "fold": 0, + "selected_validation_nll": 0.20832365973734113, + "fsum_nll": 0.2083236597373411, + "reported_nll": 0.2083236597373237, + "absolute_difference": 1.7430501486614958e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 1, + "selected_validation_nll": 0.21490285596050876, + "fsum_nll": 0.21490285596050876, + "reported_nll": 0.21490285596051276, + "absolute_difference": 3.9968028886505635e-15, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 2, + "selected_validation_nll": 0.20879400813870572, + "fsum_nll": 0.20879400813870572, + "reported_nll": 0.20879400813868187, + "absolute_difference": 2.3842039453825237e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 3, + "selected_validation_nll": 0.21052100429835358, + "fsum_nll": 0.21052100429835358, + "reported_nll": 0.21052100429834292, + "absolute_difference": 1.0658141036401503e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 4, + "selected_validation_nll": 0.2096419191110117, + "fsum_nll": 0.20964191911101168, + "reported_nll": 0.20964191911099933, + "absolute_difference": 1.2378986724570495e-14, + "source_row_ids_exact": true, + "positive_means": true + } + ] +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/execution.json b/benchmarks/v1/evidence/histogram-052/A3/0/execution.json new file mode 100644 index 0000000..b598e1a --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "25040b9d5ecf3f849b16fa16228f25409fe1c449d2ffd920f7d002283c3e242e", + "predictions.npz": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256", + "training.json": "242f60f328e07841b844f3eb3e1dea83e925c230ae97a73ccceed0ba61ac5815", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-0-job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 70.2692351250007 +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/model.bin b/benchmarks/v1/evidence/histogram-052/A3/0/model.bin new file mode 100644 index 0000000..1a306f3 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.905470047750214, 1.4076858773737362, -0.33205460079610255, -0.5640231214051331, -0.5166197381038449, -0.46127479466469545, -0.4391836701511908], [0.08223524902608118, 2.017779309566307, -0.1371627383214995, -0.5490461150845628, -0.4648766530685598, -0.3666061544210294, -0.5823228976953574], [1.9668335922709579, 0.6210611915204259, -0.5833176914695924, -0.5833176914695924, -0.5833176914695924, -0.5833176914695924, -0.2546240179135452], [-0.5662710805749782, 0.13791380387268187, 1.5201748906942216, -0.37738913179282246, -0.5580262336043543, 0.4268582136163294, -0.5832604622114219], [0.21176432846278262, 2.3932088842022377, -0.468192041861841, -0.583318778227308, -0.4462595751802561, -0.5250817165288154, -0.5821211008659051], [2.016353459871482, 0.7853100278287524, -0.5833150933374542, -0.5833150933374542, -0.5833150933374542, -0.5833150933374542, -0.46840311434892373], [1.6683887670409205, -0.3677177240620543, -0.5832235414325294, -0.5832235414325294, -0.5832235414325294, -0.5832235414325294, 1.0322231227508578]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7905886172291245, 1.1782147929183484, -0.3211566575805588, -0.5572986991329894, -0.5081044249788489, -0.45132162712988344, -0.42887817329651956], [0.13614799769339847, 1.6012681130344506, -0.15268771868715977, -0.5435811702106711, -0.4612446202991384, -0.3667944894791351, -0.5764877974207404], [1.6216866587654999, 0.48609635281869445, -0.5774504728035224, -0.5774504728035224, -0.5774504728035224, -0.5774504728035224, -0.2186681057836118], [-0.5776764522527612, -0.4258935604328588, 1.5786067951621088, -0.26251822426712024, -0.5777506716250248, 0.5305628323382374, -0.5775237676938417], [0.21471614989575813, 1.8042960556712644, -0.3912293302725538, -0.5773209641684137, -0.4475820373695467, -0.481048590463884, -0.5763521039986819], [1.6660019584142893, 0.6250036601278085, -0.5774371736246601, -0.5774371736246601, -0.5774371736246601, -0.5774371736246601, -0.44750649134494713], [1.3703449489077435, -0.3563931835108491, -0.577409250707514, -0.577409250707514, -0.577409250707514, -0.577409250707514, 0.8951173869673015]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.70022638838403, 1.0114863500610671, -0.31067616205838666, -0.5509717058082353, -0.4998180086623927, -0.4415786142729804, -0.41890727874346445], [-0.030175726066189085, 1.3538512258615507, -0.0688942897071653, -0.5300544391355841, -0.42853510281997104, -0.31593028891764235, -0.570761283514425], [1.278562337543291, 0.6132971013994057, -0.5724622528221359, -0.5720389899182118, -0.5723152967516112, -0.5722526750498327, -0.2742930055037923], [-0.5566386702191234, 0.10615254368363042, 1.1179962114353865, -0.3560056239571535, -0.5452206406026204, 0.3731520339747515, -0.5724211081564461], [0.07931874144251169, 1.5704199719271057, -0.43009823506439687, -0.5718801632744726, -0.40190268102434734, -0.4992465865005463, -0.5703579112601903], [1.295450059902061, 0.72316577462001, -0.5725039511421065, -0.5720206015377967, -0.5723361803866948, -0.5722646944112715, -0.4660947101512034], [1.1589080892403933, -0.3450921528086983, -0.572048449211691, -0.572048449211691, -0.572048449211691, -0.572048449211691, 0.7869159268220223]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 28, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6267251424581306, 0.8842881277103438, -0.30073906378156184, -0.5449724068684411, -0.4916982897914366, -0.43203476278653624, -0.4091718498281362], [0.02084466575619653, 1.1567997584186915, -0.09181542971815497, -0.5257041172168141, -0.42705645905749445, -0.31975208036281766, -0.565816233090714], [1.118234949711225, 0.501388473435659, -0.5673047853858151, -0.5670483290217522, -0.5672563733740794, -0.5671780470892146, -0.24488134617404927], [-0.5507959407277767, 0.1011440510533976, 0.9653131349450252, -0.34522827653152355, -0.5391289713023325, 0.3432739528391501, -0.5675742835274314], [0.12486665407989557, 1.3114655811643405, -0.4303473675392867, -0.5668416078298492, -0.4035183092780066, -0.49649868983362666, -0.565419148718931], [1.1282205173368354, 0.6366523361872414, -0.5673450486845729, -0.567024420442265, -0.5672845090822568, -0.5671866535368241, -0.48769063341933855], [1.0777295322934934, -0.1573126764454211, -0.567059486647981, -0.5670607095118004, -0.5670599110883467, -0.5670600919446724, 0.5212324191252559]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/predictions.npz b/benchmarks/v1/evidence/histogram-052/A3/0/predictions.npz new file mode 100644 index 0000000..e3e023c Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/replay.npz b/benchmarks/v1/evidence/histogram-052/A3/0/replay.npz new file mode 100644 index 0000000..e3e023c Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/0/replay.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/training.json b/benchmarks/v1/evidence/histogram-052/A3/0/training.json new file mode 100644 index 0000000..1e1017b --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/0/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4960895873593474, + "last_score": 1.4960895873593474, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "277e32543ddf98ed52048c6dc0b95dac6ad4f3838cee6e9042d668c4f0ab5f5c", + "best_validation_score": 1.4960895873593474, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/0/worker.log b/benchmarks/v1/evidence/histogram-052/A3/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/execution.json b/benchmarks/v1/evidence/histogram-052/A3/1/execution.json new file mode 100644 index 0000000..fa9a3a3 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "442dead828cb38724de98e21e8d5a77365488856b055b8a45e2caa9e27dd7138", + "predictions.npz": "6a75c2b0dffc9b63ad9a23208002ee9f082bb41f77ac93a7330f949d443d0d69", + "training.json": "4c223b2d745898025d0aa36c881680474cf3727c6660cff225f7aa466b62f530", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-1-job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 69.86793641700933 +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/model.bin b/benchmarks/v1/evidence/histogram-052/A3/1/model.bin new file mode 100644 index 0000000..ebcc2e9 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2308.0, 2462.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2843.0, 2872.0, 2899.0, 2922.0, 2942.0, 2961.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 181.0, 199.0, 217.0, 239.0, 260.0, 279.0, 295.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 642.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1205.0, 1302.0, 1405.0, 1509.0, 1621.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2596.0, 2769.0, 2946.0, 3127.0, 3330.0, 3570.0, 3861.0, 4162.0, 4480.0, 4885.375, 5311.0, 5743.0], [150.0, 166.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 202.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 192.0, 200.0, 211.0], [330.0, 466.0, 573.0, 666.0, 760.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1277.0, 1360.0, 1445.0, 1530.0, 1618.0, 1710.0, 1803.0, 1898.0, 1998.0, 2101.0, 2208.0, 2318.0, 2431.0, 2550.0, 2676.0, 2828.0, 3046.0, 3369.0, 3865.0, 4589.0, 5525.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.9054700477502176, 1.4076858773737269, -0.332054600796128, -0.5640231214051326, -0.516619738103847, -0.46127479466468635, -0.43918367015119314], [0.08249634895837087, 2.0176221905231593, -0.1371968234972293, -0.5490487344545354, -0.4648857025595158, -0.3666227112808182, -0.5823645676880677], [1.9666825563563908, 0.6211262047919527, -0.5833176899286747, -0.5833176899286747, -0.5833176899286747, -0.5833176899286747, -0.25453800143418537], [-0.5645428685666161, 0.13999037376785659, 1.5121206487783958, -0.3776156994172723, -0.5599258423593376, 0.4332339301765489, -0.5832605423799173], [0.21189132534994068, 2.3930668396893724, -0.4670293432962812, -0.5833187763593197, -0.44586766105585, -0.5265715294097547, -0.5821708549170734], [2.0135467107414513, 0.7875055316477574, -0.5833150807580525, -0.5833150807580525, -0.5833150807580525, -0.5833150807580525, -0.46779191935553305], [1.685390118703431, -0.3763383236170698, -0.5832239196760346, -0.5832239196760346, -0.5832239196760346, -0.5832239196760346, 1.0238438836173496]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2308.0, 2462.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2843.0, 2872.0, 2899.0, 2922.0, 2942.0, 2961.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 181.0, 199.0, 217.0, 239.0, 260.0, 279.0, 295.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 642.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1205.0, 1302.0, 1405.0, 1509.0, 1621.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2596.0, 2769.0, 2946.0, 3127.0, 3330.0, 3570.0, 3861.0, 4162.0, 4480.0, 4885.375, 5311.0, 5743.0], [150.0, 166.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 202.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 192.0, 200.0, 211.0], [330.0, 466.0, 573.0, 666.0, 760.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1277.0, 1360.0, 1445.0, 1530.0, 1618.0, 1710.0, 1803.0, 1898.0, 1998.0, 2101.0, 2208.0, 2318.0, 2431.0, 2550.0, 2676.0, 2828.0, 3046.0, 3369.0, 3865.0, 4589.0, 5525.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7905918903880866, 1.1782063610815547, -0.32115122802595814, -0.5572989360466505, -0.5081048008313277, -0.4513244460056745, -0.42887630202709476], [0.1369616771753129, 1.6008720000492624, -0.1528293217700157, -0.5435941122211042, -0.4612880851912719, -0.36687670727134797, -0.5765302292438321], [1.621468259261075, 0.4861048138789056, -0.5774505205218279, -0.5774505205218279, -0.5774505205218279, -0.5774505205218279, -0.21841060153684608], [-0.5776930260569114, -0.42615219870089677, 1.5731072417827425, -0.26297946794177945, -0.5777345884923027, 0.5381456168189537, -0.5775247867674332], [0.21540604690124726, 1.8033605809299094, -0.3897734112567884, -0.577182903987021, -0.44767384201051363, -0.4818429244758319, -0.5763997692341913], [1.6638838126771702, 0.6269758197933475, -0.5774377514623062, -0.5774377514623062, -0.5774377514623062, -0.5774377514623062, -0.4467469563609023], [1.382392253466109, -0.3650681599099973, -0.5774064390092786, -0.5774064390092786, -0.5774064390092786, -0.5774064390092786, 0.8885445754210586]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2308.0, 2462.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2843.0, 2872.0, 2899.0, 2922.0, 2942.0, 2961.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 181.0, 199.0, 217.0, 239.0, 260.0, 279.0, 295.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 642.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1205.0, 1302.0, 1405.0, 1509.0, 1621.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2596.0, 2769.0, 2946.0, 3127.0, 3330.0, 3570.0, 3861.0, 4162.0, 4480.0, 4885.375, 5311.0, 5743.0], [150.0, 166.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 202.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 192.0, 200.0, 211.0], [330.0, 466.0, 573.0, 666.0, 760.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1277.0, 1360.0, 1445.0, 1530.0, 1618.0, 1710.0, 1803.0, 1898.0, 1998.0, 2101.0, 2208.0, 2318.0, 2431.0, 2550.0, 2676.0, 2828.0, 3046.0, 3369.0, 3865.0, 4589.0, 5525.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7002284828214127, 1.0114715974402781, -0.310661240043807, -0.550972295523773, -0.4998189783455344, -0.4415857012906672, -0.41890177076939716], [0.02295184412025776, 1.348073135248846, -0.09737988462527712, -0.5325311235022919, -0.4371592778215896, -0.33087961477484845, -0.5708791529968849], [1.3019995805613844, 0.5590327787358956, -0.5723298902595656, -0.5720489026632832, -0.5722742180389131, -0.5721879665773207, -0.2551318561952612], [-0.5548140524936093, 0.10768107328966206, 1.1136276934301301, -0.3562252770825382, -0.5472981081848597, 0.3783740053990065, -0.5724240723525275], [0.13459940071982035, 1.548190383180103, -0.4392286123540712, -0.571882783494177, -0.41381121148402517, -0.5063117995333202, -0.5705292334146386], [1.3222107836480192, 0.6737884683197853, -0.5723556921599818, -0.5720314711064949, -0.5722914762983683, -0.5721919669825597, -0.4574085757294951], [1.1680543308833555, -0.3538226113320669, -0.5720427464546095, -0.5720427464546095, -0.5720427464546095, -0.5720427464546095, 0.7816216103295297]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2308.0, 2462.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2843.0, 2872.0, 2899.0, 2922.0, 2942.0, 2961.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 181.0, 199.0, 217.0, 239.0, 260.0, 279.0, 295.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 642.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1205.0, 1302.0, 1405.0, 1509.0, 1621.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2596.0, 2769.0, 2946.0, 3127.0, 3330.0, 3570.0, 3861.0, 4162.0, 4480.0, 4885.375, 5311.0, 5743.0], [150.0, 166.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 202.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 192.0, 200.0, 211.0], [330.0, 466.0, 573.0, 666.0, 760.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1277.0, 1360.0, 1445.0, 1530.0, 1618.0, 1710.0, 1803.0, 1898.0, 1998.0, 2101.0, 2208.0, 2318.0, 2431.0, 2550.0, 2676.0, 2828.0, 3046.0, 3369.0, 3865.0, 4589.0, 5525.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 1, 24, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6268217165248674, 0.8843682817876086, -0.30069883732489805, -0.5449696826535969, -0.49169283961666815, -0.4320410207709642, -0.40915452354306453], [-0.0255298534924814, 1.1564387697321128, -0.06380364532205138, -0.5230972199946988, -0.4180643493481977, -0.3046057460272734, -0.5657351781199601], [1.0980792324716142, 0.5539195435800157, -0.5675131117911196, -0.5670466051427592, -0.567267365377934, -0.5672751605699315, -0.2640260884927771], [-0.5675023623453425, -0.41669042262228895, 1.1440008605660856, -0.23706425991850155, -0.567595372303182, 0.45593137533390604, -0.5672250642766646], [0.039333125214882386, 1.3024667547985709, -0.32680386299141473, -0.5667441699535511, -0.39722290999152077, -0.4417684475907502, -0.5655033704361887], [0.9918561009457235, 0.8660550145085303, -0.5678605990352662, -0.5670351168426035, -0.5674264127233981, -0.5674403535980734, -0.5579238954278479], [1.2280173640661722, 0.09086201574706725, -0.5670239322169149, -0.5670256882922561, -0.5670242800213974, -0.5670248189883361, 0.07481718452344949]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/predictions.npz b/benchmarks/v1/evidence/histogram-052/A3/1/predictions.npz new file mode 100644 index 0000000..56ebdfd Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/replay.npz b/benchmarks/v1/evidence/histogram-052/A3/1/replay.npz new file mode 100644 index 0000000..56ebdfd Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/1/replay.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/training.json b/benchmarks/v1/evidence/histogram-052/A3/1/training.json new file mode 100644 index 0000000..ec70052 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/1/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4950942685616815, + "last_score": 1.4950942685616815, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "efe334f709e1e1661f27e62622e2b01918c31fe6d95a1c50fb8416067c08e434", + "best_validation_score": 1.4950942685616815, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/1/worker.log b/benchmarks/v1/evidence/histogram-052/A3/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/execution.json b/benchmarks/v1/evidence/histogram-052/A3/2/execution.json new file mode 100644 index 0000000..4e03f15 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "107d68cc9cfbd968587f7fb0a556be22c3b589d28a970d7bef19377ab561cafb", + "predictions.npz": "822a3e34d09ed01433347556e0615f5080334c83a3908f815b783b703b75dc8d", + "training.json": "024e2a1dff6add2f32c8f93824d40d2dd472a547f19686aaedf0b1e74774e4e7", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-2-job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 68.12122533300135 +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/model.bin b/benchmarks/v1/evidence/histogram-052/A3/2/model.bin new file mode 100644 index 0000000..047f33e --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2899.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3372.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 239.0, 260.0, 279.0, 296.0, 309.0, 320.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [283.0, 433.0, 564.0, 684.0, 793.0, 900.0, 1006.0, 1104.0, 1201.0, 1301.0, 1405.0, 1509.0, 1622.0, 1740.0, 1867.0, 2001.0, 2136.0, 2282.0, 2435.0, 2596.0, 2769.0, 2947.0, 3130.0, 3332.0, 3572.0, 3864.0, 4168.0, 4484.0, 4884.0, 5311.0, 5745.0], [149.0, 165.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 138.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 940.0, 1024.0, 1110.0, 1198.0, 1282.0, 1364.0, 1445.0, 1531.0, 1621.0, 1712.0, 1805.0, 1902.0, 2002.0, 2105.0, 2210.0, 2320.0, 2433.0, 2551.0, 2676.0, 2828.0, 3043.0, 3369.0, 3874.0, 4604.0, 5537.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.905470047750232, 1.4076858773737335, -0.33205460079618654, -0.5640231214051338, -0.5166197381038454, -0.4612747946646852, -0.43918367015118537], [0.0845854776820352, 2.0167330187700876, -0.1378978212909591, -0.5491026045764457, -0.46507181493994787, -0.3669632206643615, -0.5822830349790649], [1.9678103267807583, 0.6194371948463159, -0.5833176581180889, -0.5833176581180889, -0.5833176581180889, -0.5833176581180889, -0.25397688915521777], [-0.5659186910727498, 0.14422442832455618, 1.5063717539709935, -0.3776534122303985, -0.5585577557171103, 0.4347942324485498, -0.583260555724187], [0.2144566982767451, 2.3905296146550365, -0.46617323739265465, -0.5833188032653593, -0.44639573807169197, -0.5270251654018461, -0.5820733687993587], [2.0185224841500236, 0.783694256278114, -0.5833150618563828, -0.5833150618563828, -0.5833150618563828, -0.5833150618563828, -0.46895649300111125], [1.661315902189819, -0.37221255397405445, -0.5832230381283837, -0.5832230381283837, -0.5832230381283837, -0.5832230381283837, 1.043788804297389]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2899.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3372.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 239.0, 260.0, 279.0, 296.0, 309.0, 320.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [283.0, 433.0, 564.0, 684.0, 793.0, 900.0, 1006.0, 1104.0, 1201.0, 1301.0, 1405.0, 1509.0, 1622.0, 1740.0, 1867.0, 2001.0, 2136.0, 2282.0, 2435.0, 2596.0, 2769.0, 2947.0, 3130.0, 3332.0, 3572.0, 3864.0, 4168.0, 4484.0, 4884.0, 5311.0, 5745.0], [149.0, 165.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 138.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 940.0, 1024.0, 1110.0, 1198.0, 1282.0, 1364.0, 1445.0, 1531.0, 1621.0, 1712.0, 1805.0, 1902.0, 2002.0, 2105.0, 2210.0, 2320.0, 2433.0, 2551.0, 2676.0, 2828.0, 3043.0, 3369.0, 3874.0, 4604.0, 5537.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7905892286174738, 1.1782210913855753, -0.32114694749356504, -0.5572991381336221, -0.508105032337886, -0.4513254105801354, -0.4288821496762014], [0.13561360170697948, 1.6015954191880328, -0.15266499437124276, -0.5435819302880364, -0.4612449231190326, -0.36679985791580866, -0.5764456339133397], [1.6222222017690562, 0.4854842829956088, -0.5774499914305762, -0.5774499914305762, -0.5774499914305762, -0.5774499914305762, -0.21875170520885467], [-0.5776816453967276, -0.42565248676977835, 1.5745874080522295, -0.2621203394718977, -0.5777479094613588, 0.5361102988998628, -0.57752578389983], [0.21391936022112137, 1.8041907703235542, -0.38969484434438595, -0.5772762904669138, -0.44762063535530827, -0.4815281101111461, -0.5763050751370525], [1.6672350339744286, 0.6242480486280301, -0.5774367103069104, -0.5774367103069104, -0.5774367103069104, -0.5774367103069104, -0.44846046943035606], [1.3653515122073945, -0.3609192688025651, -0.5774085427878693, -0.5774085427878693, -0.5774085427878693, -0.5774085427878693, 0.9042414379787315]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2899.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3372.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 239.0, 260.0, 279.0, 296.0, 309.0, 320.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [283.0, 433.0, 564.0, 684.0, 793.0, 900.0, 1006.0, 1104.0, 1201.0, 1301.0, 1405.0, 1509.0, 1622.0, 1740.0, 1867.0, 2001.0, 2136.0, 2282.0, 2435.0, 2596.0, 2769.0, 2947.0, 3130.0, 3332.0, 3572.0, 3864.0, 4168.0, 4484.0, 4884.0, 5311.0, 5745.0], [149.0, 165.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 138.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 940.0, 1024.0, 1110.0, 1198.0, 1282.0, 1364.0, 1445.0, 1531.0, 1621.0, 1712.0, 1805.0, 1902.0, 2002.0, 2105.0, 2210.0, 2320.0, 2433.0, 2551.0, 2676.0, 2828.0, 3043.0, 3369.0, 3874.0, 4604.0, 5537.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7002263624541394, 1.0114891538695365, -0.3106546142916839, -0.5509720861207134, -0.4998185591572427, -0.44158520441224275, -0.41891696550670454], [0.02018348674936224, 1.3497581933900225, -0.09701115191689366, -0.5325023042833789, -0.4370510609521416, -0.3306962687829974, -0.5707828776589043], [1.303620767640523, 0.5577208954393973, -0.5723317004619275, -0.5720467994526046, -0.5722754844451559, -0.5721875766200631, -0.2555263600760561], [-0.5562839655781526, 0.11137581846615599, 1.109654445958254, -0.35627988189296866, -0.5458083657338001, 0.3798534745113278, -0.5724252245976399], [0.13168568854815363, 1.54990224264011, -0.4378670866060031, -0.5718832580973494, -0.4139648828906353, -0.5066573022574109, -0.5704115381372732], [1.3257271496674348, 0.6707130283783579, -0.5723566536243088, -0.5720283596446404, -0.5722918979288566, -0.5721906142620591, -0.45890288151983677], [1.1551412424540448, -0.3496499814882537, -0.5720474544914719, -0.5720474544914719, -0.5720474544914719, -0.5720474544914719, 0.7943250356579713]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2566.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2899.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3372.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 239.0, 260.0, 279.0, 296.0, 309.0, 320.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [283.0, 433.0, 564.0, 684.0, 793.0, 900.0, 1006.0, 1104.0, 1201.0, 1301.0, 1405.0, 1509.0, 1622.0, 1740.0, 1867.0, 2001.0, 2136.0, 2282.0, 2435.0, 2596.0, 2769.0, 2947.0, 3130.0, 3332.0, 3572.0, 3864.0, 4168.0, 4484.0, 4884.0, 5311.0, 5745.0], [149.0, 165.0, 175.0, 182.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 138.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 940.0, 1024.0, 1110.0, 1198.0, 1282.0, 1364.0, 1445.0, 1531.0, 1621.0, 1712.0, 1805.0, 1902.0, 2002.0, 2105.0, 2210.0, 2320.0, 2433.0, 2551.0, 2676.0, 2828.0, 3043.0, 3369.0, 3874.0, 4604.0, 5537.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 1, 24, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6268183533097689, 0.8843862865903753, -0.30068205518105884, -0.5449691021895611, -0.4916917601661023, -0.4320409953614764, -0.4091837702087509], [-0.0249743590570299, 1.1568135743660863, -0.06466944193730965, -0.5231826764016526, -0.41830919528657323, -0.30510062577378744, -0.5656304564271142], [1.099173740863502, 0.5519122655609734, -0.5675074286869565, -0.5670448031105935, -0.5673142848221553, -0.5672705293770022, -0.2636260308978312], [-0.5674831501676101, -0.4162723058812173, 1.1455153976235768, -0.2361899336733861, -0.5676198493012456, 0.4540604298546498, -0.5672276064023368], [0.03978460037999752, 1.3025666973983456, -0.32734932238399655, -0.5668699400710216, -0.3975447631979806, -0.441687411324707, -0.5653838653506955], [0.9917921760912911, 0.8653379152283909, -0.5678518187239642, -0.567032682909463, -0.5675103897406293, -0.5674331577050145, -0.557632383039434], [1.2305876409650114, 0.08814592313121487, -0.5670228562816444, -0.5670246390054604, -0.5670232079127134, -0.5670237579060312, 0.0746981056558146]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/predictions.npz b/benchmarks/v1/evidence/histogram-052/A3/2/predictions.npz new file mode 100644 index 0000000..94409b6 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/replay.npz b/benchmarks/v1/evidence/histogram-052/A3/2/replay.npz new file mode 100644 index 0000000..94409b6 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/2/replay.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/training.json b/benchmarks/v1/evidence/histogram-052/A3/2/training.json new file mode 100644 index 0000000..90fea16 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/2/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.49552287817923, + "last_score": 1.49552287817923, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "173dbf91643130b95d17fe1729fc398649d6ca1e0dfde560d212a132fbb427cf", + "best_validation_score": 1.49552287817923, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/2/worker.log b/benchmarks/v1/evidence/histogram-052/A3/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/execution.json b/benchmarks/v1/evidence/histogram-052/A3/3/execution.json new file mode 100644 index 0000000..5d8a7f5 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "cbae5ce26a16edda6feca718a6f53c0f1b1359118e8e7936e5de0a6d68627902", + "predictions.npz": "0b5a0141b0452f97774f5d3430fd53dc9bedc2ec301416388b96e9d600db793d", + "training.json": "aea5ce2ff9294d5ed7ad1741c3cf0929c43e700f4c265f1dbf96fc111faa08e9", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-3-job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 67.83693929199944 +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/model.bin b/benchmarks/v1/evidence/histogram-052/A3/3/model.bin new file mode 100644 index 0000000..83e405a --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2565.0, 2631.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 295.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 564.0, 684.0, 794.0, 900.0, 1001.0, 1103.0, 1200.0, 1298.0, 1401.0, 1507.0, 1618.0, 1736.0, 1863.0, 1994.0, 2131.0, 2278.0, 2430.0, 2590.0, 2766.0, 2946.0, 3127.0, 3331.0, 3572.0, 3863.0, 4164.0, 4482.0, 4881.375, 5308.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 165.0, 168.0, 172.0, 177.0, 182.0, 187.0, 193.0, 200.0, 212.0], [330.0, 467.0, 576.0, 671.0, 765.0, 853.0, 940.0, 1025.0, 1112.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1618.0, 1710.0, 1802.0, 1898.0, 1998.0, 2103.0, 2207.0, 2317.0, 2431.0, 2551.0, 2678.0, 2826.0, 3042.0, 3368.0, 3870.0, 4593.0, 5534.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.9054700477502345, 1.407685877373733, -0.332054600796155, -0.5640231214051346, -0.5166197381038429, -0.4612747946646863, -0.43918367015119486], [0.08732918596380415, 2.0136782644638007, -0.13771654461130314, -0.5490886738666493, -0.4650236866367404, -0.3668751655934427, -0.5823033797181217], [1.9632718768000077, 0.6241221245164689, -0.583317666366244, -0.583317666366244, -0.583317666366244, -0.583317666366244, -0.25412333585202806], [-0.5661461586511795, 0.13928794503445777, 1.5113054341045862, -0.3773891317928234, -0.5603997501565045, 0.4366021236725431, -0.5832604622114219], [0.21765632174007887, 2.3874570416184326, -0.46659453335988366, -0.5833187998964605, -0.44599027115507694, -0.5271117678139755, -0.582097991132264], [2.013107923034363, 0.7896540099392005, -0.5833150488124431, -0.5833150488124431, -0.5833150488124431, -0.5833150488124431, -0.46950173772233533], [1.6646735239969557, -0.36657492085503174, -0.5832239146499315, -0.5832239146499315, -0.5832239146499315, -0.5832239146499315, 1.0347970554574104]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2565.0, 2631.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 295.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 564.0, 684.0, 794.0, 900.0, 1001.0, 1103.0, 1200.0, 1298.0, 1401.0, 1507.0, 1618.0, 1736.0, 1863.0, 1994.0, 2131.0, 2278.0, 2430.0, 2590.0, 2766.0, 2946.0, 3127.0, 3331.0, 3572.0, 3863.0, 4164.0, 4482.0, 4881.375, 5308.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 165.0, 168.0, 172.0, 177.0, 182.0, 187.0, 193.0, 200.0, 212.0], [330.0, 467.0, 576.0, 671.0, 765.0, 853.0, 940.0, 1025.0, 1112.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1618.0, 1710.0, 1802.0, 1898.0, 1998.0, 2103.0, 2207.0, 2317.0, 2431.0, 2551.0, 2678.0, 2826.0, 3042.0, 3368.0, 3870.0, 4593.0, 5534.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7906099893831344, 1.1782324897564296, -0.3211525966041005, -0.5573000100548865, -0.5081063105037511, -0.45132737351317825, -0.42888272466699207], [0.13807217094875718, 1.599314782429961, -0.15238149763326714, -0.5435585647418301, -0.46116400953106523, -0.3666543745149099, -0.5764655024349252], [1.61809692248008, 0.49084825587983416, -0.5774509428072138, -0.5774509428072138, -0.5774509428072138, -0.5774509428072138, -0.21909164739512035], [-0.5776784603127465, -0.42577202023713057, 1.5773070447260031, -0.26222699010897965, -0.5777301822975129, 0.5323202237529107, -0.5775246490021094], [0.21672224850478886, 1.8018692669464782, -0.39011944208518073, -0.5772765692376539, -0.4475192971569591, -0.4810313163955024, -0.5763272620033559], [1.6623642955793823, 0.6306993622946009, -0.5774375921939943, -0.5774375921939943, -0.5774375921939943, -0.5774375921939943, -0.4491367196141471], [1.3677101593858394, -0.3552445759566302, -0.5774101909197433, -0.5774101909197433, -0.5774101909197433, -0.5774101909197433, 0.8971406316352467]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2565.0, 2631.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 295.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 564.0, 684.0, 794.0, 900.0, 1001.0, 1103.0, 1200.0, 1298.0, 1401.0, 1507.0, 1618.0, 1736.0, 1863.0, 1994.0, 2131.0, 2278.0, 2430.0, 2590.0, 2766.0, 2946.0, 3127.0, 3331.0, 3572.0, 3863.0, 4164.0, 4482.0, 4881.375, 5308.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 165.0, 168.0, 172.0, 177.0, 182.0, 187.0, 193.0, 200.0, 212.0], [330.0, 467.0, 576.0, 671.0, 765.0, 853.0, 940.0, 1025.0, 1112.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1618.0, 1710.0, 1802.0, 1898.0, 1998.0, 2103.0, 2207.0, 2317.0, 2431.0, 2551.0, 2678.0, 2826.0, 3042.0, 3368.0, 3870.0, 4593.0, 5534.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7002465773927379, 1.0114929520512186, -0.31066826774406386, -0.5509739793153311, -0.4998214207908751, -0.44158807436687786, -0.4189175837322244], [0.022908856981630678, 1.3478768937839982, -0.096761382071372, -0.532479517918853, -0.43697032747716974, -0.3305516647121334, -0.5708077554180823], [1.3010136322794636, 0.5613426379100332, -0.5723323323662582, -0.5720484749607528, -0.5722774224481348, -0.5721896219398998, -0.2557161104032305], [-0.5565273958165786, 0.10720093847066715, 1.1124612092141624, -0.3560059929441847, -0.5478132029391554, 0.3815547221074652, -0.5724232754805465], [0.1348352415512651, 1.548167508578956, -0.4383113240678504, -0.5718854773060508, -0.4134661818912513, -0.5067519191000833, -0.5704424843847785], [1.3226724519254476, 0.6750368539027146, -0.5723573643745622, -0.5720299090128871, -0.5722940430210675, -0.5721927708143939, -0.4594707506840795], [1.156908339035849, -0.3439376522842218, -0.5720498985340846, -0.5720498985340846, -0.5720498985340846, -0.5720498985340846, 0.788550802546679]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2463.0, 2565.0, 2631.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2996.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3164.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3314.0, 3373.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 295.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 29.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 564.0, 684.0, 794.0, 900.0, 1001.0, 1103.0, 1200.0, 1298.0, 1401.0, 1507.0, 1618.0, 1736.0, 1863.0, 1994.0, 2131.0, 2278.0, 2430.0, 2590.0, 2766.0, 2946.0, 3127.0, 3331.0, 3572.0, 3863.0, 4164.0, 4482.0, 4881.375, 5308.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 220.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 123.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 165.0, 168.0, 172.0, 177.0, 182.0, 187.0, 193.0, 200.0, 212.0], [330.0, 467.0, 576.0, 671.0, 765.0, 853.0, 940.0, 1025.0, 1112.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1618.0, 1710.0, 1802.0, 1898.0, 1998.0, 2103.0, 2207.0, 2317.0, 2431.0, 2551.0, 2678.0, 2826.0, 3042.0, 3368.0, 3870.0, 4593.0, 5534.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 1, 24, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6268303792590124, 0.884371680195522, -0.3007052840749547, -0.5449718462324984, -0.49169618036473683, -0.43204625396188956, -0.40918334275425106], [-0.020734045729957334, 1.1543370968845974, -0.06461173094695057, -0.523174531314893, -0.41825337670029167, -0.3050458208067533, -0.5656590280875905], [1.0964312222167238, 0.5554569773026414, -0.5675069654628359, -0.5670473309144937, -0.567343645409298, -0.5672728494185775, -0.26367230576243833], [-0.5674760344824666, -0.41629269563214816, 1.147008910581358, -0.2362969092427412, -0.567586839109133, 0.4507493849111961, -0.5672241236797899], [0.04451640808339548, 1.2998984449660211, -0.3279970711428727, -0.5668717615028634, -0.39748183772526274, -0.44110344920277156, -0.5654168906940178], [0.9908291616953394, 0.8665549226587218, -0.5678474727184435, -0.5670345234665075, -0.567559091342493, -0.5674341811573319, -0.5581182825946165], [1.2260522124695934, 0.09401530468725507, -0.5670262829625872, -0.5670280546756888, -0.5670266255568265, -0.5670271734902146, 0.0759296935022854]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/predictions.npz b/benchmarks/v1/evidence/histogram-052/A3/3/predictions.npz new file mode 100644 index 0000000..729e198 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/replay.npz b/benchmarks/v1/evidence/histogram-052/A3/3/replay.npz new file mode 100644 index 0000000..729e198 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/3/replay.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/training.json b/benchmarks/v1/evidence/histogram-052/A3/3/training.json new file mode 100644 index 0000000..848cbf3 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/3/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4956368082097549, + "last_score": 1.4956368082097549, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8324222fd21d34e910e09c924f92aba939360c196dc6549654c3984af87438ac", + "best_validation_score": 1.4956368082097549, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/3/worker.log b/benchmarks/v1/evidence/histogram-052/A3/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/execution.json b/benchmarks/v1/evidence/histogram-052/A3/4/execution.json new file mode 100644 index 0000000..a05f5d5 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "d803d10264a7bb0cb8a451d3b69772ca1354d9c6fa129fe61f1a81ad0d34e77a", + "predictions.npz": "4b6d22ed760ad936edd2bd3aae9b7d16f48b33eee66262c4fa89690fe76776ef", + "training.json": "101d7ecd3cb3d5240d90fe1775fff91644c0e8a4e4530c72901e349e8fd470a7", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-4-job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 67.91371858300408 +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/model.bin b/benchmarks/v1/evidence/histogram-052/A3/4/model.bin new file mode 100644 index 0000000..572590c --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2464.0, 2566.0, 2632.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2995.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3163.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3373.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 65.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 321.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 152.0, 191.0], [283.0, 433.0, 566.0, 685.0, 797.0, 902.0, 1006.0, 1107.0, 1203.0, 1301.0, 1403.0, 1507.0, 1620.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2591.0, 2765.0, 2942.0, 3124.0, 3326.0, 3565.0, 3854.0, 4161.0, 4480.0, 4878.0, 5305.0, 5741.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 201.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 939.0, 1024.0, 1110.0, 1195.0, 1282.0, 1362.0, 1445.0, 1530.0, 1620.0, 1710.0, 1802.0, 1897.0, 1997.0, 2100.0, 2205.0, 2314.0, 2429.0, 2546.0, 2673.0, 2824.0, 3038.0, 3364.5, 3864.0, 4594.0, 5538.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.9054700477502463, 1.407685877373734, -0.3320546007961479, -0.5640231214051311, -0.5166197381038435, -0.4612747946646951, -0.43918367015119314], [0.08508750934599196, 2.016375886690162, -0.13803368204219574, -0.5491130451731189, -0.4651078854783321, -0.3670292149671355, -0.5821795683740276], [1.9679040440509021, 0.6193477668109698, -0.5833176519262707, -0.5833176519262707, -0.5833176519262707, -0.5833176519262707, -0.25398120315727374], [-0.5664512653454531, 0.1440275049616188, 1.513809655706075, -0.37806108317322834, -0.5610971491303982, 0.43103303695518286, -0.5832606999741264], [0.21542759102728168, 2.3908943254776225, -0.4684862426132543, -0.5833188028221724, -0.4458933723065645, -0.5266747156388197, -0.5819487831233741], [2.0149286686676757, 0.785332067837278, -0.5833150399656393, -0.5833150399656393, -0.5833150399656393, -0.5833150399656393, -0.46700057664088174], [1.6852653617879076, -0.3770999404546317, -0.5832235262483859, -0.5832235262483859, -0.5832235262483859, -0.5832235262483859, 1.0247286836598646]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2464.0, 2566.0, 2632.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2995.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3163.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3373.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 65.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 321.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 152.0, 191.0], [283.0, 433.0, 566.0, 685.0, 797.0, 902.0, 1006.0, 1107.0, 1203.0, 1301.0, 1403.0, 1507.0, 1620.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2591.0, 2765.0, 2942.0, 3124.0, 3326.0, 3565.0, 3854.0, 4161.0, 4480.0, 4878.0, 5305.0, 5741.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 201.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 939.0, 1024.0, 1110.0, 1195.0, 1282.0, 1362.0, 1445.0, 1530.0, 1620.0, 1710.0, 1802.0, 1897.0, 1997.0, 2100.0, 2205.0, 2314.0, 2429.0, 2546.0, 2673.0, 2824.0, 3038.0, 3364.5, 3864.0, 4594.0, 5538.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7905948881143577, 1.1782126218312332, -0.3211549318521689, -0.5572990740204609, -0.5081050295992492, -0.4513243104205491, -0.4288759483660984], [0.1365046746611593, 1.600839509284152, -0.15273068931294947, -0.5435857116058802, -0.4612588035482839, -0.36682297532094643, -0.5763432962017523], [1.6213297665476534, 0.4864844776084904, -0.5774503688438678, -0.5774503688438678, -0.5774503688438678, -0.5774503688438678, -0.21880823185837073], [-0.5776756200802593, -0.42500667969606337, 1.5735573878070985, -0.26381526484974016, -0.5777238075892275, 0.5371473522588842, -0.5775245529579932], [0.21515156423637322, 1.8039249497307501, -0.3905531900062143, -0.577182974522549, -0.4475989761067276, -0.48201451122765904, -0.5761903925904693], [1.663532094039387, 0.6269007482252833, -0.57743765468202, -0.57743765468202, -0.57743765468202, -0.57743765468202, -0.4463021874084547], [1.3823070400038049, -0.36583570324612164, -0.5774059038477639, -0.5774059038477639, -0.5774059038477639, -0.5774059038477639, 0.8892460298039991]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2464.0, 2566.0, 2632.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2995.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3163.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3373.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 65.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 321.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 152.0, 191.0], [283.0, 433.0, 566.0, 685.0, 797.0, 902.0, 1006.0, 1107.0, 1203.0, 1301.0, 1403.0, 1507.0, 1620.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2591.0, 2765.0, 2942.0, 3124.0, 3326.0, 3565.0, 3854.0, 4161.0, 4480.0, 4878.0, 5305.0, 5741.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 201.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 939.0, 1024.0, 1110.0, 1195.0, 1282.0, 1362.0, 1445.0, 1530.0, 1620.0, 1710.0, 1802.0, 1897.0, 1997.0, 2100.0, 2205.0, 2314.0, 2429.0, 2546.0, 2673.0, 2824.0, 3038.0, 3364.5, 3864.0, 4594.0, 5538.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7002332648429239, 1.0114778736392547, -0.310668552837555, -0.5509721973653491, -0.49981896637045076, -0.44158514746305977, -0.41889974650885864], [0.0222351740690958, 1.348470525153121, -0.09721228537342645, -0.5325160506978409, -0.4370996617008695, -0.33078215165339286, -0.5706621722693317], [1.3023592265224513, 0.5591240532452583, -0.5723297277204563, -0.572047737296755, -0.5722763908774091, -0.5721878797786878, -0.25548790351933803], [-0.5568510258525377, 0.1112981467980735, 1.1146743897918971, -0.35667344087010705, -0.5485738695845402, 0.37652064841152183, -0.5724238434124351], [0.13443501158710403, 1.5487833463129759, -0.440507459474663, -0.5718838031628088, -0.4133974502222312, -0.50624487922467, -0.5702643614378898], [1.3225449183933586, 0.6734092811470386, -0.5723554221265537, -0.5720302463421295, -0.5722939385201161, -0.5721918862235829, -0.45701288434692744], [1.1679926766525754, -0.35459621592124274, -0.5720420691461119, -0.5720420691461119, -0.5720420691461119, -0.5720420691461119, 0.7821939899322817]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2310.0, 2464.0, 2566.0, 2632.0, 2690.0, 2734.0, 2772.0, 2809.0, 2842.0, 2871.0, 2898.0, 2921.0, 2942.0, 2960.0, 2978.0, 2995.0, 3014.0, 3034.0, 3054.0, 3076.0, 3098.0, 3120.0, 3142.0, 3163.0, 3185.0, 3206.0, 3227.0, 3251.0, 3278.0, 3315.0, 3373.0], [7.0, 15.0, 22.0, 30.0, 37.0, 45.0, 51.0, 58.0, 65.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 218.0, 240.0, 261.0, 279.0, 296.0, 309.0, 321.0, 331.0, 341.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 384.0, 417.0, 446.0, 481.0, 524.0, 573.0, 644.0, 765.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 152.0, 191.0], [283.0, 433.0, 566.0, 685.0, 797.0, 902.0, 1006.0, 1107.0, 1203.0, 1301.0, 1403.0, 1507.0, 1620.0, 1739.0, 1865.0, 1997.0, 2133.0, 2279.0, 2431.0, 2591.0, 2765.0, 2942.0, 3124.0, 3326.0, 3565.0, 3854.0, 4161.0, 4480.0, 4878.0, 5305.0, 5741.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 201.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [67.0, 83.0, 93.0, 101.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 212.0], [324.0, 466.0, 573.0, 671.0, 765.0, 853.0, 939.0, 1024.0, 1110.0, 1195.0, 1282.0, 1362.0, 1445.0, 1530.0, 1620.0, 1710.0, 1802.0, 1897.0, 1997.0, 2100.0, 2205.0, 2314.0, 2429.0, 2546.0, 2673.0, 2824.0, 3038.0, 3364.5, 3864.0, 4594.0, 5538.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 1, 25, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6268238140831369, 0.884371724246541, -0.30071282145646205, -0.5449694692884536, -0.49169283564464944, -0.43203938404209674, -0.40915046076728123], [-0.025603860765007865, 1.1565991091954908, -0.06390677404187521, -0.5231034942930519, -0.41810799158985346, -0.30463680550366595, -0.5654928438341362], [1.0983245124007277, 0.553712002986702, -0.5675094668586775, -0.5670457631150396, -0.5672404830590497, -0.5672742883718382, -0.26419097593627267], [-0.5674716686347515, -0.4156113161461801, 1.1441665656154778, -0.23790308034112428, -0.5675761089964826, 0.4552776553860419, -0.5672245612859165], [0.0394011033156795, 1.3030852899812884, -0.3278577802036409, -0.5667445669189567, -0.3972191341117724, -0.4420369066914487, -0.565225590214481], [1.0287971968439709, 0.8177963713988908, -0.5677694365078741, -0.5670307119826543, -0.5673414566759685, -0.5673953288685966, -0.5507812830952005], [1.2098277643369972, 0.0422270179667899, -0.5670275904908417, -0.5670292352033819, -0.567027901462956, -0.5670284176295459, 0.15808341551565702]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/predictions.npz b/benchmarks/v1/evidence/histogram-052/A3/4/predictions.npz new file mode 100644 index 0000000..22329d5 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/replay.npz b/benchmarks/v1/evidence/histogram-052/A3/4/replay.npz new file mode 100644 index 0000000..22329d5 Binary files /dev/null and b/benchmarks/v1/evidence/histogram-052/A3/4/replay.npz differ diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/training.json b/benchmarks/v1/evidence/histogram-052/A3/4/training.json new file mode 100644 index 0000000..028aa72 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/A3/4/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4955556215694166, + "last_score": 1.4955556215694166, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "70e82e75bc80b3975da9da29dd4a283731d5dc5db97d28b84c8d9807c25b31de", + "best_validation_score": 1.4955556215694166, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/histogram-052/A3/4/worker.log b/benchmarks/v1/evidence/histogram-052/A3/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/histogram-052/README.md b/benchmarks/v1/evidence/histogram-052/README.md new file mode 100644 index 0000000..eebe303 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/README.md @@ -0,0 +1,29 @@ +# Full Covertype replay after histogram gather reuse + +All five unchanged full-data jobs pass their original 90-second process cap: +folds 0–4 take 70.3, 69.9, 68.1, 67.8 and 67.9 seconds respectively. Each saved +model reproduces validation probabilities and source row IDs exactly in a fresh +process under the 30-second replay cap. Fold zero's model bytes and prediction +arrays also exactly match Sprint 051. This is bounded validation integration, +not a quality search, matched-quality speed comparison or A3 acceptance. + +`summary.json` retains revision/dirty state, source hashes, jobs, packet hashes, +commands, environment and execution outcomes. `input-summary.json` retains the +original Sprint 049 source/version/split/packet provenance and failed outcomes; +its bytes match the prior-summary digest. Per-fold raw models, predictions, +replays, training metadata, execution records and logs are retained. +`verification.json` records hash/equality checks and supplemental CPU/RAM metadata. + +Regenerate the frozen packets with the Sprint 049 export procedure if absent, +then rerun from that generated summary into a fresh output directory: + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.replay_current_packets /tmp/openboost-covertype-049/summary.json /tmp/openboost-histogram-052 +``` + +Four rounds, depth two, 32 bins, seven classes and one CPU thread remain unchanged. +Source export is outside worker timing. No profiler or concurrent regression +suite ran during these fits. No memory cap, measured peak memory, CUDA or test +label scoring. The implementation retains a contiguous selected-statistic buffer; +transpose construction can transiently hold two rows-by-fields arrays. No memory +improvement or stable speed ratio is inferred from these local reruns. diff --git a/benchmarks/v1/evidence/histogram-052/input-summary.json b/benchmarks/v1/evidence/histogram-052/input-summary.json new file mode 100644 index 0000000..54680af --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/input-summary.json @@ -0,0 +1,371 @@ +{ + "scope": "Current A1/A2/A3/A6/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "0def101a0f91e52a654aa4d3d734144d0a98411f", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-covertype-049", + "--applications", + "A3" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "aa73cc40df7c79203505f91e3b86292dffbb3b9348467be60d8587e3bfd8c6ad", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "d53f4796353430002ca2231de1852c139492fd7de1c7e4936374da1befebd33d", + "benchmarks/v1/openboost_predict.py": "b0c21aca3046eb3ad40f52f4c845dc159872d10261a0afca2d1cd01357354d04", + "benchmarks/v1/openboost_worker_smoke.py": "42461c49d72f23a8a1896d3ec3f09bd6e2352f6b9d513865c1c1e6e7e410c020", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A3": { + "application": "A3", + "dataset": "covertype", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "9bc25256b6a57efa51f13e714c6b47496239858ac851e97c3d74ebe47db71f1a" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "be5d90d83aa4daede0678e41425ff4ba5c45dbf074938113af0ad17b421a2f6c" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "36dda823586db6a9ddf91fd0d9e2520339d2673c05376469b685b6477f9a766d" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "0b1dff90f6c0f819af4212b7c8f70f4ad81fc601c82d7cfa654cca1a6818f314" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "939fae1e6bb73bd032846d1d746ca878d9d04e632fa44fa167186f62274ce168" + } + }, + "metadata": {} + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "d64c60a6f43d571eeddc9a9bcbda756b80fe4941f86322908f32e7f4717fad39" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "4a76893b287be4ae6d426237a31964d3ced678a3146b130774e5375925eb23d1" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "28c6c8c65d8a2bea7ae4143cad6779663210cc9f96fb80c7964916df0f1be0d7" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "58cb3d94f756b63b04a367e966f35cc96f89575a7648a8ddfdc8a8557e91e0d8" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "8bca09f723c78f2d5b76b502a9b9c13c32d128d500468eb569ec3e1206ef8d06" + } + }, + "metadata": {} + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "5714e839b4f64cb5c9aba8bb348126f0f472adffba9370ca4c2c478e8f922766" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "dc1172c948a9a36e8655ae0cd8abfe06a20e36edb95a2dcf848a0fbca56e05b6" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "0008f26455bff9cf865f311e8e12827f4f7ee3a6e130ae8e7cbddf52bff08e22" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "55d1bfe08be7912d5bf6abc393debce5e3256b966fd028b9c58ff25ae105425d" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "93fbfff4e8b6f0d0af1e2545a2880912000bc10b13edf7ca04558405239c5efa" + } + }, + "metadata": {} + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "3925324d0008087680b73df1ce383154ccb06c15b3781c6d614e461b58caa1a4" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "b9bd2397c5589902abd54b030e034a6d15391d08e3ba7b8417b730d255ebb287" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "8dc679559db25ab5b539ea1b497b17f648b873d53918a55908c6510df3ec9728" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "f30c6b3b8b37878446033c7876190aff6bd7338ee53471965776c3f121ab4062" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "a9cc4943bbe5511863e1f44c50e0a6fa842f255acc4ad641553ac63f9efb177b" + } + }, + "metadata": {} + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "2887c6bba88c012857b33c316dd0f60bf53218d0d966ab1a1a7e1ea1a7fd54df" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "375c27849c96df36923c5d0725e339d1158147330b7b90f88d9f060c6e7152a0" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "ec378b293641f6c2994840ebeb39545d4b13cafff26e4fe3652ac514a01d83a3" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "c8e80caf8655a4cb2cb2f6a259fba3db8f87279c0992514107465f59b5babd69" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "7113772cb35562a039be77a3874cc6f807886f16f51603c2318547170c2f1153" + } + }, + "metadata": {} + } + ], + "source_freeze_sha256": "a4c9a1614b7e0d4d74d99194f498a0a387f9d547992981b8c3219ca79cd1f675", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-covertype-049/A3/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "timeout", + "exit_code": -9, + "reason": "wall budget exceeded; process group killed", + "wall_s": 90.12871720900876, + "artifacts": { + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "application": "A3", + "fold": 0, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/0/worker-input.npz", + "classes": 7 + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-covertype-049/A3/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "timeout", + "exit_code": -9, + "reason": "wall budget exceeded; process group killed", + "wall_s": 90.12180937499215, + "artifacts": { + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "application": "A3", + "fold": 1, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/1/worker-input.npz", + "classes": 7 + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-covertype-049/A3/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "timeout", + "exit_code": -9, + "reason": "wall budget exceeded; process group killed", + "wall_s": 90.088346250006, + "artifacts": { + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "application": "A3", + "fold": 2, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/2/worker-input.npz", + "classes": 7 + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-covertype-049/A3/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "timeout", + "exit_code": -9, + "reason": "wall budget exceeded; process group killed", + "wall_s": 90.08695199999784, + "artifacts": { + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "application": "A3", + "fold": 3, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/3/worker-input.npz", + "classes": 7 + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-covertype-049/A3/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "timeout", + "exit_code": -9, + "reason": "wall budget exceeded; process group killed", + "wall_s": 90.09158687500167, + "artifacts": { + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "application": "A3", + "fold": 4, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/4/worker-input.npz", + "classes": 7 + } + } + ] +} diff --git a/benchmarks/v1/evidence/histogram-052/summary.json b/benchmarks/v1/evidence/histogram-052/summary.json new file mode 100644 index 0000000..6e8a5dc --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/summary.json @@ -0,0 +1,428 @@ +{ + "scope": "Unchanged full-data worker replay; no search, quality or comparative speed claim", + "previous_summary": { + "path": "/private/tmp/openboost-covertype-049/summary.json", + "sha256": "15e1d9a013b9901d3ee05e7ed29d7a2d444ecb6f3402107fa0d83c5a1e7a3b67" + }, + "revision": "215d85f1cc3f172bcb171489209003145e4a9792", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.replay_current_packets", + "/private/tmp/openboost-covertype-049/summary.json", + "/private/tmp/openboost-histogram-052" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "cpu_count": 16, + "packages": { + "openboost": "1.0.0rc1", + "numpy": "2.3.5" + }, + "threads": 1, + "gpu": null, + "memory_cap": null, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-0-job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 70.2692351250007, + "artifacts": { + "model.bin": "25040b9d5ecf3f849b16fa16228f25409fe1c449d2ffd920f7d002283c3e242e", + "training.json": "242f60f328e07841b844f3eb3e1dea83e925c230ae97a73ccceed0ba61ac5815", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256" + }, + "application": "A3", + "fold": 0, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/0/worker-input.npz", + "classes": 7 + }, + "input_sha256": "9bc25256b6a57efa51f13e714c6b47496239858ac851e97c3d74ebe47db71f1a", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-histogram-052/A3/0/model.bin", + "/private/tmp/openboost-histogram-052/A3/0/features.npz", + "/private/tmp/openboost-histogram-052/A3/0/replay.npz" + ], + "fresh_process_exact": true, + "replay_sha256": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256", + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4960895873593474, + "last_score": 1.4960895873593474, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "277e32543ddf98ed52048c6dc0b95dac6ad4f3838cee6e9042d668c4f0ab5f5c", + "best_validation_score": 1.4960895873593474, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-1-job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 69.86793641700933, + "artifacts": { + "model.bin": "442dead828cb38724de98e21e8d5a77365488856b055b8a45e2caa9e27dd7138", + "training.json": "4c223b2d745898025d0aa36c881680474cf3727c6660cff225f7aa466b62f530", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "6a75c2b0dffc9b63ad9a23208002ee9f082bb41f77ac93a7330f949d443d0d69" + }, + "application": "A3", + "fold": 1, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/1/worker-input.npz", + "classes": 7 + }, + "input_sha256": "d64c60a6f43d571eeddc9a9bcbda756b80fe4941f86322908f32e7f4717fad39", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-histogram-052/A3/1/model.bin", + "/private/tmp/openboost-histogram-052/A3/1/features.npz", + "/private/tmp/openboost-histogram-052/A3/1/replay.npz" + ], + "fresh_process_exact": true, + "replay_sha256": "6a75c2b0dffc9b63ad9a23208002ee9f082bb41f77ac93a7330f949d443d0d69", + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4950942685616815, + "last_score": 1.4950942685616815, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "efe334f709e1e1661f27e62622e2b01918c31fe6d95a1c50fb8416067c08e434", + "best_validation_score": 1.4950942685616815, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-2-job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 68.12122533300135, + "artifacts": { + "model.bin": "107d68cc9cfbd968587f7fb0a556be22c3b589d28a970d7bef19377ab561cafb", + "training.json": "024e2a1dff6add2f32c8f93824d40d2dd472a547f19686aaedf0b1e74774e4e7", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "822a3e34d09ed01433347556e0615f5080334c83a3908f815b783b703b75dc8d" + }, + "application": "A3", + "fold": 2, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/2/worker-input.npz", + "classes": 7 + }, + "input_sha256": "5714e839b4f64cb5c9aba8bb348126f0f472adffba9370ca4c2c478e8f922766", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-histogram-052/A3/2/model.bin", + "/private/tmp/openboost-histogram-052/A3/2/features.npz", + "/private/tmp/openboost-histogram-052/A3/2/replay.npz" + ], + "fresh_process_exact": true, + "replay_sha256": "822a3e34d09ed01433347556e0615f5080334c83a3908f815b783b703b75dc8d", + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.49552287817923, + "last_score": 1.49552287817923, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "173dbf91643130b95d17fe1729fc398649d6ca1e0dfde560d212a132fbb427cf", + "best_validation_score": 1.49552287817923, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-3-job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 67.83693929199944, + "artifacts": { + "model.bin": "cbae5ce26a16edda6feca718a6f53c0f1b1359118e8e7936e5de0a6d68627902", + "training.json": "aea5ce2ff9294d5ed7ad1741c3cf0929c43e700f4c265f1dbf96fc111faa08e9", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "0b5a0141b0452f97774f5d3430fd53dc9bedc2ec301416388b96e9d600db793d" + }, + "application": "A3", + "fold": 3, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/3/worker-input.npz", + "classes": 7 + }, + "input_sha256": "3925324d0008087680b73df1ce383154ccb06c15b3781c6d614e461b58caa1a4", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-histogram-052/A3/3/model.bin", + "/private/tmp/openboost-histogram-052/A3/3/features.npz", + "/private/tmp/openboost-histogram-052/A3/3/replay.npz" + ], + "fresh_process_exact": true, + "replay_sha256": "0b5a0141b0452f97774f5d3430fd53dc9bedc2ec301416388b96e9d600db793d", + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4956368082097549, + "last_score": 1.4956368082097549, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8324222fd21d34e910e09c924f92aba939360c196dc6549654c3984af87438ac", + "best_validation_score": 1.4956368082097549, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" + } + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-histogram-052/A3-4-job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 67.91371858300408, + "artifacts": { + "model.bin": "d803d10264a7bb0cb8a451d3b69772ca1354d9c6fa129fe61f1a81ad0d34e77a", + "training.json": "101d7ecd3cb3d5240d90fe1775fff91644c0e8a4e4530c72901e349e8fd470a7", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "4b6d22ed760ad936edd2bd3aae9b7d16f48b33eee66262c4fa89690fe76776ef" + }, + "application": "A3", + "fold": 4, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/4/worker-input.npz", + "classes": 7 + }, + "input_sha256": "2887c6bba88c012857b33c316dd0f60bf53218d0d966ab1a1a7e1ea1a7fd54df", + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-histogram-052/A3/4/model.bin", + "/private/tmp/openboost-histogram-052/A3/4/features.npz", + "/private/tmp/openboost-histogram-052/A3/4/replay.npz" + ], + "fresh_process_exact": true, + "replay_sha256": "4b6d22ed760ad936edd2bd3aae9b7d16f48b33eee66262c4fa89690fe76776ef", + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4955556215694166, + "last_score": 1.4955556215694166, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "70e82e75bc80b3975da9da29dd4a283731d5dc5db97d28b84c8d9807c25b31de", + "best_validation_score": 1.4955556215694166, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" + } + } + ], + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/replay_current_packets.py": "4901767f298022a31b45bd58b5f20bac76d78ad5563da4403e4a1f245df397dc", + "benchmarks/v1/openboost_worker.py": "d53f4796353430002ca2231de1852c139492fd7de1c7e4936374da1befebd33d", + "benchmarks/v1/openboost_predict.py": "b0c21aca3046eb3ad40f52f4c845dc159872d10261a0afca2d1cd01357354d04", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + } +} diff --git a/benchmarks/v1/evidence/histogram-052/verification.json b/benchmarks/v1/evidence/histogram-052/verification.json new file mode 100644 index 0000000..c2b0009 --- /dev/null +++ b/benchmarks/v1/evidence/histogram-052/verification.json @@ -0,0 +1,9 @@ +{ + "all_source_and_artifact_hashes_match": true, + "fold_zero_model_bytes_equal_sprint_051": true, + "fold_zero_prediction_arrays_equal_sprint_051": true, + "all_fresh_replays_exact": true, + "cpu": "Apple M4 Max", + "physical_ram_bytes": 51539607552, + "metadata_note": "CPU and RAM read with sysctl; Python reports x86_64 as recorded in summary; peak memory not measured" +} diff --git a/benchmarks/v1/evidence/paid-events-057/README.md b/benchmarks/v1/evidence/paid-events-057/README.md new file mode 100644 index 0000000..dd3c15b --- /dev/null +++ b/benchmarks/v1/evidence/paid-events-057/README.md @@ -0,0 +1,23 @@ +# Matched positive-payment input binding + +All five A9 training/validation folds bind to matched positive-payment counts, +totals and exposure. Independent claim iteration exactly reproduces the source +reader's bincount aggregates. Frozen source array hashes, original worker packet +hashes and training-ID hashes match. Source policy IDs map in exact frozen order; +eligibility, annualized targets and exposure weights are checked before output. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.paid_event_data /tmp/openboost-aggregate-056/summary.json /tmp/openboost-paid-events-057 +``` + +Regenerate Sprint 056 packets first if absent. The parent summary digest in +manifest.json matches the committed aggregate-056/summary.json. Pinned insurance +files are read from build/v1-data. Large generated feature packets are not copied; +the manifest retains their hashes, row/event counts and reconstruction command. +It also records revision/dirty state, source implementation hashes, source audit, +Python/NumPy/OS and input identities. No performance or memory measurement. + +Only training/validation feature and matched aggregate roles are emitted. No +test label packet is opened; the preparer reads the full underlying source. +This is input binding, not a composition fit, +independent author result, quality/search acceptance or an OS access boundary. diff --git a/benchmarks/v1/evidence/paid-events-057/manifest.json b/benchmarks/v1/evidence/paid-events-057/manifest.json new file mode 100644 index 0000000..b91bb81 --- /dev/null +++ b/benchmarks/v1/evidence/paid-events-057/manifest.json @@ -0,0 +1,113 @@ +{ + "scope": "Matched paid-event binding only; no composition fit or test scores", + "revision": "a041f1b1f3ad37c8dc78b6cfc3a63bb79ee7af19", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.paid_event_data", + "/private/tmp/openboost-aggregate-056/summary.json", + "/private/tmp/openboost-paid-events-057" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "numpy": "2.3.5", + "previous_summary_sha256": "44c953a83f5f3119f46407bb0cabf21bddbf45f5d5bb017a74200de8d1586646", + "source_manifest_sha256": "ff95579dd1b95595e87027f38afd512cd986b3182f08f50a7a2139ffb63f291f", + "sources": { + "benchmarks/v1/paid_event_data.py": "e8c807f7f7f484e8f9132836a994e05c1238851f1cb6a42890ca3cd1fc4ecaa8", + "benchmarks/v1/real_data.py": "e796be3be35202fe688235b40798ba98793605adcdcd6194f2729fb869eac0b9" + }, + "source_audit": { + "frequency_rows": 678013, + "severity_rows": 26639, + "nonpositive_claims": 0, + "orphan_claims": 195, + "retained_claims": 26444, + "positive_count_without_payment": 9116, + "zero_count_with_payment": 0, + "aggregate_retained": 668897 + }, + "cells": [ + { + "fold": 0, + "status": "pass", + "path": "fold-0.npz", + "sha256": "0c992d9e5c7c77191f4253c3d762f938ce8ec8020010aabb052d6a2ba460584d", + "input_sha256": "1e3cd8d7e7bd157745bff7db14534bd1fbcecff3abef8f4341fa1f58a9583f0f", + "train_ids_sha256": "89ca61cb3b97a660065989fc29d4083af85a8b78081ff71dba6f316710421bbb", + "rows": { + "train": 401236, + "validation": 133882 + }, + "paid_events": { + "train": 15935, + "validation": 5253 + } + }, + { + "fold": 1, + "status": "pass", + "path": "fold-1.npz", + "sha256": "fe912bb90a41e2ad9722949399d6fb8056120e254bb09e900f0629ddb89ffd24", + "input_sha256": "e8c4d49a1008615af63446d04a049fadb9eb2c65243942defc4765272d1e8dac", + "train_ids_sha256": "34d0dd6b71e9c4c95461c3eb03fd32da250352b89fc9c113f9c44ff6b9f2f8b9", + "rows": { + "train": 401302, + "validation": 133784 + }, + "paid_events": { + "train": 15755, + "validation": 5441 + } + }, + { + "fold": 2, + "status": "pass", + "path": "fold-2.npz", + "sha256": "e2be0ee857dbe10cc36d12721e5f213df28750c1e861a66ea03961e98bcc27ad", + "input_sha256": "c2a2c40926e231d1e596f7e4c662219d923e6f926a96df27b4717abd7445f420", + "train_ids_sha256": "605ce72c18c2ab8b1b00045782ae01f5a7f22bdb38d4ac24074715e39628a3ab", + "rows": { + "train": 401321, + "validation": 133785 + }, + "paid_events": { + "train": 16097, + "validation": 5156 + } + }, + { + "fold": 3, + "status": "pass", + "path": "fold-3.npz", + "sha256": "5b26471702b32cc0a25394aefb0dba421b3a1e7e32ddedfe3d7e9bb981a790c4", + "input_sha256": "7b3cd2b815775626af17f54545b2bbbc1c0bffd23882005f76a8e67e066cfbf2", + "train_ids_sha256": "ccc9af5cc82c64fe0ed87d85e8ce2192fc4c685a7c49695a053ec23ff1b49ead", + "rows": { + "train": 401371, + "validation": 133767 + }, + "paid_events": { + "train": 15830, + "validation": 5247 + } + }, + { + "fold": 4, + "status": "pass", + "path": "fold-4.npz", + "sha256": "7658f4a676385f6a4dec341a9cb8f9649c2954876c641a0504f455917a1d3519", + "input_sha256": "668e0a57c88afc0ab5b6cf73cd578f7b84c6327670cf4a312f450ca65a558781", + "train_ids_sha256": "d11bbf0515574a7e4b7d42ef82e433a7e279f587bf353b8e06fc50db5de1861b", + "rows": { + "train": 401365, + "validation": 133883 + }, + "paid_events": { + "train": 15866, + "validation": 5321 + } + } + ] +} diff --git a/benchmarks/v1/evidence/profile-050/README.md b/benchmarks/v1/evidence/profile-050/README.md new file mode 100644 index 0000000..e80ffc1 --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/README.md @@ -0,0 +1,23 @@ +# Bounded full-input Covertype profile + +This is a deliberately interrupted instrumented diagnostic, not a successful +training run or a speed comparison. The full Sprint 049 fold-zero job was run +for 60 seconds with a 90-second outer cap and one thread. Exit 124 is expected. +No core/recipe changes or reduced dataset were used. + +`manifest.json` records exact command, job/input hashes, source hashes and outer +execution outcome. `profile.json` contains the top 100 cumulative call records; +`profile.txt` is a readable view and `profile.pstats` the trusted local binary +profile. `stacks.txt` contains periodic Python stack traces. Cumulative call times +overlap. cProfile overhead and an initial overlapping local regression run mean +these timings are diagnostic, not fair performance measurements. + +To reproduce, regenerate the Sprint 049 packets if needed, then invoke the +recorded `profile_worker.py JOB --seconds 60` command in a fresh output directory +through `process_runner.execute` with timeout_s=90 and threads=1. The runner must +retain its hard cap because Python alarms can be delayed in native code. Source +export time is outside the timed worker. No test labels were scored. + +The profile prioritizes histogram aggregation and repeated per-candidate row +hashing. Prediction-time transforms are present but are not the leading measured +path. See Sprint 050 for the next exact-semantics optimization. diff --git a/benchmarks/v1/evidence/profile-050/execution.json b/benchmarks/v1/evidence/profile-050/execution.json new file mode 100644 index 0000000..9b82e3b --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/execution.json @@ -0,0 +1,22 @@ +{ + "artifacts": { + "profile.json": "6e6eb241ebb6b23e2e1e12161903ca52055367f5fd05f6cbec2d1e8c951dda8c", + "profile.pstats": "cb8599a012537eab59b75256f6e2587d54dc556c26b47e89c13c8a9fd3163093", + "profile.txt": "a24170558d579ba07ee6003182d914999e057f5aa73e114bf69545b3912f493d", + "stacks.txt": "62f5c52374ead85eb9468f2a3858cc3be277fa1cfd1c2e410728405c277c4863", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", + "/tmp/openboost-covertype-049/A3/0/job.json", + "--seconds", + "60" + ], + "exit_code": 124, + "reason": "worker exited nonzero", + "status": "error", + "threads": 1, + "timeout_s": 90, + "wall_s": 60.219372749998 +} diff --git a/benchmarks/v1/evidence/profile-050/manifest.json b/benchmarks/v1/evidence/profile-050/manifest.json new file mode 100644 index 0000000..fad762a --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/manifest.json @@ -0,0 +1,70 @@ +{ + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", + "/tmp/openboost-covertype-049/A3/0/job.json", + "--seconds", + "60" + ], + "timeout_s": 90, + "threads": 1, + "status": "error", + "exit_code": 124, + "reason": "worker exited nonzero", + "wall_s": 60.219372749998, + "artifacts": { + "profile.pstats": "cb8599a012537eab59b75256f6e2587d54dc556c26b47e89c13c8a9fd3163093", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "stacks.txt": "62f5c52374ead85eb9468f2a3858cc3be277fa1cfd1c2e410728405c277c4863", + "profile.json": "6e6eb241ebb6b23e2e1e12161903ca52055367f5fd05f6cbec2d1e8c951dda8c", + "profile.txt": "a24170558d579ba07ee6003182d914999e057f5aa73e114bf69545b3912f493d" + }, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/0/worker-input.npz", + "classes": 7 + }, + "job_sha256": "af893941106b23a112a930cfc5a4b3c968c8f8d68a889cbcbe9ff89836cb5437", + "input_sha256": "9bc25256b6a57efa51f13e714c6b47496239858ac851e97c3d74ebe47db71f1a", + "revision": "078ca618604ad38e01a2913bf2cffe0fb8f1c593", + "dirty": true, + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "aa73cc40df7c79203505f91e3b86292dffbb3b9348467be60d8587e3bfd8c6ad", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/profile_worker.py": "fd070e691537ca093530b81b495792f83b619aa14df073c94bed6656a12d3218", + "benchmarks/v1/openboost_worker.py": "d53f4796353430002ca2231de1852c139492fd7de1c7e4936374da1befebd33d", + "benchmarks/v1/openboost_predict.py": "b0c21aca3046eb3ad40f52f4c845dc159872d10261a0afca2d1cd01357354d04", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + } +} diff --git a/benchmarks/v1/evidence/profile-050/profile.json b/benchmarks/v1/evidence/profile-050/profile.json new file mode 100644 index 0000000..ebb3008 --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/profile.json @@ -0,0 +1,908 @@ +{ + "status": "deadline", + "soft_limit_s": 60.0, + "wall_s": 60.040606292008306, + "scope": "instrumented diagnostic; cumulative times overlap; not a fit pass or speed comparison", + "functions": [ + { + "file": "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", + "line": 92, + "function": "", + "primitive_calls": 1, + "calls": 1, + "self_s": 6.875e-06, + "cumulative_s": 60.012986417 + }, + { + "file": "", + "line": 262, + "function": "run_path", + "primitive_calls": 1, + "calls": 1, + "self_s": 1.1125000000000001e-05, + "cumulative_s": 60.012979167000005 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 2, + "calls": 272, + "self_s": 0.008062544000000001, + "cumulative_s": 60.011132543 + }, + { + "file": "", + "line": 91, + "function": "_run_module_code", + "primitive_calls": 1, + "calls": 1, + "self_s": 3.7458e-05, + "cumulative_s": 60.010515250000005 + }, + { + "file": "", + "line": 65, + "function": "_run_code", + "primitive_calls": 1, + "calls": 1, + "self_s": 2.333e-06, + "cumulative_s": 60.010460792 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "line": 1, + "function": "", + "primitive_calls": 1, + "calls": 1, + "self_s": 1.5792e-05, + "cumulative_s": 60.010413875000005 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "line": 152, + "function": "main", + "primitive_calls": 1, + "calls": 1, + "self_s": 4.8332000000000004e-05, + "cumulative_s": 59.89113583300001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "line": 26, + "function": "fit", + "primitive_calls": 1, + "calls": 1, + "self_s": 0.020048249, + "cumulative_s": 59.740384500000005 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/recipes.py", + "line": 492, + "function": "multiclass", + "primitive_calls": 1, + "calls": 1, + "self_s": 0.00051225, + "cumulative_s": 58.2701165 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 265, + "function": "depthwise", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.00016237100000000002, + "cumulative_s": 54.5421065 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 233, + "function": "best", + "primitive_calls": 10, + "calls": 10, + "self_s": 0.0020074620000000002, + "cumulative_s": 37.233312709 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 230, + "function": "options", + "primitive_calls": 6, + "calls": 6, + "self_s": 0.00039108000000000003, + "cumulative_s": 36.343841249 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 35, + "function": "histogram", + "primitive_calls": 20, + "calls": 20, + "self_s": 29.480010705, + "cumulative_s": 29.968036001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 97, + "function": "candidates", + "primitive_calls": 6, + "calls": 6, + "self_s": 0.768285658, + "cumulative_s": 23.54575621 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 20, + "function": "_identity", + "primitive_calls": 5451, + "calls": 5451, + "self_s": 0.328031251, + "cumulative_s": 22.995378585 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 11228, + "calls": 11228, + "self_s": 22.316234536, + "cumulative_s": 22.316234536 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 208, + "function": "append", + "primitive_calls": 12, + "calls": 12, + "self_s": 0.00020528900000000002, + "cumulative_s": 17.160893665 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 246, + "function": "split", + "primitive_calls": 5, + "calls": 5, + "self_s": 0.000478461, + "cumulative_s": 10.927117042 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 167, + "function": "__init__", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.00019658500000000002, + "cumulative_s": 6.3811247920000005 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 102, + "function": "transform", + "primitive_calls": 7, + "calls": 7, + "self_s": 3.5669e-05, + "cumulative_s": 2.2810854590000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 114, + "function": "__post_init__", + "primitive_calls": 7, + "calls": 7, + "self_s": 0.7281506050000001, + "cumulative_s": 2.279268042 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/recipes.py", + "line": 188, + "function": "_trials", + "primitive_calls": 1, + "calls": 1, + "self_s": 3.7751000000000005e-05, + "cumulative_s": 1.7351499590000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/artifacts.py", + "line": 101, + "function": "predict", + "primitive_calls": 10, + "calls": 10, + "self_s": 0.014530206, + "cumulative_s": 1.633341916 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 93, + "function": "predict", + "primitive_calls": 6, + "calls": 6, + "self_s": 0.030285914, + "cumulative_s": 1.5942067510000002 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 158, + "function": "prepare_training", + "primitive_calls": 1, + "calls": 1, + "self_s": 3.5417e-05, + "cumulative_s": 1.3263172920000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 150, + "function": "__post_init__", + "primitive_calls": 1, + "calls": 1, + "self_s": 4.9833e-05, + "cumulative_s": 1.326276666 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 46, + "function": "__post_init__", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.033422333000000005, + "cumulative_s": 1.237522583 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/fromnumeric.py", + "line": 51, + "function": "_wrapfunc", + "primitive_calls": 2700, + "calls": 2700, + "self_s": 0.002764711, + "cumulative_s": 1.219583531 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/fromnumeric.py", + "line": 1446, + "function": "searchsorted", + "primitive_calls": 756, + "calls": 756, + "self_s": 0.001030639, + "cumulative_s": 1.2087490550000002 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 756, + "calls": 756, + "self_s": 1.206118556, + "cumulative_s": 1.206118556 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_arraysetops_impl.py", + "line": 145, + "function": "unique", + "primitive_calls": 893, + "calls": 893, + "self_s": 0.0028317430000000003, + "cumulative_s": 1.114743984 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_arraysetops_impl.py", + "line": 348, + "function": "_unique1d", + "primitive_calls": 893, + "calls": 893, + "self_s": 0.006481159, + "cumulative_s": 1.110872738 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 893, + "calls": 893, + "self_s": 0.9775668080000001, + "cumulative_s": 0.9775668080000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 196, + "function": "choose", + "primitive_calls": 6, + "calls": 6, + "self_s": 0.005920319, + "cumulative_s": 0.887463208 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", + "line": 238, + "function": "cached", + "primitive_calls": 3916, + "calls": 3916, + "self_s": 0.003923928, + "cumulative_s": 0.737125181 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 250, + "function": "vector_score", + "primitive_calls": 3916, + "calls": 3916, + "self_s": 0.008011656, + "cumulative_s": 0.7328030390000001 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 32638, + "calls": 32638, + "self_s": 0.695058719, + "cumulative_s": 0.695058719 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 253, + "function": "node", + "primitive_calls": 11748, + "calls": 11748, + "self_s": 0.039445075, + "cumulative_s": 0.6777460150000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/runtime.py", + "line": 153, + "function": "resolve", + "primitive_calls": 1, + "calls": 1, + "self_s": 2.1374000000000002e-05, + "cumulative_s": 0.662681625 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 12, + "function": "_owned", + "primitive_calls": 24815, + "calls": 24815, + "self_s": 0.09817874500000001, + "cumulative_s": 0.639111765 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 239, + "function": "vector_leaf", + "primitive_calls": 11759, + "calls": 11759, + "self_s": 0.043530358000000005, + "cumulative_s": 0.621837882 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/runtime.py", + "line": 132, + "function": "propose_terms", + "primitive_calls": 1, + "calls": 1, + "self_s": 2.0333e-05, + "cumulative_s": 0.616960917 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 63, + "function": "fit", + "primitive_calls": 1, + "calls": 1, + "self_s": 0.284427289, + "cumulative_s": 0.608149542 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/runtime.py", + "line": 52, + "function": "__post_init__", + "primitive_calls": 3, + "calls": 3, + "self_s": 0.000165339, + "cumulative_s": 0.564669125 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/objectives.py", + "line": 309, + "function": "geometry", + "primitive_calls": 7, + "calls": 7, + "self_s": 0.084194798, + "cumulative_s": 0.5054396680000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 12, + "function": "_rows", + "primitive_calls": 25, + "calls": 25, + "self_s": 0.0044340000000000004, + "cumulative_s": 0.43078362400000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 146, + "function": "newton_leaf", + "primitive_calls": 82313, + "calls": 82313, + "self_s": 0.194300186, + "cumulative_s": 0.39790227100000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/binning.py", + "line": 10, + "function": "_array", + "primitive_calls": 2274, + "calls": 2274, + "self_s": 0.0032496770000000003, + "cumulative_s": 0.351337147 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 41831, + "calls": 41831, + "self_s": 0.33061090000000004, + "cumulative_s": 0.33061090000000004 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py", + "line": 4302, + "function": "quantile", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.0005381660000000001, + "cumulative_s": 0.301641086 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py", + "line": 4560, + "function": "_quantile_unchecked", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.000278335, + "cumulative_s": 0.29895520800000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py", + "line": 3857, + "function": "_ureduce", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.000520341, + "cumulative_s": 0.298676873 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py", + "line": 4715, + "function": "_quantile_ureduce_func", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.00032765500000000005, + "cumulative_s": 0.298082457 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/objectives.py", + "line": 328, + "function": "loss", + "primitive_calls": 5, + "calls": 5, + "self_s": 8.187400000000001e-05, + "cumulative_s": 0.29637958400000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py", + "line": 4788, + "function": "_quantile", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.0032319780000000004, + "cumulative_s": 0.28149380300000004 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 108, + "calls": 108, + "self_s": 0.267643203, + "cumulative_s": 0.267643203 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 54492, + "calls": 54492, + "self_s": 0.25330388600000003, + "cumulative_s": 0.25330388600000003 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/outputs.py", + "line": 20, + "function": "softmax_probabilities", + "primitive_calls": 7, + "calls": 7, + "self_s": 0.0629215, + "cumulative_s": 0.241965374 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/stats.py", + "line": 90, + "function": "vector_newton", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.000639041, + "cumulative_s": 0.227668333 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 229, + "function": "_vector_indices", + "primitive_calls": 21099, + "calls": 21099, + "self_s": 0.06880325000000001, + "cumulative_s": 0.217935175 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 140, + "function": "_nonnegative", + "primitive_calls": 173970, + "calls": 173970, + "self_s": 0.159054089, + "cumulative_s": 0.200767784 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 3209, + "calls": 3209, + "self_s": 0.193593641, + "cumulative_s": 0.193593641 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 204, + "function": "__post_init__", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.0009866220000000001, + "cumulative_s": 0.18609825000000002 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/stats.py", + "line": 48, + "function": "apply_weight", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.137772628, + "cumulative_s": 0.160764125 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_npyio_impl.py", + "line": 239, + "function": "__getitem__", + "primitive_calls": 5, + "calls": 5, + "self_s": 3.7919e-05, + "cumulative_s": 0.147157918 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_format_impl.py", + "line": 780, + "function": "read_array", + "primitive_calls": 5, + "calls": 5, + "self_s": 0.07821842200000001, + "cumulative_s": 0.146841791 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 270, + "function": "vector_feasible", + "primitive_calls": 5424, + "calls": 5424, + "self_s": 0.040462545, + "cumulative_s": 0.144407335 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 212, + "function": "partition", + "primitive_calls": 5, + "calls": 5, + "self_s": 0.004570336, + "cumulative_s": 0.135723958 + }, + { + "file": "", + "line": 1349, + "function": "_find_and_load", + "primitive_calls": 11, + "calls": 136, + "self_s": 0.00047234, + "cumulative_s": 0.12952133200000002 + }, + { + "file": "", + "line": 1304, + "function": "_find_and_load_unlocked", + "primitive_calls": 11, + "calls": 136, + "self_s": 0.00030910700000000003, + "cumulative_s": 0.129209126 + }, + { + "file": "", + "line": 911, + "function": "_load_unlocked", + "primitive_calls": 11, + "calls": 133, + "self_s": 0.0002302, + "cumulative_s": 0.128495832 + }, + { + "file": "", + "line": 993, + "function": "exec_module", + "primitive_calls": 11, + "calls": 122, + "self_s": 0.000152213, + "cumulative_s": 0.128289583 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/runtime.py", + "line": 114, + "function": "initialize", + "primitive_calls": 1, + "calls": 1, + "self_s": 5.804000000000001e-05, + "cumulative_s": 0.126344541 + }, + { + "file": "", + "line": 480, + "function": "_call_with_frames_removed", + "primitive_calls": 22, + "calls": 313, + "self_s": 0.000675276, + "cumulative_s": 0.124160083 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 230, + "calls": 230, + "self_s": 0.000200718, + "cumulative_s": 0.12153796100000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/_methods.py", + "line": 41, + "function": "_amax", + "primitive_calls": 230, + "calls": 230, + "self_s": 8.370400000000001e-05, + "cumulative_s": 0.12133724300000001 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 45, + "calls": 45, + "self_s": 0.00016524900000000002, + "cumulative_s": 0.106587705 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/_methods.py", + "line": 49, + "function": "_sum", + "primitive_calls": 45, + "calls": 45, + "self_s": 5.9915000000000005e-05, + "cumulative_s": 0.10641004000000001 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 21099, + "calls": 21099, + "self_s": 0.022765280000000002, + "cumulative_s": 0.102007888 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/__init__.py", + "line": 1, + "function": "", + "primitive_calls": 1, + "calls": 1, + "self_s": 0.00022016600000000002, + "cumulative_s": 0.09477291700000001 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 8, + "calls": 354, + "self_s": 0.000132885, + "cumulative_s": 0.094655208 + }, + { + "file": "", + "line": 1390, + "function": "_handle_fromlist", + "primitive_calls": 27, + "calls": 179, + "self_s": 0.00019202700000000002, + "cumulative_s": 0.09260554400000001 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 893, + "calls": 893, + "self_s": 0.09200993, + "cumulative_s": 0.09200993 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 170, + "function": "decode", + "primitive_calls": 2, + "calls": 2, + "self_s": 0.026102718, + "cumulative_s": 0.089544208 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 25055, + "calls": 25055, + "self_s": 0.012437828000000001, + "cumulative_s": 0.08943208600000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", + "line": 230, + "function": "", + "primitive_calls": 316485, + "calls": 316485, + "self_s": 0.040886063, + "cumulative_s": 0.079242608 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/_methods.py", + "line": 66, + "function": "_all", + "primitive_calls": 25055, + "calls": 25055, + "self_s": 0.006608772000000001, + "cumulative_s": 0.07699425800000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_shape_base_impl.py", + "line": 628, + "function": "column_stack", + "primitive_calls": 2114, + "calls": 2114, + "self_s": 0.058064290000000005, + "cumulative_s": 0.072444257 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/lib/_format_impl.py", + "line": 998, + "function": "_read_bytes", + "primitive_calls": 1566, + "calls": 1566, + "self_s": 0.000901492, + "cumulative_s": 0.066741515 + }, + { + "file": "/Users/jiaruixu/.local/share/uv/python/cpython-3.12.12-macos-x86_64-none/lib/python3.12/zipfile/__init__.py", + "line": 983, + "function": "read", + "primitive_calls": 1571, + "calls": 1571, + "self_s": 0.001604443, + "cumulative_s": 0.06551396000000001 + }, + { + "file": "/Users/jiaruixu/.local/share/uv/python/cpython-3.12.12-macos-x86_64-none/lib/python3.12/zipfile/__init__.py", + "line": 1065, + "function": "_read1", + "primitive_calls": 1556, + "calls": 1556, + "self_s": 0.001154064, + "cumulative_s": 0.06346325800000001 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", + "line": 181, + "function": "", + "primitive_calls": 464809, + "calls": 464809, + "self_s": 0.063335074, + "cumulative_s": 0.063335074 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 460012, + "calls": 460012, + "self_s": 0.062816313, + "cumulative_s": 0.062816313 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 1696, + "calls": 1696, + "self_s": 0.062798456, + "cumulative_s": 0.062798456 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/src/openboost/stats.py", + "line": 18, + "function": "__post_init__", + "primitive_calls": 4, + "calls": 4, + "self_s": 7.862400000000001e-05, + "cumulative_s": 0.051875042 + }, + { + "file": "/Users/jiaruixu/.local/share/uv/python/cpython-3.12.12-macos-x86_64-none/lib/python3.12/zipfile/__init__.py", + "line": 1101, + "function": "_read2", + "primitive_calls": 1556, + "calls": 1556, + "self_s": 0.001089855, + "cumulative_s": 0.049708637 + }, + { + "file": "/Users/jiaruixu/.local/share/uv/python/cpython-3.12.12-macos-x86_64-none/lib/python3.12/zipfile/__init__.py", + "line": 820, + "function": "read", + "primitive_calls": 1566, + "calls": 1566, + "self_s": 0.0016301260000000002, + "cumulative_s": 0.048071091 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/__config__.py", + "line": 1, + "function": "", + "primitive_calls": 1, + "calls": 1, + "self_s": 1.7043000000000003e-05, + "cumulative_s": 0.043669541000000006 + }, + { + "file": "/Users/jiaruixu/work_space/openboost/.venv/lib/python3.12/site-packages/numpy/_core/__init__.py", + "line": 1, + "function": "", + "primitive_calls": 1, + "calls": 1, + "self_s": 6.6291e-05, + "cumulative_s": 0.042935 + }, + { + "file": "~", + "line": 0, + "function": "", + "primitive_calls": 1001, + "calls": 1001, + "self_s": 0.042657537, + "cumulative_s": 0.042657537 + } + ] +} diff --git a/benchmarks/v1/evidence/profile-050/profile.pstats b/benchmarks/v1/evidence/profile-050/profile.pstats new file mode 100644 index 0000000..e6e74ae Binary files /dev/null and b/benchmarks/v1/evidence/profile-050/profile.pstats differ diff --git a/benchmarks/v1/evidence/profile-050/profile.txt b/benchmarks/v1/evidence/profile-050/profile.txt new file mode 100644 index 0000000..271c7b9 --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/profile.txt @@ -0,0 +1,68 @@ + 3061621 function calls (3058955 primitive calls) in 59.992 seconds + + Ordered by: cumulative time + List reduced from 1399 to 60 due to restriction <60> + + ncalls tottime percall cumtime percall filename:lineno(function) + 1 0.000 0.000 60.013 60.013 profile_worker.py:92() + 1 0.000 0.000 60.013 60.013 :262(run_path) + 272/2 0.008 0.000 60.011 30.006 {built-in method builtins.exec} + 1 0.000 0.000 60.011 60.011 :91(_run_module_code) + 1 0.000 0.000 60.010 60.010 :65(_run_code) + 1 0.000 0.000 60.010 60.010 openboost_worker.py:1() + 1 0.000 0.000 59.891 59.891 openboost_worker.py:152(main) + 1 0.020 0.020 59.740 59.740 openboost_worker.py:26(fit) + 1 0.001 0.001 58.270 58.270 recipes.py:492(multiclass) + 2 0.000 0.000 54.542 27.271 tree.py:265(depthwise) + 10 0.002 0.000 37.233 3.723 tree.py:233(best) + 6 0.000 0.000 36.344 6.057 tree.py:230(options) + 20 29.480 1.474 29.968 1.498 ops.py:35(histogram) + 6 0.768 0.128 23.546 3.924 ops.py:97(candidates) + 5451 0.328 0.000 22.995 0.004 data.py:20(_identity) + 11228 22.316 0.002 22.316 0.002 {method 'update' of '_hashlib.HASH' objects} + 12 0.000 0.000 17.161 1.430 tree.py:208(append) + 5 0.000 0.000 10.927 2.185 tree.py:246(split) + 2 0.000 0.000 6.381 3.191 tree.py:167(__init__) + 7 0.000 0.000 2.281 0.326 binning.py:102(transform) + 7 0.728 0.104 2.279 0.326 binning.py:114(__post_init__) + 1 0.000 0.000 1.735 1.735 recipes.py:188(_trials) + 10 0.015 0.001 1.633 0.163 artifacts.py:101(predict) + 6 0.030 0.005 1.594 0.266 tree.py:93(predict) + 1 0.000 0.000 1.326 1.326 binning.py:158(prepare_training) + 1 0.000 0.000 1.326 1.326 binning.py:150(__post_init__) + 2 0.033 0.017 1.238 0.619 data.py:46(__post_init__) + 2700 0.003 0.000 1.220 0.000 fromnumeric.py:51(_wrapfunc) + 756 0.001 0.000 1.209 0.002 fromnumeric.py:1446(searchsorted) + 756 1.206 0.002 1.206 0.002 {method 'searchsorted' of 'numpy.ndarray' objects} + 893 0.003 0.000 1.115 0.001 _arraysetops_impl.py:145(unique) + 893 0.006 0.000 1.111 0.001 _arraysetops_impl.py:348(_unique1d) + 893 0.978 0.001 0.978 0.001 {built-in method numpy._core._multiarray_umath._unique_hash} + 6 0.006 0.001 0.887 0.148 ops.py:196(choose) + 3916 0.004 0.000 0.737 0.000 tree.py:238(cached) + 3916 0.008 0.000 0.733 0.000 ops.py:250(vector_score) + 32638 0.695 0.000 0.695 0.000 {method 'tobytes' of 'numpy.ndarray' objects} + 11748 0.039 0.000 0.678 0.000 ops.py:253(node) + 1 0.000 0.000 0.663 0.663 runtime.py:153(resolve) + 24815 0.098 0.000 0.639 0.000 data.py:12(_owned) + 11759 0.044 0.000 0.622 0.000 ops.py:239(vector_leaf) + 1 0.000 0.000 0.617 0.617 runtime.py:132(propose_terms) + 1 0.284 0.284 0.608 0.608 binning.py:63(fit) + 3 0.000 0.000 0.565 0.188 runtime.py:52(__post_init__) + 7 0.084 0.012 0.505 0.072 objectives.py:309(geometry) + 25 0.004 0.000 0.431 0.017 ops.py:12(_rows) + 82313 0.194 0.000 0.398 0.000 ops.py:146(newton_leaf) + 2274 0.003 0.000 0.351 0.000 binning.py:10(_array) + 41831 0.331 0.000 0.331 0.000 {method 'reduce' of 'numpy.ufunc' objects} + 108 0.001 0.000 0.302 0.003 _function_base_impl.py:4302(quantile) + 108 0.000 0.000 0.299 0.003 _function_base_impl.py:4560(_quantile_unchecked) + 108 0.001 0.000 0.299 0.003 _function_base_impl.py:3857(_ureduce) + 108 0.000 0.000 0.298 0.003 _function_base_impl.py:4715(_quantile_ureduce_func) + 5 0.000 0.000 0.296 0.059 objectives.py:328(loss) + 108 0.003 0.000 0.281 0.003 _function_base_impl.py:4788(_quantile) + 108 0.268 0.002 0.268 0.002 {method 'partition' of 'numpy.ndarray' objects} + 12 0.001 0.000 0.254 0.021 __init__.py:1() + 54492 0.253 0.000 0.253 0.000 {built-in method numpy.array} + 7 0.063 0.009 0.242 0.035 outputs.py:20(softmax_probabilities) + 2 0.001 0.000 0.228 0.114 stats.py:90(vector_newton) + + diff --git a/benchmarks/v1/evidence/profile-050/stacks.txt b/benchmarks/v1/evidence/profile-050/stacks.txt new file mode 100644 index 0000000..5e051fa --- /dev/null +++ b/benchmarks/v1/evidence/profile-050/stacks.txt @@ -0,0 +1,41 @@ +Timeout (0:00:20)! +Thread 0x00000002008a3e40 (most recent call first): + File "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", line 58 in histogram + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 231 in options + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 243 in best + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 295 in depthwise + File "/Users/jiaruixu/work_space/openboost/src/openboost/recipes.py", line 545 in multiclass + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 116 in fit + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 159 in main + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 167 in + File "", line 88 in _run_code + File "", line 98 in _run_module_code + File "", line 287 in run_path + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 92 in + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 43 in profile_call + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 91 in main + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 101 in +Timeout (0:00:20)! +Thread 0x00000002008a3e40 (most recent call first): + File "/Users/jiaruixu/work_space/openboost/src/openboost/data.py", line 28 in _identity + File "/Users/jiaruixu/work_space/openboost/src/openboost/ops.py", line 133 in candidates + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 231 in options + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 243 in best + File "/Users/jiaruixu/work_space/openboost/src/openboost/tree.py", line 295 in depthwise + File "/Users/jiaruixu/work_space/openboost/src/openboost/recipes.py", line 545 in multiclass + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 116 in fit + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 159 in main + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", line 167 in + File "", line 88 in _run_code + File "", line 98 in _run_module_code + File "", line 287 in run_path + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 92 in + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 43 in profile_call + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 91 in main + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 101 in +Timeout (0:00:20)! +Thread 0x00000002008a3e40 (most recent call first): + File "/Users/jiaruixu/.local/share/uv/python/cpython-3.12.12-macos-x86_64-none/lib/python3.12/cProfile.py", line 50 in dump_stats + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 53 in profile_call + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 91 in main + File "/Users/jiaruixu/work_space/openboost/benchmarks/v1/profile_worker.py", line 101 in diff --git a/benchmarks/v1/evidence/profile-050/worker.log b/benchmarks/v1/evidence/profile-050/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/execution.json b/benchmarks/v1/evidence/quantile-053/A5/0/execution.json new file mode 100644 index 0000000..1d45776 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "16bb2f605cc83752b6dbea092002b37e838732fc2d1398e5a3e12f0bba88db20", + "predictions.npz": "70096294875c6ff5ec4d455adb4ebe1f94660793a9d999a443335f7f30a68407", + "training.json": "86126a907c62ea15af896e6274a8baf31eaa86bf9a6791a64c1aaa3422354cbc", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.6850051669898676 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/model.bin b/benchmarks/v1/evidence/quantile-053/A5/0/model.bin new file mode 100644 index 0000000..9262ad6 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A5", "output": "quantiles", "quantiles": [0.1, 0.5, 0.9], "models": [{"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [7.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-5.0], [35.0], [0.0], [-5.0], [0.0], [42.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.5], [-4.5], [30.8], [0.0], [-4.5], [2.8000000000000007], [40.8]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7200000000000006], [-4.05], [28.520000000000003], [0.0], [-4.05], [2.5200000000000014], [36.72]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [5, 1, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.3550000000000004], [-3.6449999999999996], [25.268], [0.0], [-3.6449999999999996], [5.048000000000002], [45.048]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [109.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-96.0], [55.0], [-98.0], [-62.0], [-31.0], [84.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [6, 5, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.4000000000000057], [-86.2], [47.599999999999994], [-88.2], [-55.8], [-27.900000000000006], [76.6]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.060000000000002], [-78.38], [41.94], [-79.38], [-50.22], [-25.11], [67.94]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [6, 5, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.599000000000004], [-70.442], [36.400999999999996], [-71.442], [-45.19799999999999], [-22.599000000000004], [62.14599999999999]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [346.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [7, 6, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-237.0], [45.0], [-272.0], [-28.0], [-152.0], [72.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.199999999999989], [-213.8], [37.80000000000001], [-244.8], [-25.19999999999999], [65.80000000000001], [-124.19999999999999]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [7, 6, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-8.779999999999973], [-191.32], [31.220000000000027], [-220.32], [-22.680000000000007], [-143.38], [58.22000000000003]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-11.601999999999975], [-170.288], [25.398000000000025], [-198.288], [-20.412000000000035], [53.398000000000025], [-117.60199999999998]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}]} diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/predictions.npz b/benchmarks/v1/evidence/quantile-053/A5/0/predictions.npz new file mode 100644 index 0000000..75ad4e5 Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/replay.npz b/benchmarks/v1/evidence/quantile-053/A5/0/replay.npz new file mode 100644 index 0000000..75ad4e5 Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/0/replay.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/training.json b/benchmarks/v1/evidence/quantile-053/A5/0/training.json new file mode 100644 index 0000000..fba86b4 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/0/training.json @@ -0,0 +1,64 @@ +{ + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 13.54609167431193, + "last_score": 13.54609167431193, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "acc350c1d60931d1f42960cb76c8f6e802813de85dc2a5c70514c4e1deeea588", + "best_validation_score": 13.54609167431193, + "selected_validation_pinball": 13.54609167431193 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 49.33270323967889, + "last_score": 49.33270323967889, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e541a5332fcd44524d16eb51e8f6ffb21db7f8fb75451819e4212892ba46be7b", + "best_validation_score": 49.33270323967889, + "selected_validation_pinball": 49.33270323967889 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 27.69725942660551, + "last_score": 27.69725942660551, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "26e202aaa0e4ed2be1dbf813ad10e5ba8340e7b02bedc588c871c36a8f8c114d", + "best_validation_score": 27.69725942660551, + "selected_validation_pinball": 27.69725942660551 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/0/worker.log b/benchmarks/v1/evidence/quantile-053/A5/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/execution.json b/benchmarks/v1/evidence/quantile-053/A5/1/execution.json new file mode 100644 index 0000000..a0e4a1e --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "1b8d5c73c0950518269b4e998694caaaf46fe1870a78d921f328acb36814aba7", + "predictions.npz": "57d64e6eae7f23d495c52b4ca999cc8670e6d1749802587bb4b215619ced0635", + "training.json": "f467bb88d3f4e93ed1e86e05eaecd72cbed7f7a64ecd5e02241e181dc0925cae", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.7332984170061536 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/model.bin b/benchmarks/v1/evidence/quantile-053/A5/1/model.bin new file mode 100644 index 0000000..47667cc --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A5", "output": "quantiles", "quantiles": [0.1, 0.5, 0.9], "models": [{"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [7.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-5.0], [36.0], [-1.0], [-5.0], [-1.0], [43.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.5], [-4.5], [31.7], [-0.9000000000000004], [-4.5], [1.6999999999999993], [41.7]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.1899999999999995], [-4.05], [28.529999999999998], [-0.8100000000000005], [-4.05], [1.5299999999999994], [37.53]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.3550000000000004], [-3.6449999999999996], [25.776999999999997], [-0.7290000000000001], [-3.6449999999999996], [1.376999999999999], [33.777]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [109.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-96.0], [53.0], [-98.0], [-60.0], [-16.0], [84.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [6, 5, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.4000000000000057], [-86.2], [47.599999999999994], [-88.2], [-54.0], [-14.400000000000006], [76.6]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.060000000000002], [-78.38], [41.94], [-79.38], [-48.599999999999994], [-13.960000000000008], [67.94]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.564000000000007], [-70.442], [37.14599999999999], [-71.442], [-43.739999999999995], [53.14599999999999], [-46.85400000000001]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [343.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-235.0], [47.0], [-269.0], [-29.0], [75.0], [-118.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.100000000000023], [-212.10000000000002], [39.5], [-242.10000000000002], [-26.100000000000023], [67.5], [-106.19999999999999]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [7, 6, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-8.25], [-189.89000000000004], [32.75], [-217.89000000000004], [-23.49000000000001], [-83.25], [65.42000000000002]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-12.925000000000011], [-170.10100000000006], [30.20799999999997], [-196.10100000000006], [-21.14100000000002], [102.20799999999997], [11.20799999999997]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}]} diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/predictions.npz b/benchmarks/v1/evidence/quantile-053/A5/1/predictions.npz new file mode 100644 index 0000000..563bcde Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/replay.npz b/benchmarks/v1/evidence/quantile-053/A5/1/replay.npz new file mode 100644 index 0000000..563bcde Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/1/replay.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/training.json b/benchmarks/v1/evidence/quantile-053/A5/1/training.json new file mode 100644 index 0000000..45fe253 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/1/training.json @@ -0,0 +1,64 @@ +{ + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 19.252423230240563, + "last_score": 19.252423230240563, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "438a2e9f1855854ac58010b77d003a6fcbf48730becd53b45bb428646afd6eeb", + "best_validation_score": 19.252423230240563, + "selected_validation_pinball": 19.252423230240563 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 69.40235744558989, + "last_score": 69.40235744558989, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "65d201db16872ecc640cf697eb6cfb4230a2b2750b88d163c2756df2fcd27717", + "best_validation_score": 69.40235744558989, + "selected_validation_pinball": 69.40235744558989 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 44.30960524627721, + "last_score": 44.30960524627721, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e2f2d8b2e1da816678af49061c77a272ab8c727a34a60318635b34fb1e55f8f1", + "best_validation_score": 44.30960524627721, + "selected_validation_pinball": 44.30960524627721 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/1/worker.log b/benchmarks/v1/evidence/quantile-053/A5/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/execution.json b/benchmarks/v1/evidence/quantile-053/A5/2/execution.json new file mode 100644 index 0000000..76d2113 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "5f181433d4380ffe849d841dc7bd0a0b8d93d1f5804b9823bcfbcb39c77f1cae", + "predictions.npz": "d339e8c73ee324f1e743647c658cf556d438e6d90035702df9beb6522529626c", + "training.json": "a4c80ff784ad13e2517aad74230b3e8a62905e519f94d411d9d42541e631843a", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.7297328330023447 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/model.bin b/benchmarks/v1/evidence/quantile-053/A5/2/model.bin new file mode 100644 index 0000000..140a5a2 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A5", "output": "quantiles", "quantiles": [0.1, 0.5, 0.9], "models": [{"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [7.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-5.0], [37.0], [-1.0], [-5.0], [-1.0], [44.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.09999999999999964], [-4.5], [32.6], [-0.9000000000000004], [-4.5], [1.5999999999999996], [42.6]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-0.04999999999999982], [-4.05], [29.34], [-0.8100000000000005], [-4.05], [1.4399999999999995], [38.34]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.3550000000000004], [-3.6449999999999996], [26.506], [-0.7290000000000001], [-3.6449999999999996], [-1.2040000000000006], [31.506]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [110.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-97.0], [55.0], [-99.0], [-54.0], [-2.0], [83.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.299999999999997], [-87.6], [48.7], [-89.1], [-48.599999999999994], [64.7], [-39.3]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 2, -1, -1, -1, -1], "threshold": [6, 5, 3, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.269999999999996], [-79.19], [42.730000000000004], [-80.19], [-43.739999999999995], [-0.769999999999996], [75.23]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-6.293000000000006], [-71.17099999999999], [37.807], [-72.17099999999999], [-39.366], [53.706999999999994], [-39.893]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [344.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-236.0], [50.0], [-270.0], [-29.0], [77.0], [-119.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.699999999999989], [-213.0], [42.30000000000001], [-243.0], [-26.100000000000023], [69.30000000000001], [-107.10000000000002]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-8.629999999999995], [-190.7], [35.370000000000005], [-218.7], [-23.49000000000001], [127.37], [15.609999999999957]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-10.951000000000022], [-169.82999999999998], [29.809000000000026], [-196.82999999999998], [-21.14100000000002], [114.63299999999998], [14.048999999999978]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}]} diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/predictions.npz b/benchmarks/v1/evidence/quantile-053/A5/2/predictions.npz new file mode 100644 index 0000000..0eac952 Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/replay.npz b/benchmarks/v1/evidence/quantile-053/A5/2/replay.npz new file mode 100644 index 0000000..0eac952 Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/2/replay.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/training.json b/benchmarks/v1/evidence/quantile-053/A5/2/training.json new file mode 100644 index 0000000..51149be --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/2/training.json @@ -0,0 +1,64 @@ +{ + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 23.40002005714286, + "last_score": 23.40002005714286, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bd8d2ec91bfa60c6f9a1877c3114fca6ecaa35a0ca379f0215e2da925dea2e4e", + "best_validation_score": 23.40002005714286, + "selected_validation_pinball": 23.40002005714286 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 84.7924414, + "last_score": 84.7924414, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b2016afd949d31d07d3fbd59709948e99a93ad9acaaf8cf3c1bd877fde1c6093", + "best_validation_score": 84.7924414, + "selected_validation_pinball": 84.7924414 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 55.86033040571429, + "last_score": 55.86033040571429, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8bbe21ffa7e0a552e97c0f7dfa2401e0392108b7683f5b6dd1213259929502c4", + "best_validation_score": 55.86033040571429, + "selected_validation_pinball": 55.86033040571429 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/2/worker.log b/benchmarks/v1/evidence/quantile-053/A5/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/execution.json b/benchmarks/v1/evidence/quantile-053/A5/3/execution.json new file mode 100644 index 0000000..3c546ae --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "eee7e74c52d7ea5004803ea83e69ad1566f5795b7ceaa2c88df7edfd995baa0d", + "predictions.npz": "8a8a51677d3bcf12805a269fc86aff4f7fc840e8b13c77debb1253b1398eec8d", + "training.json": "7aca57163343bbe487d941d72eb38ebd3a2ada4c1d1f0231d2393ceddd6163e8", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.7319832919893088 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/model.bin b/benchmarks/v1/evidence/quantile-053/A5/3/model.bin new file mode 100644 index 0000000..d529c9f --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A5", "output": "quantiles", "quantiles": [0.1, 0.5, 0.9], "models": [{"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [7.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-5.0], [39.0], [0.0], [-5.0], [-1.0], [46.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.5], [-4.5], [34.4], [0.0], [-4.5], [2.3999999999999986], [44.4]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-4.05], [30.959999999999997], [0.0], [-4.05], [2.1599999999999984], [39.959999999999994]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.3550000000000004], [-3.6449999999999996], [27.964], [0.0], [-3.6449999999999996], [1.943999999999999], [35.964]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [115.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-102.0], [58.0], [-104.0], [-53.0], [-3.0], [87.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.700000000000003], [-91.6], [51.3], [-93.6], [-47.7], [68.3], [-40.7]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-4.6299999999999955], [-82.24], [45.47], [-84.24], [-42.93000000000001], [-7.530000000000001], [71.47]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-7.6370000000000005], [-74.816], [40.32300000000001], [-75.816], [-38.637], [57.223], [-40.876999999999995]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [365.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-254.0], [48.0], [-289.0], [-37.0], [84.0], [-131.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-7.300000000000011], [-228.10000000000002], [39.60000000000002], [-260.1], [-33.30000000000001], [139.60000000000002], [20.600000000000023]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-9.45999999999998], [-204.09000000000003], [35.54000000000002], [-234.09000000000003], [-29.970000000000027], [68.64000000000004], [-119.95999999999998]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-13.323999999999955], [-182.68100000000004], [29.676000000000045], [-210.68100000000004], [-26.973000000000013], [118.77600000000007], [11.676000000000045]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}]} diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/predictions.npz b/benchmarks/v1/evidence/quantile-053/A5/3/predictions.npz new file mode 100644 index 0000000..3e3dbfd Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/replay.npz b/benchmarks/v1/evidence/quantile-053/A5/3/replay.npz new file mode 100644 index 0000000..3e3dbfd Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/3/replay.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/training.json b/benchmarks/v1/evidence/quantile-053/A5/3/training.json new file mode 100644 index 0000000..3752475 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/3/training.json @@ -0,0 +1,64 @@ +{ + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 24.62153466894977, + "last_score": 24.62153466894977, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "705ba2828899ba7ab8570ef4474ee2681fc79f044b374d7027667c2978b9c597", + "best_validation_score": 24.62153466894977, + "selected_validation_pinball": 24.62153466894977 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 87.6899816780822, + "last_score": 87.6899816780822, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "02bca7e0399159eee2c7d8ec9767fcbb1b55f8a65063d162d61f11e16f9b1903", + "best_validation_score": 87.6899816780822, + "selected_validation_pinball": 87.6899816780822 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 56.26616728310503, + "last_score": 56.26616728310503, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "f7d948079e1eff25095bc74e89bda0b5e1cc1286f7431d138447cca4ce5b7a4b", + "best_validation_score": 56.26616728310503, + "selected_validation_pinball": 56.26616728310503 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/3/worker.log b/benchmarks/v1/evidence/quantile-053/A5/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/execution.json b/benchmarks/v1/evidence/quantile-053/A5/4/execution.json new file mode 100644 index 0000000..9fc141f --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "e25e8a7df4f9acf3b4df3e7162816f02369b57864b76d841af33fc550fa21fc0", + "predictions.npz": "701c0c7bd876c4684625d495e30735e71e4b085094ac2d1fae94897fb9fe959f", + "training.json": "0e627e80713a9077b3332c9bd9581968fd7ab0d798177fe78b69702a19007908", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.7894324160006363 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/model.bin b/benchmarks/v1/evidence/quantile-053/A5/4/model.bin new file mode 100644 index 0000000..ed2aaf6 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A5", "output": "quantiles", "quantiles": [0.1, 0.5, 0.9], "models": [{"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [7.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-5.0], [40.0], [0.0], [-5.0], [0.0], [47.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.5], [-4.5], [36.3], [0.0], [-4.5], [3.0], [46.3]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.9500000000000002], [-4.05], [32.67], [0.0], [-4.05], [-0.2999999999999998], [38.67]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [5, 1, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.3550000000000004], [-3.6449999999999996], [28.803], [0.0], [-3.6449999999999996], [1.7300000000000004], [37.803]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [119.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-105.0], [60.0], [-108.0], [-55.0], [-7.0], [90.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-2.200000000000003], [-95.2], [53.7], [-97.2], [-49.5], [72.0], [-41.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 0, -1, -1, -1, -1], "threshold": [6, 5, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-5.5], [-85.48], [47.80000000000001], [-87.48], [-44.55], [-11.5], [73.80000000000001]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [6, 5, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-7.349999999999994], [-76.732], [42.420000000000016], [-78.732], [-40.095], [59.420000000000016], [-41.28]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [379.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0], [-265.0], [51.0], [-300.0], [-38.0], [89.0], [-134.0]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 8, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-6.899999999999977], [-237.0], [42.10000000000002], [-270.0], [-34.19999999999999], [174.10000000000002], [22.100000000000023]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-10.779999999999973], [-213.0], [35.89000000000004], [-243.0], [-30.779999999999973], [74.89000000000004], [-122.81]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[1.0, 2.0, 3.0], [0.0], [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0], [0.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0], [0.0], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 3, 3, -1, -1, -1, -1], "threshold": [7, 6, 19, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-15.598999999999933], [-189.7], [29.401000000000067], [-218.7], [-27.701999999999998], [67.40100000000007], [-110.529]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}]} diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/predictions.npz b/benchmarks/v1/evidence/quantile-053/A5/4/predictions.npz new file mode 100644 index 0000000..39f472e Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/replay.npz b/benchmarks/v1/evidence/quantile-053/A5/4/replay.npz new file mode 100644 index 0000000..39f472e Binary files /dev/null and b/benchmarks/v1/evidence/quantile-053/A5/4/replay.npz differ diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/training.json b/benchmarks/v1/evidence/quantile-053/A5/4/training.json new file mode 100644 index 0000000..31f8b3d --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/A5/4/training.json @@ -0,0 +1,64 @@ +{ + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 25.97250694063927, + "last_score": 25.97250694063927, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "46f4db4fd7879c01dcc786ba3665706e054205f9727047b88eba659a8ef3cad2", + "best_validation_score": 25.97250694063927, + "selected_validation_pinball": 25.97250694063927 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 90.80059272260272, + "last_score": 90.80059272260272, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e8043b16ec964f260382c0b64c873f971b06f34db709f8595276e301657cbced", + "best_validation_score": 90.80059272260272, + "selected_validation_pinball": 90.80059272260272 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 55.61411142694065, + "last_score": 55.61411142694065, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b3a8202c86529a5f12ae430b91a81da31d340474ec0a4dd0850896c1f22edba9", + "best_validation_score": 55.61411142694065, + "selected_validation_pinball": 55.61411142694065 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 +} diff --git a/benchmarks/v1/evidence/quantile-053/A5/4/worker.log b/benchmarks/v1/evidence/quantile-053/A5/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/quantile-053/README.md b/benchmarks/v1/evidence/quantile-053/README.md new file mode 100644 index 0000000..aa19000 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/README.md @@ -0,0 +1,29 @@ +# Current A5 quantile integration on frozen Bike origins + +All five frozen calendar-only Bike rolling origins pass the current OpenBoost +CPU worker and exact fresh-process inference. Each job composes three independent +scalar quantile recipes at 0.1, 0.5 and 0.9, with four rounds, depth two, 32 bins, +learning rate 0.1 and patience three. Selection and stopping remain per quantile. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-quantile-053 --applications A5 +``` + +Requires the pinned archive at /tmp/openboost-v1-bike.zip and committed preprocessing +freeze. The exporter checks source hashes, calendar-only features, train-fitted +encoding and whole-date chronological prefixes. Later origin rows are unused. +The worker receives training and validation only; no test labels were scored. + +`summary.json` retains revision/dirty state, source hashes, source/split/packet +identities, exact jobs/commands, environment, stopping and output metadata. Every +fold retains its raw model, predictions, replay, training record, process record +and log. `verification.json` records independently recomputed selected validation +pinball scores and exact source-row alignment. All source/output hashes match. +Supplemental host metadata is Apple M4 Max, 51539607552 bytes physical RAM +(the same host as Sprint 052); Python reports x86_64. One process thread, 90-second +fit cap, 30-second replay cap; no memory cap, peak-memory measurement or CUDA. + +No observed crossings in these short runs does not imply a noncrossing guarantee. +No sorting is applied. This is validation plumbing, not a 16-trial search, +calibration/quality acceptance or performance comparison. Source export is outside +fit timing, and a small focused test ran during the integration invocation. diff --git a/benchmarks/v1/evidence/quantile-053/summary.json b/benchmarks/v1/evidence/quantile-053/summary.json new file mode 100644 index 0000000..0636e04 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/summary.json @@ -0,0 +1,766 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "f9bf01f925154412d468d1dc953e645ad91f3fd1", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-quantile-053", + "--applications", + "A5" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "4de4f7a439beb0c157b8d5dbd73ea413beb9e2c932e51d314c816ce6f1ce0432", + "benchmarks/v1/openboost_predict.py": "be7333fcc616582677f44a1d514e98b1edb7a27d27d72283594d88edb6c985b0", + "benchmarks/v1/openboost_worker_smoke.py": "ed580328e2cea2904ba7938f24ebdeba31a337e84b20aba59baf0beb8c3ffa08", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A5": { + "application": "A5", + "dataset": "bike", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "edf7c8ba8770d511ebfb30d14868ec7f1c8d5588a1be3ac6145fff9b2debe0aa" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "08c923c33d68f5e2796061a2046670d69ffdfee22a08ecf9c9ce8a67fb1392ee" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "697eb5c26efda90a7bfa4f60e00349154b74ab7cef98897002622d09a0c2ad20" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "6e0ec20f81973cf3f33156d9e2e443c2b14578f7eef0f45cf26f2d4caa27ac97" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "4cab26296e9bf7400f6a4b4e49c02593c9f58bf2132737a6f313ff7601c77d1b" + } + }, + "metadata": {} + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "4359b667f6259bc5a220ac984e9b1076eefbeebc090bf2c9b5c4e7961a8a3a4c" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "51d99cecf31580385da6465bce242e9c06e022e39dcb72710e420535e8b03a88" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "43d2e9f4a28927502bbeacaabf02aa7daa5da39a219470538d9c19fb8d616271" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "cc7c62b45e9f6ca11b4cb9941c3b2a27ffb213348c72cdc113a818e9e2a91950" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "d137f253a5a19cb11520e03774ea12850b896d6aa051e846490876e38d1e74dc" + } + }, + "metadata": {} + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "8c9c632cf19063343dabd5de487ca4877718deb584b5ac0bb366255127c814bd" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "7a4cda7d5b570da10f4e75d14a259a8e0357a7b06192f13bbbe037d033999869" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "4cab26296e9bf7400f6a4b4e49c02593c9f58bf2132737a6f313ff7601c77d1b" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "7f1e11bce4cc1afeb9708c6e7a9d11166adaeb23292ce60f9d3279e5db515f92" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "7ac77ff0b16720cc6029c8415326311d46351c1eff653ca4a9e8059d3891644b" + } + }, + "metadata": {} + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "5a23a5c8e394cefe92c5085a9555766cba06bf8239c8d0dbd461463b492904d2" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "9aee6b24ca413c5f932d79e496c3f457a83f0d1ed972e958918007210eb3f765" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "d137f253a5a19cb11520e03774ea12850b896d6aa051e846490876e38d1e74dc" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "ec7e484babfc292708baee9e0295fd8e08f250ac404fd25999a257837b073b25" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "0612b31c43d862cf5b84c0121361e89548900107937760a8a4d8f05f87215ba9" + } + }, + "metadata": {} + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "f9f683a96223e022fa52352e7e03dab8fb75172e387ff91370c7abcb1f02c1f6" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "5e9da365f4631bca2f9c6e81f7303761b81677873e0b13c2d6280480a0a43a27" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "7ac77ff0b16720cc6029c8415326311d46351c1eff653ca4a9e8059d3891644b" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "bff6160e06fc9d031d999617b457471cd736ec42115c411540e797a1bb0a3379" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "0f2c1343f58417dd48447fa542c6464ea74d2b431bb408cce4e1178150b23b8b" + } + }, + "metadata": {} + } + ], + "source_freeze_sha256": "3a77d0f7d8e903061eb647bf26f2f0de5f05caed7d301ca929039fb4deddb7c0", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.6850051669898676, + "artifacts": { + "model.bin": "16bb2f605cc83752b6dbea092002b37e838732fc2d1398e5a3e12f0bba88db20", + "training.json": "86126a907c62ea15af896e6274a8baf31eaa86bf9a6791a64c1aaa3422354cbc", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "70096294875c6ff5ec4d455adb4ebe1f94660793a9d999a443335f7f30a68407" + }, + "application": "A5", + "fold": 0, + "job": { + "application": "A5", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-quantile-053/A5/0/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-quantile-053/A5/0/fit/model.bin", + "/private/tmp/openboost-quantile-053/A5/0/fit/features.npz", + "/private/tmp/openboost-quantile-053/A5/0/fit/replay.npz" + ], + "prediction_shape": [ + 1744, + 3 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 13.54609167431193, + "last_score": 13.54609167431193, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "acc350c1d60931d1f42960cb76c8f6e802813de85dc2a5c70514c4e1deeea588", + "best_validation_score": 13.54609167431193, + "selected_validation_pinball": 13.54609167431193 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 49.33270323967889, + "last_score": 49.33270323967889, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e541a5332fcd44524d16eb51e8f6ffb21db7f8fb75451819e4212892ba46be7b", + "best_validation_score": 49.33270323967889, + "selected_validation_pinball": 49.33270323967889 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 27.69725942660551, + "last_score": 27.69725942660551, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "26e202aaa0e4ed2be1dbf813ad10e5ba8340e7b02bedc588c871c36a8f8c114d", + "best_validation_score": 27.69725942660551, + "selected_validation_pinball": 27.69725942660551 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 + }, + "replay_sha256": "70096294875c6ff5ec4d455adb4ebe1f94660793a9d999a443335f7f30a68407" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.7332984170061536, + "artifacts": { + "model.bin": "1b8d5c73c0950518269b4e998694caaaf46fe1870a78d921f328acb36814aba7", + "training.json": "f467bb88d3f4e93ed1e86e05eaecd72cbed7f7a64ecd5e02241e181dc0925cae", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "57d64e6eae7f23d495c52b4ca999cc8670e6d1749802587bb4b215619ced0635" + }, + "application": "A5", + "fold": 1, + "job": { + "application": "A5", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-quantile-053/A5/1/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-quantile-053/A5/1/fit/model.bin", + "/private/tmp/openboost-quantile-053/A5/1/fit/features.npz", + "/private/tmp/openboost-quantile-053/A5/1/fit/replay.npz" + ], + "prediction_shape": [ + 1746, + 3 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 19.252423230240563, + "last_score": 19.252423230240563, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "438a2e9f1855854ac58010b77d003a6fcbf48730becd53b45bb428646afd6eeb", + "best_validation_score": 19.252423230240563, + "selected_validation_pinball": 19.252423230240563 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 69.40235744558989, + "last_score": 69.40235744558989, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "65d201db16872ecc640cf697eb6cfb4230a2b2750b88d163c2756df2fcd27717", + "best_validation_score": 69.40235744558989, + "selected_validation_pinball": 69.40235744558989 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 44.30960524627721, + "last_score": 44.30960524627721, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e2f2d8b2e1da816678af49061c77a272ab8c727a34a60318635b34fb1e55f8f1", + "best_validation_score": 44.30960524627721, + "selected_validation_pinball": 44.30960524627721 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 + }, + "replay_sha256": "57d64e6eae7f23d495c52b4ca999cc8670e6d1749802587bb4b215619ced0635" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.7297328330023447, + "artifacts": { + "model.bin": "5f181433d4380ffe849d841dc7bd0a0b8d93d1f5804b9823bcfbcb39c77f1cae", + "training.json": "a4c80ff784ad13e2517aad74230b3e8a62905e519f94d411d9d42541e631843a", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "d339e8c73ee324f1e743647c658cf556d438e6d90035702df9beb6522529626c" + }, + "application": "A5", + "fold": 2, + "job": { + "application": "A5", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-quantile-053/A5/2/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-quantile-053/A5/2/fit/model.bin", + "/private/tmp/openboost-quantile-053/A5/2/fit/features.npz", + "/private/tmp/openboost-quantile-053/A5/2/fit/replay.npz" + ], + "prediction_shape": [ + 1750, + 3 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 23.40002005714286, + "last_score": 23.40002005714286, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bd8d2ec91bfa60c6f9a1877c3114fca6ecaa35a0ca379f0215e2da925dea2e4e", + "best_validation_score": 23.40002005714286, + "selected_validation_pinball": 23.40002005714286 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 84.7924414, + "last_score": 84.7924414, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b2016afd949d31d07d3fbd59709948e99a93ad9acaaf8cf3c1bd877fde1c6093", + "best_validation_score": 84.7924414, + "selected_validation_pinball": 84.7924414 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 55.86033040571429, + "last_score": 55.86033040571429, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8bbe21ffa7e0a552e97c0f7dfa2401e0392108b7683f5b6dd1213259929502c4", + "best_validation_score": 55.86033040571429, + "selected_validation_pinball": 55.86033040571429 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 + }, + "replay_sha256": "d339e8c73ee324f1e743647c658cf556d438e6d90035702df9beb6522529626c" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.7319832919893088, + "artifacts": { + "model.bin": "eee7e74c52d7ea5004803ea83e69ad1566f5795b7ceaa2c88df7edfd995baa0d", + "training.json": "7aca57163343bbe487d941d72eb38ebd3a2ada4c1d1f0231d2393ceddd6163e8", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "8a8a51677d3bcf12805a269fc86aff4f7fc840e8b13c77debb1253b1398eec8d" + }, + "application": "A5", + "fold": 3, + "job": { + "application": "A5", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-quantile-053/A5/3/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-quantile-053/A5/3/fit/model.bin", + "/private/tmp/openboost-quantile-053/A5/3/fit/features.npz", + "/private/tmp/openboost-quantile-053/A5/3/fit/replay.npz" + ], + "prediction_shape": [ + 1752, + 3 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 24.62153466894977, + "last_score": 24.62153466894977, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "705ba2828899ba7ab8570ef4474ee2681fc79f044b374d7027667c2978b9c597", + "best_validation_score": 24.62153466894977, + "selected_validation_pinball": 24.62153466894977 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 87.6899816780822, + "last_score": 87.6899816780822, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "02bca7e0399159eee2c7d8ec9767fcbb1b55f8a65063d162d61f11e16f9b1903", + "best_validation_score": 87.6899816780822, + "selected_validation_pinball": 87.6899816780822 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 56.26616728310503, + "last_score": 56.26616728310503, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "f7d948079e1eff25095bc74e89bda0b5e1cc1286f7431d138447cca4ce5b7a4b", + "best_validation_score": 56.26616728310503, + "selected_validation_pinball": 56.26616728310503 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 + }, + "replay_sha256": "8a8a51677d3bcf12805a269fc86aff4f7fc840e8b13c77debb1253b1398eec8d" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-quantile-053/A5/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.7894324160006363, + "artifacts": { + "model.bin": "e25e8a7df4f9acf3b4df3e7162816f02369b57864b76d841af33fc550fa21fc0", + "training.json": "0e627e80713a9077b3332c9bd9581968fd7ab0d798177fe78b69702a19007908", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "701c0c7bd876c4684625d495e30735e71e4b085094ac2d1fae94897fb9fe959f" + }, + "application": "A5", + "fold": 4, + "job": { + "application": "A5", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-quantile-053/A5/4/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-quantile-053/A5/4/fit/model.bin", + "/private/tmp/openboost-quantile-053/A5/4/fit/features.npz", + "/private/tmp/openboost-quantile-053/A5/4/fit/replay.npz" + ], + "prediction_shape": [ + 1752, + 3 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "output": "quantiles", + "quantiles": [ + 0.1, + 0.5, + 0.9 + ], + "quantile_runs": [ + { + "q": 0.1, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 25.97250694063927, + "last_score": 25.97250694063927, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "46f4db4fd7879c01dcc786ba3665706e054205f9727047b88eba659a8ef3cad2", + "best_validation_score": 25.97250694063927, + "selected_validation_pinball": 25.97250694063927 + }, + { + "q": 0.5, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 90.80059272260272, + "last_score": 90.80059272260272, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "e8043b16ec964f260382c0b64c873f971b06f34db709f8595276e301657cbced", + "best_validation_score": 90.80059272260272, + "selected_validation_pinball": 90.80059272260272 + }, + { + "q": 0.9, + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 55.61411142694065, + "last_score": 55.61411142694065, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b3a8202c86529a5f12ae430b91a81da31d340474ec0a4dd0850896c1f22edba9", + "best_validation_score": 55.61411142694065, + "selected_validation_pinball": 55.61411142694065 + } + ], + "selection_metric": "independent_weighted_pinball", + "crossing_rows": 0 + }, + "replay_sha256": "701c0c7bd876c4684625d495e30735e71e4b085094ac2d1fae94897fb9fe959f" + } + ] +} diff --git a/benchmarks/v1/evidence/quantile-053/verification.json b/benchmarks/v1/evidence/quantile-053/verification.json new file mode 100644 index 0000000..53ebbf3 --- /dev/null +++ b/benchmarks/v1/evidence/quantile-053/verification.json @@ -0,0 +1,55 @@ +{ + "source_and_artifact_hashes_match": true, + "cells": [ + { + "fold": 0, + "selected_pinball": [ + 13.546091674311958, + 49.33270323967868, + 27.697259426605566 + ], + "crossing_rows": 0, + "source_row_ids_exact": true + }, + { + "fold": 1, + "selected_pinball": [ + 19.25242323024047, + 69.40235744558998, + 44.309605246277215 + ], + "crossing_rows": 0, + "source_row_ids_exact": true + }, + { + "fold": 2, + "selected_pinball": [ + 23.400020057142907, + 84.79244140000041, + 55.860330405714116 + ], + "crossing_rows": 0, + "source_row_ids_exact": true + }, + { + "fold": 3, + "selected_pinball": [ + 24.62153466894974, + 87.68998167808311, + 56.266167283104984 + ], + "crossing_rows": 0, + "source_row_ids_exact": true + }, + { + "fold": 4, + "selected_pinball": [ + 25.972506940639363, + 90.8005927226028, + 55.614111426940546 + ], + "crossing_rows": 0, + "source_row_ids_exact": true + } + ] +} diff --git a/benchmarks/v1/evidence/row-hash-051/README.md b/benchmarks/v1/evidence/row-hash-051/README.md new file mode 100644 index 0000000..6e9b23c --- /dev/null +++ b/benchmarks/v1/evidence/row-hash-051/README.md @@ -0,0 +1,17 @@ +# Covertype fold zero after invariant row-hash hoisting + +The unchanged four-round/depth-two/32-bin/seven-class job completes in 87.4 seconds +under the original 90-second cap. Fresh-process seven-class probabilities and row +IDs match exactly. This is one bounded rerun, not a comparative speed benchmark +or full five-fold A3 acceptance. The prior original run timed out at 90 seconds. + +`manifest.json` records the exact job/command, input hash, source/revision identity, +process result and fresh-replay command/hash. Raw model, validation predictions, +replay, training metadata and process records/log are retained. Regenerate the +Sprint 049 packets if needed, then run the recorded command through process_runner +with timeout_s=90 and threads=1 in a fresh output directory. Replay has a 30-second +cap. Source export time is outside this worker measurement. + +Only candidate row-digest hoisting changed. No profiling or concurrent regression +run was active during this fit. No memory cap or CUDA. A single result near the +cap does not establish reproducibility, quality parity or a stable speed ratio. diff --git a/benchmarks/v1/evidence/row-hash-051/execution.json b/benchmarks/v1/evidence/row-hash-051/execution.json new file mode 100644 index 0000000..72a07a5 --- /dev/null +++ b/benchmarks/v1/evidence/row-hash-051/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "25040b9d5ecf3f849b16fa16228f25409fe1c449d2ffd920f7d002283c3e242e", + "predictions.npz": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256", + "training.json": "242f60f328e07841b844f3eb3e1dea83e925c230ae97a73ccceed0ba61ac5815", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/tmp/openboost-covertype-049/A3/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 87.40377258400258 +} diff --git a/benchmarks/v1/evidence/row-hash-051/manifest.json b/benchmarks/v1/evidence/row-hash-051/manifest.json new file mode 100644 index 0000000..35a6815 --- /dev/null +++ b/benchmarks/v1/evidence/row-hash-051/manifest.json @@ -0,0 +1,78 @@ +{ + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/tmp/openboost-covertype-049/A3/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 87.40377258400258, + "artifacts": { + "model.bin": "25040b9d5ecf3f849b16fa16228f25409fe1c449d2ffd920f7d002283c3e242e", + "training.json": "242f60f328e07841b844f3eb3e1dea83e925c230ae97a73ccceed0ba61ac5815", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256" + }, + "job": { + "application": "A3", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-covertype-049/A3/0/worker-input.npz", + "classes": 7 + }, + "input_sha256": "9bc25256b6a57efa51f13e714c6b47496239858ac851e97c3d74ebe47db71f1a", + "revision": "d1dede67a1b8f3e55cc3cbcbc2edd02d90e078fd", + "dirty": true, + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "0464ecf56b27d61d1becaa78a841b4a300dc53a7000ebca433afa9390d01c898", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "d53f4796353430002ca2231de1852c139492fd7de1c7e4936374da1befebd33d", + "benchmarks/v1/openboost_predict.py": "b0c21aca3046eb3ad40f52f4c845dc159872d10261a0afca2d1cd01357354d04", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "fresh_process_exact": true, + "prediction_shape": [ + 116202, + 7 + ], + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/tmp/openboost-row-hash-051/model.bin", + "/tmp/openboost-row-hash-051/features.npz", + "/tmp/openboost-row-hash-051/replay.npz" + ], + "replay_sha256": "de0a146a40a54c7d3a4bd6b8a7bfba821f18bb52542fa6559dd9fbfce0f18256" +} diff --git a/benchmarks/v1/evidence/row-hash-051/model.bin b/benchmarks/v1/evidence/row-hash-051/model.bin new file mode 100644 index 0000000..1a306f3 --- /dev/null +++ b/benchmarks/v1/evidence/row-hash-051/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A3", "output": "class_probabilities", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "base": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [17, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.905470047750214, 1.4076858773737362, -0.33205460079610255, -0.5640231214051331, -0.5166197381038449, -0.46127479466469545, -0.4391836701511908], [0.08223524902608118, 2.017779309566307, -0.1371627383214995, -0.5490461150845628, -0.4648766530685598, -0.3666061544210294, -0.5823228976953574], [1.9668335922709579, 0.6210611915204259, -0.5833176914695924, -0.5833176914695924, -0.5833176914695924, -0.5833176914695924, -0.2546240179135452], [-0.5662710805749782, 0.13791380387268187, 1.5201748906942216, -0.37738913179282246, -0.5580262336043543, 0.4268582136163294, -0.5832604622114219], [0.21176432846278262, 2.3932088842022377, -0.468192041861841, -0.583318778227308, -0.4462595751802561, -0.5250817165288154, -0.5821211008659051], [2.016353459871482, 0.7853100278287524, -0.5833150933374542, -0.5833150933374542, -0.5833150933374542, -0.5833150933374542, -0.46840311434892373], [1.6683887670409205, -0.3677177240620543, -0.5832235414325294, -0.5832235414325294, -0.5832235414325294, -0.5832235414325294, 1.0322231227508578]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [18, 1, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7905886172291245, 1.1782147929183484, -0.3211566575805588, -0.5572986991329894, -0.5081044249788489, -0.45132162712988344, -0.42887817329651956], [0.13614799769339847, 1.6012681130344506, -0.15268771868715977, -0.5435811702106711, -0.4612446202991384, -0.3667944894791351, -0.5764877974207404], [1.6216866587654999, 0.48609635281869445, -0.5774504728035224, -0.5774504728035224, -0.5774504728035224, -0.5774504728035224, -0.2186681057836118], [-0.5776764522527612, -0.4258935604328588, 1.5786067951621088, -0.26251822426712024, -0.5777506716250248, 0.5305628323382374, -0.5775237676938417], [0.21471614989575813, 1.8042960556712644, -0.3912293302725538, -0.5773209641684137, -0.4475820373695467, -0.481048590463884, -0.5763521039986819], [1.6660019584142893, 0.6250036601278085, -0.5774371736246601, -0.5774371736246601, -0.5774371736246601, -0.5774371736246601, -0.44750649134494713], [1.3703449489077435, -0.3563931835108491, -0.577409250707514, -0.577409250707514, -0.577409250707514, -0.577409250707514, 0.8951173869673015]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [15, 2, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.70022638838403, 1.0114863500610671, -0.31067616205838666, -0.5509717058082353, -0.4998180086623927, -0.4415786142729804, -0.41890727874346445], [-0.030175726066189085, 1.3538512258615507, -0.0688942897071653, -0.5300544391355841, -0.42853510281997104, -0.31593028891764235, -0.570761283514425], [1.278562337543291, 0.6132971013994057, -0.5724622528221359, -0.5720389899182118, -0.5723152967516112, -0.5722526750498327, -0.2742930055037923], [-0.5566386702191234, 0.10615254368363042, 1.1179962114353865, -0.3560056239571535, -0.5452206406026204, 0.3731520339747515, -0.5724211081564461], [0.07931874144251169, 1.5704199719271057, -0.43009823506439687, -0.5718801632744726, -0.40190268102434734, -0.4992465865005463, -0.5703579112601903], [1.295450059902061, 0.72316577462001, -0.5725039511421065, -0.5720206015377967, -0.5723361803866948, -0.5722646944112715, -0.4660947101512034], [1.1589080892403933, -0.3450921528086983, -0.572048449211691, -0.572048449211691, -0.572048449211691, -0.572048449211691, 0.7869159268220223]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54", "x55", "x56", "x57", "x58", "x59", "x60", "x61", "x62", "x63", "x64", "x65", "x66", "x67", "x68", "x69", "x70", "x71", "x72", "x73", "x74", "x75", "x76", "x77", "x78", "x79", "x80", "x81", "x82", "x83", "x84", "x85", "x86", "x87", "x88", "x89", "x90", "x91", "x92", "x93", "x94", "x95", "x96", "x97", "x98", "x99", "x100", "x101", "x102", "x103", "x104", "x105", "x106", "x107"], "cuts": [[2309.0, 2463.0, 2565.0, 2632.0, 2691.0, 2735.0, 2773.0, 2809.0, 2842.0, 2872.0, 2898.0, 2922.0, 2942.0, 2960.0, 2978.0, 2996.0, 3015.0, 3034.0, 3055.0, 3077.0, 3099.0, 3121.0, 3142.0, 3164.0, 3185.0, 3206.0, 3228.0, 3251.0, 3278.0, 3314.0, 3372.0], [7.0, 15.0, 23.0, 30.0, 37.0, 45.0, 51.0, 58.0, 66.0, 73.0, 81.0, 90.0, 98.0, 107.0, 117.0, 127.0, 138.0, 151.0, 166.0, 182.0, 199.0, 219.0, 240.0, 261.0, 279.0, 296.0, 309.0, 320.0, 331.0, 340.0, 350.0], [3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 22.0, 23.0, 25.0, 27.0, 31.0], [0.0, 30.0, 42.0, 60.0, 85.0, 90.0, 108.0, 120.0, 127.0, 150.0, 162.0, 175.0, 190.0, 210.0, 218.0, 240.0, 256.0, 277.0, 297.0, 313.0, 335.0, 361.0, 390.0, 417.0, 446.0, 484.0, 524.0, 573.0, 644.0, 764.0], [-16.0, -5.0, -1.0, 0.0, 3.0, 5.0, 7.0, 9.0, 12.0, 14.0, 17.0, 20.0, 23.0, 26.0, 30.0, 33.0, 37.0, 41.0, 46.0, 51.0, 56.0, 62.0, 69.0, 76.0, 85.0, 95.0, 108.0, 125.0, 151.0, 191.0], [277.0, 433.0, 566.0, 684.0, 794.0, 902.0, 1006.0, 1106.0, 1203.0, 1300.0, 1405.0, 1509.0, 1622.0, 1740.0, 1864.0, 1994.0, 2132.0, 2275.0, 2430.0, 2590.0, 2765.0, 2943.0, 3127.0, 3331.0, 3569.0, 3858.0, 4161.0, 4482.0, 4883.0, 5312.0, 5743.0], [149.0, 165.0, 175.0, 181.0, 187.0, 191.0, 195.0, 198.0, 201.0, 204.0, 207.0, 209.0, 212.0, 214.0, 216.0, 218.0, 219.0, 221.0, 223.0, 225.0, 226.0, 228.0, 230.0, 231.0, 233.0, 235.0, 237.0, 239.0, 242.0, 244.0, 248.0], [179.0, 190.0, 197.0, 202.0, 205.0, 208.0, 211.0, 213.0, 215.0, 217.0, 218.0, 220.0, 222.0, 223.0, 225.0, 226.0, 227.0, 229.0, 230.0, 231.0, 233.0, 234.0, 236.0, 237.0, 239.0, 241.0, 243.0, 245.0, 247.0, 249.0, 252.0], [66.0, 83.0, 93.0, 100.0, 106.0, 111.0, 115.0, 119.0, 122.0, 126.0, 129.0, 132.0, 135.0, 137.0, 140.0, 143.0, 145.0, 148.0, 151.0, 154.0, 157.0, 161.0, 164.0, 168.0, 172.0, 177.0, 181.0, 187.0, 193.0, 200.0, 211.0], [324.0, 466.0, 573.0, 671.0, 765.0, 850.0, 938.0, 1022.0, 1110.0, 1195.0, 1279.0, 1362.0, 1445.0, 1530.0, 1621.0, 1711.0, 1804.0, 1900.0, 2001.0, 2103.0, 2208.0, 2317.0, 2431.0, 2551.0, 2676.0, 2828.0, 3046.0, 3371.0, 3874.0, 4607.0, 5539.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 0, -1, -1, -1, -1], "threshold": [16, 2, 28, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6267251424581306, 0.8842881277103438, -0.30073906378156184, -0.5449724068684411, -0.4916982897914366, -0.43203476278653624, -0.4091718498281362], [0.02084466575619653, 1.1567997584186915, -0.09181542971815497, -0.5257041172168141, -0.42705645905749445, -0.31975208036281766, -0.565816233090714], [1.118234949711225, 0.501388473435659, -0.5673047853858151, -0.5670483290217522, -0.5672563733740794, -0.5671780470892146, -0.24488134617404927], [-0.5507959407277767, 0.1011440510533976, 0.9653131349450252, -0.34522827653152355, -0.5391289713023325, 0.3432739528391501, -0.5675742835274314], [0.12486665407989557, 1.3114655811643405, -0.4303473675392867, -0.5668416078298492, -0.4035183092780066, -0.49649868983362666, -0.565419148718931], [1.1282205173368354, 0.6366523361872414, -0.5673450486845729, -0.567024420442265, -0.5672845090822568, -0.5671866535368241, -0.48769063341933855], [1.0777295322934934, -0.1573126764454211, -0.567059486647981, -0.5670607095118004, -0.5670599110883467, -0.5670600919446724, 0.5212324191252559]]}, "mapping": [[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0]], "coefficient": 0.1}], "classes": [0, 1, 2, 3, 4, 5, 6]}} diff --git a/benchmarks/v1/evidence/row-hash-051/predictions.npz b/benchmarks/v1/evidence/row-hash-051/predictions.npz new file mode 100644 index 0000000..e3e023c Binary files /dev/null and b/benchmarks/v1/evidence/row-hash-051/predictions.npz differ diff --git a/benchmarks/v1/evidence/row-hash-051/replay.npz b/benchmarks/v1/evidence/row-hash-051/replay.npz new file mode 100644 index 0000000..e3e023c Binary files /dev/null and b/benchmarks/v1/evidence/row-hash-051/replay.npz differ diff --git a/benchmarks/v1/evidence/row-hash-051/training.json b/benchmarks/v1/evidence/row-hash-051/training.json new file mode 100644 index 0000000..1e1017b --- /dev/null +++ b/benchmarks/v1/evidence/row-hash-051/training.json @@ -0,0 +1,27 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 1.4960895873593474, + "last_score": 1.4960895873593474, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "277e32543ddf98ed52048c6dc0b95dac6ad4f3838cee6e9042d668c4f0ab5f5c", + "best_validation_score": 1.4960895873593474, + "output": "class_probabilities", + "class_order": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "selection_metric": "logloss" +} diff --git a/benchmarks/v1/evidence/row-hash-051/worker.log b/benchmarks/v1/evidence/row-hash-051/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/A8/0/execution.json b/benchmarks/v1/evidence/severity-055/A8/0/execution.json new file mode 100644 index 0000000..8dd7071 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "a7e7270cb0ba31e68b97ba36bf10450483665ea15b9877199d71c1dcc10ebdef", + "predictions.npz": "02681157cb470eb69374c7659a047cdcfc518e1b5ad34c0e5f4234a8d496826c", + "training.json": "7165c6768e3d08122aa7179e05ff19653f8c64293323b258b64d1dd0da5187d2", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.750944667001022 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/0/model.bin b/benchmarks/v1/evidence/severity-055/A8/0/model.bin new file mode 100644 index 0000000..c5a5017 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A8", "output": "positive_claim_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.73940697289388], "terms": [], "classes": null}} diff --git a/benchmarks/v1/evidence/severity-055/A8/0/predictions.npz b/benchmarks/v1/evidence/severity-055/A8/0/predictions.npz new file mode 100644 index 0000000..f5ddd3c Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/0/replay.npz b/benchmarks/v1/evidence/severity-055/A8/0/replay.npz new file mode 100644 index 0000000..f5ddd3c Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/0/replay.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/0/training.json b/benchmarks/v1/evidence/severity-055/A8/0/training.json new file mode 100644 index 0000000..19d36b5 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/0/training.json @@ -0,0 +1,21 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.744420199119517, + "last_score": 8.746309046366513, + "completed_rounds": 3, + "stale_rounds": 3, + "reason": "patience" + }, + "accepted_commits": 3, + "selected_model_identity": "a40325483af9716ead0eabcfb972303bfe46bce2af242ffbab625124bd385e4f", + "best_validation_score": 8.744420199119517, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.744420199119517 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/0/worker.log b/benchmarks/v1/evidence/severity-055/A8/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/A8/1/execution.json b/benchmarks/v1/evidence/severity-055/A8/1/execution.json new file mode 100644 index 0000000..35d9fe3 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "f8207651e64ced1e5ab737d6de0f3e2186b9198ec4fa7e09b51c2cce7f9a0935", + "predictions.npz": "dfbc562475e3d53270bfd3fde86eed53e84599318485542132e37225f3bef270", + "training.json": "208f63c7b8054bfddf6cd29ed3b928b684f2355f719103a6aa5889a6818f7495", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 1.0123621250095312 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/1/model.bin b/benchmarks/v1/evidence/severity-055/A8/1/model.bin new file mode 100644 index 0000000..e765766 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A8", "output": "positive_claim_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.561375854022971], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 2.1875, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 23.0, 26.0, 27.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 57.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.3125, 27.0, 39.0, 50.0, 63.0, 80.0, 96.0, 116.0, 140.0, 174.0, 213.0, 251.0, 298.0, 376.0, 435.0, 533.0, 646.3125, 761.0, 949.0, 1182.0, 1313.0, 1426.0, 1765.375, 2399.0, 2906.0, 3317.0, 3699.0, 4116.0, 4762.0, 6924.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 3, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[8.145722397353853e-16], [-0.04814980484923731], [0.41725032551423746], [0.2665971462905721], [-0.12254731023263284], [0.3237772402005564], [0.8455769915918795]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 2.1875, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 23.0, 26.0, 27.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 57.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.3125, 27.0, 39.0, 50.0, 63.0, 80.0, 96.0, 116.0, 140.0, 174.0, 213.0, 251.0, 298.0, 376.0, 435.0, 533.0, 646.3125, 761.0, 949.0, 1182.0, 1313.0, 1426.0, 1765.375, 2399.0, 2906.0, 3317.0, 3699.0, 4116.0, 4762.0, 6924.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 3, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00023145503531610902], [-0.04299293024134984], [0.3925842864017025], [0.24678940847781075], [-0.10887592478691803], [0.3015415371192972], [0.8320022480115391]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 2.1875, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 23.0, 26.0, 27.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 57.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.3125, 27.0, 39.0, 50.0, 63.0, 80.0, 96.0, 116.0, 140.0, 174.0, 213.0, 251.0, 298.0, 376.0, 435.0, 533.0, 646.3125, 761.0, 949.0, 1182.0, 1313.0, 1426.0, 1765.375, 2399.0, 2906.0, 3317.0, 3699.0, 4116.0, 4762.0, 6924.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 2, 1, -1, -1, -1, -1], "threshold": [29, 1, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0004043865872606371], [-0.03841904370855804], [0.3684342096914087], [0.3343553619310866], [-0.08196890565393924], [0.2801763408938244], [0.8174859825213681]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 2.1875, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 23.0, 26.0, 27.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 75.0], [50.0, 51.0, 54.0, 57.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.3125, 27.0, 39.0, 50.0, 63.0, 80.0, 96.0, 116.0, 140.0, 174.0, 213.0, 251.0, 298.0, 376.0, 435.0, 533.0, 646.3125, 761.0, 949.0, 1182.0, 1313.0, 1426.0, 1765.375, 2399.0, 2906.0, 3317.0, 3699.0, 4116.0, 4762.0, 6924.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 3, 1, -1, -1, -1, -1], "threshold": [29, 8, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0005337023358560535], [-0.03435235261131624], [0.3449069222094006], [-0.13348438899315232], [0.10703918539884548], [0.2597401128004987], [0.8020073031655532]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/severity-055/A8/1/predictions.npz b/benchmarks/v1/evidence/severity-055/A8/1/predictions.npz new file mode 100644 index 0000000..2f1e541 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/1/replay.npz b/benchmarks/v1/evidence/severity-055/A8/1/replay.npz new file mode 100644 index 0000000..2f1e541 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/1/replay.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/1/training.json b/benchmarks/v1/evidence/severity-055/A8/1/training.json new file mode 100644 index 0000000..d8c3b86 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/1/training.json @@ -0,0 +1,21 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.761126882630645, + "last_score": 8.761126882630645, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5ae6ada829af2064a8e6181b6a741dd7b52368410b9d505d3d71c95f4c1ae554", + "best_validation_score": 8.761126882630645, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.761126882630645 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/1/worker.log b/benchmarks/v1/evidence/severity-055/A8/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/A8/2/execution.json b/benchmarks/v1/evidence/severity-055/A8/2/execution.json new file mode 100644 index 0000000..0b95b5d --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "a05d3ec5f87888456eb233d7d70479c2ab97c43d0ade2004afb41aa98c0018a1", + "predictions.npz": "452cf73aa087a23ca5ef9cf6abde8cc09cf067b3a09da48a9c2e1528b832b6d4", + "training.json": "d83c477cfee51f2d6bd1ad60271b6e9e660fb08497ed15b3988afcfe673e06c5", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.9518517079995945 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/2/model.bin b/benchmarks/v1/evidence/severity-055/A8/2/model.bin new file mode 100644 index 0000000..6f8b264 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A8", "output": "positive_claim_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.742642619843467], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 49.0, 61.0, 78.0, 94.0, 115.0, 136.0, 166.0, 206.0, 242.0, 295.0, 370.0, 426.0, 514.0, 634.0, 747.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6913.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 18, -1, -1, -1, -1], "threshold": [0, 2, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-1.8850549701686545e-15], [0.7716802907220989], [-0.14162832044979135], [-0.14305099934740267], [0.911780561273868], [-0.15426052292900314], [0.7400124455294216]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 49.0, 61.0, 78.0, 94.0, 115.0, 136.0, 166.0, 206.0, 242.0, 295.0, 370.0, 426.0, 514.0, 634.0, 747.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6913.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 42, -1, -1, -1, -1], "threshold": [0, 4, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0006836284081706639], [0.7535335972323906], [-0.12550809429128], [0.14619131124060056], [0.9717836114912207], [-0.14698468688883168], [0.3490899307573205]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 57.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 64.0, 67.0, 70.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 49.0, 61.0, 78.0, 94.0, 115.0, 136.0, 166.0, 206.0, 242.0, 295.0, 370.0, 426.0, 514.0, 634.0, 747.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6913.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 0, 2, -1, -1, -1, -1], "threshold": [0, 4, 12, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0012206773238025597], [0.7344353892153183], [-0.11141296583464647], [0.133638514760966], [0.9689057992232415], [-0.00518785781642566], [-0.19834472460166297]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/severity-055/A8/2/predictions.npz b/benchmarks/v1/evidence/severity-055/A8/2/predictions.npz new file mode 100644 index 0000000..431d592 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/2/replay.npz b/benchmarks/v1/evidence/severity-055/A8/2/replay.npz new file mode 100644 index 0000000..431d592 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/2/replay.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/2/training.json b/benchmarks/v1/evidence/severity-055/A8/2/training.json new file mode 100644 index 0000000..7f636ee --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/2/training.json @@ -0,0 +1,21 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.694319429072479, + "last_score": 8.695301150208172, + "completed_rounds": 4, + "stale_rounds": 1, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b95233c54aa9f2a8bd1514ab763334771920aabc1d7b5ded7e6c34d04aac3065", + "best_validation_score": 8.694319429072479, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.694319429072479 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/2/worker.log b/benchmarks/v1/evidence/severity-055/A8/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/A8/3/execution.json b/benchmarks/v1/evidence/severity-055/A8/3/execution.json new file mode 100644 index 0000000..1a4f0b2 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "ff5af8bdf9a0200fd107443f759085658821d4cebd5fabd397a17a04ff34232e", + "predictions.npz": "30b54989e39ce4fe963414ed71183068dcdd2c198028fe01dadfaf3e7a300345", + "training.json": "6b4a363ee8252aea43be04e064e0afbc12a18a7d701ca06ccdbb7c782c3eb08d", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.9537569999956759 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/3/model.bin b/benchmarks/v1/evidence/severity-055/A8/3/model.bin new file mode 100644 index 0000000..9061bcf --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A8", "output": "positive_claim_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.693427061046558], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 69.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 59.0, 75.0, 91.0, 110.0, 132.0, 164.0, 202.0, 232.0, 286.53125, 359.0, 416.0, 507.5, 634.0, 745.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6924.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-3.5531765347135825e-15], [0.7358573561189019], [-0.10702554925611671], [0.18753414632552437], [0.9026671688764049], [-0.15570998676265196], [0.3217808023288098]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 69.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 59.0, 75.0, 91.0, 110.0, 132.0, 164.0, 202.0, 232.0, 286.53125, 359.0, 416.0, 507.5, 634.0, 745.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6924.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0005386190943258512], [0.7158346790441152], [-0.09512657462765162], [0.17218720153076572], [0.8934790398249587], [-0.13785522439780254], [0.2996183385498757]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 69.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 59.0, 75.0, 91.0, 110.0, 132.0, 164.0, 202.0, 232.0, 286.53125, 359.0, 416.0, 507.5, 634.0, 745.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6924.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 2, -1, -1, -1, -1], "threshold": [0, 12, 29, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0009549137718898069], [0.6949143929474108], [-0.08466677285380873], [0.15784159671485604], [0.8835312134207414], [-0.12227813859065007], [0.2783321665807657]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 16.0, 17.0], [21.0, 24.0, 26.0, 28.0, 29.0, 31.0, 33.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 45.0, 46.0, 47.0, 48.0, 50.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 53.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 69.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [16.0, 27.0, 37.0, 48.0, 59.0, 75.0, 91.0, 110.0, 132.0, 164.0, 202.0, 232.0, 286.53125, 359.0, 416.0, 507.5, 634.0, 745.0, 881.0, 1064.0, 1313.0, 1408.0, 1704.0, 2252.0, 2740.0, 3317.0, 3688.0, 4116.0, 4762.0, 6924.0, 9422.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 1, 18, -1, -1, -1, -1], "threshold": [0, 12, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.0012705746076436698], [0.6731470991500214], [-0.07544823316811469], [0.14447337896315982], [0.8727816743330193], [-0.08854287610248936], [0.7921125107311319]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/severity-055/A8/3/predictions.npz b/benchmarks/v1/evidence/severity-055/A8/3/predictions.npz new file mode 100644 index 0000000..97b79ab Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/3/replay.npz b/benchmarks/v1/evidence/severity-055/A8/3/replay.npz new file mode 100644 index 0000000..97b79ab Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/3/replay.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/3/training.json b/benchmarks/v1/evidence/severity-055/A8/3/training.json new file mode 100644 index 0000000..061dcc5 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/3/training.json @@ -0,0 +1,21 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536422353456345, + "last_score": 8.536422353456345, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "1f72764e0c35940a5a178c7e4458e40583b33fa3586409c3fed3c76f10e1cb4a", + "best_validation_score": 8.536422353456345, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.536422353456345 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/3/worker.log b/benchmarks/v1/evidence/severity-055/A8/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/A8/4/execution.json b/benchmarks/v1/evidence/severity-055/A8/4/execution.json new file mode 100644 index 0000000..2174f78 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "472d979a02d4333f14c537b9ac950272c7a62260256262db5b21fa93a7906c71", + "predictions.npz": "bb081d124847db964d2a845be7ea5cfecd96713cdb893d7a95a0022840fdf7dd", + "training.json": "b729a9df916cfb638b25051bf0d4fa72f2f6e0b7a2eb0c983822dd1bef99a52b", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.9636980829964159 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/4/model.bin b/benchmarks/v1/evidence/severity-055/A8/4/model.bin new file mode 100644 index 0000000..239aab4 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A8", "output": "positive_claim_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "base": [7.670864218159913], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 51.0, 54.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.125, 60.0, 78.0, 94.0, 113.0, 137.0, 169.0, 209.0, 242.0, 295.0, 374.0, 435.0, 534.0, 645.0, 752.0, 922.375, 1158.0, 1313.0, 1408.0, 1753.0, 2273.0, 2767.0, 3317.0, 3688.0, 4116.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 12, 42, -1, -1, -1, -1], "threshold": [0, 0, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[-9.214564225053438e-16], [0.6143120331635339], [-0.06284639053412602], [0.14499542793072298], [0.8360018700678526], [-0.09597920201941842], [0.5234607523345183]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "x31", "x32", "x33", "x34", "x35", "x36", "x37", "x38", "x39", "x40", "x41", "x42", "x43", "x44", "x45", "x46", "x47", "x48", "x49", "x50", "x51", "x52", "x53", "x54"], "cuts": [[4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0], [21.0, 23.0, 26.0, 28.0, 29.0, 31.0, 32.0, 34.0, 35.0, 37.0, 38.0, 39.0, 41.0, 42.0, 43.0, 44.0, 46.0, 47.0, 48.0, 49.0, 51.0, 52.0, 53.0, 54.0, 56.0, 58.0, 60.0, 63.0, 66.0, 70.0, 76.0], [50.0, 51.0, 54.0, 55.0, 58.0, 60.0, 62.0, 63.0, 67.0, 68.0, 72.0, 76.0, 80.0, 85.0, 90.0, 95.0, 100.0, 112.0], [17.0, 27.0, 38.0, 48.125, 60.0, 78.0, 94.0, 113.0, 137.0, 169.0, 209.0, 242.0, 295.0, 374.0, 435.0, 534.0, 645.0, 752.0, 922.375, 1158.0, 1313.0, 1408.0, 1753.0, 2273.0, 2767.0, 3317.0, 3688.0, 4116.0, 4762.0, 6736.0, 9307.0], [], [], [], [], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [2, 12, 42, -1, -1, -1, -1], "threshold": [0, 0, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.00033084481238014845], [0.5901187080241267], [-0.056083983627539545], [0.13253468671431057], [0.8217177403762383], [-0.08551116176834556], [0.4978864026757625]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/severity-055/A8/4/predictions.npz b/benchmarks/v1/evidence/severity-055/A8/4/predictions.npz new file mode 100644 index 0000000..5b9b812 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/4/replay.npz b/benchmarks/v1/evidence/severity-055/A8/4/replay.npz new file mode 100644 index 0000000..5b9b812 Binary files /dev/null and b/benchmarks/v1/evidence/severity-055/A8/4/replay.npz differ diff --git a/benchmarks/v1/evidence/severity-055/A8/4/training.json b/benchmarks/v1/evidence/severity-055/A8/4/training.json new file mode 100644 index 0000000..32ab1ad --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/A8/4/training.json @@ -0,0 +1,21 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.53698175155106, + "last_score": 8.537179094305902, + "completed_rounds": 4, + "stale_rounds": 2, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "fa6ec9b84c3c47568710f5962e08842a112928b0cbaa256d461dd4208635eabc", + "best_validation_score": 8.53698175155106, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.53698175155106 +} diff --git a/benchmarks/v1/evidence/severity-055/A8/4/worker.log b/benchmarks/v1/evidence/severity-055/A8/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/severity-055/README.md b/benchmarks/v1/evidence/severity-055/README.md new file mode 100644 index 0000000..77bac39 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/README.md @@ -0,0 +1,29 @@ +# Current A8 positive-claim severity integration + +All five frozen policy-grouped severity folds pass the current CPU worker and +exact fresh-process replay. Targets remain individual eligible positive joined +claims, with unit claim weights in the real packets. Output is positive claim +mean; no exposure or policy-average substitution is applied. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-severity-055 --applications A8 +``` + +Requires pinned insurance source files in build/v1-data and the committed +preprocessing freeze. The exporter verifies source, grouped population, row and +encoding hashes. Four rounds, depth two, 32 bins, learning rate 0.1, patience +three and one CPU thread; 90-second fit/30-second replay caps. Source export is +outside fit timing. No test labels scored, memory cap, profiler or concurrent +regression suite. Host: Apple M4 Max, 51539607552 bytes RAM (same host as Sprint +052); Python reports x86_64. No CUDA or measured peak memory. + +`summary.json` retains source/revision/dirty state, dataset/packet identities, +commands, environment and results. Raw models, predictions, replay, training, +execution records and logs are retained for every fold. All source/output hashes +match. `verification.json` records independently recomputed Gamma objectives +(y/mean+log(mean)), positive means and exact source IDs. Numerical comparisons +use rtol=1e-12 and atol=1e-14; prediction replay is exact. + +These are bounded integration outcomes, not full quality searches, dispersion +estimation, calibration or comparative performance results. Synthetic weighted +checks separately verify original sample-weight semantics. diff --git a/benchmarks/v1/evidence/severity-055/summary.json b/benchmarks/v1/evidence/severity-055/summary.json new file mode 100644 index 0000000..ab0fde4 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/summary.json @@ -0,0 +1,556 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A7/A8/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "606487c6387f5dc92c2e38d6334b515d5e6edad1", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-severity-055", + "--applications", + "A8" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "d3b8a917d1e61a5091e3211dbaba4231531fa9d7bf3123e381957362d9730aa5", + "benchmarks/v1/openboost_predict.py": "d84f08075f3edda693d68f79d3f02439ff4e4aabb94b91e0695226b4ef21b46e", + "benchmarks/v1/openboost_worker_smoke.py": "ff40362ddb948ee711ac3ed9693837a35ea0f5e253240b04340808afea91e0a1", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A8": { + "application": "A8", + "dataset": "insurance", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "03db952aced3525dca5ec3cde4f0eaa6dca3c5212bab622230589564c6dfca8c" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "a0a52a08c3ec5721b50f1b9ae5e01ed24ba9f8a05cfc8a555a9a0a65f902bb90" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "33b30a6a888539777d662a221e772fbb90450b55373537c6050a73d3965617a8" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "54c5440028676ce444f4a4624f50357ac7148dcde7f1be6c8982c261738d7cb7" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "3a255c99d30eb1fbfd9d1c8b9171d86552cdab6857f92cacd532e5c5a620aebe" + } + }, + "metadata": { + "row_identity": "zero-based retained positive joined claim position; group is policy ID" + } + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "3d6d292ab33e4197544b9c792a426521b41b081a39b5bf1bd46025f57856c0e0" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "b95d35fdb052d7e0cd06a0adca88d710cdce173acf464fcaf9970aa12ab9a131" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "971f4a3b233d466669c895c9fe5ff1a62f9b63b607eed1e915028e2358033c7b" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "716684d70e40449adb55683e76e4489ee978b8d2411ef9cba065a978c3f38ad8" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "c6e5a0382c8d34b4985c4b05099cc31b7ae8500258af9a2ebeb084ca668cbb55" + } + }, + "metadata": { + "row_identity": "zero-based retained positive joined claim position; group is policy ID" + } + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "01fcbd94e702e793ca2919bdf9d8e3cd8cf2bf3074d1b310424fa0d59fe77f15" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "63a9af461ceb0e2443458610714545957b9797ff00579f41235d0826b6150c3e" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "3175895473a6e26f076fc80732baef91e55846d3f74482c481fff32999a1d73f" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "63cf82193cf0093052db810795d95016c0814557766aa210d001fb8faa67c8ae" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "c3bc7d268c3abeb0ed959e7cd957e4e239c5ebd15de38c932d014918fc6cacc6" + } + }, + "metadata": { + "row_identity": "zero-based retained positive joined claim position; group is policy ID" + } + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "61415468301edfb6fd706ccf62039d2b80000efccd0e717af24e01c1bebea9d6" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "f0645b5b368af10c5c78992e3273af397db2058ab4a4c61c74a5f0bb9e141f37" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "47e674c02e2baa771dc1cbad9f2e98939c8cbc58b9ca77952c3b66f970753624" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "9d89345272c27e30cc53b0fe62de5d8762ba2d398dde088efdf79219cec1a579" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "0548af93866271046298dbab7b1e21eb8f190468a071d2f74e2ef88249c8b422" + } + }, + "metadata": { + "row_identity": "zero-based retained positive joined claim position; group is policy ID" + } + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "9fba67e2769974330b33011748b57079326eef3d3e3831cd97d0f7a7ec3eab58" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "747aec63e7f4ce87bc17a5e2356b64948c5237efd7bf9e3d4e67a2a76e98612a" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "6386c1498846e98e30532877c10fc8f74961602df5d5b53a29f1093d329b84d3" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "f8168c59cb3df1c96b52cda6429622667cd9571be9581338cc4cce26f886d5fe" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "a0de74ec3da252ecdf928f4d1d151240052569e7a6191644f49bb2a550b27bb5" + } + }, + "metadata": { + "row_identity": "zero-based retained positive joined claim position; group is policy ID" + } + } + ], + "source_freeze_sha256": "ff95579dd1b95595e87027f38afd512cd986b3182f08f50a7a2139ffb63f291f", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.750944667001022, + "artifacts": { + "model.bin": "a7e7270cb0ba31e68b97ba36bf10450483665ea15b9877199d71c1dcc10ebdef", + "training.json": "7165c6768e3d08122aa7179e05ff19653f8c64293323b258b64d1dd0da5187d2", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "02681157cb470eb69374c7659a047cdcfc518e1b5ad34c0e5f4234a8d496826c" + }, + "application": "A8", + "fold": 0, + "job": { + "application": "A8", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-severity-055/A8/0/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-severity-055/A8/0/fit/model.bin", + "/private/tmp/openboost-severity-055/A8/0/fit/features.npz", + "/private/tmp/openboost-severity-055/A8/0/fit/replay.npz" + ], + "prediction_shape": [ + 5253 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.744420199119517, + "last_score": 8.746309046366513, + "completed_rounds": 3, + "stale_rounds": 3, + "reason": "patience" + }, + "accepted_commits": 3, + "selected_model_identity": "a40325483af9716ead0eabcfb972303bfe46bce2af242ffbab625124bd385e4f", + "best_validation_score": 8.744420199119517, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.744420199119517 + }, + "replay_sha256": "02681157cb470eb69374c7659a047cdcfc518e1b5ad34c0e5f4234a8d496826c" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 1.0123621250095312, + "artifacts": { + "model.bin": "f8207651e64ced1e5ab737d6de0f3e2186b9198ec4fa7e09b51c2cce7f9a0935", + "training.json": "208f63c7b8054bfddf6cd29ed3b928b684f2355f719103a6aa5889a6818f7495", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "dfbc562475e3d53270bfd3fde86eed53e84599318485542132e37225f3bef270" + }, + "application": "A8", + "fold": 1, + "job": { + "application": "A8", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-severity-055/A8/1/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-severity-055/A8/1/fit/model.bin", + "/private/tmp/openboost-severity-055/A8/1/fit/features.npz", + "/private/tmp/openboost-severity-055/A8/1/fit/replay.npz" + ], + "prediction_shape": [ + 5441 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.761126882630645, + "last_score": 8.761126882630645, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5ae6ada829af2064a8e6181b6a741dd7b52368410b9d505d3d71c95f4c1ae554", + "best_validation_score": 8.761126882630645, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.761126882630645 + }, + "replay_sha256": "dfbc562475e3d53270bfd3fde86eed53e84599318485542132e37225f3bef270" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.9518517079995945, + "artifacts": { + "model.bin": "a05d3ec5f87888456eb233d7d70479c2ab97c43d0ade2004afb41aa98c0018a1", + "training.json": "d83c477cfee51f2d6bd1ad60271b6e9e660fb08497ed15b3988afcfe673e06c5", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "452cf73aa087a23ca5ef9cf6abde8cc09cf067b3a09da48a9c2e1528b832b6d4" + }, + "application": "A8", + "fold": 2, + "job": { + "application": "A8", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-severity-055/A8/2/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-severity-055/A8/2/fit/model.bin", + "/private/tmp/openboost-severity-055/A8/2/fit/features.npz", + "/private/tmp/openboost-severity-055/A8/2/fit/replay.npz" + ], + "prediction_shape": [ + 5156 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.694319429072479, + "last_score": 8.695301150208172, + "completed_rounds": 4, + "stale_rounds": 1, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "b95233c54aa9f2a8bd1514ab763334771920aabc1d7b5ded7e6c34d04aac3065", + "best_validation_score": 8.694319429072479, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.694319429072479 + }, + "replay_sha256": "452cf73aa087a23ca5ef9cf6abde8cc09cf067b3a09da48a9c2e1528b832b6d4" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.9537569999956759, + "artifacts": { + "model.bin": "ff5af8bdf9a0200fd107443f759085658821d4cebd5fabd397a17a04ff34232e", + "training.json": "6b4a363ee8252aea43be04e064e0afbc12a18a7d701ca06ccdbb7c782c3eb08d", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "30b54989e39ce4fe963414ed71183068dcdd2c198028fe01dadfaf3e7a300345" + }, + "application": "A8", + "fold": 3, + "job": { + "application": "A8", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-severity-055/A8/3/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-severity-055/A8/3/fit/model.bin", + "/private/tmp/openboost-severity-055/A8/3/fit/features.npz", + "/private/tmp/openboost-severity-055/A8/3/fit/replay.npz" + ], + "prediction_shape": [ + 5247 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.536422353456345, + "last_score": 8.536422353456345, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "1f72764e0c35940a5a178c7e4458e40583b33fa3586409c3fed3c76f10e1cb4a", + "best_validation_score": 8.536422353456345, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.536422353456345 + }, + "replay_sha256": "30b54989e39ce4fe963414ed71183068dcdd2c198028fe01dadfaf3e7a300345" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-severity-055/A8/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.9636980829964159, + "artifacts": { + "model.bin": "472d979a02d4333f14c537b9ac950272c7a62260256262db5b21fa93a7906c71", + "training.json": "b729a9df916cfb638b25051bf0d4fa72f2f6e0b7a2eb0c983822dd1bef99a52b", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "bb081d124847db964d2a845be7ea5cfecd96713cdb893d7a95a0022840fdf7dd" + }, + "application": "A8", + "fold": 4, + "job": { + "application": "A8", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-severity-055/A8/4/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-severity-055/A8/4/fit/model.bin", + "/private/tmp/openboost-severity-055/A8/4/fit/features.npz", + "/private/tmp/openboost-severity-055/A8/4/fit/replay.npz" + ], + "prediction_shape": [ + 5321 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 8.53698175155106, + "last_score": 8.537179094305902, + "completed_rounds": 4, + "stale_rounds": 2, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "fa6ec9b84c3c47568710f5962e08842a112928b0cbaa256d461dd4208635eabc", + "best_validation_score": 8.53698175155106, + "output": "positive_claim_mean", + "selection_metric": "weighted_gamma_objective", + "target_units": "positive_claim_amount", + "raw_units": "log_mean", + "selected_validation_gamma_objective": 8.53698175155106 + }, + "replay_sha256": "bb081d124847db964d2a845be7ea5cfecd96713cdb893d7a95a0022840fdf7dd" + } + ] +} diff --git a/benchmarks/v1/evidence/severity-055/verification.json b/benchmarks/v1/evidence/severity-055/verification.json new file mode 100644 index 0000000..7b589a2 --- /dev/null +++ b/benchmarks/v1/evidence/severity-055/verification.json @@ -0,0 +1,47 @@ +{ + "source_and_artifact_hashes_match": true, + "rtol": 1e-12, + "atol": 1e-14, + "cells": [ + { + "fold": 0, + "selected_gamma_objective": 8.744420199119489, + "reported_objective": 8.744420199119517, + "absolute_difference": 2.842170943040401e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 1, + "selected_gamma_objective": 8.761126882630656, + "reported_objective": 8.761126882630645, + "absolute_difference": 1.0658141036401503e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 2, + "selected_gamma_objective": 8.694319429072493, + "reported_objective": 8.694319429072479, + "absolute_difference": 1.4210854715202004e-14, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 3, + "selected_gamma_objective": 8.536422353456352, + "reported_objective": 8.536422353456345, + "absolute_difference": 7.105427357601002e-15, + "source_row_ids_exact": true, + "positive_means": true + }, + { + "fold": 4, + "selected_gamma_objective": 8.5369817515511, + "reported_objective": 8.53698175155106, + "absolute_difference": 3.907985046680551e-14, + "source_row_ids_exact": true, + "positive_means": true + } + ] +} diff --git a/benchmarks/v1/evidence/structured-060/0/execution.json b/benchmarks/v1/evidence/structured-060/0/execution.json new file mode 100644 index 0000000..8abfb67 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "e723924c0b03211a7a260d1a535efd38afe31dddda52768edaa43f894125e8c0", + "predictions.npz": "cb0f328baed5184e48147235af96f32de178190b73fe5ff133e984ba960b7c17", + "training.json": "6ab94d465c7bd840dd581916032ccedc1f1acc84f7a2822893249ee61340faec", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.4035154579905793 +} diff --git a/benchmarks/v1/evidence/structured-060/0/model.bin b/benchmarks/v1/evidence/structured-060/0/model.bin new file mode 100644 index 0000000..ead7bcd --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A12", "output": "saturation_age28_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [37.32071074702098, 0.5413248546129181], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [3, 6, 6, -1, -1, -1, -1], "threshold": [26, 1, 2, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7179581251887457], [0.4762442345101819], [4.188450021046398], [3.3548090222179345], [0.38746594857936695], [1.7279265789266907], [7.70522410775616]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 13, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.21151669955741], [2.1389670104775664], [6.38314297258909], [3.580530991305283], [1.1983646804824106], [3.5326694404440313], [8.097961681030172]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 26, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.5363728467350761], [0.8063122900862215], [3.699213319912743], [0.5699043469867643], [5.323568849330519], [1.6641763415109592], [5.64064442751072]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 13, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.3204789995339445], [2.121474219432422], [6.867698872845022], [3.6969509823704003], [1.0942283348880646], [3.3447370423485037], [8.997192897086956]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 26, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.558526218686828], [1.181516588963035], [6.640066980633773], [0.9733760764566223], [5.138991596838019], [3.558595920064289], [11.00219572532939]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 13, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.9959033405821303], [1.950647086569014], [6.0876418673047015], [3.409187682239114], [0.9996914904349211], [3.2102044030231816], [7.822205415645604]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 13, 9, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.075464039461569], [1.414462448472161], [7.998840159648089], [2.7819543887849774], [0.5242745737324288], [2.793629183662627], [11.602543349308123]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.915625, 148.0, 155.0, 164.375, 167.0, 173.54, 190.34, 198.6, 206.953125, 213.093125, 216.9728125, 236.0, 249.1, 251.81, 254.34375, 275.03499999999997, 277.19, 290.35, 304.0, 313.3, 325.71250000000003, 333.0, 349.0, 361.70000000000005, 365.68125, 382.03125, 388.6, 424.0, 427.5, 473.125, 490.0625], [0.0, 0.02, 19.0, 24.0, 47.5, 76.0, 97.1, 101.5125, 114.0, 118.8875, 129.859375, 136.22500000000002, 147.2, 166.8, 177.0, 189.0, 189.2, 210.7, 238.090625], [0.0, 24.46, 78.86875, 94.0, 98.75, 100.375625, 109.875, 118.27, 119.6, 123.78, 125.08624999999999, 127.921875, 132.75, 141.903125, 167.0, 174.1290625], [145.9, 147.4, 153.9, 155.7, 158.0, 159.0, 159.48, 162.0, 164.03, 164.9, 167.0, 170.0875, 174.9, 176.1875, 178.5, 180.31, 181.74, 185.0, 185.7, 186.0, 189.0, 192.0, 193.8125, 198.0, 202.0, 203.5, 221.275, 228.0], [0.0, 3.5221875, 4.95375, 5.75, 6.65, 7.0, 7.77, 8.0, 8.08, 8.71, 9.0, 9.52, 10.0, 10.459375, 11.0, 11.33, 11.6, 11.66, 11.99, 12.8, 15.0, 16.5], [822.0, 852.1, 866.9625, 884.9, 909.59375, 923.0, 932.0, 935.4, 941.859375, 944.7, 959.0375, 966.0, 968.0, 974.0, 978.3249999999999, 990.96875, 1002.0, 1006.0, 1006.4, 1022.8, 1029.4, 1043.6, 1052.3, 1056.35, 1066.0, 1079.0, 1088.1, 1117.675], [594.0, 613.0625, 657.46875, 683.0125, 695.78125, 709.4, 729.003125, 745.0, 750.0, 755.8, 758.59, 764.0125, 774.05625, 777.8, 781.5, 785.38, 793.5, 798.9, 801.0, 804.01, 809.0, 823.2687500000001, 828.875, 844.953125, 850.0375, 863.0, 879.375, 887.1, 892.65625, 903.59], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 13, 1, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.6008890666410167], [1.6481965998091064], [5.082519669308745], [2.7882628175864306], [0.9284727865997475], [2.2513693710484177], [6.455740487861338]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/structured-060/0/predictions.npz b/benchmarks/v1/evidence/structured-060/0/predictions.npz new file mode 100644 index 0000000..7414925 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/structured-060/0/replay.npz b/benchmarks/v1/evidence/structured-060/0/replay.npz new file mode 100644 index 0000000..7414925 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/0/replay.npz differ diff --git a/benchmarks/v1/evidence/structured-060/0/training.json b/benchmarks/v1/evidence/structured-060/0/training.json new file mode 100644 index 0000000..cd43683 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/0/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 86.35143120334615, + "last_score": 86.35143120334615, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5b50ffbefa0b954e57a4328a8465649d930d3444669d1d7a740dedd04bacb19c", + "best_validation_score": 86.35143120334615, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 86.35143120334617 +} diff --git a/benchmarks/v1/evidence/structured-060/0/worker.log b/benchmarks/v1/evidence/structured-060/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/structured-060/1/execution.json b/benchmarks/v1/evidence/structured-060/1/execution.json new file mode 100644 index 0000000..dc00cdc --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "291cffaf6be535982048f5b6a8fb50e4f0477b6a23bb2fa920091990b42d72e9", + "predictions.npz": "79f25c1b44b3ba03cbde7192d9f8aeaef0582363f87f9e1a8c3d73efc84b6d53", + "training.json": "89e7090c23d706ffb058234989850a22f50656c8c38295bc41877ac71d2e697d", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.39672091700776946 +} diff --git a/benchmarks/v1/evidence/structured-060/1/model.bin b/benchmarks/v1/evidence/structured-060/1/model.bin new file mode 100644 index 0000000..1c59659 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A12", "output": "saturation_age28_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [35.660585967169304, 0.5413248546129181], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [6, 1, 3, -1, -1, -1, -1], "threshold": [3, 8, 20, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.9872532068904346], [4.096943910704092], [0.41104680225528156], [6.980979849987823], [1.4621017775524052], [0.5257542550950602], [-0.10699012222347411]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [24, 11, 14, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.1194342191707127], [2.273609214755308], [6.229012500567224], [3.983447499790617], [1.4041604426811687], [7.558239690563873], [4.095204313895144]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [6, 1, 3, -1, -1, -1, -1], "threshold": [3, 8, 1, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.6172933260159676], [4.563480843819521], [1.0701107558880425], [7.466632071670381], [1.9028848333891453], [3.929762694405279], [0.7678219500850246]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [24, 11, 14, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.1293116501739804], [2.243830074271611], [6.385692956107399], [4.134411439224245], [1.2832850310694683], [8.037693686014622], [3.7588456818759237]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [24, 11, 14, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.3805428620427076], [1.4170094054680396], [5.9315516429707715], [2.6512024855775813], [0.7900981536245834], [7.749917290193027], [3.06048618528196]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [20, 7, 15, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.851027827666052], [1.7008277212435772], [5.100482112601543], [3.8803647558931975], [1.0964812019856953], [6.913298826372634], [2.7569190834948922]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [24, 11, 14, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.882679397055811], [1.7286758570273246], [7.135413401627547], [3.4684070509810745], [0.8457824142607858], [9.567639573343262], [3.309895633436505]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[136.3, 144.0, 153.0, 158.6, 166.8, 173.675, 183.9, 190.68, 199.65, 212.07, 214.9, 233.81, 238.05, 250.0, 252.31, 272.6, 277.0, 284.5, 296.0, 302.0, 310.0, 317.95, 333.0, 342.0, 359.0, 379.5, 388.6, 425.0, 427.5, 480.0, 525.0], [0.0, 13.61, 20.0, 38.0, 53.8, 87.425, 97.82, 106.3, 114.5, 122.6, 134.0, 145.0, 161.3, 178.5, 190.0, 206.875, 236.0, 262.2], [0.0, 65.0, 90.075, 94.58, 96.965, 100.39, 108.0, 119.0, 121.97, 125.08, 126.0, 141.0, 148.075, 167.0, 174.24], [143.3, 153.5, 154.0, 157.0, 158.11, 159.48, 162.0, 164.77, 168.0, 171.1, 173.0, 175.5, 178.375, 180.31, 182.925, 185.0, 185.7, 186.0, 189.0, 191.6, 192.0, 193.3, 197.0, 200.0, 203.0, 203.5, 228.0], [0.0, 3.0, 4.567, 5.57, 6.0, 6.82, 7.48, 7.9325, 8.48, 8.975, 9.5, 9.88, 10.0, 10.3, 10.91, 11.5275, 11.91, 12.8, 15.9, 18.0], [831.95, 852.1, 867.0, 882.45, 911.8, 926.1, 932.0, 935.4, 938.2, 942.0, 947.04, 953.3499999999999, 961.0, 967.0, 968.0, 974.0, 987.76, 1001.8, 1006.4, 1012.4, 1027.6999999999998, 1046.9, 1048.7, 1056.0, 1061.7, 1078.7, 1088.1, 1112.0, 1125.0], [605.0, 613.0, 636.5, 670.0, 674.3, 695.2, 712.0, 721.0, 740.575, 750.0, 755.8, 763.0, 770.1, 777.8, 780.1425, 781.2, 784.825, 793.085, 799.175, 801.0, 804.01, 806.2, 812.75, 825.5, 839.2, 847.01, 856.1, 861.17, 886.575, 889.01, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [20, 7, 15, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.5717427771632293], [1.507582432923589], [4.653236992806804], [3.3710162163318005], [0.9907242555124975], [6.356299736538441], [2.453018400800455]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/structured-060/1/predictions.npz b/benchmarks/v1/evidence/structured-060/1/predictions.npz new file mode 100644 index 0000000..2d43629 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/structured-060/1/replay.npz b/benchmarks/v1/evidence/structured-060/1/replay.npz new file mode 100644 index 0000000..2d43629 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/1/replay.npz differ diff --git a/benchmarks/v1/evidence/structured-060/1/training.json b/benchmarks/v1/evidence/structured-060/1/training.json new file mode 100644 index 0000000..4878b75 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/1/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 107.65127949306486, + "last_score": 107.65127949306486, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bc5958133fde7992e0aff23ba41ed985c7cb78008c550cd0daf2b1512a4fe1de", + "best_validation_score": 107.65127949306486, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 107.65127949306486 +} diff --git a/benchmarks/v1/evidence/structured-060/1/worker.log b/benchmarks/v1/evidence/structured-060/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/structured-060/2/execution.json b/benchmarks/v1/evidence/structured-060/2/execution.json new file mode 100644 index 0000000..2c76202 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "7722978e5fd2f7b111183aab17ec66fe6e2d0c8e576ed9c9fc4450e656127ec2", + "predictions.npz": "542631411ebbebe01ac0986a02393e7e8d4ec7f5bfd3b5cef8a8dd11193ac24c", + "training.json": "c1dbc33157d257beb1e213aac646979e7d8760548e59f4639cf81c57c5401650", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.46374233400274534 +} diff --git a/benchmarks/v1/evidence/structured-060/2/model.bin b/benchmarks/v1/evidence/structured-060/2/model.bin new file mode 100644 index 0000000..03c3010 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A12", "output": "saturation_age28_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [36.418542438094484, 0.5413248546129181], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 5, -1, -1, -1, -1], "threshold": [30, 27, 24, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.7387789170416421], [0.5420905788060769], [6.307457610903162], [0.38745170481152336], [2.6968387172347956], [0.3422584461881042], [8.273040102728975]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [22, 12, 15, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.1545166119987518], [1.9860560199790689], [6.095261006084554], [3.353687749691943], [1.290347645371947], [7.129811055930821], [3.917316959854799]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 6, -1, -1, -1, -1], "threshold": [22, 7, 4, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.3426957911176074], [0.5369722770668095], [3.37550028604197], [1.4634913653856902], [0.3232563922718581], [6.427124956543603], [2.4267494144481265]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [22, 7, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.212812542897071], [1.960029552921373], [6.366790939404998], [4.22831898792102], [1.4349429009854504], [4.914569195392188], [9.011232334267133]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [22, 7, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.1809043803846233], [0.8387826596911474], [5.567350988007117], [2.84428746085243], [0.37711987142612513], [3.6100723517278355], [9.183442350122867]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 3, -1, -1, -1, -1], "threshold": [19, 11, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.97233395620136], [1.5462079444172196], [5.322973768725512], [3.02600424709976], [0.8701339965711217], [7.005700475809384], [2.6810296866226913]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [22, 7, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.780489075509147], [1.102750193097828], [7.013441519727586], [3.6247488008131015], [0.522052685264191], [4.910674662499079], [10.88052622275187]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[137.534375, 147.53125, 153.61249999999998, 160.75, 168.88, 182.04, 190.68, 200.0, 212.07, 213.73749999999998, 225.0, 236.0, 250.0, 251.37, 252.5740625, 275.07, 284.0, 295.1875, 305.3, 313.2625, 321.453125, 331.84375, 355.34375, 375.0, 380.0, 387.0, 424.0, 425.0, 446.0, 481.5625, 521.3125], [0.0, 15.0, 20.3125, 25.0, 45.21, 92.3375, 98.06, 106.3, 116.0, 120.78125, 133.86875, 144.77499999999998, 151.2, 163.99375, 175.84375, 189.2, 200.9, 236.0, 262.2], [0.0, 24.51, 79.0, 94.0, 97.39, 100.37, 108.49687499999999, 118.27, 121.62, 121.97, 124.78, 132.0, 141.0, 146.625, 173.53], [140.75, 146.09625, 153.5, 154.0, 157.0, 158.33, 159.385, 162.0, 163.05625, 168.0, 170.9125, 174.0, 178.0, 179.0, 181.0, 181.82, 184.84375, 185.7, 185.90625, 187.42, 189.0, 192.0, 192.94, 193.3, 197.89, 200.0, 203.484375, 210.625, 228.0], [0.0, 1.72, 4.571125, 5.69, 5.75, 6.35, 6.72, 7.084375, 7.84, 8.0, 8.5, 8.92, 9.478125, 9.9, 10.3, 10.91, 11.64, 11.91, 12.925, 14.319375, 16.5, 18.93125], [822.0, 842.0, 852.1, 863.015625, 879.625, 900.03125, 916.9, 931.2, 932.0, 936.2, 942.0, 944.7, 955.8, 965.4, 967.0, 968.0, 978.0, 987.76, 1002.0, 1006.2, 1014.3, 1028.4, 1043.6, 1047.6375, 1057.6, 1065.8, 1080.8, 1089.940625, 1114.5625, 1125.0], [611.8, 613.0, 631.0, 665.0, 687.6593750000001, 699.0, 712.0, 729.725, 745.0, 754.3, 757.73, 762.22, 769.0, 777.5, 780.11, 781.35, 785.3675, 792.67, 799.54, 801.0, 803.7, 806.0, 817.0, 825.0, 836.68125, 845.0, 858.0290625, 878.35375, 887.1, 892.15, 905.1059375], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 3, -1, -1, -1, -1], "threshold": [19, 7, 16, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.6994517246554133], [1.3743900042710089], [4.883790739866249], [0.2527879290673944], [2.136334850281379], [6.450193719267747], [2.4252885471495516]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/structured-060/2/predictions.npz b/benchmarks/v1/evidence/structured-060/2/predictions.npz new file mode 100644 index 0000000..93e3970 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/structured-060/2/replay.npz b/benchmarks/v1/evidence/structured-060/2/replay.npz new file mode 100644 index 0000000..93e3970 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/2/replay.npz differ diff --git a/benchmarks/v1/evidence/structured-060/2/training.json b/benchmarks/v1/evidence/structured-060/2/training.json new file mode 100644 index 0000000..9b9bc4f --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/2/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 98.35053291841649, + "last_score": 98.35053291841649, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "107e8f460377fd34edb745cba87112998e7d64708d001b8c0658951b3d59e304", + "best_validation_score": 98.35053291841649, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 98.35053291841649 +} diff --git a/benchmarks/v1/evidence/structured-060/2/worker.log b/benchmarks/v1/evidence/structured-060/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/structured-060/3/execution.json b/benchmarks/v1/evidence/structured-060/3/execution.json new file mode 100644 index 0000000..0b4329c --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "922c780fef44596f77a75d207cdb1cf419f207da60a7ea4dc3a62e822979fc79", + "predictions.npz": "99f4748adda6655a0d0ffffd271e3ed8604b2be1bbde5f7cc8e011f18c87ef2a", + "training.json": "2067ff22856601b4dd6e17e336c1a077f0dd0f184cbbf4eee6f1510ba2d5faac", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.399459874999593 +} diff --git a/benchmarks/v1/evidence/structured-060/3/model.bin b/benchmarks/v1/evidence/structured-060/3/model.bin new file mode 100644 index 0000000..3928c9e --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A12", "output": "saturation_age28_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [36.03886488705906, 0.5413248546129181], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [6, 1, 3, -1, -1, -1, -1], "threshold": [3, 7, 21, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.8191648069407534], [3.8216388705975497], [0.3686655734837728], [5.6859990971793195], [0.6913275738334826], [0.5184341558077927], [-0.30447018806116966]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 11, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.123815192080278], [2.0853408810911773], [6.2122102711315454], [3.601113413860693], [1.283053179469249], [4.907778317451434], [9.46533046976042]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 11, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.5895711245968238], [0.6530171966993693], [4.382829498857404], [1.3647770570581392], [0.27736427592793883], [2.9800108097275606], [7.934756561268696]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 11, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.151868629886536], [2.0691688365159036], [6.3724708124448295], [3.7407287032708036], [1.185184718857335], [4.723276505053015], [10.519849687222461]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 11, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.42351684031242], [1.0174351063932898], [6.616894518860501], [2.377446204626709], [0.3004080445929371], [3.821230847955995], [13.74474188217316]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 11, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.8136671962845736], [1.8867713987683117], [5.570065218743736], [3.3807720631773064], [1.0965638837854796], [2.9367840526156765], [7.3608336738366145]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [23, 11, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.9073683038820866], [1.226900593226025], [7.918980292898725], [2.9394382699632016], [0.3241930315282124], [4.979087473856258], [15.39221321010469]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.9125, 146.625, 154.3, 162.0, 166.925, 173.0, 182.04, 194.68, 203.5, 213.72, 218.85, 229.97, 244.11875, 251.37, 254.0, 266.0, 277.0, 286.3, 296.0, 304.4, 317.225, 332.5, 339.0, 350.0, 362.6, 380.0, 387.0, 397.0, 446.0, 480.0, 525.0], [0.0, 13.61, 22.0, 45.21, 66.4, 97.1, 108.475, 116.6, 128.9875, 141.3, 158.8, 170.3, 188.375, 189.0, 196.2875, 209.85, 250.17499999999998], [0.0, 71.0625, 86.625, 94.0, 97.195, 100.37, 107.0, 117.54, 118.31, 121.97, 124.16, 125.18, 131.0, 137.5625, 156.5, 172.37], [144.73749999999998, 156.76, 158.11, 159.0, 162.0, 164.77, 164.9, 167.8, 170.1, 172.0, 174.8, 175.46, 178.0, 181.1, 183.0, 185.0, 185.7, 186.0, 188.45, 190.39999999999998, 192.0, 192.94, 195.0, 196.25, 200.0, 202.75, 203.5, 219.5, 228.0], [0.0, 3.93, 4.63, 5.75, 6.12625, 6.86, 7.48, 7.79, 8.0, 8.49, 8.9125, 9.174999999999999, 9.61, 10.0, 10.425, 11.1, 11.6, 11.99, 13.0, 15.875], [822.0, 838.925, 852.9375, 878.6, 894.025, 914.2249999999999, 927.4, 932.0, 938.0, 944.7, 953.0, 963.4, 967.08, 968.0, 974.0, 987.76, 1002.975, 1006.3, 1007.8, 1022.8, 1028.4, 1043.6, 1047.0, 1056.0, 1065.8, 1075.7, 1080.8, 1090.0, 1125.0], [594.0, 613.0, 646.0, 670.0, 692.6, 702.75, 714.3, 730.4, 745.2, 748.625, 753.45, 755.8, 757.73, 762.1750000000001, 772.0, 780.0, 780.7375, 784.3, 792.585, 796.15, 800.89, 804.9875, 809.0, 821.125, 839.2, 849.6, 859.2, 870.32, 889.01, 901.8], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [23, 1, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.5463291954519653], [1.671108067791189], [5.14977471919329], [5.1832849600338395], [1.4146148155236404], [2.515354214414142], [6.945963044321555]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/structured-060/3/predictions.npz b/benchmarks/v1/evidence/structured-060/3/predictions.npz new file mode 100644 index 0000000..9946ceb Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/structured-060/3/replay.npz b/benchmarks/v1/evidence/structured-060/3/replay.npz new file mode 100644 index 0000000..9946ceb Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/3/replay.npz differ diff --git a/benchmarks/v1/evidence/structured-060/3/training.json b/benchmarks/v1/evidence/structured-060/3/training.json new file mode 100644 index 0000000..6571675 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/3/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 98.50360535028574, + "last_score": 98.50360535028574, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "1e9aa2d47bf8783ce736e9aabac7ce60d38ef40037be05f319826ff3ba0e0c0c", + "best_validation_score": 98.50360535028574, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 98.50360535028572 +} diff --git a/benchmarks/v1/evidence/structured-060/3/worker.log b/benchmarks/v1/evidence/structured-060/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/structured-060/4/execution.json b/benchmarks/v1/evidence/structured-060/4/execution.json new file mode 100644 index 0000000..1702837 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "ac23139aff7dc7bce97a5f5745b360d7672b83c982f3fce80c416fc6624cb4f3", + "predictions.npz": "a96b3fa851b8c5c2adf62c62d552121f72fdad29a6d6b0265f42f59366cf18d4", + "training.json": "42d4967646077aec0548fa2bc9d1471d289e6602b376380b91bf203c85fdc554", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.4077891670021927 +} diff --git a/benchmarks/v1/evidence/structured-060/4/model.bin b/benchmarks/v1/evidence/structured-060/4/model.bin new file mode 100644 index 0000000..ed0afd5 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A12", "output": "saturation_age28_mean", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "base": [35.13935080999359, 0.5413248546129181], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [6, 1, 3, -1, -1, -1, -1], "threshold": [2, 9, 20, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.6354395420296403], [2.4809096598217995], [0.4314254810123004], [3.8283585999111187], [1.0559322928630495], [0.5758872829264915], [-0.1304898338511173]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 11, 9, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.2476472880898806], [2.047604378680405], [6.466090675752134], [3.4809823127763786], [1.4111112795463212], [3.537274586472014], [8.489938871320614]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 1, -1, -1, -1, -1], "threshold": [22, 27, 5, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[1.5068939257485605], [0.671059686878258], [3.752941558946648], [0.5530653477238402], [2.9094265659814984], [1.4665780108898179], [6.425919178673175]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 11, 9, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[3.3194395412746487], [2.0049621836793667], [6.846172415594035], [3.5903430114129185], [1.3017763021875903], [3.3202662598125747], [9.2919057898581]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 11, 9, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.507432166559731], [0.9692490767291563], [6.642371245134305], [2.1982633910322353], [0.42593860704566855], [1.6189061287712025], [10.157689236550235]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 11, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.9506904929991453], [1.8445658629616717], [5.917499433954885], [3.2970077370824766], [1.2003203150108464], [2.3642976365108774], [7.48014983419036]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 3, 4, -1, -1, -1, -1], "threshold": [22, 11, 9, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.976486634546532], [1.1560833438516998], [7.870036868545699], [2.741150037245001], [0.4556636726266216], [2.1397038120081113], [11.877105613121543]]}, "mapping": [[1.0, 0.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13"], "cuts": [[139.6, 145.225, 153.0, 159.0, 167.0, 172.38, 182.04, 194.68, 203.5, 213.325625, 229.68, 234.75, 238.0, 250.0, 258.734375, 275.53499999999997, 288.28125, 297.16, 307.0, 313.3, 323.7, 332.5, 349.0, 362.6, 375.0, 382.0, 389.38750000000005, 425.0, 427.5, 458.36875000000003, 500.0], [0.0, 11.0, 21.4375, 26.0, 47.5, 86.35625, 95.0, 106.3, 110.703125, 118.8, 135.7, 144.925, 157.0, 172.725, 187.0, 189.0, 200.9, 236.0, 252.34375], [0.0, 74.959375, 89.7375, 94.58, 97.0, 100.51593749999999, 112.0, 118.16, 121.62, 124.25, 132.0, 142.8, 166.4375, 173.53], [141.8, 147.4, 153.5, 157.0, 159.1903125, 161.2125, 162.543125, 164.9, 167.90312500000002, 169.98125, 172.34, 175.5375, 178.5, 181.0, 183.0, 185.0, 185.7, 186.0, 186.66, 191.84, 192.0, 193.0, 195.0, 197.0, 200.09375, 203.17499999999998, 203.5, 214.2625, 228.0], [0.0, 1.72, 4.14, 5.33, 5.75, 6.47, 7.028125, 7.77, 8.0, 8.48, 8.9, 9.41, 9.73, 10.075, 10.453125, 11.13125, 11.6, 11.64, 12.165624999999999, 16.5, 18.6], [824.0, 852.1, 853.6625, 878.925, 887.6875, 923.09375, 932.0, 938.0, 944.7, 946.8, 953.0, 961.0, 966.71875, 968.0, 972.6, 975.6, 990.84375, 1002.0, 1006.0, 1007.2, 1012.4, 1025.0, 1040.0, 1046.9, 1047.0375, 1055.6, 1059.4, 1085.0, 1111.0], [594.0, 630.0, 670.0, 692.6, 704.3, 713.58125, 727.7875, 744.05, 750.0, 754.3, 755.8, 759.6875, 765.0, 774.0, 777.7156249999999, 780.44, 781.2, 789.0, 796.15, 801.0, 804.01, 806.9, 815.996875, 824.75, 839.2, 846.315625, 856.4, 868.9625, 887.1, 899.76, 905.9], [], [], [], [], [], [], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 4, -1, -1, -1, -1], "threshold": [22, 3, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[2.5973290877399635], [1.6486847601414036], [5.141361872146892], [-0.12058045650136862], [2.023178397229043], [2.1085446388040596], [6.474393542133164]]}, "mapping": [[0.0, 1.0]], "coefficient": 0.1}], "classes": null}} diff --git a/benchmarks/v1/evidence/structured-060/4/predictions.npz b/benchmarks/v1/evidence/structured-060/4/predictions.npz new file mode 100644 index 0000000..0d07079 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/structured-060/4/replay.npz b/benchmarks/v1/evidence/structured-060/4/replay.npz new file mode 100644 index 0000000..0d07079 Binary files /dev/null and b/benchmarks/v1/evidence/structured-060/4/replay.npz differ diff --git a/benchmarks/v1/evidence/structured-060/4/training.json b/benchmarks/v1/evidence/structured-060/4/training.json new file mode 100644 index 0000000..b2f2287 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/4/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 127.67160192185678, + "last_score": 127.67160192185678, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5ff9c74bdb0e6db51ec400f1c99d7a84210e8907038e9746e7189edfea0513ba", + "best_validation_score": 127.67160192185678, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 127.67160192185676 +} diff --git a/benchmarks/v1/evidence/structured-060/4/worker.log b/benchmarks/v1/evidence/structured-060/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/structured-060/README.md b/benchmarks/v1/evidence/structured-060/README.md new file mode 100644 index 0000000..43ea7ff --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/README.md @@ -0,0 +1,28 @@ +# Current A12 structured saturation integration + +All five frozen concrete folds pass the public Formula worker and exact fresh +replay. Encoded composition predictors feed parameter trees; age in days divided +by 28 is a separate positive structure role. Ordinary GBDT packets retain age as +a feature. Dedicated formula-input packets remove that appended column only. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --offline --no-sync --with xlrd python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-structured-060-retry --applications A12 +``` + +The initial run without xlrd failed during source export before any fit. Its +failure and the retry dependency version/CLI are retained in verification.json. +The retry used cached xlrd in an ephemeral uv environment, without modifying +project dependencies. Pinned concrete source and preprocessing remain unchanged. + +Four rounds, depth two, 32 bins, learning rate 0.1, patience three, public Formula +backtracking defaults and one CPU thread; unchanged 90/30-second fit/replay caps. +No test scoring, profiler, concurrent regression, memory cap or CUDA. Host: Apple +M4 Max, 51539607552 bytes RAM (same host as Sprint 052); Python reports x86_64. +Peak memory is unmeasured; export is outside fit timing. + +Summary retains revision/dirty state, source/data/packet hashes, commands, +environment and results. Each fold retains raw model/predictions/replay/training, +execution records and log. All hashes match. Independent softplus/saturation and +weighted half-squared-error calculations match outputs/scores; age separation +and source IDs match exactly. This is integration, not extrapolation or A12 +quality/search acceptance, baseline parity, or a performance claim. diff --git a/benchmarks/v1/evidence/structured-060/summary.json b/benchmarks/v1/evidence/structured-060/summary.json new file mode 100644 index 0000000..809db3b --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/summary.json @@ -0,0 +1,626 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A7/A8/A9/A10/A11/A12 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "3ff97c3d249271f6c8423b95562ccf03d773b676", + "dirty": true, + "argv": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-structured-060-retry", + "--applications", + "A12" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "d71a5a0f9a5bf38c9a12c82999820d15470c6b95a0c3310fc2877ff33a0bcb8c", + "benchmarks/v1/openboost_predict.py": "a8edf51cdf5be05536545ba8f56dce336cd71d2134b3b9debf7cc0bd29bd628f", + "benchmarks/v1/openboost_worker_smoke.py": "ff6413c05cd2296f9e70f3508b2f53a04e825380eaeabd95bb57cdb37e6f2ba0", + "benchmarks/v1/worker_data.py": "6705574af0989bc5f34c3bb43a5466c86a34c08dcb6ea549cf9ad885c04719d0", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A12": { + "application": "A12", + "dataset": "concrete", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "1409cb024293499551527b6bbf635c9d01e97de7731ec170d4e5950b13aea531" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "810fd9c5067134e4de2fe9ab61092908713a2bcb3fc99f9aa86d6835649bf878" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "616c8feb197f7cce51a5c21fa3badb29532f4453d8fb1a212c5e71caa403a969" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "2cf36ce99d30c832c86a07a1cf250d8a992f2c2a6d1cdd3089d220eb42c88534" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "cc6daae2aa8d170f17aa018439cfbbc5e606a9ece3c455a455bf8c1a985e6a3f" + }, + "formula-input": { + "path": "0/formula-input.npz", + "sha256": "8e23b2b69e6288cb62410b30a44857006066e8783d27e360080a067b9637d77b" + }, + "validation-structure": { + "path": "0/validation-structure.npz", + "sha256": "59ebd7cd5785f96c4f808dcde1ef3709a81b346b6937073bc09f7cb157962a07" + }, + "test-structure": { + "path": "0/test-structure.npz", + "sha256": "05fe7a98b2dc54e8824293afdf17137715ae6d3616919978de9f729a18ebf0d4" + } + }, + "metadata": { + "age_train_range": [ + 0.03571428571428571, + 13.035714285714286 + ] + } + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "d17dd325727de736821bf3435ad5051ae36c00b7d4f7efcf99dcb16dacfbc7b4" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "2bfd635778f518a16be87778cc72601cd927d9e34be5e6eda638480ac7947cc9" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "8f79da547abcce2ff7c262cf4f25b54f2ca2fd0af13c3f02b4074af02007ce7c" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "a4612a16d835cd2d712f37484d5ff3db4f0e2a0c22bde74b581d6dc8bf54df64" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "19478323cc0ec2d8bf8378c375c29afae01d1dacae29a40a70666f071e49960a" + }, + "formula-input": { + "path": "1/formula-input.npz", + "sha256": "47459d1692775a02dec8a53224ece7e492252539b67aced659d434a38b26a932" + }, + "validation-structure": { + "path": "1/validation-structure.npz", + "sha256": "b8e961ee37afa13f939ac261834c328667f1aaf44c8f88db85d8d4b813d96880" + }, + "test-structure": { + "path": "1/test-structure.npz", + "sha256": "1ad63654994b3fdc6aad9e318410b8df8bf5bcd39c04a28db640b4059e7f454b" + } + }, + "metadata": { + "age_train_range": [ + 0.03571428571428571, + 13.035714285714286 + ] + } + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "074688f4eb2b2a68e812f8af1768364d0dc2ca08a9962f930076c9d1e8e5d9ef" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "edf5a2d705375a06bdc9ef06e647ea150dc099c2ff44139e7b0675d3a7e0d1a0" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "bb1b0fe4e32d296a92a0d8971aa2ae88d16f766e39868e475c93c7ce50d83aec" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "ca23ff9eea4c59b9acfc2fd36fa9b3404b908fae1a566a9f1d06673b84215478" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "17ad5fce88828052c181bdaf81a8022bc0201fdb7952015bf9df16953cf693ab" + }, + "formula-input": { + "path": "2/formula-input.npz", + "sha256": "00379285c100d8aa48276da08b565f591a2228917e44e64014926db4d5158ee3" + }, + "validation-structure": { + "path": "2/validation-structure.npz", + "sha256": "a9c070ca3d998086e4a02acc40d0953430edb43934db4f649aca2a756bcf6360" + }, + "test-structure": { + "path": "2/test-structure.npz", + "sha256": "c25925aa72084a9b3d9d62285ca793a49bf820333c2f4993734caa4a3fc33302" + } + }, + "metadata": { + "age_train_range": [ + 0.03571428571428571, + 13.035714285714286 + ] + } + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "1722d246878ffead019d3d9b94e7343325c9f162c1a565ddd95664d6dd37f959" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "bf38782ee6b21b3748ab91c048be51663bc2517dd4734cee8b9d5932b6a49a7f" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "9b102f96fe81c4177da8c2ab0d0bf17107f80576544dc6337bfe1af978974871" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "9c07a03bd91275e86df11fea4f2c835261a305b626a76a3b10a4621c979ed877" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "3cdf2601b954023779c32ab58401241c201cc0bfb4a3951f99ced2c0dd3609cf" + }, + "formula-input": { + "path": "3/formula-input.npz", + "sha256": "721bf7ab4587781d97b4a381c3b90d77d6cf20ac7974f584bde23d4aecbe2a4a" + }, + "validation-structure": { + "path": "3/validation-structure.npz", + "sha256": "7e5be679ee51be580728d0b93086ba61de01c61badb36f8a74f08636dc1e95bf" + }, + "test-structure": { + "path": "3/test-structure.npz", + "sha256": "ada5a1c15447085d3f249c39a17b8df6dd04b2bc507d97dec03cef434c3d5dde" + } + }, + "metadata": { + "age_train_range": [ + 0.03571428571428571, + 13.035714285714286 + ] + } + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "c82bdfd8634be906a9717cfe1d17175519311ad4b262c4b5ef9a30ef4b04abce" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "5d8f14f0b1648ea0d8322d6a1114cf1745367f6ba0f17f3268fd68620dc7e370" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "a8a6d3bd7f7844e4829cca0761b8085d3d352b3ef1cba89663cf22577a43d8a2" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "6b266d810547087863bcd3e9c03ab123b549e461f8a4f02cc19ddafea08cab0d" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "d2423a1c9cafa045ea935f6fc952e037402f8c21cb660ab2e0a8ac412d67150f" + }, + "formula-input": { + "path": "4/formula-input.npz", + "sha256": "dda8433ac442de41b483121fa3f3a7e44a6148ea4a4cbea0c369863b9e6577af" + }, + "validation-structure": { + "path": "4/validation-structure.npz", + "sha256": "525e5e63ecc36671289b3a60d4b3efecf69f6cdfc203db5dc8b34cc8de26717b" + }, + "test-structure": { + "path": "4/test-structure.npz", + "sha256": "e6a7b82c20849d16220050d3112a342e460a81f12e248216a0b112280c0a6804" + } + }, + "metadata": { + "age_train_range": [ + 0.03571428571428571, + 13.035714285714286 + ] + } + } + ], + "source_freeze_sha256": "094049cfe8a9137b02a2599e6be823d669f191d31828989a9dae46797ef6e439", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6705574af0989bc5f34c3bb43a5466c86a34c08dcb6ea549cf9ad885c04719d0", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.4035154579905793, + "artifacts": { + "model.bin": "e723924c0b03211a7a260d1a535efd38afe31dddda52768edaa43f894125e8c0", + "training.json": "6ab94d465c7bd840dd581916032ccedc1f1acc84f7a2822893249ee61340faec", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "cb0f328baed5184e48147235af96f32de178190b73fe5ff133e984ba960b7c17" + }, + "application": "A12", + "fold": 0, + "job": { + "application": "A12", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-structured-060-retry/A12/0/formula-input.npz" + }, + "replay_command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-structured-060-retry/A12/0/fit/model.bin", + "/private/tmp/openboost-structured-060-retry/A12/0/fit/features.npz", + "/private/tmp/openboost-structured-060-retry/A12/0/fit/replay.npz" + ], + "prediction_shape": [ + 187 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 86.35143120334615, + "last_score": 86.35143120334615, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5b50ffbefa0b954e57a4328a8465649d930d3444669d1d7a740dedd04bacb19c", + "best_validation_score": 86.35143120334615, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 86.35143120334617 + }, + "replay_sha256": "cb0f328baed5184e48147235af96f32de178190b73fe5ff133e984ba960b7c17" + }, + { + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.39672091700776946, + "artifacts": { + "model.bin": "291cffaf6be535982048f5b6a8fb50e4f0477b6a23bb2fa920091990b42d72e9", + "training.json": "89e7090c23d706ffb058234989850a22f50656c8c38295bc41877ac71d2e697d", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "79f25c1b44b3ba03cbde7192d9f8aeaef0582363f87f9e1a8c3d73efc84b6d53" + }, + "application": "A12", + "fold": 1, + "job": { + "application": "A12", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-structured-060-retry/A12/1/formula-input.npz" + }, + "replay_command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-structured-060-retry/A12/1/fit/model.bin", + "/private/tmp/openboost-structured-060-retry/A12/1/fit/features.npz", + "/private/tmp/openboost-structured-060-retry/A12/1/fit/replay.npz" + ], + "prediction_shape": [ + 201 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 107.65127949306486, + "last_score": 107.65127949306486, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "bc5958133fde7992e0aff23ba41ed985c7cb78008c550cd0daf2b1512a4fe1de", + "best_validation_score": 107.65127949306486, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 107.65127949306486 + }, + "replay_sha256": "79f25c1b44b3ba03cbde7192d9f8aeaef0582363f87f9e1a8c3d73efc84b6d53" + }, + { + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.46374233400274534, + "artifacts": { + "model.bin": "7722978e5fd2f7b111183aab17ec66fe6e2d0c8e576ed9c9fc4450e656127ec2", + "training.json": "c1dbc33157d257beb1e213aac646979e7d8760548e59f4639cf81c57c5401650", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "542631411ebbebe01ac0986a02393e7e8d4ec7f5bfd3b5cef8a8dd11193ac24c" + }, + "application": "A12", + "fold": 2, + "job": { + "application": "A12", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-structured-060-retry/A12/2/formula-input.npz" + }, + "replay_command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-structured-060-retry/A12/2/fit/model.bin", + "/private/tmp/openboost-structured-060-retry/A12/2/fit/features.npz", + "/private/tmp/openboost-structured-060-retry/A12/2/fit/replay.npz" + ], + "prediction_shape": [ + 215 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 98.35053291841649, + "last_score": 98.35053291841649, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "107e8f460377fd34edb745cba87112998e7d64708d001b8c0658951b3d59e304", + "best_validation_score": 98.35053291841649, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 98.35053291841649 + }, + "replay_sha256": "542631411ebbebe01ac0986a02393e7e8d4ec7f5bfd3b5cef8a8dd11193ac24c" + }, + { + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.399459874999593, + "artifacts": { + "model.bin": "922c780fef44596f77a75d207cdb1cf419f207da60a7ea4dc3a62e822979fc79", + "training.json": "2067ff22856601b4dd6e17e336c1a077f0dd0f184cbbf4eee6f1510ba2d5faac", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "99f4748adda6655a0d0ffffd271e3ed8604b2be1bbde5f7cc8e011f18c87ef2a" + }, + "application": "A12", + "fold": 3, + "job": { + "application": "A12", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-structured-060-retry/A12/3/formula-input.npz" + }, + "replay_command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-structured-060-retry/A12/3/fit/model.bin", + "/private/tmp/openboost-structured-060-retry/A12/3/fit/features.npz", + "/private/tmp/openboost-structured-060-retry/A12/3/fit/replay.npz" + ], + "prediction_shape": [ + 217 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 98.50360535028574, + "last_score": 98.50360535028574, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "1e9aa2d47bf8783ce736e9aabac7ce60d38ef40037be05f319826ff3ba0e0c0c", + "best_validation_score": 98.50360535028574, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 98.50360535028572 + }, + "replay_sha256": "99f4748adda6655a0d0ffffd271e3ed8604b2be1bbde5f7cc8e011f18c87ef2a" + }, + { + "command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-structured-060-retry/A12/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.4077891670021927, + "artifacts": { + "model.bin": "ac23139aff7dc7bce97a5f5745b360d7672b83c982f3fce80c416fc6624cb4f3", + "training.json": "42d4967646077aec0548fa2bc9d1471d289e6602b376380b91bf203c85fdc554", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "a96b3fa851b8c5c2adf62c62d552121f72fdad29a6d6b0265f42f59366cf18d4" + }, + "application": "A12", + "fold": 4, + "job": { + "application": "A12", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-structured-060-retry/A12/4/formula-input.npz" + }, + "replay_command": [ + "/tmp/openboost-research-uv-cache/builds-v0/.tmp3iI6Gk/bin/python", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-structured-060-retry/A12/4/fit/model.bin", + "/private/tmp/openboost-structured-060-retry/A12/4/fit/features.npz", + "/private/tmp/openboost-structured-060-retry/A12/4/fit/replay.npz" + ], + "prediction_shape": [ + 211 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 127.67160192185678, + "last_score": 127.67160192185678, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "5ff9c74bdb0e6db51ec400f1c99d7a84210e8907038e9746e7189edfea0513ba", + "best_validation_score": 127.67160192185678, + "output": "saturation_age28_mean", + "selection_metric": "weighted_half_squared_error", + "structure_units": "age_days_divided_by_28", + "selected_validation_half_squared_error": 127.67160192185676 + }, + "replay_sha256": "a96b3fa851b8c5c2adf62c62d552121f72fdad29a6d6b0265f42f59366cf18d4" + } + ] +} diff --git a/benchmarks/v1/evidence/structured-060/verification.json b/benchmarks/v1/evidence/structured-060/verification.json new file mode 100644 index 0000000..3faee65 --- /dev/null +++ b/benchmarks/v1/evidence/structured-060/verification.json @@ -0,0 +1,42 @@ +{ + "source_and_output_hashes_match": true, + "xlrd": "2.0.2", + "cli": "UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --offline --no-sync --with xlrd python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-structured-060-retry --applications A12", + "initial_attempt": { + "output": "/tmp/openboost-structured-060", + "error": "ModuleNotFoundError: No module named 'xlrd'", + "phase": "source export; no fits ran" + }, + "cells": [ + { + "fold": 0, + "independent_half_squared_error": 86.35143120334617, + "age_separation_exact": true, + "source_ids_exact": true + }, + { + "fold": 1, + "independent_half_squared_error": 107.65127949306486, + "age_separation_exact": true, + "source_ids_exact": true + }, + { + "fold": 2, + "independent_half_squared_error": 98.35053291841649, + "age_separation_exact": true, + "source_ids_exact": true + }, + { + "fold": 3, + "independent_half_squared_error": 98.50360535028572, + "age_separation_exact": true, + "source_ids_exact": true + }, + { + "fold": 4, + "independent_half_squared_error": 127.67160192185676, + "age_separation_exact": true, + "source_ids_exact": true + } + ] +} diff --git a/benchmarks/v1/evidence/survival-059/0/execution.json b/benchmarks/v1/evidence/survival-059/0/execution.json new file mode 100644 index 0000000..bf7dd21 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/0/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "3e44348ed1c83dbeb2ae81692eaa2bbd361636d8a691e7ccf3ca727dee6a077a", + "predictions.npz": "5efdecd51d96878bac83756328c26637709a5f5103726d9fa7aa76ab9669b32e", + "training.json": "1619102874afc30cbd709e066ad79a4572041f2582bf7f85d207e18a3fff79fd", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/0/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.1910145829897374 +} diff --git a/benchmarks/v1/evidence/survival-059/0/model.bin b/benchmarks/v1/evidence/survival-059/0/model.bin new file mode 100644 index 0000000..20ce838 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/0/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A10", "output": "lognormal_location_scale", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "base": [4.294995604484294], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 70.0, 72.5, 80.0], [1.5, 2.0, 3.0, 3.5, 4.0, 5.0, 6.5, 8.0, 10.0, 10.5, 11.0, 12.0, 13.5, 15.0, 18.0], [38.5, 40.0, 45.5, 48.0, 49.5, 52.0, 53.5, 55.0, 57.0, 60.0, 60.5, 62.0, 62.5, 63.0, 64.0, 65.0, 66.0, 67.0, 68.0, 69.0, 69.5, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 1, 8, -1, -1, -1, -1], "threshold": [2, 8, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03866417671480208], [-0.8893543470193829], [0.374337094908173], [-0.6914998471658912], [-1.593682118232433], [0.7955474425150861], [-0.3526685365625972]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 70.0, 72.5, 80.0], [1.5, 2.0, 3.0, 3.5, 4.0, 5.0, 6.5, 8.0, 10.0, 10.5, 11.0, 12.0, 13.5, 15.0, 18.0], [38.5, 40.0, 45.5, 48.0, 49.5, 52.0, 53.5, 55.0, 57.0, 60.0, 60.5, 62.0, 62.5, 63.0, 64.0, 65.0, 66.0, 67.0, 68.0, 69.0, 69.5, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [2, 4, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03254534497500731], [-0.8105099189197984], [0.33782706803371504], [-1.511054606505684], [-0.6177836391528935], [0.7187633541191341], [-0.31885937606679626]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 70.0, 72.5, 80.0], [1.5, 2.0, 3.0, 3.5, 4.0, 5.0, 6.5, 8.0, 10.0, 10.5, 11.0, 12.0, 13.5, 15.0, 18.0], [38.5, 40.0, 45.5, 48.0, 49.5, 52.0, 53.5, 55.0, 57.0, 60.0, 60.5, 62.0, 62.5, 63.0, 64.0, 65.0, 66.0, 67.0, 68.0, 69.0, 69.5, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 1, 8, -1, -1, -1, -1], "threshold": [2, 8, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.027173536237346668], [-0.7389188859411556], [0.30487174828778396], [-0.5525885379089218], [-1.4278221864285336], [0.6493591851137881], [-0.28830093850110217]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 70.0, 72.5, 80.0], [1.5, 2.0, 3.0, 3.5, 4.0, 5.0, 6.5, 8.0, 10.0, 10.5, 11.0, 12.0, 13.5, 15.0, 18.0], [38.5, 40.0, 45.5, 48.0, 49.5, 52.0, 53.5, 55.0, 57.0, 60.0, 60.5, 62.0, 62.5, 63.0, 64.0, 65.0, 66.0, 67.0, 68.0, 69.0, 69.5, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 0, 8, -1, -1, -1, -1], "threshold": [4, 2, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.022469999286119147], [-0.3409958311906151], [0.5213997662283751], [-0.6738716732902009], [-0.05479537042253252], [0.8868547230523296], [-0.14806567481596808]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "sigma": 1.0} diff --git a/benchmarks/v1/evidence/survival-059/0/predictions.npz b/benchmarks/v1/evidence/survival-059/0/predictions.npz new file mode 100644 index 0000000..2ce2f22 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/0/predictions.npz differ diff --git a/benchmarks/v1/evidence/survival-059/0/replay.npz b/benchmarks/v1/evidence/survival-059/0/replay.npz new file mode 100644 index 0000000..2ce2f22 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/0/replay.npz differ diff --git a/benchmarks/v1/evidence/survival-059/0/training.json b/benchmarks/v1/evidence/survival-059/0/training.json new file mode 100644 index 0000000..6c412af --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/0/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.151468378018473, + "last_score": 5.151468378018473, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "9e924a655a09b89354e209e860f9edc33e66ea270ba4f6afaa7e75bc8a515de9", + "best_validation_score": 5.151468378018473, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.151468378018473 +} diff --git a/benchmarks/v1/evidence/survival-059/0/worker.log b/benchmarks/v1/evidence/survival-059/0/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/survival-059/1/execution.json b/benchmarks/v1/evidence/survival-059/1/execution.json new file mode 100644 index 0000000..256e1c6 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/1/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "ded3e9cbf24950f071441b72a8dff0c77b0b0491634857d512d9db90cf7ffd3a", + "predictions.npz": "5b67d4f0dc54930bfbc41000dc7d173c42d337ddef1eead0217b4a0163d74d4e", + "training.json": "516f69d8b7e3c1d5e02d8d582f3830f4eecdce90979de31f8ad6697e43558c0f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/1/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.24341795899090357 +} diff --git a/benchmarks/v1/evidence/survival-059/1/model.bin b/benchmarks/v1/evidence/survival-059/1/model.bin new file mode 100644 index 0000000..f5ff579 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/1/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A10", "output": "lognormal_location_scale", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "base": [4.109600672585809], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 35.0, 40.0, 45.0, 50.0, 60.0, 70.0, 77.5, 80.0, 85.0], [2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 8.0, 9.0, 9.5, 10.0, 11.0, 12.0, 13.0, 15.0, 20.0, 25.0, 32.5], [37.5, 39.0, 41.0, 43.0, 45.0, 48.5, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 64.0, 65.0, 65.5, 66.0, 67.0, 68.0, 69.0, 70.0, 70.5], [], [], [], [0.0], [0.0], [0.0], [0.0, 0.5], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 9, 10, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.044676887728507655], [-0.9440500879037638], [0.45122397917779533], [-1.9228482015380912], [-0.5051660733182853], [0.3253822243899047], [1.5183831257645803]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 35.0, 40.0, 45.0, 50.0, 60.0, 70.0, 77.5, 80.0, 85.0], [2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 8.0, 9.0, 9.5, 10.0, 11.0, 12.0, 13.0, 15.0, 20.0, 25.0, 32.5], [37.5, 39.0, 41.0, 43.0, 45.0, 48.5, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 64.0, 65.0, 65.5, 66.0, 67.0, 68.0, 69.0, 70.0, 70.5], [], [], [], [0.0], [0.0], [0.0], [0.0, 0.5], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 9, -1, -1, -1, -1], "threshold": [3, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03952056120989401], [-0.8595989864393773], [0.40959454661973643], [-1.7580326414062546], [-0.4573008725706242], [0.2073676632113676], [0.9646922112337647]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 35.0, 40.0, 45.0, 50.0, 60.0, 70.0, 77.5, 80.0, 85.0], [2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 8.0, 9.0, 9.5, 10.0, 11.0, 12.0, 13.0, 15.0, 20.0, 25.0, 32.5], [37.5, 39.0, 41.0, 43.0, 45.0, 48.5, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 64.0, 65.0, 65.5, 66.0, 67.0, 68.0, 69.0, 70.0, 70.5], [], [], [], [0.0], [0.0], [0.0], [0.0, 0.5], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 6, 10, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03431967917599039], [-0.7827484824025293], [0.3710353465935928], [-1.713747506491406], [-0.44354733340636565], [0.25757860623761714], [1.3413358645868714]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 35.0, 40.0, 45.0, 50.0, 60.0, 70.0, 77.5, 80.0, 85.0], [2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 8.0, 9.0, 9.5, 10.0, 11.0, 12.0, 13.0, 15.0, 20.0, 25.0, 32.5], [37.5, 39.0, 41.0, 43.0, 45.0, 48.5, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 60.0, 62.0, 63.0, 64.0, 65.0, 65.5, 66.0, 67.0, 68.0, 69.0, 70.0, 70.5], [], [], [], [0.0], [0.0], [0.0], [0.0, 0.5], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 6, 10, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.030221922935144592], [-0.7133661476718207], [0.33692937847762056], [-1.5709352142837893], [-0.40142292747196706], [0.23238521989615002], [1.234247101807844]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "sigma": 1.0} diff --git a/benchmarks/v1/evidence/survival-059/1/predictions.npz b/benchmarks/v1/evidence/survival-059/1/predictions.npz new file mode 100644 index 0000000..805b825 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/1/predictions.npz differ diff --git a/benchmarks/v1/evidence/survival-059/1/replay.npz b/benchmarks/v1/evidence/survival-059/1/replay.npz new file mode 100644 index 0000000..805b825 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/1/replay.npz differ diff --git a/benchmarks/v1/evidence/survival-059/1/training.json b/benchmarks/v1/evidence/survival-059/1/training.json new file mode 100644 index 0000000..f6470da --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/1/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.280621807552828, + "last_score": 5.280621807552828, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "3b699c191c9cf5cdc575324bc68316d3ddd409c97b9c91e3639d6d8a8ebed8c4", + "best_validation_score": 5.280621807552828, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.280621807552828 +} diff --git a/benchmarks/v1/evidence/survival-059/1/worker.log b/benchmarks/v1/evidence/survival-059/1/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/survival-059/2/execution.json b/benchmarks/v1/evidence/survival-059/2/execution.json new file mode 100644 index 0000000..9646aab --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/2/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "04b94690b2ae906872be614e037af5541d6e23671c37c99ef14dbc5889ac4ff8", + "predictions.npz": "f8886e59eb538e33b3cd08227e03e902d7f7931c8f16c010e19242e0d2f96a7c", + "training.json": "63ade67a6112b08365f06af320156f78e25844ab990001f088525b2dc10ce0e5", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/2/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.24214291700627655 +} diff --git a/benchmarks/v1/evidence/survival-059/2/model.bin b/benchmarks/v1/evidence/survival-059/2/model.bin new file mode 100644 index 0000000..c290a7c --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/2/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A10", "output": "lognormal_location_scale", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "base": [4.0380127326909765], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 72.5, 80.0, 82.5], [2.0, 3.0, 4.0, 4.5, 5.0, 8.0, 9.0, 9.5, 11.0, 12.0, 14.0, 15.0, 18.0, 22.0, 28.0, 32.5], [36.5, 39.0, 42.0, 43.0, 44.5, 47.0, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 59.5, 60.0, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.5, 67.0, 68.0, 69.0, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 1, 8, -1, -1, -1, -1], "threshold": [2, 11, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.036854703096646874], [-0.8899139570396362], [0.5665604254847326], [-0.6180993930034571], [-1.8638440359161217], [0.7880149431988143], [0.006390286740955742]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 72.5, 80.0, 82.5], [2.0, 3.0, 4.0, 4.5, 5.0, 8.0, 9.0, 9.5, 11.0, 12.0, 14.0, 15.0, 18.0, 22.0, 28.0, 32.5], [36.5, 39.0, 42.0, 43.0, 44.5, 47.0, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 59.5, 60.0, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.5, 67.0, 68.0, 69.0, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [2, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.031110998348207887], [-0.8090264437429091], [0.5118037994595376], [-1.522798800230975], [-0.47694329584755185], [0.7120342362958665], [0.005791877551163682]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 72.5, 80.0, 82.5], [2.0, 3.0, 4.0, 4.5, 5.0, 8.0, 9.0, 9.5, 11.0, 12.0, 14.0, 15.0, 18.0, 22.0, 28.0, 32.5], [36.5, 39.0, 42.0, 43.0, 44.5, 47.0, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 59.5, 60.0, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.5, 67.0, 68.0, 69.0, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 1, 8, -1, -1, -1, -1], "threshold": [2, 11, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.026437922965068163], [-0.7346825619563381], [0.46232283003151853], [-0.48315012174155997], [-1.6513474998627586], [0.6433479227973988], [0.005249502549945983]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 72.5, 80.0, 82.5], [2.0, 3.0, 4.0, 4.5, 5.0, 8.0, 9.0, 9.5, 11.0, 12.0, 14.0, 15.0, 18.0, 22.0, 28.0, 32.5], [36.5, 39.0, 42.0, 43.0, 44.5, 47.0, 49.0, 50.0, 52.0, 53.0, 55.0, 57.0, 59.5, 60.0, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.5, 67.0, 68.0, 69.0, 70.0, 71.5], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0, 0.5], [0.0, 0.5], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [2, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.021974813397785075], [-0.668240449841027], [0.4176101536464709], [-1.3315122585209584], [-0.3636583123233493], [0.581257527230705], [0.004757915304866092]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "sigma": 1.0} diff --git a/benchmarks/v1/evidence/survival-059/2/predictions.npz b/benchmarks/v1/evidence/survival-059/2/predictions.npz new file mode 100644 index 0000000..2f3b6c1 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/2/predictions.npz differ diff --git a/benchmarks/v1/evidence/survival-059/2/replay.npz b/benchmarks/v1/evidence/survival-059/2/replay.npz new file mode 100644 index 0000000..2f3b6c1 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/2/replay.npz differ diff --git a/benchmarks/v1/evidence/survival-059/2/training.json b/benchmarks/v1/evidence/survival-059/2/training.json new file mode 100644 index 0000000..0ba68f5 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/2/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.270852788932159, + "last_score": 5.270852788932159, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "c4721274533ba3719ac03bcb7881c0a09c405f8e2a0583b7b3492fada5c5c9b7", + "best_validation_score": 5.270852788932159, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.270852788932159 +} diff --git a/benchmarks/v1/evidence/survival-059/2/worker.log b/benchmarks/v1/evidence/survival-059/2/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/survival-059/3/execution.json b/benchmarks/v1/evidence/survival-059/3/execution.json new file mode 100644 index 0000000..328b208 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/3/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "39ac94292d5ed383b95ca77b1a0aa4f2e7c0e4177cf34a1979fbee4cfa0a5ee3", + "predictions.npz": "130c2680b13a2c30472af46c453668b3f19480452d271e84e3383a984ee907fb", + "training.json": "aada3d0c5e81b28f4737df1eb81e0df814068e32f2a987c98938b5b77d0370c0", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/3/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.24245945799339097 +} diff --git a/benchmarks/v1/evidence/survival-059/3/model.bin b/benchmarks/v1/evidence/survival-059/3/model.bin new file mode 100644 index 0000000..984f76e --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/3/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A10", "output": "lognormal_location_scale", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "base": [4.097752670430707], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 80.0], [1.5, 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 16.0, 19.0, 23.5], [35.5, 37.0, 38.5, 42.0, 43.0, 47.0, 49.0, 50.0, 52.5, 54.0, 55.0, 60.0, 60.5, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.0, 67.5, 69.0, 70.0, 71.0], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0, 0.5], [0.0, 0.5], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [3, 6, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.04444263832131566], [-1.0765624239830935], [0.5922340610536938], [-1.9730081068582654], [-0.5892180948345445], [0.8123962428755528], [0.0877787279226969]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 80.0], [1.5, 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 16.0, 19.0, 23.5], [35.5, 37.0, 38.5, 42.0, 43.0, 47.0, 49.0, 50.0, 52.5, 54.0, 55.0, 60.0, 60.5, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.0, 67.5, 69.0, 70.0, 71.0], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0, 0.5], [0.0, 0.5], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 6, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.037977753530288504], [-0.9781715304371421], [0.5351601847283352], [-1.7976296084708636], [-0.5331910572257461], [0.4159188629377388], [1.4668799146817644]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 80.0], [1.5, 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 16.0, 19.0, 23.5], [35.5, 37.0, 38.5, 42.0, 43.0, 47.0, 49.0, 50.0, 52.5, 54.0, 55.0, 60.0, 60.5, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.0, 67.5, 69.0, 70.0, 71.0], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0, 0.5], [0.0, 0.5], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [3, 6, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03366327865618099], [-0.8888165696632631], [0.4855136326189389], [-1.6378403099401206], [-0.4825187655510023], [0.6839216197190472], [0.03435084016323622]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[25.0, 30.0, 40.0, 50.0, 60.0, 65.0, 70.0, 80.0], [1.5, 2.0, 3.0, 4.0, 5.0, 5.5, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 16.0, 19.0, 23.5], [35.5, 37.0, 38.5, 42.0, 43.0, 47.0, 49.0, 50.0, 52.5, 54.0, 55.0, 60.0, 60.5, 61.0, 62.0, 63.0, 63.5, 64.0, 65.0, 66.0, 67.5, 69.0, 70.0, 71.0], [], [], [], [0.0], [0.0], [0.0, 0.5], [0.0], [], [0.0, 0.5], [0.0, 0.5], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 6, 7, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.028584629795445664], [-0.8076589759124854], [0.4386399953408646], [-1.4922545046121096], [-0.4366831636335797], [0.32910289061381487], [1.306522178188376]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "sigma": 1.0} diff --git a/benchmarks/v1/evidence/survival-059/3/predictions.npz b/benchmarks/v1/evidence/survival-059/3/predictions.npz new file mode 100644 index 0000000..c3a96e3 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/3/predictions.npz differ diff --git a/benchmarks/v1/evidence/survival-059/3/replay.npz b/benchmarks/v1/evidence/survival-059/3/replay.npz new file mode 100644 index 0000000..c3a96e3 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/3/replay.npz differ diff --git a/benchmarks/v1/evidence/survival-059/3/training.json b/benchmarks/v1/evidence/survival-059/3/training.json new file mode 100644 index 0000000..0e4b504 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/3/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.437543155714646, + "last_score": 5.437543155714646, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8d4a7492f58fdf71500d98ec5d94da276f940e5e4757d53e7a957410b19eb87c", + "best_validation_score": 5.437543155714646, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.437543155714646 +} diff --git a/benchmarks/v1/evidence/survival-059/3/worker.log b/benchmarks/v1/evidence/survival-059/3/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/survival-059/4/execution.json b/benchmarks/v1/evidence/survival-059/4/execution.json new file mode 100644 index 0000000..8795f72 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/4/execution.json @@ -0,0 +1,19 @@ +{ + "artifacts": { + "model.bin": "1839c453b9c1388d7e85f821e18ffabb3e485417b9c9e68f7b8bb6c095c52017", + "predictions.npz": "d2ddf282a5c847726c85dd936f28ada7174939982b45d1a1c158b94c3935293a", + "training.json": "aa63164b90e06b10354e14d7255ed45566f756c8a7d0f6f889540c70c0b583b6", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/4/job.json" + ], + "exit_code": 0, + "reason": "", + "status": "pass", + "threads": 1, + "timeout_s": 90, + "wall_s": 0.24594029098807368 +} diff --git a/benchmarks/v1/evidence/survival-059/4/model.bin b/benchmarks/v1/evidence/survival-059/4/model.bin new file mode 100644 index 0000000..d667fd0 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/4/model.bin @@ -0,0 +1 @@ +{"format": "openboost-evaluation-v1", "application": "A10", "output": "lognormal_location_scale", "model": {"format": "openboost-ensemble-v2", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "base": [4.270689754721605], "terms": [{"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0], [2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 8.5, 9.0, 10.5, 11.0, 12.0, 13.0, 14.5, 18.0, 21.0, 28.0, 32.5], [38.0, 39.0, 41.5, 43.0, 46.5, 49.0, 49.5, 52.0, 54.0, 56.0, 58.0, 60.0, 60.5, 62.0, 63.0, 64.0, 65.5, 66.0, 67.0, 68.0, 69.0, 71.0], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [3, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.04829745793020143], [-0.7239653980198609], [0.4435217508203625], [0.04447013958109991], [-1.0165820254693227], [0.6672879510012071], [-0.07914207619250511]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0], [2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 8.5, 9.0, 10.5, 11.0, 12.0, 13.0, 14.5, 18.0, 21.0, 28.0, 32.5], [38.0, 39.0, 41.5, 43.0, 46.5, 49.0, 49.5, 52.0, 54.0, 56.0, 58.0, 60.0, 60.5, 62.0, 63.0, 64.0, 65.5, 66.0, 67.0, 68.0, 69.0, 71.0], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [3, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.04303345377333415], [-0.6551240537745735], [0.40063267285038456], [0.0405485965422459], [-0.9200067330497369], [0.6030973548027836], [-0.07169341019791667]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0], [2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 8.5, 9.0, 10.5, 11.0, 12.0, 13.0, 14.5, 18.0, 21.0, 28.0, 32.5], [38.0, 39.0, 41.5, 43.0, 46.5, 49.0, 49.5, 52.0, 54.0, 56.0, 58.0, 60.0, 60.5, 62.0, 63.0, 64.0, 65.5, 66.0, 67.0, 68.0, 69.0, 71.0], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 0, -1, -1, -1, -1], "threshold": [3, 9, 6, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.038332658590237906], [-0.5928259879283654], [0.3618659109593453], [0.0369724790815509], [-0.8326060934100117], [0.23495834399506332], [1.0950510022676028]]}, "mapping": [[1.0]], "coefficient": 0.1}, {"kind": "tree", "learner": {"format": "openboost-tree-v3", "feature_names": ["x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16"], "cuts": [[20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0], [2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 8.5, 9.0, 10.5, 11.0, 12.0, 13.0, 14.5, 18.0, 21.0, 28.0, 32.5], [38.0, 39.0, 41.5, 43.0, 46.5, 49.0, 49.5, 52.0, 54.0, 56.0, 58.0, 60.0, 60.5, 62.0, 63.0, 64.0, 65.5, 66.0, 67.0, 68.0, 69.0, 71.0], [], [], [], [0.0], [0.0], [0.0], [0.0], [], [0.0], [0.0], [], [0.0], [0.0], []], "categories": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null], "feature": [0, 2, 8, -1, -1, -1, -1], "threshold": [3, 9, 0, -1, -1, -1, -1], "missing_left": [false, false, false, false, false, false, false], "left": [1, 3, 5, -1, -1, -1, -1], "right": [2, 4, 6, -1, -1, -1, -1], "value": [[0.03519999270582112], [-0.5364496945830091], [0.32840480955200485], [0.03371142458653273], [-0.7535085145360605], [0.509789083748791], [-0.09211889019219294]]}, "mapping": [[1.0]], "coefficient": 0.1}], "classes": null}, "sigma": 1.0} diff --git a/benchmarks/v1/evidence/survival-059/4/predictions.npz b/benchmarks/v1/evidence/survival-059/4/predictions.npz new file mode 100644 index 0000000..8638332 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/4/predictions.npz differ diff --git a/benchmarks/v1/evidence/survival-059/4/replay.npz b/benchmarks/v1/evidence/survival-059/4/replay.npz new file mode 100644 index 0000000..8638332 Binary files /dev/null and b/benchmarks/v1/evidence/survival-059/4/replay.npz differ diff --git a/benchmarks/v1/evidence/survival-059/4/training.json b/benchmarks/v1/evidence/survival-059/4/training.json new file mode 100644 index 0000000..2803008 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/4/training.json @@ -0,0 +1,20 @@ +{ + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.421118163064362, + "last_score": 5.421118163064362, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2642c10434015170142db57467d6391b4fe601b250e433102a7ab7ee6a90ce9d", + "best_validation_score": 5.421118163064362, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.421118163064362 +} diff --git a/benchmarks/v1/evidence/survival-059/4/worker.log b/benchmarks/v1/evidence/survival-059/4/worker.log new file mode 100644 index 0000000..e69de29 diff --git a/benchmarks/v1/evidence/survival-059/README.md b/benchmarks/v1/evidence/survival-059/README.md new file mode 100644 index 0000000..22c5491 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/README.md @@ -0,0 +1,25 @@ +# Current A10 event/right-censored AFT integration + +All five frozen Veteran folds pass the current CPU AFT worker and exact fresh +inference. Events become equal positive bounds; right-censored times become +positive lower/infinite upper bounds. Output is [log-time location, sigma] with +fixed sigma=1, matching the evaluation contract. No censoring-as-event substitution. + +```sh +UV_CACHE_DIR=/tmp/openboost-research-uv-cache uv run --no-sync python -m benchmarks.v1.openboost_worker_smoke /tmp/openboost-survival-059 --applications A10 +``` + +Requires pinned Veteran source in build/v1-data and committed preprocessing +freeze. Four rounds, depth two, 32 bins, learning rate 0.1, patience three, one +CPU thread and unchanged 90-second fit/30-second replay caps. No test scoring, +profiler, concurrent regression, memory cap or CUDA. Host: Apple M4 Max, +51539607552 bytes RAM (same host as Sprint 052); Python reports x86_64. +Peak memory was not measured. Existing source licensing closure remains open. + +Summary retains revision/dirty state, source/data/split/packet hashes, commands, +environment and results. Raw model, predictions, replay, training metadata, +execution and log records are retained per fold. All source/output hashes match. +Verification records independently computed event density/right-survival NLL +using math.erfc, with rtol=1e-12/atol=1e-14, and exact source-ID agreement. +These are bounded integration checks, not IPCW/calibration, quality/search, +learned-scale, other-censoring or comparative performance acceptance. diff --git a/benchmarks/v1/evidence/survival-059/summary.json b/benchmarks/v1/evidence/survival-059/summary.json new file mode 100644 index 0000000..6dafdb6 --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/summary.json @@ -0,0 +1,1336 @@ +{ + "scope": "Current A1/A2/A3/A5/A6/A7/A8/A9/A10/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + "revision": "20d9b7c98cd63ea28b553538861923b58c9d34a6", + "dirty": true, + "argv": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "-m", + "benchmarks.v1.openboost_worker_smoke", + "/private/tmp/openboost-survival-059", + "--applications", + "A10" + ], + "python": "3.12.12", + "os": "macOS-26.3-x86_64-i386-64bit", + "machine": "x86_64", + "cpu_count": 16, + "device": "cpu", + "gpu": null, + "threads": 1, + "memory_cap": null, + "packages": { + "numpy": "2.3.5", + "openboost": "1.0.0rc1" + }, + "sources": { + "src/openboost/__init__.py": "b0a76b68a1824abef45bf30d3d094dce7de2ec9deef3d5cbe862a6b3f6038788", + "src/openboost/artifacts.py": "fc5232f29d2b9d55676035bbd5bb9fe726babba5fcdfbd84ff18133de3e9a817", + "src/openboost/binning.py": "e77bdbaf42121ba5dde8ec681371bd0c7d1e31fada19618d796279cc0b322a7d", + "src/openboost/composition.py": "a52dc4d09582031441dbf2c4a3ed889851783a2f4fece50506fa5e0e0501ccec", + "src/openboost/data.py": "93b4eb6487e7fb21c960d19906c7a49b3df9fa28b2a2bacdc8ea6437889f2343", + "src/openboost/leaves.py": "3bff04ff4b1eff1a1d58f6ce5e29f15391e8b2e9a80a696c6fee988d1be95b75", + "src/openboost/multioutput.py": "98c192719bb9ee787ec385a2d219a2f52aacebc161cc9fc1275006f49daad76d", + "src/openboost/objectives.py": "fcf847bda2917354093e03ce42bd22e0fd85e391185d3141318cb7ccecd721f7", + "src/openboost/ops.py": "c82134d466e6ebf660582d9895ee268b7c00fa999ec8ccdbc0c70634d429599f", + "src/openboost/outputs.py": "f10f3a68b4513cb93c222cd1e39ca238c686c903daa8c8035c417b5916365115", + "src/openboost/ranking.py": "beddf8fb6eeecbed54acdb55147bc251392a6f9fb7b46304e5d80d1d0ee642b3", + "src/openboost/recipes.py": "4fc1cd9971cde4bad95922c0f4e241d169a8a9fa08730070f02033c3405d265c", + "src/openboost/results.py": "b33bb8c658678bf5319a1e76b9a420112debea4f26361acad166f6f1e641585d", + "src/openboost/runs.py": "5a00eead8d6d4d6ddc99a646a0131f04918c619c5061b647ec4fc3c386459dc4", + "src/openboost/runtime.py": "8962e0204d867a1b700ed15e92b155cd6144927b651a79b8083634a0c315ad2d", + "src/openboost/stats.py": "4edbeba39e727f60213f04b5d3592bc82fb02cb1ebd9603ca9f8cee66b932cc9", + "src/openboost/stopping.py": "2374873a01dba8d7b359cd484337de228ca6c805d6a43b23bcf51598416746a1", + "src/openboost/survival.py": "cb168551a5aa026d6c501f4370c7ddc998d3cc7269ce6f17d93258ceadef89e9", + "src/openboost/tree.py": "60dd8cbc56d78913e868a3788bd08c91e858febc4f4c0534831077df640d7581", + "benchmarks/v1/openboost_worker.py": "fabbbe5a364ae40524d387001d112820f2e70ca2138ebb300c69840155a9db7e", + "benchmarks/v1/openboost_predict.py": "8aca4e183bcad98754363e519cf5363b3dd755879db27e8d4948bf21f5c8d05e", + "benchmarks/v1/openboost_worker_smoke.py": "c60aaa4f90ad9df0ec877a9746bb4163b86953254c19374fe8eed96304e5f555", + "benchmarks/v1/worker_data.py": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "benchmarks/v1/preprocessing.py": "62561effccd6856bc404339dddbc8c2daa3a1d0b011be59edd8fd3435802bc30", + "benchmarks/v1/process_runner.py": "5ccc984919d2932974f89cfc16691e79dd0e2c35a5da145993d5c9b1a0cd8eab" + }, + "data": { + "A10": { + "application": "A10", + "dataset": "veteran", + "folds": [ + { + "seed": 0, + "artifacts": { + "worker-input": { + "path": "0/worker-input.npz", + "sha256": "b46c7c5faa65cdb3f616e54dc5e771b3b6d5368b7a126b5cbb2c182056efafcd" + }, + "train-rows": { + "path": "0/train-rows.npz", + "sha256": "512bac52ced4ef2af4ede510794725fe168d2eca943379b7df4f19c892a8ef07" + }, + "validation": { + "path": "0/validation.npz", + "sha256": "e36d420b130310c437be3f66b0205a8c0b53707f001cd337add8d50e8cae1b19" + }, + "test-features": { + "path": "0/test-features.npz", + "sha256": "19487e0beeb624dfe4a91da55b42ac2d399eeef8ab9415e2c217aab127d8729e" + }, + "test-truth": { + "path": "0/test-truth.npz", + "sha256": "0cd10008dc9bf1489c0d0dca4168255d951b273e596ce6d8a892b0a92683b27b" + }, + "censoring": { + "path": "0/censoring.json", + "sha256": "b14818e27c68515cf319b317529c7d8350d5b408813c60146310f5053940cf84" + } + }, + "metadata": { + "censoring_support": { + "times": [ + 4.0, + 7.0, + 8.0, + 10.0, + 12.0, + 13.0, + 15.0, + 19.0, + 20.0, + 21.0, + 22.0, + 24.0, + 25.0, + 27.0, + 29.0, + 30.0, + 31.0, + 33.0, + 35.0, + 36.0, + 42.0, + 43.0, + 51.0, + 52.0, + 53.0, + 54.0, + 59.0, + 61.0, + 73.0, + 80.0, + 82.0, + 87.0, + 92.0, + 97.0, + 99.0, + 111.0, + 117.0, + 118.0, + 122.0, + 123.0, + 126.0, + 139.0, + 140.0, + 144.0, + 151.0, + 153.0, + 164.0, + 177.0, + 182.0, + 186.0, + 216.0, + 228.0, + 231.0, + 242.0, + 278.0, + 283.0, + 314.0, + 340.0, + 357.0, + 378.0, + 389.0, + 392.0, + 411.0, + 467.0, + 553.0, + 991.0, + 999.0 + ], + "survival": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.975, + 0.975, + 0.9493421052631579, + 0.9493421052631579, + 0.9493421052631579, + 0.9493421052631579, + 0.9493421052631579, + 0.9493421052631579, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.9166061705989111, + 0.8707758620689655, + 0.8707758620689655, + 0.8707758620689655, + 0.8707758620689655, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345, + 0.8127241379310345 + ], + "strict_upper": 999.0, + "grid": [ + 13.0, + 25.0, + 35.0, + 53.0, + 87.0, + 117.0, + 144.00000000000006, + 228.0, + 357.0 + ], + "tie_rule": "events removed before censoring risk" + } + } + }, + { + "seed": 1, + "artifacts": { + "worker-input": { + "path": "1/worker-input.npz", + "sha256": "812c66eaa230f736907f4f84cfee8a393bc9c347352f919ef853d1ccfaf03813" + }, + "train-rows": { + "path": "1/train-rows.npz", + "sha256": "a4d168b7aae5b6f7ebe9fbb631ea35bf5ffdc9bff63cd5c76d713e2b96d39fc8" + }, + "validation": { + "path": "1/validation.npz", + "sha256": "bff1110a8c722c4a5012e39611a0268f88d58f35fc7d79d7a3aea51105a48b31" + }, + "test-features": { + "path": "1/test-features.npz", + "sha256": "34baa5e4427ca7b96c270d60a7343ed6e49c2a3e792d2611fcbf1de58c996e65" + }, + "test-truth": { + "path": "1/test-truth.npz", + "sha256": "1733238b3ae3e757fb30363071f9ca1d2d6d3b86a28c54790e1a7f799a336926" + }, + "censoring": { + "path": "1/censoring.json", + "sha256": "e3c4e01883d9131b32cf907ced855710919b78a36b143c587bc57a5ed5db4d97" + } + }, + "metadata": { + "censoring_support": { + "times": [ + 2.0, + 3.0, + 4.0, + 7.0, + 8.0, + 10.0, + 12.0, + 13.0, + 15.0, + 16.0, + 18.0, + 19.0, + 20.0, + 21.0, + 22.0, + 24.0, + 25.0, + 27.0, + 30.0, + 31.0, + 35.0, + 43.0, + 44.0, + 45.0, + 48.0, + 51.0, + 52.0, + 53.0, + 54.0, + 56.0, + 59.0, + 63.0, + 73.0, + 82.0, + 90.0, + 99.0, + 100.0, + 103.0, + 105.0, + 110.0, + 112.0, + 117.0, + 122.0, + 123.0, + 126.0, + 132.0, + 139.0, + 140.0, + 143.0, + 151.0, + 162.0, + 164.0, + 182.0, + 216.0, + 242.0, + 260.0, + 278.0, + 283.0, + 287.0, + 314.0, + 340.0, + 384.0, + 392.0, + 467.0, + 587.0, + 991.0, + 999.0 + ], + "survival": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9532614278376991, + 0.9225110591977733, + 0.9225110591977733, + 0.9225110591977733, + 0.9225110591977733, + 0.9225110591977733, + 0.9225110591977733, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8840730983978662, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085, + 0.8251348918380085 + ], + "strict_upper": 999.0, + "grid": [ + 13.0, + 21.0, + 30.0, + 48.0, + 59.0, + 100.0, + 122.0, + 162.0, + 287.0 + ], + "tie_rule": "events removed before censoring risk" + } + } + }, + { + "seed": 2, + "artifacts": { + "worker-input": { + "path": "2/worker-input.npz", + "sha256": "d3cc59fa8a1ba44777bcb366ca375becb9ae54778915882f2b6ab0b0341b8d32" + }, + "train-rows": { + "path": "2/train-rows.npz", + "sha256": "f18d5c0cf3d8a80b76681bc37147abe8ddc17a2f62a39778525c21320cb6066c" + }, + "validation": { + "path": "2/validation.npz", + "sha256": "6f827ea44dcc7269cefab9b2f922efd88827eb5fb7cd4c7061d841a15c31a0c6" + }, + "test-features": { + "path": "2/test-features.npz", + "sha256": "90bbe12444fd37d3ec88118e2d630cbce9d1cee8c01ef9c4cf30a68e7c526998" + }, + "test-truth": { + "path": "2/test-truth.npz", + "sha256": "923910be22567d05310b0cd036127877ee76dcc2f43cdae2c0c13aef6c8e21f9" + }, + "censoring": { + "path": "2/censoring.json", + "sha256": "e3c1722ae5274ffd338b0281812abde037fda1e482067988d775670e1997e215" + } + }, + "metadata": { + "censoring_support": { + "times": [ + 1.0, + 2.0, + 3.0, + 4.0, + 8.0, + 10.0, + 13.0, + 15.0, + 16.0, + 18.0, + 19.0, + 20.0, + 21.0, + 22.0, + 24.0, + 25.0, + 27.0, + 29.0, + 30.0, + 31.0, + 36.0, + 42.0, + 45.0, + 48.0, + 49.0, + 51.0, + 52.0, + 53.0, + 59.0, + 73.0, + 80.0, + 82.0, + 83.0, + 87.0, + 90.0, + 92.0, + 95.0, + 99.0, + 103.0, + 110.0, + 111.0, + 112.0, + 118.0, + 122.0, + 123.0, + 126.0, + 132.0, + 133.0, + 139.0, + 140.0, + 144.0, + 153.0, + 162.0, + 164.0, + 201.0, + 216.0, + 231.0, + 242.0, + 260.0, + 278.0, + 314.0, + 384.0, + 389.0, + 392.0, + 553.0, + 587.0 + ], + "survival": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.9743589743589743, + 0.9480249480249481, + 0.9480249480249481, + 0.9480249480249481, + 0.9480249480249481, + 0.9480249480249481, + 0.9164241164241165, + 0.9164241164241165, + 0.9164241164241165, + 0.9164241164241165, + 0.9164241164241165, + 0.9164241164241165, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.8782397782397783, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005, + 0.7904158004158005 + ], + "strict_upper": 587.0, + "grid": [ + 13.0, + 20.0, + 29.000000000000004, + 49.0, + 80.0, + 99.0, + 122.0, + 153.0, + 242.0 + ], + "tie_rule": "events removed before censoring risk" + } + } + }, + { + "seed": 3, + "artifacts": { + "worker-input": { + "path": "3/worker-input.npz", + "sha256": "8bd3e638350bf9122f22af900a959dc28a132f8ca79f3522bf2eb228b694eef3" + }, + "train-rows": { + "path": "3/train-rows.npz", + "sha256": "2853ecdf3e18994ccfd9d53dcd7734c239fc2532a0e7dfdcce0b298bc3debf78" + }, + "validation": { + "path": "3/validation.npz", + "sha256": "3423bcc22a47c0723b0ca0d0ab8767bfa6ad1109d34c93ccee5bf48e1abcefc4" + }, + "test-features": { + "path": "3/test-features.npz", + "sha256": "bb918d3abebb9f7f7db97fe35d8400f3dbcbc6e9039efe7934ffe765da9b6950" + }, + "test-truth": { + "path": "3/test-truth.npz", + "sha256": "fc3d4dfb3f40aeefc1b98ddc6c45276279473ab48b3276c40e0c61e72534b922" + }, + "censoring": { + "path": "3/censoring.json", + "sha256": "7234f1ee28dab66d1b8ab9ee323273009e4069f05b5aa62ba774104dc21a79b6" + } + }, + "metadata": { + "censoring_support": { + "times": [ + 1.0, + 2.0, + 3.0, + 4.0, + 7.0, + 8.0, + 10.0, + 11.0, + 12.0, + 13.0, + 15.0, + 19.0, + 20.0, + 21.0, + 22.0, + 24.0, + 25.0, + 27.0, + 30.0, + 31.0, + 33.0, + 35.0, + 36.0, + 45.0, + 49.0, + 51.0, + 52.0, + 53.0, + 54.0, + 56.0, + 72.0, + 80.0, + 84.0, + 87.0, + 90.0, + 92.0, + 95.0, + 99.0, + 100.0, + 103.0, + 105.0, + 111.0, + 117.0, + 118.0, + 122.0, + 123.0, + 126.0, + 132.0, + 139.0, + 140.0, + 144.0, + 151.0, + 153.0, + 156.0, + 162.0, + 164.0, + 182.0, + 228.0, + 231.0, + 242.0, + 250.0, + 278.0, + 287.0, + 340.0, + 389.0, + 411.0, + 467.0, + 553.0, + 991.0, + 999.0 + ], + "survival": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9830508474576272, + 0.9532614278376991, + 0.923472008217771, + 0.923472008217771, + 0.923472008217771, + 0.923472008217771, + 0.923472008217771, + 0.923472008217771, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8865331278890601, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416, + 0.8232093330398416 + ], + "strict_upper": 999.0, + "grid": [ + 11.0, + 21.0, + 30.000000000000004, + 52.0, + 87.0, + 100.0, + 123.00000000000003, + 156.0, + 278.0 + ], + "tie_rule": "events removed before censoring risk" + } + } + }, + { + "seed": 4, + "artifacts": { + "worker-input": { + "path": "4/worker-input.npz", + "sha256": "edef5619d2912c008b5c3086586c999138ccb1ae5e7e226e07bbfd5820d19f0a" + }, + "train-rows": { + "path": "4/train-rows.npz", + "sha256": "cee772b41d946c6fd3fd2eb47be0478868242d9e099a89bf74894e3d3279832a" + }, + "validation": { + "path": "4/validation.npz", + "sha256": "3c79f4937978fcd01526cbd2ada24a14d74c85592229bdadd8ee75be39d32c51" + }, + "test-features": { + "path": "4/test-features.npz", + "sha256": "932132f5b11b85385e1d6fa1ee14e91c8a82bf46e88b2991290fee4846f8effd" + }, + "test-truth": { + "path": "4/test-truth.npz", + "sha256": "0a98c618ef1ca9945912c236a0fa758e8537557d0d6ba9db33f91ce97e79e7a2" + }, + "censoring": { + "path": "4/censoring.json", + "sha256": "d70df2478c19e88e51134bef9d1dca62966f8c25f3ecc888aa704457ce8d1efa" + } + }, + "metadata": { + "censoring_support": { + "times": [ + 7.0, + 8.0, + 10.0, + 11.0, + 12.0, + 15.0, + 18.0, + 22.0, + 24.0, + 25.0, + 27.0, + 29.0, + 30.0, + 31.0, + 33.0, + 35.0, + 36.0, + 43.0, + 48.0, + 51.0, + 52.0, + 54.0, + 63.0, + 72.0, + 82.0, + 83.0, + 84.0, + 87.0, + 92.0, + 95.0, + 99.0, + 100.0, + 103.0, + 110.0, + 111.0, + 112.0, + 117.0, + 122.0, + 123.0, + 126.0, + 132.0, + 139.0, + 143.0, + 144.0, + 153.0, + 156.0, + 162.0, + 186.0, + 200.0, + 201.0, + 216.0, + 228.0, + 231.0, + 260.0, + 278.0, + 287.0, + 314.0, + 378.0, + 384.0, + 389.0, + 392.0, + 467.0, + 587.0, + 991.0, + 999.0 + ], + "survival": [ + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 1.0, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9841269841269842, + 0.9617604617604618, + 0.9617604617604618, + 0.9617604617604618, + 0.9617604617604618, + 0.9617604617604618, + 0.9617604617604618, + 0.9350448933782267, + 0.9350448933782267, + 0.9350448933782267, + 0.9350448933782267, + 0.9350448933782267, + 0.9350448933782267, + 0.9350448933782267, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.9028019660203569, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868, + 0.833355660941868 + ], + "strict_upper": 999.0, + "grid": [ + 11.0, + 25.0, + 33.00000000000001, + 52.0, + 92.0, + 111.0, + 143.0, + 201.0, + 314.0 + ], + "tie_rule": "events removed before censoring risk" + } + } + } + ], + "source_freeze_sha256": "daa35b5b691db5e8ae4f2d804ac60070863913fb22f02187adfdac7b0b95c84d", + "preprocessing_freeze_sha256": "d968104b972ea9f3575db9e2fbf9cd81f67a1deb5f70c65f93724889f159f4a9", + "adapter_sha256": "6d2b09303abaace59b22aebd666317b2da57a0efd37f8cbfb138766a933749f1", + "scope": "Five frozen folds; validation worker input includes early-stopping labels. Test files require evaluation-side custody, not enforced by this exporter." + } + }, + "cells": [ + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/0/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.1910145829897374, + "artifacts": { + "model.bin": "3e44348ed1c83dbeb2ae81692eaa2bbd361636d8a691e7ccf3ca727dee6a077a", + "training.json": "1619102874afc30cbd709e066ad79a4572041f2582bf7f85d207e18a3fff79fd", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "5efdecd51d96878bac83756328c26637709a5f5103726d9fa7aa76ab9669b32e" + }, + "application": "A10", + "fold": 0, + "job": { + "application": "A10", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 0, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-survival-059/A10/0/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-survival-059/A10/0/fit/model.bin", + "/private/tmp/openboost-survival-059/A10/0/fit/features.npz", + "/private/tmp/openboost-survival-059/A10/0/fit/replay.npz" + ], + "prediction_shape": [ + 28, + 2 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.151468378018473, + "last_score": 5.151468378018473, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "9e924a655a09b89354e209e860f9edc33e66ea270ba4f6afaa7e75bc8a515de9", + "best_validation_score": 5.151468378018473, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.151468378018473 + }, + "replay_sha256": "5efdecd51d96878bac83756328c26637709a5f5103726d9fa7aa76ab9669b32e" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/1/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.24341795899090357, + "artifacts": { + "model.bin": "ded3e9cbf24950f071441b72a8dff0c77b0b0491634857d512d9db90cf7ffd3a", + "training.json": "516f69d8b7e3c1d5e02d8d582f3830f4eecdce90979de31f8ad6697e43558c0f", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "5b67d4f0dc54930bfbc41000dc7d173c42d337ddef1eead0217b4a0163d74d4e" + }, + "application": "A10", + "fold": 1, + "job": { + "application": "A10", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 1, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-survival-059/A10/1/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-survival-059/A10/1/fit/model.bin", + "/private/tmp/openboost-survival-059/A10/1/fit/features.npz", + "/private/tmp/openboost-survival-059/A10/1/fit/replay.npz" + ], + "prediction_shape": [ + 28, + 2 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.280621807552828, + "last_score": 5.280621807552828, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "3b699c191c9cf5cdc575324bc68316d3ddd409c97b9c91e3639d6d8a8ebed8c4", + "best_validation_score": 5.280621807552828, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.280621807552828 + }, + "replay_sha256": "5b67d4f0dc54930bfbc41000dc7d173c42d337ddef1eead0217b4a0163d74d4e" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/2/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.24214291700627655, + "artifacts": { + "model.bin": "04b94690b2ae906872be614e037af5541d6e23671c37c99ef14dbc5889ac4ff8", + "training.json": "63ade67a6112b08365f06af320156f78e25844ab990001f088525b2dc10ce0e5", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "f8886e59eb538e33b3cd08227e03e902d7f7931c8f16c010e19242e0d2f96a7c" + }, + "application": "A10", + "fold": 2, + "job": { + "application": "A10", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 2, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-survival-059/A10/2/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-survival-059/A10/2/fit/model.bin", + "/private/tmp/openboost-survival-059/A10/2/fit/features.npz", + "/private/tmp/openboost-survival-059/A10/2/fit/replay.npz" + ], + "prediction_shape": [ + 28, + 2 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.270852788932159, + "last_score": 5.270852788932159, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "c4721274533ba3719ac03bcb7881c0a09c405f8e2a0583b7b3492fada5c5c9b7", + "best_validation_score": 5.270852788932159, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.270852788932159 + }, + "replay_sha256": "f8886e59eb538e33b3cd08227e03e902d7f7931c8f16c010e19242e0d2f96a7c" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/3/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.24245945799339097, + "artifacts": { + "model.bin": "39ac94292d5ed383b95ca77b1a0aa4f2e7c0e4177cf34a1979fbee4cfa0a5ee3", + "training.json": "aada3d0c5e81b28f4737df1eb81e0df814068e32f2a987c98938b5b77d0370c0", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "130c2680b13a2c30472af46c453668b3f19480452d271e84e3383a984ee907fb" + }, + "application": "A10", + "fold": 3, + "job": { + "application": "A10", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 3, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-survival-059/A10/3/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-survival-059/A10/3/fit/model.bin", + "/private/tmp/openboost-survival-059/A10/3/fit/features.npz", + "/private/tmp/openboost-survival-059/A10/3/fit/replay.npz" + ], + "prediction_shape": [ + 28, + 2 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.437543155714646, + "last_score": 5.437543155714646, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "8d4a7492f58fdf71500d98ec5d94da276f940e5e4757d53e7a957410b19eb87c", + "best_validation_score": 5.437543155714646, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.437543155714646 + }, + "replay_sha256": "130c2680b13a2c30472af46c453668b3f19480452d271e84e3383a984ee907fb" + }, + { + "command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_worker.py", + "/private/tmp/openboost-survival-059/A10/4/job.json" + ], + "timeout_s": 90, + "threads": 1, + "status": "pass", + "exit_code": 0, + "reason": "", + "wall_s": 0.24594029098807368, + "artifacts": { + "model.bin": "1839c453b9c1388d7e85f821e18ffabb3e485417b9c9e68f7b8bb6c095c52017", + "training.json": "aa63164b90e06b10354e14d7255ed45566f756c8a7d0f6f889540c70c0b583b6", + "worker.log": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "predictions.npz": "d2ddf282a5c847726c85dd936f28ada7174939982b45d1a1c158b94c3935293a" + }, + "application": "A10", + "fold": 4, + "job": { + "application": "A10", + "library": "openboost", + "device": "cpu", + "threads": 1, + "seed": 4, + "early_stopping_rounds": 3, + "config": { + "rounds": 4, + "learning_rate": 0.1, + "max_depth": 2, + "reg_lambda": 1, + "bins": 32 + }, + "input_npz": "/private/tmp/openboost-survival-059/A10/4/worker-input.npz" + }, + "replay_command": [ + "/Users/jiaruixu/work_space/openboost/.venv/bin/python3", + "/Users/jiaruixu/work_space/openboost/benchmarks/v1/openboost_predict.py", + "/private/tmp/openboost-survival-059/A10/4/fit/model.bin", + "/private/tmp/openboost-survival-059/A10/4/fit/features.npz", + "/private/tmp/openboost-survival-059/A10/4/fit/replay.npz" + ], + "prediction_shape": [ + 28, + 2 + ], + "fresh_process_exact": true, + "training": { + "selection": "best_validation", + "stop": { + "rounds": 4, + "patience": 3, + "min_delta": 0.0, + "reference_score": 5.421118163064362, + "last_score": 5.421118163064362, + "completed_rounds": 4, + "stale_rounds": 0, + "reason": "budget" + }, + "accepted_commits": 4, + "selected_model_identity": "2642c10434015170142db57467d6391b4fe601b250e433102a7ab7ee6a90ce9d", + "best_validation_score": 5.421118163064362, + "output": "lognormal_location_scale", + "selection_metric": "weighted_censored_nll", + "sigma": 1.0, + "selected_validation_censored_nll": 5.421118163064362 + }, + "replay_sha256": "d2ddf282a5c847726c85dd936f28ada7174939982b45d1a1c158b94c3935293a" + } + ] +} diff --git a/benchmarks/v1/evidence/survival-059/verification.json b/benchmarks/v1/evidence/survival-059/verification.json new file mode 100644 index 0000000..2218e9e --- /dev/null +++ b/benchmarks/v1/evidence/survival-059/verification.json @@ -0,0 +1,37 @@ +{ + "source_and_artifact_hashes_match": true, + "rtol": 1e-12, + "atol": 1e-14, + "cells": [ + { + "fold": 0, + "independent_censored_nll": 5.151468378018472, + "reported_nll": 5.151468378018473, + "source_ids_exact": true + }, + { + "fold": 1, + "independent_censored_nll": 5.280621807552828, + "reported_nll": 5.280621807552828, + "source_ids_exact": true + }, + { + "fold": 2, + "independent_censored_nll": 5.27085278893216, + "reported_nll": 5.270852788932159, + "source_ids_exact": true + }, + { + "fold": 3, + "independent_censored_nll": 5.437543155714647, + "reported_nll": 5.437543155714646, + "source_ids_exact": true + }, + { + "fold": 4, + "independent_censored_nll": 5.421118163064363, + "reported_nll": 5.421118163064362, + "source_ids_exact": true + } + ] +} diff --git a/benchmarks/v1/openboost_predict.py b/benchmarks/v1/openboost_predict.py index e657a96..f3bb24f 100644 --- a/benchmarks/v1/openboost_predict.py +++ b/benchmarks/v1/openboost_predict.py @@ -9,30 +9,77 @@ from openboost import NumericData from openboost.artifacts import Model from openboost.multioutput import MultiOutputModel, TargetScale -from openboost.objectives import Normal +from openboost.objectives import Formula, Normal +from openboost.outputs import poisson_mean, positive_mean + +QUANTILES = (0.1, 0.5, 0.9) OUTPUTS = { "A1": "mean", + "A4": "ranking_score", + "A5": "quantiles", "A2": "positive_class_probability", "A3": "class_probabilities", "A11": "normal_mean_scale", "A6": "multioutput_original_units", + "A7": "period_count_mean", + "A8": "positive_claim_mean", + "A9": "annualized_paid_mean", + "A10": "lognormal_location_scale", + "A12": "saturation_age28_mean", } -def predict_saved(saved, x): +def predict_saved(saved, x, *, exposure=None, age=None): + if age is not None and (not isinstance(saved, dict) or saved.get("application") != "A12"): + raise ValueError("age structure only supported for A12") + if exposure is not None and (not isinstance(saved, dict) or saved.get("application") != "A7"): + raise ValueError("exposure is supported only for count inference") + if isinstance(saved, dict) and saved.get("application") == "A5": + if ( + set(saved) != {"format", "application", "output", "quantiles", "models"} + or saved["format"] != "openboost-evaluation-v1" + or saved["output"] != OUTPUTS["A5"] + or saved["quantiles"] != list(QUANTILES) + or not isinstance(saved["models"], list) + or len(saved["models"]) != len(QUANTILES) + ): + raise ValueError("invalid frozen quantile bundle") + models = [Model.from_record(r) for r in saved["models"]] + if any( + m.base.shape != (1,) + or m.classes is not None + or m.feature_names != models[0].feature_names + for m in models + ): + raise ValueError("quantile model schema differs") + # Preserve raw level order, including crossings; no post-hoc sorting. + return np.column_stack( + [ + predict_saved( + dict(format=saved["format"], application="A1", output="mean", model=r), x + ) + for r in saved["models"] + ] + ) if ( not isinstance(saved, dict) or set(saved) != ( {"format", "application", "output", "model"} | ({"target_scale"} if saved.get("application") == "A6" else set()) + | ({"power"} if saved.get("application") == "A9" else set()) + | ({"sigma"} if saved.get("application") == "A10" else set()) ) or saved["format"] != "openboost-evaluation-v1" or saved["application"] not in OUTPUTS or saved["output"] != OUTPUTS[saved["application"]] ): raise ValueError("unsupported evaluation bundle") + if saved["application"] == "A9" and saved["power"] != 1.5: + raise ValueError("frozen aggregate power differs") + if saved["application"] == "A10" and saved["sigma"] != 1.0: + raise ValueError("frozen AFT scale differs") model = Model.from_record(saved["model"]) scale = None if saved["application"] == "A6": @@ -40,7 +87,13 @@ def predict_saved(saved, x): if not isinstance(record, dict) or set(record) != {"mean", "std", "constant"}: raise ValueError("invalid evaluation target scale") scale = TargetScale(record["mean"], record["std"], record["constant"]) - width = len(scale.mean) if scale is not None else 1 if saved["application"] == "A1" else 2 + width = ( + len(scale.mean) + if scale is not None + else 1 + if saved["application"] in {"A1", "A4", "A7", "A8", "A9", "A10"} + else 2 + ) classification = saved["application"] in {"A2", "A3"} if classification: if model.classes is None: @@ -65,6 +118,21 @@ def predict_saved(saved, x): if scale is not None: return MultiOutputModel(model, scale).predict(data) raw = model.predict(data) + if saved["application"] == "A12": + if age is None: + raise ValueError("age/28 structure required for inference") + age = np.asarray(age) + if age.shape != (len(raw),): + raise ValueError("aligned age vector required") + return Formula.predict(raw, age[:, None])[:, 0] + if saved["application"] == "A10": + return np.column_stack([raw[:, 0], np.full(len(raw), saved["sigma"])]) + if saved["application"] == "A7": + if exposure is None: + raise ValueError("prediction exposure required") + return poisson_mean(raw, exposure)["count_mean"] + if saved["application"] in {"A8", "A9"}: + return positive_mean(raw) return raw[:, 0] if width == 1 else Normal.parameters(raw) @@ -74,14 +142,20 @@ def main(): parser.add_argument("features", type=Path) parser.add_argument("output", type=Path) args = parser.parse_args() + saved = json.loads(args.model.read_text()) with np.load(args.features, allow_pickle=False) as arrays: - if set(arrays.files) != {"x", "row_ids"}: - raise ValueError("prediction packet must contain only features and row IDs") + if set(arrays.files) != ( + {"x", "row_ids"} + | ({"exposure"} if saved.get("application") == "A7" else set()) + | ({"age"} if saved.get("application") == "A12" else set()) + ): + raise ValueError("prediction packet differs from declared feature/exposure schema") x, ids = arrays["x"], arrays["row_ids"] + exposure = arrays.get("exposure") + age = arrays.get("age") if ids.ndim != 1 or len(ids) != len(x) or len(np.unique(ids)) != len(ids): raise ValueError("unique aligned prediction row IDs required") - saved = json.loads(args.model.read_text()) - prediction = predict_saved(saved, x) + prediction = predict_saved(saved, x, exposure=exposure, age=age) np.savez(args.output, row_ids=ids, prediction=prediction) diff --git a/benchmarks/v1/openboost_worker.py b/benchmarks/v1/openboost_worker.py index 21ae1d7..bcdf2ca 100644 --- a/benchmarks/v1/openboost_worker.py +++ b/benchmarks/v1/openboost_worker.py @@ -1,4 +1,4 @@ -"""Current CPU A1/A2/A3/A6/A11 trials on frozen encoded train/validation packets. +"""Current CPU A1/A2/A3/A4/A5/A6/A7/A8/A9/A10/A11/A12 trials on frozen encoded train/validation packets. Explicit validation targets are required even with fixed budgets. The caller controls process threads and resource limits. Test arrays are always rejected. @@ -13,14 +13,29 @@ from openboost import ClassSchema, NumericData, Problem, RunContext from openboost.multioutput import TargetScale -from openboost.recipes import binary, multi_squared, multiclass, normal, squared +from openboost.recipes import ( + aft, + binary, + formula, + gamma, + multi_squared, + multiclass, + normal, + poisson, + quantile, + ranking, + squared, + tweedie, +) if __package__: - from benchmarks.v1.openboost_predict import OUTPUTS, predict_saved + from benchmarks.v1.openboost_predict import OUTPUTS, QUANTILES, predict_saved from benchmarks.v1.preprocessing import fit_target_scale + from benchmarks.v1.ranking import validate as validate_ranking else: - from openboost_predict import OUTPUTS, predict_saved + from openboost_predict import OUTPUTS, QUANTILES, predict_saved from preprocessing import fit_target_scale + from ranking import validate as validate_ranking def fit(job, arrays): @@ -42,8 +57,30 @@ def fit(job, arrays): if type(job["seed"]) is not int or job["seed"] < 0: raise ValueError("nonnegative integer seed required") needed = {"x_train", "y_train", "x_validation", "y_validation", "validation_row_ids"} - if not needed <= set(arrays) or set(arrays) - needed - {"weight_train", "weight_validation"}: + if job["application"] == "A7": + needed |= {"exposure_train", "exposure_validation"} + if job["application"] == "A9": + needed |= {"weight_train", "weight_validation"} + if job["application"] == "A10": + needed |= {"event_train", "event_validation"} + if job["application"] == "A12": + needed |= {"age_train", "age_validation"} + ranking_groups = None + optional = {"weight_train", "weight_validation"} + if job["application"] == "A4": + needed |= {"query_train", "query_validation", "train_row_ids"} + optional = {"query_weight_train", "query_weight_validation"} + if not needed <= set(arrays) or set(arrays) - needed - optional: raise ValueError("explicit train/validation arrays only; no test arrays") + if job["application"] == "A4": + ranking_groups = validate_ranking(arrays, 1) + if any( + np.asarray(arrays[k]).dtype.kind not in "iu" + for k in ("train_row_ids", "validation_row_ids") + ): + raise ValueError("ranking requires integer source row IDs for stable ties") + if np.intersect1d(arrays["train_row_ids"], arrays["validation_row_ids"]).size: + raise ValueError("ranking source rows overlap") external_ids = np.asarray(arrays["validation_row_ids"]) if ( external_ids.ndim != 1 @@ -56,6 +93,8 @@ def fit(job, arrays): if cfg.pop("seed_from_fold", True) is not True: raise ValueError("seed semantics differ") allowed = {"rounds", "learning_rate", "max_depth", "reg_lambda", "bins"} + if job["application"] == "A4": + allowed |= {"lambdas"} if job["application"] == "A11": allowed |= {"mode", "damping", "minimum_scale"} if job["application"] == "A6": @@ -71,7 +110,7 @@ def fit(job, arrays): raise ValueError("explicit canonical classification count required") classes = ClassSchema(tuple(range(count))) problems = [] - width = 1 if job["application"] == "A1" else 2 + width = 1 if job["application"] in {"A1", "A4", "A5", "A7", "A8", "A9", "A10"} else 2 if classification: width = 1 if job["application"] == "A2" else count multi = job["application"] == "A6" @@ -95,24 +134,79 @@ def fit(job, arrays): target_scale = fit_target_scale(y) scale = TargetScale(target_scale["mean"], target_scale["std"], target_scale["constant"]) names = tuple(f"x{i}" for i in range(x.shape[1])) if names is None else names - # Packet IDs remain in emitted artifacts; public data uses local integer rows. - ids = np.arange(len(x)) + # Ranking preserves source IDs for ties; other tasks use local integer rows. + ids = ( + arrays["train_row_ids" if part == "train" else "validation_row_ids"] + if ranking_groups is not None + else np.arange(len(x)) + ) data = NumericData(x, ids, names) + if job["application"] == "A9": + weight = np.asarray(arrays["weight_" + part]) + if weight.shape != (len(x),) or not np.isfinite(weight).all() or np.any(weight <= 0): + raise ValueError("positive aligned aggregate exposure weights required") + structure = None + if ranking_groups is not None: + _, sizes, weights = ranking_groups[0 if part == "train" else 1] + structure = { + "query": np.repeat(np.arange(len(sizes)), sizes)[:, None], + "query_weight": np.repeat(weights, sizes)[:, None], + } + if job["application"] == "A7": + exposure = np.asarray(arrays["exposure_" + part]) + if ( + exposure.shape != (len(x),) + or not np.isfinite(exposure).all() + or np.any(exposure <= 0) + ): + raise ValueError("aligned positive finite exposure required") + structure = {"exposure": exposure[:, None]} + if job["application"] == "A12": + age = np.asarray(arrays["age_" + part]) + if age.shape != y.shape or not np.isfinite(age).all() or np.any(age <= 0): + raise ValueError("aligned positive age/28 structure required") + structure = {"x": age[:, None]} + target = y if multi else y[:, None] + target_kind = "numeric" + if job["application"] == "A10": + event = np.asarray(arrays["event_" + part]) + if event.shape != y.shape or not np.isin(event, [0, 1]).all() or np.any(y <= 0): + raise ValueError("positive times and aligned binary events required") + target = np.column_stack([y, np.where(event, y, np.inf)]) + target_kind = "event_right" problems.append( Problem( data, - y if multi else y[:, None], + target, data.row_ids, + target_kind=target_kind, weight=arrays.get("weight_" + part), raw_width=width, classes=classes, + structure=structure, ) ) if multi: problems = [scale.transform(p) for p in problems] - recipe = {"A1": squared, "A2": binary, "A3": multiclass, "A6": multi_squared, "A11": normal}[ - job["application"] - ] + if job["application"] == "A5": + return fit_quantiles(job, cfg, problems, arrays["x_validation"]) + recipe = { + "A1": squared, + "A2": binary, + "A3": multiclass, + "A4": ranking, + "A6": multi_squared, + "A7": poisson, + "A8": gamma, + "A9": tweedie, + "A10": aft, + "A11": normal, + "A12": formula, + }[job["application"]] + if job["application"] == "A9": + cfg["power"] = 1.5 + if job["application"] == "A10": + cfg["sigma"] = 1.0 result = recipe( *problems, context=RunContext("evaluation", job["seed"]), @@ -127,9 +221,18 @@ def fit(job, arrays): output=OUTPUTS[job["application"]], model=model.record(), ) + if job["application"] == "A9": + saved["power"] = 1.5 + if job["application"] == "A10": + saved["sigma"] = 1.0 if multi: saved["target_scale"] = target_scale - prediction = predict_saved(saved, arrays["x_validation"]) + prediction = predict_saved( + saved, + arrays["x_validation"], + exposure=arrays.get("exposure_validation"), + age=arrays.get("age_validation"), + ) training = dict( selection=selection, stop={**asdict(result.stop), "reason": result.stop.reason}, @@ -138,6 +241,66 @@ def fit(job, arrays): best_validation_score=result.state.best_score, output=saved["output"], ) + if job["application"] == "A7": + from openboost.objectives import Poisson + + training.update( + selection_metric="weighted_poisson_nll", + exposure_role="likelihood_once", + target_units="period_count", + raw_units="log_rate", + selected_validation_nll=Poisson().loss(problems[1], model.predict(problems[1].data)), + ) + if job["application"] == "A8": + from openboost.objectives import Gamma + + training.update( + selection_metric="weighted_gamma_objective", + target_units="positive_claim_amount", + raw_units="log_mean", + selected_validation_gamma_objective=Gamma().loss( + problems[1], model.predict(problems[1].data) + ), + ) + if job["application"] == "A9": + from openboost.objectives import Tweedie + + training.update( + selection_metric="weighted_tweedie_objective", + power=1.5, + target_units="annualized_paid_total", + weight_role="exposure_once", + selected_validation_tweedie_objective=Tweedie(1.5).loss( + problems[1], model.predict(problems[1].data) + ), + ) + if job["application"] == "A10": + from openboost.survival import LogNormalAFT + + training.update( + selection_metric="weighted_censored_nll", + sigma=1.0, + selected_validation_censored_nll=LogNormalAFT(1.0).loss( + problems[1], model.predict(problems[1].data) + ), + ) + if job["application"] == "A12": + training.update( + selection_metric="weighted_half_squared_error", + structure_units="age_days_divided_by_28", + selected_validation_half_squared_error=float( + np.average( + (prediction - arrays["y_validation"]) ** 2 / 2, + weights=arrays.get("weight_validation"), + ) + ), + ) + if job["application"] == "A4": + training.update( + selection_metric="one_minus_query_weighted_ndcg_at_10", + lambdas=cfg.get("lambdas", False), + tie_break="integer_source_row_id", + ) if classification: training.update(class_order=list(classes.values), selection_metric="logloss") if multi: @@ -149,6 +312,53 @@ def fit(job, arrays): return prediction, saved, training +def fit_quantiles(job, cfg, problems, x_validation): + """Independent frozen levels with separate validation stopping and selection.""" + from openboost.objectives import Quantile + + models, runs = [], [] + selection = "final" if job.get("early_stopping_rounds") is None else "best_validation" + for q in QUANTILES: + result = quantile( + *problems, + context=RunContext("evaluation", job["seed"]), + q=q, + patience=job.get("early_stopping_rounds"), + **cfg, + ) + model = result.state.model if selection == "final" else result.state.best_model + models.append(model.record()) + runs.append( + dict( + q=q, + stop={**asdict(result.stop), "reason": result.stop.reason}, + accepted_commits=result.state.version, + selected_model_identity=model.identity, + best_validation_score=result.state.best_score, + selected_validation_pinball=Quantile(q).loss( + problems[1], model.predict(problems[1].data) + ), + ) + ) + saved = dict( + format="openboost-evaluation-v1", + application="A5", + output=OUTPUTS["A5"], + quantiles=list(QUANTILES), + models=models, + ) + prediction = predict_saved(saved, x_validation) + training = dict( + selection=selection, + output=OUTPUTS["A5"], + quantiles=list(QUANTILES), + quantile_runs=runs, + selection_metric="independent_weighted_pinball", + crossing_rows=int(np.any(np.diff(prediction, axis=1) < 0, axis=1).sum()), + ) + return prediction, saved, training + + def main(): parser = argparse.ArgumentParser(description=__doc__) parser.add_argument("job", type=Path) diff --git a/benchmarks/v1/openboost_worker_smoke.py b/benchmarks/v1/openboost_worker_smoke.py index de5b970..7b06582 100644 --- a/benchmarks/v1/openboost_worker_smoke.py +++ b/benchmarks/v1/openboost_worker_smoke.py @@ -1,4 +1,4 @@ -"""Bounded current A1/A2/A3/A6/A11 worker integration on all five frozen folds.""" +"""Bounded current A1/A2/A3/A5/A6/A7/A8/A9/A10/A11/A12 worker integration on all five frozen folds.""" import argparse import hashlib @@ -20,7 +20,7 @@ def run(directory, applications=("A1", "A6", "A11")): if ( not applications or len(set(applications)) != len(applications) - or set(applications) - {"A1", "A2", "A3", "A6", "A11"} + or set(applications) - {"A1", "A2", "A3", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12"} ): raise ValueError("unique supported applications required") root = Path(directory).resolve() @@ -29,7 +29,7 @@ def run(directory, applications=("A1", "A6", "A11")): raise ValueError("fresh output directory required") repo = Path(__file__).resolve().parents[2] report = dict( - scope="Current A1/A2/A3/A6/A11 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", + scope="Current A1/A2/A3/A5/A6/A7/A8/A9/A10/A11/A12 real-data validation plumbing only; four rounds, no test scores, quality or performance claim", revision=subprocess.check_output(["git", "rev-parse", "HEAD"], text=True).strip(), dirty=bool(subprocess.check_output(["git", "status", "--porcelain"])), argv=[ @@ -62,6 +62,7 @@ def run(directory, applications=("A1", "A6", "A11")): "openboost_worker_smoke.py", "worker_data.py", "preprocessing.py", + "ranking.py", "process_runner.py", ): p = Path(__file__).with_name(name) @@ -80,7 +81,10 @@ def run(directory, applications=("A1", "A6", "A11")): seed=seed, early_stopping_rounds=3, config=dict(rounds=4, learning_rate=0.1, max_depth=2, reg_lambda=1, bins=32), - input_npz=str(packet / fold["artifacts"]["worker-input"]["path"]), + input_npz=str( + packet + / fold["artifacts"]["formula-input" if app == "A12" else "worker-input"]["path"] + ), ) if app in {"A2", "A3"}: job["classes"] = 2 if app == "A2" else 7 @@ -101,6 +105,8 @@ def run(directory, applications=("A1", "A6", "A11")): output / "features.npz", x=arrays["x_validation"], row_ids=arrays["validation_row_ids"], + **({"exposure": arrays["exposure_validation"]} if app == "A7" else {}), + **({"age": arrays["age_validation"]} if app == "A12" else {}), ) command = [ sys.executable, @@ -132,8 +138,14 @@ def run(directory, applications=("A1", "A6", "A11")): np.testing.assert_array_equal(actual["row_ids"], restored["row_ids"]) np.testing.assert_array_equal(actual["prediction"], restored["prediction"]) expected_width = ( - () if app in {"A1", "A2"} else (7,) if app == "A3" else (2,) + () + if app in {"A1", "A2", "A7", "A8", "A9", "A12"} + else (7,) + if app == "A3" + else (2,) ) + if app == "A5": + expected_width = (3,) if app == "A6": expected_width = (len(fold["metadata"]["target_scale"]["mean"]),) assert actual["prediction"].shape == ( @@ -141,6 +153,10 @@ def run(directory, applications=("A1", "A6", "A11")): *expected_width, ) assert np.isfinite(actual["prediction"]).all() + if app in {"A7", "A8", "A9"}: + assert (actual["prediction"] > 0).all() + if app == "A10": + np.testing.assert_array_equal(actual["prediction"][:, 1], 1.0) if app == "A11": assert (actual["prediction"][:, 1] > 0).all() if app in {"A2", "A3"}: @@ -170,7 +186,7 @@ def run(directory, applications=("A1", "A6", "A11")): parser.add_argument( "--applications", nargs="+", - choices=("A1", "A2", "A3", "A6", "A11"), + choices=("A1", "A2", "A3", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12"), default=["A1", "A6", "A11"], ) args = parser.parse_args() diff --git a/benchmarks/v1/paid_event_data.py b/benchmarks/v1/paid_event_data.py new file mode 100644 index 0000000..28fff03 --- /dev/null +++ b/benchmarks/v1/paid_event_data.py @@ -0,0 +1,167 @@ +"""Bind matched positive-payment aggregates to existing frozen A9 worker rows.""" + +import argparse +import hashlib +import json +import platform +import subprocess +import sys +from pathlib import Path + +import numpy as np + +from benchmarks.v1 import real_data + + +def digest(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def verify_paid_events(raw): + """Independent claim iteration, not the source reader's bincount aggregation.""" + size = len(raw["group"]) + count = np.zeros(size, dtype=np.int64) + total = np.zeros(size) + rows, amounts = raw["severity_policy_row"], raw["severity_y"] + if rows.shape != amounts.shape or rows.ndim != 1 or rows.dtype.kind not in "iu": + raise ValueError("aligned integer claim-policy mapping required") + for row, amount in zip(rows, amounts, strict=True): + if row < 0 or row >= size or not np.isfinite(amount) or amount <= 0: + raise ValueError("invalid retained positive payment") + count[row] += 1 + total[row] += amount + if not np.array_equal(count, raw["paid_count"]) or not np.array_equal(total, raw["paid_total"]): + raise ValueError("paid aggregates differ from retained claim records") + return count, total + + +def bind(raw, arrays, train_ids): + """Require exact source units/rows; only emit train/validation composition roles.""" + count, total = verify_paid_events(raw) + required = { + "x_train", + "y_train", + "weight_train", + "x_validation", + "y_validation", + "weight_validation", + "validation_row_ids", + } + if set(arrays) != required: + raise ValueError("exact annualized train/validation packet required") + ids = np.asarray(raw["group"]) + if ids.ndim != 1 or len(np.unique(ids)) != len(ids): + raise ValueError("unique source policies required") + lookup = {v: i for i, v in enumerate(ids.tolist())} + output = {} + used = set() + for part, labels in ( + ("train", np.asarray(train_ids)), + ("validation", arrays["validation_row_ids"]), + ): + if labels.ndim != 1 or len(np.unique(labels)) != len(labels) or not len(labels): + raise ValueError("unique nonempty partition IDs required") + if any(v not in lookup or v in used for v in labels.tolist()): + raise ValueError("foreign or overlapping policies") + used.update(labels.tolist()) + rows = np.array([lookup[v] for v in labels.tolist()]) + exposure = raw["exposure"][rows] + if not np.all(raw["aggregate_eligible"][rows]): + raise ValueError("ineligible aggregate policy") + if not np.array_equal(arrays["weight_" + part], exposure): + raise ValueError("exposure weights differ from source") + if not np.array_equal(arrays["y_" + part], total[rows] / exposure): + raise ValueError("annualized targets differ from matched payments") + x = arrays["x_" + part] + if x.ndim != 2 or len(x) != len(rows) or not np.isfinite(x).all(): + raise ValueError("aligned finite encoded features required") + output.update( + { + "x_" + part: x, + "row_ids_" + part: labels, + "paid_count_" + part: count[rows], + "paid_total_" + part: total[rows], + "exposure_" + part: exposure, + } + ) + return output + + +def run(previous_summary, directory, source_root=Path("build/v1-data")): + previous_summary, directory = Path(previous_summary).resolve(), Path(directory).resolve() + previous = json.loads(previous_summary.read_text()) + directory.mkdir(parents=True, exist_ok=True) + if any(directory.iterdir()): + raise ValueError("fresh output directory required") + repo = Path(__file__).resolve().parents[2] + source_path = repo / "benchmarks/v1/datasets/insurance.json" + freeze = json.loads(source_path.read_text()) + raw, audit = real_data.insurance(source_root) + for name, record in freeze["arrays"].items(): + if real_data.array_hash(raw[name]) != record["sha256"]: + raise ValueError("source array differs from freeze") + report = dict( + scope="Matched paid-event binding only; no composition fit or test scores", + revision=subprocess.check_output(["git", "rev-parse", "HEAD"], text=True).strip(), + dirty=bool(subprocess.check_output(["git", "status", "--porcelain"])), + argv=[ + sys.executable, + "-m", + "benchmarks.v1.paid_event_data", + str(previous_summary), + str(directory), + ], + python=platform.python_version(), + os=platform.platform(), + numpy=np.__version__, + previous_summary_sha256=digest(previous_summary), + source_manifest_sha256=digest(source_path), + sources={ + str(p.relative_to(repo)): digest(p) for p in [Path(__file__), Path(real_data.__file__)] + }, + source_audit=audit, + cells=[], + ) + folds = previous["data"]["A9"]["folds"] + cells = previous["cells"] + if {c["fold"] for c in cells} != set(range(5)) or len(cells) != 5: + raise ValueError("all five frozen folds required") + for cell in cells: + if cell["application"] != "A9": + raise ValueError("A9 summary required") + fold = next(f for f in folds if f["seed"] == cell["fold"]) + packet = Path(cell["job"]["input_npz"]) + train_path = packet.parent / "train-rows.npz" + for path, role in [(packet, "worker-input"), (train_path, "train-rows")]: + if digest(path) != fold["artifacts"][role]["sha256"]: + raise ValueError("frozen packet hash differs") + with np.load(packet, allow_pickle=False) as a, np.load(train_path, allow_pickle=False) as t: + bound = bind(raw, dict(a), t["row_ids"]) + dest = directory / f"fold-{cell['fold']}.npz" + np.savez(dest, **bound) + report["cells"].append( + dict( + fold=cell["fold"], + status="pass", + path=dest.name, + sha256=digest(dest), + input_sha256=digest(packet), + train_ids_sha256=digest(train_path), + rows={p: len(bound["row_ids_" + p]) for p in ("train", "validation")}, + paid_events={ + p: int(bound["paid_count_" + p].sum()) for p in ("train", "validation") + }, + ) + ) + (directory / "manifest.json").write_text(json.dumps(report, indent=2) + "\n") + return report + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("previous_summary", type=Path) + parser.add_argument("directory", type=Path) + args = parser.parse_args() + print( + f"{len(run(args.previous_summary, args.directory)['cells'])}/5 paid-event bindings passed" + ) diff --git a/benchmarks/v1/profile_worker.py b/benchmarks/v1/profile_worker.py new file mode 100644 index 0000000..7c95238 --- /dev/null +++ b/benchmarks/v1/profile_worker.py @@ -0,0 +1,101 @@ +"""Unix diagnostic wrapper retaining profiles at a soft worker deadline.""" + +import argparse +import cProfile +import faulthandler +import json +import math +import pstats +import runpy +import signal +import sys +import time +from pathlib import Path + + +class ProfileDeadline(TimeoutError): + """Soft diagnostic interruption; an outer runner must still enforce a hard cap.""" + + +def profile_call(callback, directory, seconds): + if ( + isinstance(seconds, bool) + or not isinstance(seconds, (int, float)) + or not math.isfinite(seconds) + or not 0 < seconds <= 60 + ): + raise ValueError("profile duration must be finite and in (0,60] seconds") + root = Path(directory) + if signal.getitimer(signal.ITIMER_REAL)[0] != 0: + raise ValueError("profiling cannot replace an active process timer") + previous = signal.getsignal(signal.SIGALRM) + profiler = cProfile.Profile() + start = time.monotonic() + status = "error" + + def expire(signum, frame): + raise ProfileDeadline("diagnostic soft deadline reached") + + signal.signal(signal.SIGALRM, expire) + try: + signal.setitimer(signal.ITIMER_REAL, seconds) + profiler.enable() + result = callback() + status = "complete" + return result + except ProfileDeadline: + status = "deadline" + raise + finally: + profiler.disable() + signal.setitimer(signal.ITIMER_REAL, 0) + signal.signal(signal.SIGALRM, previous) + profiler.dump_stats(root / "profile.pstats") + with (root / "profile.txt").open("w") as stream: + pstats.Stats(profiler, stream=stream).strip_dirs().sort_stats("cumulative").print_stats( + 60 + ) + stats = pstats.Stats(profiler) + rows = [ + dict( + file=key[0], + line=key[1], + function=key[2], + primitive_calls=value[0], + calls=value[1], + self_s=value[2], + cumulative_s=value[3], + ) + for key, value in stats.stats.items() + ] + record = dict( + status=status, + soft_limit_s=seconds, + wall_s=time.monotonic() - start, + scope="instrumented diagnostic; cumulative times overlap; not a fit pass or speed comparison", + functions=sorted(rows, key=lambda row: row["cumulative_s"], reverse=True)[:100], + ) + (root / "profile.json").write_text(json.dumps(record, indent=2) + "\n") + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("job", type=Path) + parser.add_argument("--seconds", type=float, default=60) + args = parser.parse_args() + worker = Path(__file__).with_name("openboost_worker.py") + sys.argv = [str(worker), str(args.job.resolve())] + with Path("stacks.txt").open("w") as stream: + faulthandler.dump_traceback_later(20, repeat=True, file=stream) + try: + profile_call( + lambda: runpy.run_path(str(worker), run_name="__main__"), Path.cwd(), args.seconds + ) + except ProfileDeadline: + raise SystemExit(124) from None + finally: + faulthandler.cancel_dump_traceback_later() + + +if __name__ == "__main__": + main() diff --git a/benchmarks/v1/replay_current_packets.py b/benchmarks/v1/replay_current_packets.py new file mode 100644 index 0000000..1c8953d --- /dev/null +++ b/benchmarks/v1/replay_current_packets.py @@ -0,0 +1,140 @@ +"""Rerun current worker jobs from an existing frozen smoke summary, without export.""" + +import argparse +import hashlib +import importlib.metadata +import json +import os +import platform +import subprocess +import sys +from pathlib import Path + +import numpy as np + +from benchmarks.v1.process_runner import execute + + +def digest(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def run(previous_path, directory): + previous_path = Path(previous_path).resolve() + previous = json.loads(previous_path.read_text()) + root = Path(directory).resolve() + root.mkdir(parents=True, exist_ok=True) + if any(root.iterdir()): + raise ValueError("fresh output directory required") + repo = Path(__file__).resolve().parents[2] + report = dict( + scope="Unchanged full-data worker replay; no search, quality or comparative speed claim", + previous_summary=dict(path=str(previous_path), sha256=digest(previous_path)), + revision=subprocess.check_output(["git", "rev-parse", "HEAD"], text=True).strip(), + dirty=bool(subprocess.check_output(["git", "status", "--porcelain"])), + argv=[ + sys.executable, + "-m", + "benchmarks.v1.replay_current_packets", + str(previous_path), + str(root), + ], + python=platform.python_version(), + os=platform.platform(), + cpu_count=os.cpu_count(), + packages={k: importlib.metadata.version(k) for k in ("openboost", "numpy")}, + threads=1, + gpu=None, + memory_cap=None, + cells=[], + sources={}, + ) + paths = [ + *sorted((repo / "src/openboost").rglob("*.py")), + Path(__file__), + Path(__file__).with_name("openboost_worker.py"), + Path(__file__).with_name("openboost_predict.py"), + Path(__file__).with_name("process_runner.py"), + ] + report["sources"] = {str(p.relative_to(repo)): digest(p) for p in paths} + for cell in previous["cells"]: + job = cell["job"] + if job["threads"] != 1 or job["device"] != "cpu" or job["library"] != "openboost": + raise ValueError("single-thread current CPU jobs required") + app, fold = cell["application"], cell["fold"] + frozen = next(f for f in previous["data"][app]["folds"] if f["seed"] == fold) + input_path = Path(job["input_npz"]) + if digest(input_path) != frozen["artifacts"]["worker-input"]["sha256"]: + raise ValueError("worker packet differs from frozen hash") + job_path = root / f"{app}-{fold}-job.json" + job_path.write_text(json.dumps(job, indent=2) + "\n") + out = root / app / str(fold) + record = execute( + [sys.executable, str(repo / "benchmarks/v1/openboost_worker.py"), str(job_path)], + out, + timeout_s=90, + threads=1, + ) + record.update(application=app, fold=fold, job=job, input_sha256=digest(input_path)) + if record["status"] == "pass": + try: + with np.load(input_path, allow_pickle=False) as arrays: + np.savez( + out / "features.npz", + x=arrays["x_validation"], + row_ids=arrays["validation_row_ids"], + ) + command = [ + sys.executable, + str(repo / "benchmarks/v1/openboost_predict.py"), + str(out / "model.bin"), + str(out / "features.npz"), + str(out / "replay.npz"), + ] + record["replay_command"] = command + subprocess.run( + command, + check=True, + capture_output=True, + timeout=30, + env=dict( + os.environ, + OMP_NUM_THREADS="1", + OPENBLAS_NUM_THREADS="1", + MKL_NUM_THREADS="1", + ), + ) + with ( + np.load(out / "predictions.npz") as a, + np.load(out / "replay.npz") as b, + np.load(out / "features.npz") as f, + ): + np.testing.assert_array_equal(a["prediction"], b["prediction"]) + np.testing.assert_array_equal(a["row_ids"], b["row_ids"]) + np.testing.assert_array_equal(a["row_ids"], f["row_ids"]) + assert np.isfinite(a["prediction"]).all() + if app == "A3": + assert a["prediction"].shape == (len(a["row_ids"]), job["classes"]) + assert ((a["prediction"] >= 0) & (a["prediction"] <= 1)).all() + np.testing.assert_allclose(a["prediction"].sum(axis=1), 1.0) + record.update( + fresh_process_exact=True, + replay_sha256=digest(out / "replay.npz"), + training=json.loads((out / "training.json").read_text()), + ) + except Exception as error: + record.update(status="error", reason=str(error)) + report["cells"].append(record) + (root / "summary.json").write_text(json.dumps(report, indent=2) + "\n") + print(f"{app}/{fold}: {record['status']} ({record['wall_s']:.1f}s)", flush=True) + return report + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("previous_summary", type=Path) + parser.add_argument("directory", type=Path) + args = parser.parse_args() + result = run(args.previous_summary, args.directory) + if any(c["status"] != "pass" for c in result["cells"]): + raise SystemExit(1) diff --git a/benchmarks/v1/worker_data.py b/benchmarks/v1/worker_data.py index c272841..d8b2e40 100644 --- a/benchmarks/v1/worker_data.py +++ b/benchmarks/v1/worker_data.py @@ -178,6 +178,11 @@ def bind(application, data, parts, frozen): packets["validation"]["event"] = event[parts["validation"]] packets["test-truth"]["event"] = event[parts["test"]] if application == "A12": + formula_packet = dict(worker) + for part in ("train", "validation"): + formula_packet["x_" + part] = worker["x_" + part][:, :-1] + formula_packet["age_" + part] = age[parts[part]] + packets["formula-input"] = formula_packet for part in ("validation", "test"): packets[part + "-structure"] = dict( row_ids=ids[parts[part]], diff --git a/docs/v1/aft.md b/docs/v1/aft.md index 6f693f0..a576102 100644 --- a/docs/v1/aft.md +++ b/docs/v1/aft.md @@ -54,3 +54,8 @@ binding. Tests cover bounds rejection, three-round geometry/tree parity, finite differences, censoring effects, monotone outputs and fresh-process mixed/missing/unseen inference. Real A10 NLL/IPCW comparisons, calibration, learned scale, other censoring forms and CUDA remain open. + +The current A10 worker converts frozen time/event arrays to event_right bounds, +fixes sigma=1 and persists it with a log-normal output tag. Five frozen Veteran +folds pass bounded validation and exact fresh location/scale replay in Sprint 059. +Independent censored NLL checks pass. This is not full A10 quality acceptance. diff --git a/docs/v1/formula-runs.md b/docs/v1/formula-runs.md index d638871..2aa4417 100644 --- a/docs/v1/formula-runs.md +++ b/docs/v1/formula-runs.md @@ -66,3 +66,9 @@ same-ID independent and reordered execution; they establish no speed benefit. [Shared preparation](preparation.md) now supports explicit training-code reuse across independent runs. + +The current A12 worker uses a dedicated concrete packet: age/28 is structure, +and encoded composition features alone feed the parameter trees. Ordinary GBDT +packets retain age as a predictor. Five frozen Formula folds pass exact fresh +inference in Sprint 060; real extrapolation and quality/search acceptance remain +open. Inference requires new positive age values in the same normalized units. diff --git a/docs/v1/frequency-severity.md b/docs/v1/frequency-severity.md index 7c95506..5736d39 100644 --- a/docs/v1/frequency-severity.md +++ b/docs/v1/frequency-severity.md @@ -53,3 +53,8 @@ selection by aggregate-loss quality requires an explicit workflow evaluation. Tests verify three-round component training, products, units, row reordering, aggregate rejection and fresh-process mixed-feature persistence. Real A9 quality/joins, joint selection, AFT and CUDA remain open. + +Sprint 057 binds matched positive-payment counts/totals to the frozen A9 policy +rows. Sprint 058 trains both public recipes on all five packets and verifies exact +fresh replay of all named outputs. Component selection remains independent and is +recorded as such. These bounded runs do not establish joint aggregate quality. diff --git a/docs/v1/gamma.md b/docs/v1/gamma.md index 8c8e347..3110500 100644 --- a/docs/v1/gamma.md +++ b/docs/v1/gamma.md @@ -45,3 +45,9 @@ numeric/categorical/missing/unseen input composition. Independent tests verify derivatives, offset-aware base, three rounds, weight semantics, rejected updates and persistence. Real A8 quality/selection evaluation, dispersion/calibration, Tweedie/composition/A9, AFT/A10 and CUDA remain open. + +The current A8 evaluation worker binds individual eligible positive claims and +original weights to Gamma, retaining explicit positive-claim output semantics. +Five frozen policy-grouped severity folds pass bounded validation and exact fresh +inference in Sprint 055. Selected scores are Gamma objectives, not estimated +dispersion likelihoods. Full A8 quality/search acceptance remains open. diff --git a/docs/v1/poisson.md b/docs/v1/poisson.md index b10ffa6..1f267a7 100644 --- a/docs/v1/poisson.md +++ b/docs/v1/poisson.md @@ -51,3 +51,9 @@ nonfinite geometry and means outside positive float64 range fail explicitly. Tests verify independent geometry, offset-aware initialization, three-round trees, zero counts and exposure scaling. Real A7 deviance/calibration comparisons, Gamma/A8, Tweedie/composition/A9, AFT/A10 and CUDA remain required work. + +The current A7 evaluation worker binds frozen exposure vectors to the public +structure role and persists a period-count output tag with the raw model. +Prediction packets must supply new exposure; extra offsets and exposure on +other tasks are rejected. Five frozen frequency folds pass bounded validation +and exact fresh inference in Sprint 054. Full A7 quality/search gates stay open. diff --git a/docs/v1/quantile.md b/docs/v1/quantile.md index 9cc97b8..f859cee 100644 --- a/docs/v1/quantile.md +++ b/docs/v1/quantile.md @@ -48,3 +48,10 @@ Inference stores the solved scalar leaf values in the existing tree format, without residuals, training rows or a training objective. These tests establish CPU mechanics and D3 solver correctness, not real A5 quality, quantile coverage, noncrossing guarantees, agent-author effort, CUDA or performance results. + +The current evaluation worker composes three independent recipes at the frozen +A5 levels 0.1, 0.5 and 0.9. Its evaluation bundle retains that level order, three +scalar models and per-level stopping/selection diagnostics. Predictions remain +raw; crossing rows are reported without sorting. All five calendar-only Bike +rolling origins pass bounded validation and fresh inference in Sprint 053. +This does not establish calibrated intervals or real-data quality acceptance. diff --git a/docs/v1/ranking.md b/docs/v1/ranking.md index 83eca9a..459afe7 100644 --- a/docs/v1/ranking.md +++ b/docs/v1/ranking.md @@ -52,3 +52,10 @@ Independent tests verify pair geometry, logistic finite differences, query isolation, rank tie permutations, three-round tree composition, offsets and fresh-process persistence. Real A4 evaluation, quantile/penalized leaves, CUDA and external-library quality/performance comparisons remain open. + +The current A4 evaluation adapter accepts contiguous disjoint integer/string +query IDs, one weight per query and explicit integer training/validation row IDs. +It maps query groups to public structure roles, preserves source row IDs for ties, +and rejects ordinary row weights. Pairwise and lambda modes use the same public +recipe; fresh inference needs features and row IDs only. Sprint 061 verifies +synthetic weighted parity and replay. Real MSLR binding/quality remains open. diff --git a/docs/v1/tweedie.md b/docs/v1/tweedie.md index dfb7256..b1d6b9a 100644 --- a/docs/v1/tweedie.md +++ b/docs/v1/tweedie.md @@ -55,3 +55,9 @@ Independent tests cover three powers, zero-target finite differences, intercepts three rounds, annualized weights, rejected steps and persistence. Frequency– severity composition, real A9 quality, calibrated tails, AFT/A10 and CUDA remain separate required work. + +The current direct A9 worker requires annualized targets and positive exposure +weights, fixes evaluation power at 1.5 and persists annualized output metadata. +Five frozen aggregate folds pass bounded validation and exact fresh inference +in Sprint 056. Independent checks verify weights and period-unit conversion. +Frequency-severity evaluation and full A9 quality/search remain separate work. diff --git a/learnings/2026-09-06-v1-aggregate-worker.md b/learnings/2026-09-06-v1-aggregate-worker.md new file mode 100644 index 0000000..d9ed482 --- /dev/null +++ b/learnings/2026-09-06-v1-aggregate-worker.md @@ -0,0 +1,48 @@ +# 2026-09-06: Annualized aggregate targets use exposure weights + +## Context + +Parent d7622f4. A9's frozen exporter binds eligible annualized paid totals and +exposure weights, but the current worker lacked a direct aggregate path. + +## Decision or Result + +Use public Tweedie at fixed evaluation power 1.5, positive exposure weights and +no additional offset. Persist explicit annualized output and power metadata. +Reject missing/nonpositive weights, negative targets and extra exposure/offsets. +The worker consumes a verified packet; the exporter establishes the weight's +source meaning. An arbitrary standalone packet cannot prove its own provenance. + +## Changes + +- Current worker, inference and smoke harness support direct A9 aggregate means. +- Weighted direct parity, selected objective, final/best selection and fresh replay. +- Invalid weight/target/unit inputs and altered persisted power are rejected. +- [Sprint 056](../v1-sprints/056-aggregate-worker.md). + +## Verification + +- Both direct A9 cases failed on unsupported application before implementation. +- Full CPU regression: 881 passed; current tests include independent weighted + objective recomputation and persisted power validation. +- Five frozen folds pass exact fresh replay, independent weighted objectives and + exact exposure-weight checks; target/period conversions pass. Source/output + hashes match [evidence](../benchmarks/v1/evidence/aggregate-056/README.md). +- Ruff, strict MkDocs and whitespace checks pass. Commands use + UV_CACHE_DIR=/tmp/openboost-research-uv-cache and uv run --no-sync; + macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +Missing support was reproduced without changing the frozen input population. +No second log-exposure offset or count-likelihood substitution was used. + +## Risks and Follow-ups + +Frequency-severity composition still needs eligible paid-event counts matched to +payment totals. Raw A7 claim counts do not satisfy that requirement. Complete +A9 quality/search, other adapters, D5 and GPU remain open. + +## Commits + +- This direct A9 aggregate slice; parent d7622f4. Local only, no push. diff --git a/learnings/2026-09-06-v1-candidate-row-hash.md b/learnings/2026-09-06-v1-candidate-row-hash.md new file mode 100644 index 0000000..b53839a --- /dev/null +++ b/learnings/2026-09-06-v1-candidate-row-hash.md @@ -0,0 +1,51 @@ +# 2026-09-06: Hoist immutable row identity out of candidate enumeration + +## Context + +Parent d1dede6. Sprint 050 measured repeated row hashing as a major cost within +candidate enumeration on the full Covertype input. Each candidate in one call +uses the same immutable Histogram.rows array. + +## Decision or Result + +Compute the existing digest once per candidates invocation and reuse the identical +string. No global cache, hash format, candidate ordering, statistics, feasibility +or routing changes. Histogram aggregation is intentionally a separate optimization. + +## Changes + +- ops.candidates: one local invariant digest replaces repeated hashing. +- Two tests with numeric/categorical/missing features, full/subset rows and zero + weights verify exact digest identity, aggregate conservation and one hash call. +- [Sprint 051](../v1-sprints/051-candidate-row-hash.md). + +## Verification + +Use UV_CACHE_DIR=/tmp/openboost-research-uv-cache. + +- `uv run --no-sync pytest tests/v1/test_candidate_hash.py -q -o addopts=''`: + both initially failed with 16 calls rather than one; both pass after hoisting. +- `uv run --no-sync pytest tests/ -m 'not gpu and not benchmark' -q --tb=short`: + 848 passed, including independent histogram/tree references and recipe tests. +- Uninstrumented Sprint 049 fold-zero job rerun under the unchanged 90-second + process cap and one thread, after the regression suite completed: passes in + 87.4 seconds. Exact fresh seven-class predictions/source IDs and normalized + probabilities verified under a 30-second replay cap. +- Source/raw artifact hashes match [row-hash-051](../benchmarks/v1/evidence/row-hash-051/README.md). + Ruff and strict MkDocs pass on macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +The focused test reproduced redundant work without a mathematical failure. +The same row bytes now produce the same digest once; no digest weakening or +identity bypass was used. + +## Risks and Follow-ups + +One local rerun is not a fair speed comparison or full five-fold A3 acceptance. +Histogram aggregation remains the other measured cost. Full required quality, +D5, CUDA and adoption gates remain open. No push or publication. + +## Commits + +- This invariant-hash slice; parent d1dede6. diff --git a/learnings/2026-09-06-v1-composition-worker.md b/learnings/2026-09-06-v1-composition-worker.md new file mode 100644 index 0000000..600bb2b --- /dev/null +++ b/learnings/2026-09-06-v1-composition-worker.md @@ -0,0 +1,46 @@ +# 2026-09-06: Execute matched frequency-severity through public components + +## Context + +Parent e603f1f. Sprint 057 verified matched positive-payment inputs; composition +training and persisted real-data replay remained untested in the current workflow. + +## Decision or Result + +Use paid_loss_problems for Poisson paid-event counts and Gamma positive policy +averages weighted by paid count. Select each component independently using its +own validation objective; persist both roles with FrequencySeverity. Emit named +rate/count/severity/annualized/period outputs. Do not claim joint selection. + +## Changes + +- Dedicated strict composition worker and inference-only replay command. +- Five-fold hash-bound smoke harness, combined fit budget and exact named replay. +- Direct public parity and invalid contract tests; no foundation code changes. +- [Sprint 058](../v1-sprints/058-composition-worker.md). + +## Verification + +- Focused tests: 9 passed. Full CPU regression: 901 passed. +- Tests compare component model identities, stopping and fresh-process outputs; + reject test/offset/weight injections, overlapping policies and invalid counts. +- All five real fits and named-array replays pass; products and exposure units + pass. Binding/source/output hashes match + [evidence](../benchmarks/v1/evidence/composition-058/README.md). +- Ruff, strict MkDocs and whitespace pass. Commands use uv run --no-sync with + UV_CACHE_DIR=/tmp/openboost-research-uv-cache; macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +Lint corrected test import ordering. No source eligibility, units or performance +caps were changed to obtain passing tests. + +## Risks and Follow-ups + +Independent component selection is not aggregate-loss joint selection. Full A9 +search/quality, remaining applications, D5 and CUDA remain open. The paired mean +is not a calibrated compound distribution. Hashes are not OS access isolation. + +## Commits + +- This composition execution slice; parent e603f1f. Local only, no push. diff --git a/learnings/2026-09-06-v1-count-worker.md b/learnings/2026-09-06-v1-count-worker.md new file mode 100644 index 0000000..e5c7c38 --- /dev/null +++ b/learnings/2026-09-06-v1-count-worker.md @@ -0,0 +1,47 @@ +# 2026-09-06: Bind count exposure exactly once in current evaluation + +## Context + +Parent 003fdac. The frozen A7 worker packet contains period counts and separate +exposure vectors. The public Poisson recipe already represents exposure as a +structure role, but the current evaluation worker had no A7 path. + +## Decision or Result + +Bind exposure to the public structure role without adding it to weights or +supplying a second log offset. Persist raw log-rate models with an explicit +period-count output tag. Inference requires new positive aligned exposure. +Extra offsets and exposure on foreign applications are rejected. + +## Changes + +- Current worker and inference support explicit A7 count/exposure semantics. +- Real-data harness includes exposure in prediction-only replay packets. +- Tests cover weighted final/best direct parity, independent likelihood, + exposure scaling, fresh persistence and malformed/foreign inputs. +- [Sprint 054](../v1-sprints/054-count-worker.md). + +## Verification + +- Both new direct-parity cases failed on missing A7 support before implementation. +- Current worker suite: 47 passed. Full CPU suite: 866 passed. +- Commands use UV_CACHE_DIR=/tmp/openboost-research-uv-cache and uv run --no-sync. +- All five full-data folds pass with exact fresh exposure-aware replay. +- Independent NLL checks pass at rtol=1e-12/atol=1e-14; the initial 1e-13 relative + check failed at a 2.4e-14 absolute discrepancy. Raw differences and math.fsum + checks are retained in [evidence](../benchmarks/v1/evidence/count-054/README.md). +- Ruff, strict MkDocs and diff whitespace checks passed. + +## Failed Attempts + +Missing adapter support was reproduced without altering the mathematical recipe. +No exposure-as-weight approximation or implicit unit-exposure fallback was used. + +## Risks and Follow-ups + +Real-data integration is not a quality search or calibrated rate/deviance result. +All remaining adapters, searches, D5, CUDA and adoption gates stay open. + +## Commits + +- This A7 worker slice; parent 003fdac. Local only, no push. diff --git a/learnings/2026-09-06-v1-covertype-profile.md b/learnings/2026-09-06-v1-covertype-profile.md new file mode 100644 index 0000000..9198dfe --- /dev/null +++ b/learnings/2026-09-06-v1-covertype-profile.md @@ -0,0 +1,55 @@ +# 2026-09-06: Measure the full Covertype CPU bottleneck + +## Context + +Merged main 078ca61 contains Sprint 049's five 90-second Covertype timeouts. +Work continues locally on codex/covertype-cpu-profile. A static hypothesis favored +repeated prediction-time binning, but no timing evidence supported that priority. + +## Decision or Result + +A Unix diagnostic wrapper retains cProfile output on a 60-second soft alarm, +with the existing process runner imposing a 90-second hard cap. Run the exact +full-data fold-zero job under one thread. It exits 124 as intended; no fit pass. +Histogram aggregation uses about 30 seconds and hash updates about 22 seconds +in the interrupted instrumented window. Candidate generation repeatedly hashes +the same immutable row array. Prediction transforms account for about 2.28 seconds +cumulative. Prioritize invariant candidate row hashing before cache redesign. + +## Changes + +- profile_worker.py and two tests for result preservation, deadline artifacts + and restoration of the process alarm state. Unix diagnostic only. +- [Sprint 050](../v1-sprints/050-covertype-profile.md) and + [raw statistics/stacks](../benchmarks/v1/evidence/profile-050/README.md). + +## Verification + +Use UV_CACHE_DIR=/tmp/openboost-research-uv-cache. + +- `uv run --no-sync pytest tests/v1/test_profile_worker.py -q -o addopts=''`: 2 passed. +- `uv run --no-sync pytest tests/ -m 'not gpu and not benchmark' -q --tb=short`: 846 passed. +- Changed-file Ruff and strict MkDocs pass. Source and raw artifact hashes match. +- Exact diagnostic worker command, job/input hashes and outer outcome are recorded + in manifest.json. It uses Sprint 049 fold zero, 60-second soft/90-second hard + limits, one thread, local macOS/Python 3.12.12/NumPy 2.3.5. No memory cap or CUDA. + +## Failed Attempts + +The incomplete profile is intentionally not counted as a successful fit. Stack +snapshots support the observed histogram/hash paths. The initial prediction-cache +priority hypothesis is not supported by this window. Do not add overlapping +cumulative timings or extrapolate an end-to-end speed ratio from this run. + +## Risks and Follow-ups + +cProfile adds overhead; a local regression run overlapped the beginning of the +window. No performance acceptance or competitor comparison is implied. Next hoist +the per-invocation row hash with exact conformance tests, then rerun the unchanged +bounded workload. Histogram layout/aggregation is a separate follow-up. Required +real quality, D5, CUDA and adoption remain open. No new push or PR is authorized +by the earlier one-off merge request; this slice remains local. + +## Commits + +- This profiling slice; parent 078ca61. diff --git a/learnings/2026-09-06-v1-cpu-exit-review.md b/learnings/2026-09-06-v1-cpu-exit-review.md new file mode 100644 index 0000000..dbdbbb3 --- /dev/null +++ b/learnings/2026-09-06-v1-cpu-exit-review.md @@ -0,0 +1,43 @@ +# 2026-09-06: Distinguish CPU implementation from phase acceptance + +## Context + +Parent a2a03e4. Current CPU adapters now span A1–A12, while repeated continuation +risked conflating validation plumbing with formal CPU readiness and GPU progress. + +## Decision or Result + +[This review](../v1-sprints/062-cpu-exit-and-gpu-entry.md) reconciles current +capabilities with unfinished source, workflow, installed D5 and formal E5 gates. +Keep current F3 ordering explicit; no GPU implementation exists. Name the first +B12 vertical path and acceptance without declaring an unapproved phase overlap. + +## Changes + +- Current capability/application position and a finite ordered remaining list. +- Next slice: installed same-seed/different-ID RNG and changed-data preparation + probes, complementing existing scheduling permutations/retries/failures. +- GPU first-slice scope and parity/cost criteria; no new CPU objective expansion. + +## Verification + +Read active F1/F2/F3 and E0/E1/E2/E5 criteria, device construction design, +current worker/search call paths, installed scheduler verifier and sprint evidence. +No new test run claimed; latest regression is Sprint 061's 923 passes. Strict +MkDocs and whitespace checks passed. Sealed held-out tasks were not inspected. + +## Failed Attempts + +No experimental attempt in this review. Historical missing-objective/stopping +claims were superseded using current evidence rather than copied forward. + +## Risks and Follow-ups + +No full CPU gate is declared. MSLR/source obligations, real searches, joint A9 +selection, current evidence reconciliation and formal author cohorts remain. +Starting GPU early requires an explicit sequencing amendment, not silently +forgetting these obligations. No push or publication. + +## Commits + +- This review slice; parent a2a03e4. diff --git a/learnings/2026-09-06-v1-current-ranking-worker.md b/learnings/2026-09-06-v1-current-ranking-worker.md new file mode 100644 index 0000000..1a52368 --- /dev/null +++ b/learnings/2026-09-06-v1-current-ranking-worker.md @@ -0,0 +1,43 @@ +# 2026-09-06: Preserve query weights and source-row ties in current ranking + +## Context + +Parent ca73a2d. The public CPU ranking recipe and baseline query validator existed, +but the current worker had no A4 path. Real MSLR access/binding remains unresolved. + +## Decision or Result + +Reuse strict contiguous/disjoint query validation. Map groups to integer public +structure roles and repeat explicit per-query weights across their rows. Preserve +integer source row IDs for NDCG tie behavior; reject ordinary row weights and +ambiguous/overlapping identities. Both pairwise and lambda modes are exposed. + +## Changes + +- Current worker and inference support A4 raw scores and query-weighted selection. +- Source manifests include the imported query validator. +- Four direct/fresh cases plus seven invalid-input cases; no core changes. +- [Sprint 061](../v1-sprints/061-ranking-worker.md). + +## Verification + +- Current worker suite: 83 passed, including four new fresh-process replays. +- Full CPU regression: 923 passed. Ruff, strict MkDocs and whitespace pass. + Commands use uv run --no-sync and UV_CACHE_DIR=/tmp/openboost-research-uv-cache; + macOS/Python 3.12.12/NumPy 2.3.5. +- Configured build/v1-data has no MSLR/ranking-fold files. No real-data fit claimed. + +## Failed Attempts + +No data substitution or modified query population was used. The missing real-data +prerequisite remains explicit, rather than counting synthetic parity as A4 quality. + +## Risks and Follow-ups + +Per-query pair enumeration is quadratic. Real source agreement, data binding, +quality/search, D5 and CPU phase acceptance are open. Next review those finite +prerequisites and the GPU transition; CUDA remains unimplemented. + +## Commits + +- This current A4 adapter slice; parent ca73a2d. Local only, no push. diff --git a/learnings/2026-09-06-v1-histogram-gather.md b/learnings/2026-09-06-v1-histogram-gather.md new file mode 100644 index 0000000..b7e5929 --- /dev/null +++ b/learnings/2026-09-06-v1-histogram-gather.md @@ -0,0 +1,54 @@ +# 2026-09-06: Reuse selected statistics across histogram features + +## Context + +Parent 215d85f. Sprint 050 identified histogram aggregation as a major full-input +CPU cost. The existing loop repeatedly selected identical statistic rows for each +feature. Sprint 051 removed a separate repeated row-hashing cost. + +## Decision or Result + +Gather selected rows once, preserve the original C-order parent sum, then retain +contiguous statistic columns for all feature bincount calls. Each bin receives +identical weights in identical row order. This is local scratch, not a persistent +cache, new public abstraction or shared-run fusion. + +## Changes + +- `ops.histogram`: reuse selected columns without changing statistic semantics. +- Exact legacy-formula tests cover mixed/missing features, vector weighted fields, + independent fields, cancellation, and full/reordered/empty row selections. +- Frozen-packet replay harness verifies input hashes and fresh model inference. +- [Sprint 052](../v1-sprints/052-histogram-gather.md) records full-input outcomes. + +## Verification + +Use `UV_CACHE_DIR=/tmp/openboost-research-uv-cache`. + +- All three new cases failed the buffer-reuse assertion before the change. +- `uv run --no-sync pytest tests/ -m 'not gpu and not benchmark' -q --tb=short`: + 851 passed, including independent candidate/routing/tree and recipe checks. +- Fold zero has byte-identical model persistence and exact prediction arrays + against Sprint 051. Source hashes match the evaluated implementation. +- Full frozen-fold evidence: [histogram-052](../benchmarks/v1/evidence/histogram-052/README.md). + +## Failed Attempts + +No mathematical failure was reproduced. Repeated gathering was redundant work. +Preserving the parent reduction layout avoids introducing floating-point changes +while optimizing the per-feature aggregation path. + +## Risks and Follow-ups + +The contiguous buffer retains approximately rows times fields times eight bytes; +transpose construction can transiently retain two such arrays. Peak process +memory was not measured. No memory improvement or stable speed ratio is claimed. +Full quality searches, remaining adapters, author probes and CUDA remain open. + +## Commits + +- This histogram-gather slice; parent 215d85f. + +Final verification: all five folds pass (67.8–70.3 seconds), exact fresh replay on +each, and all source/output hashes match. Focused tests pass again (3), Ruff and +strict MkDocs pass. These outcomes close the bounded integration failure only. diff --git a/learnings/2026-09-06-v1-paid-event-binding.md b/learnings/2026-09-06-v1-paid-event-binding.md new file mode 100644 index 0000000..6a88c8b --- /dev/null +++ b/learnings/2026-09-06-v1-paid-event-binding.md @@ -0,0 +1,44 @@ +# 2026-09-06: Match composition frequency to eligible severity events + +## Context + +Parent a041f1b. Direct A9 aggregate integration passed, but the public composition +helper accepts declared aggregates and cannot prove payment eligibility or joins. +A7 raw claim counts must not substitute for matched positive-payment counts. + +## Decision or Result + +Independently reconstruct count/amount aggregates from retained claim rows and +require exact equality with frozen source arrays. Bind to hashed A9 packets and +training IDs; require exact exposure weights and annualized target agreement. +Keep source population/preprocessing unchanged and emit no test labels. + +## Changes + +- paid_event_data.py: checked source-to-composition binding and five-fold CLI. +- Eleven tests exercise semantic mismatches and wrong partition/unit inputs. +- [Sprint 057](../v1-sprints/057-paid-event-binding.md). + +## Verification + +- Focused tests: 11 passed. Full CPU regression: 892 passed. +- All five real bindings pass; output/source hashes match the retained + [manifest](../benchmarks/v1/evidence/paid-events-057/README.md). +- Ruff, strict MkDocs and whitespace pass. Commands use uv run --no-sync and + UV_CACHE_DIR=/tmp/openboost-research-uv-cache; macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +Lint found an import ordering issue, corrected before closure. No source data, +rows, thresholds or eligibility criteria were changed to obtain passing results. + +## Risks and Follow-ups + +The verifier is structurally independent aggregation over retained claims, not +an independently implemented raw ARFF parser. Frozen hashes bind the upstream +reader. Hash checks are not OS isolation. Next fit and replay composition on all +five packets; joint selection, full A9 quality, other adapters, D5 and CUDA stay open. + +## Commits + +- This input-binding slice; parent a041f1b. Local only, no push. diff --git a/learnings/2026-09-06-v1-quantile-worker.md b/learnings/2026-09-06-v1-quantile-worker.md new file mode 100644 index 0000000..0493276 --- /dev/null +++ b/learnings/2026-09-06-v1-quantile-worker.md @@ -0,0 +1,46 @@ +# 2026-09-06: Compose A5 quantiles through public scalar recipes + +## Context + +Parent f9bf01f. The frozen Bike exporter existed, but the current OpenBoost worker +only accepted A1/A2/A3/A6/A11. Historical baseline integration was not evidence +that the redesigned foundation supported the real A5 workflow. + +## Decision or Result + +Compose three independent public quantile recipes at frozen levels 0.1/0.5/0.9. +Persist explicit ordered models and level metadata, separate stopping and best +selection, and raw predictions. Report crossings without post-hoc sorting. +No new public/core primitive was necessary. + +## Changes + +- Current worker, inference bundle and smoke harness now support A5. +- Tests cover weighted direct parity, stopping selection, fresh replay, malformed + schemas and preservation of crossing predictions. +- [Sprint 053](../v1-sprints/053-quantile-worker.md) records scope and reflection. + +## Verification + +- Six initial tests failed on unsupported A5 before implementation. +- All five frozen Bike origins pass with exact fresh inference and source IDs. +- Independent NumPy pinball recomputation matches each selected score. +- Source/output hashes match [raw evidence](../benchmarks/v1/evidence/quantile-053/README.md). +- `uv run --no-sync pytest tests/ -m "not gpu and not benchmark" -q --tb=short`: 858 passed. +- Ruff, strict MkDocs and diff whitespace passed; macOS/Python 3.12.12/NumPy 2.3.5. + Commands use UV_CACHE_DIR=/tmp/openboost-research-uv-cache. + +## Failed Attempts + +The missing adapter was reproduced without changing the frozen data split or +objective. No quality failure was corrected or hidden by this integration. + +## Risks and Follow-ups + +Independent levels may cross. No observed crossings here is not a guarantee. +Real searches, calibrated quality, remaining adapters, D5 and CUDA stay open. +Next address A7 count/exposure binding; offsets must not be silently ignored. + +## Commits + +- This current A5 worker slice; parent f9bf01f. Local only, no push. diff --git a/learnings/2026-09-06-v1-severity-worker.md b/learnings/2026-09-06-v1-severity-worker.md new file mode 100644 index 0000000..5126f1c --- /dev/null +++ b/learnings/2026-09-06-v1-severity-worker.md @@ -0,0 +1,47 @@ +# 2026-09-06: Preserve claim-level units in the current Gamma worker + +## Context + +Parent 606487c. The frozen A8 exporter retains positive joined claim records, +policy-grouped splits and unit claim weights. The current worker lacked A8 +support despite an existing public Gamma recipe. + +## Decision or Result + +Use the scalar Gamma recipe and original weights, retaining a log-mean model +and explicit positive-claim output. Do not introduce exposure or average claims +by policy. The selection score is the Gamma objective y/mean+log(mean), not a +fitted-dispersion likelihood or deviance statistic. + +## Changes + +- Current worker, inference and smoke harness add A8 without core changes. +- Weighted direct parity covers final/best selection and fresh persistence. +- Nonpositive targets, exposure and extra offsets fail explicitly. +- [Sprint 055](../v1-sprints/055-severity-worker.md). + +## Verification + +- Both new direct A8 cases failed on unsupported application before implementation. +- Current worker suite: 53 passed, including independent selected objective checks. +- Full CPU regression: 872 passed. Ruff, strict MkDocs and whitespace passed. +- All five frozen folds pass with exact fresh replay; independent Gamma objectives + agree at rtol=1e-12/atol=1e-14. Source/output hashes match the + [raw evidence](../benchmarks/v1/evidence/severity-055/README.md). +- Commands use UV_CACHE_DIR=/tmp/openboost-research-uv-cache and uv run --no-sync; + macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +The missing adapter was reproduced without changing the foundation or frozen +population. No averaging or exposure weighting approximation was introduced. + +## Risks and Follow-ups + +The next required row is A9, with distinct annualized target/exposure-weight +semantics and composition requirements. Real searches, quality, D5 and GPU +remain open. Short integration runs do not establish calibrated severity models. + +## Commits + +- This A8 worker slice; parent 606487c. Local only, no push. diff --git a/learnings/2026-09-06-v1-structured-worker.md b/learnings/2026-09-06-v1-structured-worker.md new file mode 100644 index 0000000..981d42f --- /dev/null +++ b/learnings/2026-09-06-v1-structured-worker.md @@ -0,0 +1,45 @@ +# 2026-09-06: Keep Formula structure outside parameter-tree inputs + +## Context + +Parent 3ff97c3. The A12 exporter provided ordinary GBDT inputs with appended age, +but the current Formula recipe requires age as a separate structural argument. + +## Decision or Result + +Emit a separate formula-input packet retaining the identical encoded composition +features and normalized age/28. Bind two raw parameters and public saturation +prediction, with explicit structured inference. Preserve the ordinary packet. + +## Changes + +- Exporter/current worker/inference/smoke add structured A12 integration. +- Tests cover weighted recipe parity, fresh replay, missing/invalid inference age + and exact exclusion of appended age from tree predictors. +- [Sprint 060](../v1-sprints/060-structured-worker.md). + +## Verification + +- Full CPU regression: 912 passed. Ruff, strict MkDocs and whitespace pass. +- Five frozen folds pass with exact replay; independent formula/score and exact + feature/age/source-ID checks pass. Source/output hashes match + [evidence](../benchmarks/v1/evidence/structured-060/README.md). +- Commands use uv run --no-sync and UV_CACHE_DIR=/tmp/openboost-research-uv-cache; + real export additionally uses --offline --with xlrd. macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +The initial binding test ignored preprocessing missing-indicator columns; changed +it to assert removal of exactly the appended age column. Initial real export +failed due to missing xlrd, before fitting. Cached ephemeral dependency retry +passed; no project environment mutation or source change. + +## Risks and Follow-ups + +No real extrapolation/global-control/quality acceptance. A4, searches/D5 and CPU +phase gates remain; GPU is unimplemented. The adapter cannot prove the units of +arbitrary standalone packets; frozen exporter hashes bind those semantics. + +## Commits + +- This structured A12 slice; parent 3ff97c3. Local only, no push. diff --git a/learnings/2026-09-06-v1-survival-worker.md b/learnings/2026-09-06-v1-survival-worker.md new file mode 100644 index 0000000..686e032 --- /dev/null +++ b/learnings/2026-09-06-v1-survival-worker.md @@ -0,0 +1,46 @@ +# 2026-09-06: Bind event/right censoring in current A10 evaluation + +## Context + +Parent 20d9b7c. The public fixed-scale AFT recipe existed, while the current +real-data worker did not accept the frozen time/event packets. + +## Decision or Result + +Convert exact events to equal positive bounds and right censoring to positive +lower/infinite upper bounds. Fix sigma=1 explicitly and persist its metadata. +Emit [log-time location, sigma], matching the evaluation schema. Validation +selection uses censored likelihood, not squared error or treating censoring as death. + +## Changes + +- Current worker and inference add A10 with strict time/event/scale validation. +- Weighted final/best direct parity and fresh replay tests. +- Independent erfc-based censored NLL checks and malformed input rejection. +- [Sprint 059](../v1-sprints/059-survival-worker.md). + +## Verification + +- Both direct A10 tests failed on unsupported application before implementation. +- Current worker suite: 70 passed. +- Full CPU regression: 909 passed. All five real folds pass exact replay and + independent censored NLL checks; source/output hashes match + [evidence](../benchmarks/v1/evidence/survival-059/README.md). +- Ruff, strict MkDocs and whitespace pass. Commands use uv run --no-sync with + UV_CACHE_DIR=/tmp/openboost-research-uv-cache; macOS/Python 3.12.12/NumPy 2.3.5. + +## Failed Attempts + +A target_kind keyword was initially placed before a positional argument; lint +and test collection caught the syntax error. Corrected before running workloads. +No mathematical support, source split or evaluation threshold changed. + +## Risks and Follow-ups + +Fixed scale and event/right censoring only. Left/interval censoring, calibration, +IPCW quality, source licensing closure and complete A10 search remain open. +CPU/GPU transition prerequisites are recorded in the sprint; CUDA is unimplemented. + +## Commits + +- This A10 worker slice; parent 20d9b7c. Local only, no push. diff --git a/src/openboost/ops.py b/src/openboost/ops.py index 5754815..f2ec3c8 100644 --- a/src/openboost/ops.py +++ b/src/openboost/ops.py @@ -48,6 +48,11 @@ def histogram(data, fields, rows=None): if "unweighted" in fields.roles: raise ValueError("apply objective training weights before aggregation") selected = _rows(rows, len(data.data.values)) + selected_values = fields.values[selected] + # Preserve the original C-order reduction before laying out contiguous columns. + total = _owned(selected_values.sum(axis=0), ndim=1) + columns = np.ascontiguousarray(selected_values.T) + del selected_values sums, counts = [], [] for feature, bins in enumerate(data.binning.bin_counts): codes = np.where(data.missing[feature, selected], bins, data.codes[feature, selected]) @@ -55,8 +60,8 @@ def histogram(data, fields, rows=None): _owned( np.column_stack( [ - np.bincount(codes, weights=column[selected], minlength=bins + 1) - for column in fields.values.T + np.bincount(codes, weights=column, minlength=bins + 1) + for column in columns ] ), ndim=2, @@ -69,7 +74,7 @@ def histogram(data, fields, rows=None): fields, tuple(sums), tuple(counts), - _owned(fields.values[selected].sum(axis=0), ndim=1), + total, ) @@ -97,6 +102,7 @@ def key(self): def candidates(hist): """Prefix/suffix sums; enumerate both missing routes, including missing-only splits.""" result = [] + rows_identity = _identity(hist.rows) for feature, (sums, counts) in enumerate(zip(hist.sums, hist.counts, strict=True)): prefix = np.cumsum(sums[:-1], axis=0) suffix = np.cumsum(sums[:-1][::-1], axis=0)[::-1] @@ -130,7 +136,7 @@ def candidates(hist): nleft, len(hist.rows) - nleft, hist.data.identity, - _identity(hist.rows), + rows_identity, "categorical" if categorical else "numeric", ) ) diff --git a/tests/v1/test_candidate_hash.py b/tests/v1/test_candidate_hash.py new file mode 100644 index 0000000..59e6b27 --- /dev/null +++ b/tests/v1/test_candidate_hash.py @@ -0,0 +1,40 @@ +"""Candidate row identity is invariant across split enumeration.""" + +import numpy as np +import pytest + +from openboost import MixedData, Problem, ops +from openboost.binning import Binning +from openboost.stats import newton + + +@pytest.mark.parametrize("rows", [None, [0, 2, 3, 5]]) +def test_candidate_digest_computed_once_with_exact_identity(monkeypatch, rows): + data = MixedData( + [[0, "a"], [1, "b"], [2, None], [3, "a"], [None, "b"], [5, "c"]], + np.arange(6), + ("numeric", "category"), + ("numeric", "categorical"), + ) + p = Problem(data, np.zeros((6, 1)), data.row_ids, weight=[1, 0, 2, 1, 3, 1]) + hist = ops.histogram( + Binning.fit(data, bins=6).transform(data), newton(p, np.arange(6.0) - 2, np.ones(6)), rows + ) + original = ops._identity + expected = original(hist.rows) + calls = [] + + def counted(*parts): + calls.append(parts) + return original(*parts) + + monkeypatch.setattr(ops, "_identity", counted) + candidates = ops.candidates(hist) + assert len(candidates) > 2 + assert all(c.rows_identity == expected for c in candidates) + assert all(c.data_identity == hist.data.identity for c in candidates) + for candidate in candidates: + np.testing.assert_allclose(candidate.left + candidate.right, hist.total, atol=1e-14) + assert candidate.left_count + candidate.right_count == len(hist.rows) + assert len(calls) == 1 + assert calls[0][0] is hist.rows diff --git a/tests/v1/test_composition_worker.py b/tests/v1/test_composition_worker.py new file mode 100644 index 0000000..1b7fd1e --- /dev/null +++ b/tests/v1/test_composition_worker.py @@ -0,0 +1,106 @@ +"""Composition adapters preserve public recipes and named inference roles.""" + +import subprocess +import sys +from pathlib import Path + +import numpy as np +import pytest +from benchmarks.v1.composition_worker import fit + +from openboost import NumericData, RunContext +from openboost.composition import paid_loss_problems +from openboost.recipes import gamma, poisson + + +def fixture(): + arrays = {} + for p, ids in [("train", np.arange(6)), ("validation", np.arange(10, 16))]: + arrays.update( + { + f"x_{p}": np.arange(6.0)[:, None], + f"row_ids_{p}": ids, + f"paid_count_{p}": np.array([0, 2, 1, 0, 3, 1]), + f"paid_total_{p}": np.array([0.0, 6, 4, 0, 9, 2]), + f"exposure_{p}": np.array([0.1, 0.5, 1, 2, 1, 0.2]), + } + ) + job = dict( + seed=7, + patience=None, + config=dict(rounds=3, learning_rate=0.1, bins=8, max_depth=2, reg_lambda=1), + ) + return job, arrays + + +@pytest.mark.parametrize("patience", [None, 1]) +def test_direct_components_and_fresh_replay(patience, tmp_path): + job, a = fixture() + job["patience"] = patience + model, outputs, training = fit(job, a) + pairs = [] + for p in ["train", "validation"]: + d = NumericData(a["x_" + p], a["row_ids_" + p], ("x0",)) + pairs.append( + paid_loss_problems(d, a["paid_count_" + p], a["paid_total_" + p], a["exposure_" + p]) + ) + for i, (name, recipe) in enumerate([("frequency", poisson), ("severity", gamma)]): + r = recipe( + pairs[0][i], + pairs[1][i], + context=RunContext(name, 7), + patience=patience, + **job["config"], + ) + expected = r.state.model if patience is None else r.state.best_model + assert getattr(model, name).identity == expected.identity + assert training["components"][name]["stop"]["completed_rounds"] == r.stop.completed_rounds + np.testing.assert_allclose( + outputs["annualized_mean"], outputs["paid_count_rate"] * outputs["severity_mean"] + ) + np.testing.assert_allclose( + outputs["period_mean"], outputs["annualized_mean"] * a["exposure_validation"] + ) + model.save(tmp_path / "model.bin") + np.savez( + tmp_path / "features.npz", + x=a["x_validation"], + row_ids=a["row_ids_validation"], + exposure=a["exposure_validation"], + ) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/composition_worker.py" + subprocess.run( + [ + sys.executable, + str(script), + "predict", + str(tmp_path / "model.bin"), + str(tmp_path / "features.npz"), + str(tmp_path / "replay.npz"), + ], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as b: + for k, v in outputs.items(): + np.testing.assert_array_equal(v, b[k]) + np.testing.assert_array_equal(b["row_ids"], a["row_ids_validation"]) + + +@pytest.mark.parametrize( + "bad", ["test", "offset", "weight", "overlap", "count", "zero_exposure", "config"] +) +def test_invalid_composition_contract(bad): + job, a = fixture() + if bad in ["test", "offset", "weight"]: + a[bad] = np.ones(6) + elif bad == "overlap": + a["row_ids_validation"] = a["row_ids_train"] + elif bad == "count": + a["paid_count_train"][0] = 1 + elif bad == "zero_exposure": + a["exposure_train"][0] = 0 + else: + job["config"]["sampling"] = 0.5 + with pytest.raises(ValueError): + fit(job, a) diff --git a/tests/v1/test_current_worker.py b/tests/v1/test_current_worker.py index e558735..b5df04b 100644 --- a/tests/v1/test_current_worker.py +++ b/tests/v1/test_current_worker.py @@ -13,7 +13,7 @@ from openboost import NumericData, Problem, RunContext from openboost.objectives import Normal -from openboost.recipes import normal, squared +from openboost.recipes import gamma, normal, squared, tweedie def test_current_worker_is_available(): @@ -42,11 +42,17 @@ def fixture(app="A1"): return job, arrays -@pytest.mark.parametrize("app", ["A1", "A11"]) +@pytest.mark.parametrize("app", ["A1", "A11", "A8", "A9"]) @pytest.mark.parametrize("patience", [None, 1]) def test_direct_recipe_parity_and_fresh_prediction(app, patience, tmp_path): job, arrays = fixture(app) job["early_stopping_rounds"] = patience + if app in {"A8", "A9"}: + for part in ("train", "validation"): + arrays["y_" + part] = np.exp(arrays["y_" + part]) + if app == "A9": + arrays["weight_train"] += 0.1 + arrays["y_train"][0] = 0 prediction, saved, training = fit(job, arrays) problems = [] for part in ("train", "validation"): @@ -58,15 +64,30 @@ def test_direct_recipe_parity_and_fresh_prediction(app, patience, tmp_path): y[:, None], data.row_ids, weight=arrays["weight_" + part], - raw_width=1 if app == "A1" else 2, + raw_width=1 if app in {"A1", "A8", "A9"} else 2, ) ) - direct = (squared if app == "A1" else normal)( + direct = {"A1": squared, "A11": normal, "A8": gamma, "A9": tweedie}[app]( *problems, context=RunContext("evaluation", 7), patience=patience, **job["config"] ) model = direct.state.model if patience is None else direct.state.best_model raw = model.predict(problems[1].data) - expected = raw[:, 0] if app == "A1" else Normal.parameters(raw) + expected = raw[:, 0] if app in {"A1", "A8", "A9"} else Normal.parameters(raw) + if app in {"A8", "A9"}: + expected = np.exp(raw[:, 0]) + loss = np.average( + arrays["y_validation"] / expected + np.log(expected), + weights=arrays["weight_validation"], + ) + if app == "A8": + assert training["selected_validation_gamma_objective"] == pytest.approx(loss) + else: + loss = np.average( + 2 * arrays["y_validation"] / np.sqrt(expected) + 2 * np.sqrt(expected), + weights=arrays["weight_validation"], + ) + assert training["selected_validation_tweedie_objective"] == pytest.approx(loss) + assert saved["power"] == 1.5 np.testing.assert_array_equal(prediction, expected) assert training["selected_model_identity"] == model.identity assert training["stop"]["completed_rounds"] == direct.stop.completed_rounds @@ -114,7 +135,7 @@ def test_unsupported_or_contaminated_inputs_fail(bad): elif bad == "threads": job["threads"] = 2 else: - job["application"] = "A5" + job["application"] = "unsupported" with pytest.raises(ValueError): fit(job, arrays) @@ -285,3 +306,463 @@ def test_classification_invalid_contracts_fail(bad): job["config"]["mode"] = "natural" with pytest.raises(ValueError): fit(job, arrays) + + +@pytest.mark.parametrize("patience", [None, 1]) +def test_quantile_weighted_direct_and_fresh_replay(patience, tmp_path): + from openboost.recipes import quantile + + job, arrays = fixture("A5") + job["early_stopping_rounds"] = patience + prediction, saved, training = fit(job, arrays) + assert saved["quantiles"] == [0.1, 0.5, 0.9] + assert prediction.shape == (4, 3) + problems = [] + for part in ("train", "validation"): + data = NumericData(arrays["x_" + part], np.arange(len(arrays["x_" + part])), ("x0",)) + problems.append( + Problem( + data, arrays["y_" + part][:, None], data.row_ids, weight=arrays["weight_" + part] + ) + ) + for i, q in enumerate(saved["quantiles"]): + direct = quantile( + *problems, context=RunContext("evaluation", 7), q=q, patience=patience, **job["config"] + ) + model = direct.state.model if patience is None else direct.state.best_model + np.testing.assert_array_equal(prediction[:, i], model.predict(problems[1].data)[:, 0]) + assert ( + training["quantile_runs"][i]["stop"]["completed_rounds"] == direct.stop.completed_rounds + ) + residual = arrays["y_validation"] - prediction[:, i] + score = np.average( + np.maximum(q * residual, (q - 1) * residual), weights=arrays["weight_validation"] + ) + assert training["quantile_runs"][i]["selected_validation_pinball"] == pytest.approx(score) + path = tmp_path / "model.bin" + path.write_text(json.dumps(saved)) + packet = tmp_path / "features.npz" + np.savez(packet, x=arrays["x_validation"], row_ids=arrays["validation_row_ids"]) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/openboost_predict.py" + subprocess.run( + [sys.executable, str(script), str(path), str(packet), str(tmp_path / "replay.npz")], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as replay: + np.testing.assert_array_equal(replay["prediction"], prediction) + np.testing.assert_array_equal(replay["row_ids"], arrays["validation_row_ids"]) + + +@pytest.mark.parametrize("bad", ["order", "count", "width", "features"]) +def test_quantile_saved_schema_rejected(bad): + job, arrays = fixture("A5") + _, saved, _ = fit(job, arrays) + if bad == "order": + saved["quantiles"].reverse() + elif bad == "count": + saved["models"].pop() + elif bad == "width": + saved["models"][0]["base"] = [0, 0] + else: + saved["models"][0]["feature_names"] = ["foreign"] + with pytest.raises(ValueError): + predict_saved(saved, arrays["x_validation"]) + + +def test_quantile_crossings_are_not_sorted(): + from openboost.artifacts import Model + + saved = dict( + format="openboost-evaluation-v1", + application="A5", + output="quantiles", + quantiles=[0.1, 0.5, 0.9], + models=[Model(("x0",), [v]).record() for v in [3, 2, 1]], + ) + np.testing.assert_array_equal(predict_saved(saved, [[0], [1]]), [[3, 2, 1], [3, 2, 1]]) + + +@pytest.mark.parametrize("patience", [None, 1]) +def test_count_exposure_direct_and_fresh(patience, tmp_path): + import math + + from openboost.outputs import poisson_mean + from openboost.recipes import poisson + + job, arrays = fixture("A7") + job["early_stopping_rounds"] = patience + problems = [] + for part in ("train", "validation"): + x = arrays["x_" + part] + arrays["y_" + part] = np.arange(len(x)) % 3 + arrays["exposure_" + part] = np.linspace(0.1, 2, len(x)) + data = NumericData(x, np.arange(len(x)), ("x0",)) + problems.append( + Problem( + data, + arrays["y_" + part][:, None], + data.row_ids, + weight=arrays["weight_" + part], + structure={"exposure": arrays["exposure_" + part][:, None]}, + ) + ) + direct = poisson( + *problems, context=RunContext("evaluation", 7), patience=patience, **job["config"] + ) + prediction, saved, training = fit(job, arrays) + model = direct.state.model if patience is None else direct.state.best_model + np.testing.assert_array_equal( + prediction, + poisson_mean(model.predict(problems[1].data), arrays["exposure_validation"])["count_mean"], + ) + assert training["selected_model_identity"] == model.identity + y = arrays["y_validation"] + nll = np.average( + prediction - y * np.log(prediction) + [math.lgamma(v + 1) for v in y], + weights=arrays["weight_validation"], + ) + assert training["selected_validation_nll"] == pytest.approx(nll) + np.testing.assert_allclose( + predict_saved(saved, arrays["x_validation"], exposure=arrays["exposure_validation"] * 2), + prediction * 2, + ) + path = tmp_path / "model.bin" + path.write_text(json.dumps(saved)) + packet = tmp_path / "features.npz" + np.savez( + packet, + x=arrays["x_validation"], + row_ids=arrays["validation_row_ids"], + exposure=arrays["exposure_validation"], + ) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/openboost_predict.py" + subprocess.run( + [sys.executable, str(script), str(path), str(packet), str(tmp_path / "replay.npz")], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as replay: + np.testing.assert_array_equal(replay["prediction"], prediction) + np.testing.assert_array_equal(replay["row_ids"], arrays["validation_row_ids"]) + for exposure in [None, np.zeros(4), np.ones((4, 1)), np.full(4, np.nan)]: + with pytest.raises(ValueError): + predict_saved(saved, arrays["x_validation"], exposure=exposure) + + +@pytest.mark.parametrize("bad", ["missing", "zero", "shape", "fractional", "offset", "foreign"]) +def test_count_worker_rejects_invalid_exposure_contract(bad): + job, arrays = fixture("A7") + for part in ["train", "validation"]: + arrays["y_" + part] = np.zeros(len(arrays["y_" + part])) + arrays["exposure_" + part] = np.ones(len(arrays["y_" + part])) + if bad == "missing": + arrays.pop("exposure_train") + elif bad == "zero": + arrays["exposure_validation"][0] = 0 + elif bad == "shape": + arrays["exposure_train"] = arrays["exposure_train"][:, None] + elif bad == "fractional": + arrays["y_train"][0] = 0.5 + elif bad == "offset": + arrays["offset_train"] = np.zeros(8) + else: + job["application"] = "A1" + with pytest.raises(ValueError): + fit(job, arrays) + + +@pytest.mark.parametrize("bad", ["zero", "negative", "exposure", "offset"]) +def test_severity_invalid_contracts(bad): + job, arrays = fixture("A8") + for part in ("train", "validation"): + arrays["y_" + part] = np.exp(arrays["y_" + part]) + if bad == "zero": + arrays["y_train"][0] = 0 + elif bad == "negative": + arrays["y_validation"][0] = -1 + else: + arrays[bad + "_train"] = np.ones(8) + with pytest.raises(ValueError): + fit(job, arrays) + + +@pytest.mark.parametrize( + "bad", ["missing", "zero", "negative_target", "exposure", "offset", "power"] +) +def test_aggregate_contract_rejects_invalid_inputs(bad): + job, arrays = fixture("A9") + arrays["y_train"] = np.abs(arrays["y_train"]) + arrays["y_validation"] = np.abs(arrays["y_validation"]) + arrays["weight_train"] += 0.1 + if bad == "missing": + arrays.pop("weight_train") + elif bad == "zero": + arrays["weight_validation"][0] = 0 + elif bad == "negative_target": + arrays["y_train"][0] = -1 + elif bad == "power": + job["config"]["power"] = 1.9 + else: + arrays[bad + "_train"] = np.ones(8) + with pytest.raises(ValueError): + fit(job, arrays) + + +def test_aggregate_bundle_power_is_validated(): + job, arrays = fixture("A9") + for part in ("train", "validation"): + arrays["y_" + part] = np.abs(arrays["y_" + part]) + arrays["weight_" + part] += 0.1 + _, saved, _ = fit(job, arrays) + saved["power"] = 1.9 + with pytest.raises(ValueError): + predict_saved(saved, arrays["x_validation"]) + + +@pytest.mark.parametrize("patience", [None, 1]) +def test_aft_direct_and_fresh(patience, tmp_path): + import math + + from openboost.recipes import aft + + job, arrays = fixture("A10") + job["early_stopping_rounds"] = patience + problems = [] + for part in ("train", "validation"): + x = arrays["x_" + part] + y = arrays["y_" + part] = np.exp(arrays["y_" + part]) + event = arrays["event_" + part] = np.arange(len(x)) % 2 + d = NumericData(x, np.arange(len(x)), ("x0",)) + problems.append( + Problem( + d, + np.column_stack([y, np.where(event, y, np.inf)]), + d.row_ids, + target_kind="event_right", + weight=arrays["weight_" + part], + ) + ) + direct = aft( + *problems, context=RunContext("evaluation", 7), sigma=1, patience=patience, **job["config"] + ) + prediction, saved, training = fit(job, arrays) + model = direct.state.model if patience is None else direct.state.best_model + np.testing.assert_array_equal(prediction[:, 0], model.predict(problems[1].data)[:, 0]) + np.testing.assert_array_equal(prediction[:, 1], np.ones(4)) + z = np.log(arrays["y_validation"]) - prediction[:, 0] + losses = [ + math.log(t) + v * v / 2 + math.log(2 * math.pi) / 2 + if e + else -math.log(math.erfc(v / math.sqrt(2)) / 2) + for t, v, e in zip(arrays["y_validation"], z, arrays["event_validation"], strict=True) + ] + assert training["selected_validation_censored_nll"] == pytest.approx( + np.average(losses, weights=arrays["weight_validation"]) + ) + path = tmp_path / "model.bin" + path.write_text(json.dumps(saved)) + np.savez( + tmp_path / "features.npz", x=arrays["x_validation"], row_ids=arrays["validation_row_ids"] + ) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/openboost_predict.py" + subprocess.run( + [ + sys.executable, + str(script), + str(path), + str(tmp_path / "features.npz"), + str(tmp_path / "replay.npz"), + ], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as replay: + np.testing.assert_array_equal(prediction, replay["prediction"]) + saved["sigma"] = 2 + with pytest.raises(ValueError): + predict_saved(saved, arrays["x_validation"]) + + +@pytest.mark.parametrize("bad", ["missing", "fractional", "range", "time", "offset", "scale"]) +def test_survival_invalid_contract(bad): + job, arrays = fixture("A10") + for part in ("train", "validation"): + arrays["y_" + part] = np.exp(arrays["y_" + part]) + arrays["event_" + part] = np.ones(len(arrays["y_" + part])) + if bad == "missing": + arrays.pop("event_train") + elif bad == "fractional": + arrays["event_validation"][0] = 0.5 + elif bad == "range": + arrays["event_train"][0] = 2 + elif bad == "time": + arrays["y_validation"][0] = 0 + elif bad == "offset": + arrays["offset_train"] = np.ones(8) + else: + job["config"]["sigma"] = 2 + with pytest.raises(ValueError): + fit(job, arrays) + + +@pytest.mark.parametrize("patience", [None, 1]) +def test_formula_direct_structure_and_fresh(patience, tmp_path): + from openboost.recipes import formula + + job, arrays = fixture("A12") + job["early_stopping_rounds"] = patience + problems = [] + for part in ("train", "validation"): + x = arrays["x_" + part] + arrays["age_" + part] = np.linspace(0.1, 3, len(x)) + arrays["y_" + part] = 10 * -np.expm1(-arrays["age_" + part]) + d = NumericData(x, np.arange(len(x)), ("x0",)) + problems.append( + Problem( + d, + arrays["y_" + part][:, None], + d.row_ids, + raw_width=2, + weight=arrays["weight_" + part], + structure={"x": arrays["age_" + part][:, None]}, + ) + ) + direct = formula( + *problems, context=RunContext("evaluation", 7), patience=patience, **job["config"] + ) + prediction, saved, training = fit(job, arrays) + model = direct.state.model if patience is None else direct.state.best_model + a, b = np.logaddexp(0, model.predict(problems[1].data)).T + np.testing.assert_allclose(prediction, a * -np.expm1(-b * arrays["age_validation"]), rtol=1e-14) + assert training["selected_model_identity"] == model.identity + assert training["selected_validation_half_squared_error"] == pytest.approx( + np.average( + (prediction - arrays["y_validation"]) ** 2 / 2, weights=arrays["weight_validation"] + ) + ) + path = tmp_path / "model.bin" + path.write_text(json.dumps(saved)) + np.savez( + tmp_path / "features.npz", + x=arrays["x_validation"], + row_ids=arrays["validation_row_ids"], + age=arrays["age_validation"], + ) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/openboost_predict.py" + subprocess.run( + [ + sys.executable, + str(script), + str(path), + str(tmp_path / "features.npz"), + str(tmp_path / "replay.npz"), + ], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as r: + np.testing.assert_array_equal(prediction, r["prediction"]) + for age in [None, np.zeros(4), np.ones((4, 1))]: + with pytest.raises(ValueError): + predict_saved(saved, arrays["x_validation"], age=age) + + +def ranking_fixture(): + job, arrays = fixture("A4") + arrays.pop("weight_train") + arrays.pop("weight_validation") + arrays.update( + train_row_ids=np.array([7, 6, 5, 4, 3, 2, 1, 0]), + validation_row_ids=np.array([11, 10, 9, 8]), + query_train=np.repeat(["a", "b"], 4), + query_validation=np.repeat(["c", "d"], 2), + query_weight_train=np.array([2.0, 0.5]), + query_weight_validation=np.array([0.25, 3.0]), + y_train=np.array([0, 4, 1, 2, 2, 1, 3, 0]), + y_validation=np.array([0, 3, 2, 0]), + ) + return job, arrays + + +@pytest.mark.parametrize("lambdas", [False, True]) +@pytest.mark.parametrize("patience", [None, 1]) +def test_ranking_direct_and_fresh(lambdas, patience, tmp_path): + from openboost.recipes import ranking + + job, a = ranking_fixture() + job["config"]["lambdas"] = lambdas + job["early_stopping_rounds"] = patience + prediction, saved, training = fit(job, a) + problems = [] + for part, size in [("train", 4), ("validation", 2)]: + ids = a["train_row_ids" if part == "train" else "validation_row_ids"] + d = NumericData(a["x_" + part], ids, ("x0",)) + problems.append( + Problem( + d, + a["y_" + part][:, None], + ids, + structure={ + "query": np.repeat([0, 1], size)[:, None], + "query_weight": np.repeat(a["query_weight_" + part], size)[:, None], + }, + ) + ) + direct = ranking( + *problems, context=RunContext("evaluation", 7), patience=patience, **job["config"] + ) + model = direct.state.model if patience is None else direct.state.best_model + np.testing.assert_array_equal(prediction, model.predict(problems[1].data)[:, 0]) + assert training["selected_model_identity"] == model.identity + assert training["best_validation_score"] == direct.state.best_score + path = tmp_path / "model.bin" + path.write_text(json.dumps(saved)) + np.savez(tmp_path / "features.npz", x=a["x_validation"], row_ids=a["validation_row_ids"]) + script = Path(__file__).resolve().parents[2] / "benchmarks/v1/openboost_predict.py" + subprocess.run( + [ + sys.executable, + str(script), + str(path), + str(tmp_path / "features.npz"), + str(tmp_path / "replay.npz"), + ], + cwd=tmp_path, + check=True, + ) + with np.load(tmp_path / "replay.npz") as r: + np.testing.assert_array_equal(prediction, r["prediction"]) + np.testing.assert_array_equal(a["validation_row_ids"], r["row_ids"]) + + +@pytest.mark.parametrize( + "bad", + [ + "fragment", + "query_overlap", + "row_weight", + "row_overlap", + "string_rows", + "relevance", + "query_weight", + ], +) +def test_ranking_invalid_contract(bad): + job, a = ranking_fixture() + if bad == "fragment": + a["query_train"] = np.array(["a", "b"] * 4) + elif bad == "query_overlap": + a["query_validation"][0:2] = "a" + elif bad == "row_weight": + a["weight_train"] = np.ones(8) + elif bad == "row_overlap": + a["validation_row_ids"][0] = 0 + elif bad == "string_rows": + a["train_row_ids"] = a["train_row_ids"].astype(str) + elif bad == "relevance": + a["y_validation"][0] = 5 + else: + a["query_weight_train"] = np.ones(8) + with pytest.raises(ValueError): + fit(job, a) diff --git a/tests/v1/test_histogram_gather.py b/tests/v1/test_histogram_gather.py new file mode 100644 index 0000000..c727b31 --- /dev/null +++ b/tests/v1/test_histogram_gather.py @@ -0,0 +1,54 @@ +"""Exact histogram semantics while reusing feature-independent row gathers.""" + +import numpy as np +import pytest + +from openboost import MixedData, Problem +from openboost.binning import Binning +from openboost.ops import histogram +from openboost.stats import vector_newton + + +@pytest.mark.parametrize("rows", [None, [5, 2, 0, 3], []]) +def test_histogram_reuses_contiguous_columns_with_exact_statistics(monkeypatch, rows): + data = MixedData( + [[0, "a"], [1, "b"], [2, None], [3, "a"], [None, "b"], [5, "c"]], + np.arange(6), + ("number", "category"), + ("numeric", "categorical"), + ) + problem = Problem(data, np.zeros((6, 3)), data.row_ids, raw_width=3, weight=[1, 0, 2, 1, 3, 1]) + gradient = np.array( + [[1e10, -1, 3], [2, 0, 4], [-1e10, 4, -2], [1e-8, -2, 8], [5, 8, 0], [-7, 3, 1.0]] + ) + fields = vector_newton(problem, gradient, np.ones((6, 3))).add_independent( + "cohort", np.arange(6.0) % 2 + ) + binned = Binning.fit(data, bins=6).transform(data) + selected = np.arange(6) if rows is None else np.asarray(rows, dtype=int) + original = np.bincount + buffers = [] + + def counted(codes, weights=None, **kwargs): + if weights is not None: + buffers.append(weights) + return original(codes, weights=weights, **kwargs) + + monkeypatch.setattr(np, "bincount", counted) + actual = histogram(binned, fields, rows) + for f, bins in enumerate(binned.binning.bin_counts): + codes = np.where(binned.missing[f, selected], bins, binned.codes[f, selected]) + expected = np.column_stack( + [original(codes, weights=c[selected], minlength=bins + 1) for c in fields.values.T] + ) + np.testing.assert_array_equal(actual.sums[f], expected) + np.testing.assert_array_equal(actual.counts[f], original(codes, minlength=bins + 1)) + np.testing.assert_array_equal(actual.total, fields.values[selected].sum(axis=0)) + assert all(a.flags.c_contiguous for a in buffers) + width = fields.values.shape[1] + assert len(buffers) == 2 * width + # Every feature reuses the same memory for each selected statistic column. + assert all( + a.ctypes.data == b.ctypes.data + for a, b in zip(buffers[:width], buffers[width:], strict=True) + ) diff --git a/tests/v1/test_paid_event_data.py b/tests/v1/test_paid_event_data.py new file mode 100644 index 0000000..669189f --- /dev/null +++ b/tests/v1/test_paid_event_data.py @@ -0,0 +1,78 @@ +"""Matched payment binding must not substitute raw claim counts or wrong rows.""" + +import numpy as np +import pytest +from benchmarks.v1.paid_event_data import bind + + +def fixture(): + raw = dict( + group=np.array([10, 20, 30, 40]), + exposure=np.array([0.5, 1.0, 2.0, 1.0]), + paid_count=np.array([2, 0, 1, 1]), + paid_total=np.array([8.0, 0, 3, 7]), + aggregate_eligible=np.ones(4, dtype=bool), + severity_policy_row=np.array([0, 2, 0, 3]), + severity_y=np.array([2.0, 3, 6, 7]), + y=np.array([9, 0, 2, 1]), + ) + arrays = dict( + x_train=np.array([[1.0], [0.0]]), + y_train=np.array([0.0, 16.0]), + weight_train=np.array([1.0, 0.5]), + x_validation=np.array([[3.0], [2.0]]), + y_validation=np.array([7.0, 1.5]), + weight_validation=np.array([1.0, 2.0]), + validation_row_ids=np.array([40, 30]), + ) + return raw, arrays, np.array([20, 10]) + + +def test_matched_payments_follow_frozen_order_not_raw_claim_counts(): + raw, arrays, ids = fixture() + result = bind(raw, arrays, ids) + np.testing.assert_array_equal(result["paid_count_train"], [0, 2]) + np.testing.assert_array_equal(result["paid_total_train"], [0, 8]) + np.testing.assert_array_equal(result["paid_count_validation"], [1, 1]) + assert not any("test" in k or "weight" in k for k in result) + + +@pytest.mark.parametrize( + "bad", + [ + "count", + "total", + "payment", + "mapping", + "eligibility", + "weight", + "target", + "foreign", + "overlap", + "test", + ], +) +def test_mismatched_binding_fails(bad): + raw, arrays, ids = fixture() + if bad == "count": + raw["paid_count"] = raw["y"] + elif bad == "total": + raw["paid_total"][0] += 1 + elif bad == "payment": + raw["severity_y"][0] = 0 + elif bad == "mapping": + raw["severity_policy_row"][0] = 10 + elif bad == "eligibility": + raw["aggregate_eligible"][0] = False + elif bad == "weight": + arrays["weight_train"][0] = 0.5 + elif bad == "target": + arrays["y_train"][0] = 1 + elif bad == "foreign": + ids[0] = 999 + elif bad == "overlap": + ids[0] = 40 + else: + arrays["y_test"] = np.ones(2) + with pytest.raises(ValueError): + bind(raw, arrays, ids) diff --git a/tests/v1/test_profile_worker.py b/tests/v1/test_profile_worker.py new file mode 100644 index 0000000..dd41c16 --- /dev/null +++ b/tests/v1/test_profile_worker.py @@ -0,0 +1,25 @@ +"""Diagnostic profiles survive a bounded soft interruption.""" + +import json +import signal +import time + +import pytest +from benchmarks.v1.profile_worker import ProfileDeadline, profile_call + + +def test_profile_preserves_return_and_timer(tmp_path): + before = signal.getsignal(signal.SIGALRM) + assert profile_call(lambda: sum(range(100)), tmp_path, 1) == 4950 + assert signal.getsignal(signal.SIGALRM) == before + assert signal.getitimer(signal.ITIMER_REAL) == (0.0, 0.0) + assert json.loads((tmp_path / "profile.json").read_text())["status"] == "complete" + + +def test_deadline_retains_profile(tmp_path): + with pytest.raises(ProfileDeadline): + profile_call(lambda: time.sleep(1), tmp_path, 0.02) + report = json.loads((tmp_path / "profile.json").read_text()) + assert report["status"] == "deadline" + assert report["functions"] and (tmp_path / "profile.pstats").stat().st_size + assert signal.getitimer(signal.ITIMER_REAL) == (0.0, 0.0) diff --git a/tests/v1/test_worker_data.py b/tests/v1/test_worker_data.py index 70a42c0..c19db75 100644 --- a/tests/v1/test_worker_data.py +++ b/tests/v1/test_worker_data.py @@ -180,3 +180,22 @@ def test_survival_events_and_training_support_are_not_recomputed_on_validation() frozen["censoring_support"]["survival"][0] = 0 with pytest.raises(ValueError, match="censoring support"): bind("A10", data, parts, frozen) + + +def test_formula_packet_keeps_age_out_of_tree_features(): + data = dict( + x=np.arange(18.0).reshape(9, 2), + y=np.arange(9.0) + 1, + structure=np.arange(9.0) / 28 + 0.1, + group=np.arange(9), + ) + parts = dict(train=np.arange(3), validation=np.arange(3, 6), test=np.arange(6, 9)) + frozen = prepare("concrete", data, [parts])[0] + packets, _ = bind("A12", data, parts, frozen) + formula = packets["formula-input"] + ordinary = packets["worker-input"] + for p in ["train", "validation"]: + np.testing.assert_array_equal(formula["x_" + p], ordinary["x_" + p][:, :-1]) + np.testing.assert_array_equal(formula["age_" + p], ordinary["x_" + p][:, -1]) + assert formula["x_" + p].shape[1] == ordinary["x_" + p].shape[1] - 1 + assert not any("test" in k for k in formula) diff --git a/v1-sprints/038-goal-progress-and-plan.md b/v1-sprints/038-goal-progress-and-plan.md index c2aec4e..366994a 100644 --- a/v1-sprints/038-goal-progress-and-plan.md +++ b/v1-sprints/038-goal-progress-and-plan.md @@ -13,7 +13,28 @@ adds scale-bound selection and a synthetic current search. [Sprint 047](047-mult adds standardized A6 quality reporting. [Sprint 048](048-classification-workers.md) adds classification adapters and Adult validation. [Sprint 049](049-covertype-worker.md) records five Covertype worker timeouts: profile this full-data CPU path next, -before additional adapters. Remaining M2 and M3–M6 are open. +before additional adapters. [Sprint 050](050-covertype-profile.md) identifies +histogram aggregation and repeated candidate row hashing; next remove invariant +rehashing with exact conformance checks. [Sprint 051](051-candidate-row-hash.md) +implements that change and completes fold zero within the cap; histogram cost +and the remaining full folds are addressed in [Sprint 052](052-histogram-gather.md). +All five bounded replays pass after histogram gather reuse. +[Sprint 053](053-quantile-worker.md) adds current A5 independent quantile +integration on all five Bike origins. [Sprint 054](054-count-worker.md) adds +A7 count/exposure integration on all five frequency folds. +[Sprint 055](055-severity-worker.md) adds A8 grouped claim severity. +[Sprint 056](056-aggregate-worker.md) adds direct A9 annualized aggregate means. +[Sprint 057](057-paid-event-binding.md) binds matched paid-event inputs. +[Sprint 058](058-composition-worker.md) trains/replays all five compositions. +[Sprint 059](059-survival-worker.md) adds fixed-scale A10 survival and the CPU-to-GPU +checkpoint. [Sprint 060](060-structured-worker.md) adds A12 structured Formula. +[Sprint 061](061-ranking-worker.md) verifies the current A4 adapter synthetically; +real MSLR binding remains open. [Sprint 062](062-cpu-exit-and-gpu-entry.md) +records the CPU exit/GPU entry review. Next: installed D5 run-ID RNG and stale +preparation probes, then source/workflow and gate reconciliation. Remaining +searches, B11, joint A9 selection and formal E5 stay open. F3 has not started; +the review defines its initial vertical path without changing phase ordering. +Remaining M2 and M3–M6 are open. This updates execution priorities after Sprints 036–037. It preserves the [main plan](../planning/agent-boosting-foundation-plan.md), [construction design](../planning/foundation-construction-design.md), all diff --git a/v1-sprints/050-covertype-profile.md b/v1-sprints/050-covertype-profile.md new file mode 100644 index 0000000..244dbde --- /dev/null +++ b/v1-sprints/050-covertype-profile.md @@ -0,0 +1,47 @@ +# Sprint 050: Bounded full-data CPU profile + +Parent: 078ca61 (merged PR 23). Status: profiling slice complete; full A3 validation still incomplete. + +## Plan and acceptance + +1. Add a diagnostic wrapper that retains cProfile statistics and periodic Python + stacks when a worker reaches a soft deadline. Keep an outer process kill cap. +2. Test successful and interrupted callbacks; profile the unchanged Sprint 049 + fold-zero packet/configuration on the full input with a 60-second soft deadline + and 90-second hard limit, one thread. No core/recipe edits or budget increase. +3. Identify measured call paths, record overhead/limitations and exact artifacts, + update next implementation step and commit locally without pushing. + +An interrupted profile is not a passing fit or comparable timing benchmark. + +## Results and reflection + +The diagnostic ended intentionally at its 60-second soft deadline (exit 124); +the outer process reports error, not a successful fit. Raw cProfile statistics +and 20-second stacks were retained. In this interrupted instrumented window: + +- histogram: 20 calls, 29.48 seconds self / 29.97 cumulative; +- hashlib update: 11,228 calls, 22.32 seconds self; +- candidates: six calls, 23.55 seconds cumulative; +- depthwise: two calls, 54.54 seconds cumulative; +- binning transform: seven calls, 2.28 seconds cumulative. + +Cumulative times overlap and must not be added. The profile is incomplete and +instrumented; it is not an end-to-end speed result. Local regression tests also +ran during the beginning of the diagnostic window. Stacks at 20/40 seconds show +histogram and candidate identity hashing respectively. One round reached update +transactions before the deadline; a second tree-growth call was active. + +Inspection confirms candidates recomputes `_identity(hist.rows)` for every +candidate even though the immutable row set is constant for that invocation. +This falsifies the earlier priority hypothesis that prediction-time binning was +the main cause in this window. Next hoist this invariant hash, preserving exact +candidate identities and statistics, then measure the same bounded workload. +Histogram optimization remains a separate measured opportunity, not a speculative +rewrite bundled into the first change. + +Two diagnostic tests verify success/deadline artifacts and timer restoration. +Full CPU regression: 846 passed; Ruff and strict docs pass. Source/raw artifact +hashes match [profile-050](../benchmarks/v1/evidence/profile-050/README.md). +No core code changed and A3 remains incomplete. See +[learning](../learnings/2026-09-06-v1-covertype-profile.md). diff --git a/v1-sprints/051-candidate-row-hash.md b/v1-sprints/051-candidate-row-hash.md new file mode 100644 index 0000000..b1f41b2 --- /dev/null +++ b/v1-sprints/051-candidate-row-hash.md @@ -0,0 +1,36 @@ +# Sprint 051: Hoist invariant candidate row hashing + +Parent: d1dede6. Status: invariant-hash optimization complete; one full fold passes. + +## Plan and acceptance + +1. Demonstrate repeated identical row hashing within one candidate enumeration. +2. Compute that digest once per invocation without changing any candidate field, + routing, statistics or immutable identity semantics. +3. Run focused and full correctness tests; rerun the unchanged full Covertype + fold-zero worker at its original 90-second cap, retain outcomes and replay. +4. Record evidence and next step, commit locally. No histogram or cache rewrite. + +One fold is a bounded diagnostic rerun, not full A3 acceptance or a speed claim. + +## Results and reflection + +The focused mixed-feature/full/subset tests reproduced sixteen identical row +hash calls per enumeration. The implementation now computes the same digest once +per call. Candidate order, immutable identities and all statistics are unchanged; +independent histogram/tree and recipe tests pass. Full CPU regression: 848 passed. +Ruff and strict docs pass. + +The unchanged full Covertype fold-zero job completes in 87.4 seconds under its +original 90-second cap, with four rounds and a saved seven-class model. Fresh +inference reproduces probabilities and source row IDs exactly, and probability +rows normalize to one. Source/input/output hashes and raw artifacts are retained +in [row-hash-051](../benchmarks/v1/evidence/row-hash-051/README.md). + +The previous uninstrumented fold-zero run timed out at 90 seconds. This single +successful rerun demonstrates completion under the cap, not a stable speed ratio; +there is little margin and the other four folds were not rerun. Full A3 validation +remains incomplete. Next address the separately profiled histogram cost, retaining +exact weighted/missing/categorical/vector statistics, before repeating full-fold +validation. No general cache redesign or GPU claim is justified by this slice. +See [learning](../learnings/2026-09-06-v1-candidate-row-hash.md). diff --git a/v1-sprints/052-histogram-gather.md b/v1-sprints/052-histogram-gather.md new file mode 100644 index 0000000..decefeb --- /dev/null +++ b/v1-sprints/052-histogram-gather.md @@ -0,0 +1,48 @@ +# Sprint 052: Reuse selected histogram statistics + +Parent: 215d85f. Status: complete; all five bounded full-data replays pass. + +## Plan and acceptance + +1. Reproduce feature-by-feature allocation of identical selected statistic columns. +2. Gather selected row statistics once, retain contiguous columns for bincount, + and preserve both original accumulation order and C-order parent reduction. +3. Check exact legacy-formula sums/counts/parent totals across numeric, missing, + categorical, weighted/vector/independent fields and full/reordered/empty rows. +4. Run regression and the five existing full Covertype packets under unchanged + 90-second fit/30-second replay caps. Preserve failures and compare fold zero + exactly with Sprint 051. Record memory tradeoff, reflect and commit locally. + +No dtype, row order, scoring, objective or binning changes. A histogram-local +scratch buffer is not a persistent cache or shared-run fusion. Full A3 quality +and comparative speed gates remain open regardless of smoke outcome. + +## Results and reflection + +All three new tests failed the redundant-buffer check before the change and pass +afterward, with exact legacy-formula statistics. Full CPU regression: 851 passed, +including independent tree/routing and recipe checks. The parent total keeps its +original reduction layout; no numerical tolerance was introduced for conformance. + +All five frozen full Covertype jobs now complete within the unchanged cap, in +70.3, 69.9, 68.1, 67.8 and 67.9 seconds for folds 0–4. Seven-class probability +shape, normalization, source IDs and exact fresh inference pass for every fold. +Fold zero's model bytes and all prediction arrays exactly match Sprint 051. +All recorded source and output hashes match. See the committed +[raw evidence](../benchmarks/v1/evidence/histogram-052/README.md) and +[learning](../learnings/2026-09-06-v1-histogram-gather.md). + +The full-data timeout counterexample is resolved for this bounded configuration. +Three slices (profiling, row hashing, histogram gathering) support two local +implementation fixes without changing public contracts. This is evidence for +keeping the abstraction boundary, not evidence that all CPU cost work is done. +Scratch memory increases during transpose construction and peak RSS is unmeasured. +Repeated comparative timings and matched-quality searches were not performed. + +Return to M3's missing real-data adapters, starting with A5 temporal quantile +integration, then remaining application rows and real selection searches; remaining +D5 author checks also stay open. Full A1–A13 quality, formal author evaluation, +CUDA parity/cost and adoption remain required. No push or publication. + +Closure checks: focused tests 3 passed; Ruff, strict MkDocs and diff whitespace +checks passed. The full 851-test regression completed before the real-data run. diff --git a/v1-sprints/053-quantile-worker.md b/v1-sprints/053-quantile-worker.md new file mode 100644 index 0000000..6b90557 --- /dev/null +++ b/v1-sprints/053-quantile-worker.md @@ -0,0 +1,46 @@ +# Sprint 053: Current A5 temporal quantile worker + +Parent: f9bf01f. Status: complete; all five bounded real-data origins pass. + +## Plan and acceptance + +1. Reproduce the missing A5 worker contract with weighted direct-recipe parity. +2. Compose independent public scalar quantile recipes at frozen levels 0.1/0.5/0.9, + retaining per-level stopping and final/best selection, explicit persistence + metadata and ordered raw output. Reject malformed level/model schemas. +3. Verify fresh-process persistence, weighted pinball scores, unsupported input + rejection and all five frozen calendar-only Bike rolling origins at unchanged + 90-second fit/30-second replay caps. Retain failures and raw artifacts. +4. Run regression/lint/docs, record reflection and learning, commit locally. + +No quantile sorting, joint stopping, test scoring or quality acceptance claim. +Calendar availability, source identity and whole-date split checks remain those +of the frozen exporter. A5 quality/search and all other required rows remain open. + +## Results and reflection + +Six new A5 tests initially failed because the current worker rejected A5. The +adapter now composes the existing public scalar recipes, without core changes. +Weighted direct-recipe parity covers final and best-validation selection; fresh +processes reproduce all columns and source IDs exactly. Malformed level order, +model count, output width and feature schema are rejected. A crossing fixture +confirms raw predictions are never sorted. + +All five frozen calendar-only Bike origins pass bounded integration and replay. +Independent recomputation matches each selected validation pinball score; no +crossings occurred in these four-round runs. Source/output hashes match the +[raw evidence](../benchmarks/v1/evidence/quantile-053/README.md). + +This adds evidence that routed scalar leaves compose into a real multi-quantile +workflow without a new foundation primitive. Independent stopping is explicit; +a future coupled/noncrossing algorithm must declare different semantics rather +than silently changing this recipe. The result does not establish A5 quality, +calibration, search acceptance, CUDA or reduced external author effort. + +Next connect remaining real-data adapters, starting with A7 count/exposure +semantics, then A8/A9/A10/A12 and unresolved A4 integration, while retaining real +search and D5 checks in the execution map. All required applications remain in +scope. See [learning](../learnings/2026-09-06-v1-quantile-worker.md). + +Closure: 858 CPU tests passed; Ruff, strict MkDocs and diff whitespace checks +passed. No foundation production files changed. Nothing pushed. diff --git a/v1-sprints/054-count-worker.md b/v1-sprints/054-count-worker.md new file mode 100644 index 0000000..273e9c6 --- /dev/null +++ b/v1-sprints/054-count-worker.md @@ -0,0 +1,44 @@ +# Sprint 054: Current A7 count/exposure worker + +Parent: 003fdac. Status: complete; all five bounded real-data folds pass. + +## Plan and acceptance + +1. Reproduce missing A7 support with weighted direct public Poisson parity. +2. Bind strictly positive train/validation exposure as a structure role once, + retain raw log-rate models, and require new exposure for period-count inference. + Reject missing/invalid exposure, foreign-task exposure and extra offsets. +3. Verify weighted likelihood, final/best selection, fresh exposure-aware replay + and count scaling. Run all five frozen real folds under unchanged 90/30-second + caps and preserve failures without relaxing the workload. +4. Run regression/lint/docs, record evidence/reflection and commit locally. + +No exposure-as-weight substitution, quality/search claim or CUDA claim. All +remaining application adapters and formal gates remain required. + +## Results and reflection + +The two new direct-parity tests initially failed on missing A7 support. The +adapter now binds exposure through public Poisson structure and retains explicit +period-count inference semantics. Weighted final/best recipe parity, fresh replay, +exposure scaling and invalid/missing/foreign inputs pass without core changes. + +All five frozen frequency folds pass and replay exactly with positive means and +source IDs. Independent mean NLL checks differ by at most approximately 2.4e-14. +An initial relative tolerance of 1e-13 failed on fold two; the raw discrepancy and +math.fsum recomputation are retained. A 1e-12 relative/1e-14 absolute numerical +check passes; no prediction equality or quality threshold was relaxed. +See [raw evidence](../benchmarks/v1/evidence/count-054/README.md). + +This supports the existing separation between raw state, exposure and original +sample weights. The frozen exporter calls exposure an offset; the public API +represents it separately and adds its logarithm once. No additional log offset +or exposure weighting is used. Five successful short runs do not establish A7 +quality, calibration, full search acceptance or GPU readiness. + +Next: A8 severity integration, followed by A9/A10/A12 and unresolved A4, real +search integration and D5 checks. No required application is dropped. See +[learning](../learnings/2026-09-06-v1-count-worker.md). + +Closure: 866 CPU tests passed; Ruff, strict MkDocs and whitespace checks passed. +No foundation production files changed. No push or publication. diff --git a/v1-sprints/055-severity-worker.md b/v1-sprints/055-severity-worker.md new file mode 100644 index 0000000..c837b0b --- /dev/null +++ b/v1-sprints/055-severity-worker.md @@ -0,0 +1,43 @@ +# Sprint 055: Current A8 claim severity worker + +Parent: 606487c. Status: complete; all five bounded real-data folds pass. + +## Plan and acceptance + +1. Reproduce missing A8 support with weighted direct Gamma recipe parity. +2. Bind positive claim targets and original sample weights, preserve scalar + log-mean models and explicit positive severity output. Reject nonpositive + targets and unsupported exposure/offset inputs. +3. Verify final/best selection and fresh replay, then run all five frozen + policy-grouped claim folds at unchanged 90/30-second caps. Independently + recompute selected Gamma objective and retain raw outcomes/failures. +4. Run regression/lint/docs, reflect across Sprints 053–055 and commit locally. + +No policy-average substitution, dispersion fitting, quality/search or CUDA claim. +All required remaining applications, real searches and D5 checks remain open. + +## Results and reflection + +Both new A8 direct cases initially failed on unsupported application. The worker +now composes the existing Gamma recipe and positive_mean transform. Weighted +final/best selection, fresh inference and nonpositive/foreign-input rejection +pass. All five frozen policy-grouped claim folds pass bounded execution and exact +replay. Independent selected Gamma objective recomputation agrees at the declared +rtol=1e-12/atol=1e-14; source/output hashes match the +[raw evidence](../benchmarks/v1/evidence/severity-055/README.md). + +Across Sprints 053–055, multi-quantile, period-count/exposure and positive-claim +workflows required evaluation adapters but no foundation production changes. +This supports keeping the present composition boundary for these consumers; +it does not establish that external authors need less work. Explicit row units, +output transforms and stopping semantics remain necessary at the adapter layer. +Do not replace outstanding D5 or quality searches with more objective counts. + +Next connect A9 annualized aggregate targets and exposure weights, retaining the +separate frequency-severity composition requirement; then A10/A12 and unresolved +A4, real searches and D5. CUDA implementation and formal acceptance stay open. +No required use case is removed. See +[learning](../learnings/2026-09-06-v1-severity-worker.md). + +Closure: 872 CPU tests passed; Ruff, strict MkDocs and whitespace checks passed. +No foundation production changes. No push or publication. diff --git a/v1-sprints/056-aggregate-worker.md b/v1-sprints/056-aggregate-worker.md new file mode 100644 index 0000000..50f01db --- /dev/null +++ b/v1-sprints/056-aggregate-worker.md @@ -0,0 +1,43 @@ +# Sprint 056: Current A9 annualized aggregate worker + +Parent: d7622f4. Status: complete for direct aggregate integration. + +## Plan and acceptance + +1. Reproduce missing aggregate support with weighted public Tweedie parity. +2. Require explicit positive exposure weights for annualized targets, fixed + evaluation power 1.5 and persisted annualized output metadata. Reject negative + targets, missing weights, exposure inputs and second offsets. +3. Verify final/best selection, fresh replay and independent weighted objective; + run five frozen aggregate folds at unchanged 90/30-second caps with raw evidence. +4. Regression/lint/docs, reflection and local commit. + +This slice covers the direct aggregate path. Frequency-severity composition must +bind counts of eligible positive payments, not A7 raw claim counts, and remains +an explicit next slice. Neither path substitutes for full A9 quality/search. + +## Results and reflection + +Both direct A9 tests initially failed on missing support. The current worker now +uses public Tweedie at explicit power 1.5 with required positive exposure weights +and no second exposure offset. Final/best selection and fresh inference match +direct weighted recipes; malformed weights/targets and persisted power fail. +No foundation production code changed. + +All five frozen direct aggregate folds pass with exact fresh replay. Independent +weighted objectives agree at rtol=1e-12/atol=1e-14. Validation weights exactly match +hashed period exposures; annualized targets times exposure reproduce paid totals. +Period predictions are retained alongside annualized outputs in the +[raw evidence](../benchmarks/v1/evidence/aggregate-056/README.md). + +The direct aggregate consumer fits existing scalar geometry, but its units differ +from A7. Keeping that distinction explicit prevents silent double exposure. +This success does not validate a compound distribution, full A9 quality/search, +or the separate frequency-severity algorithm. Next bind positive-payment counts +to the same eligible totals and build the composition evaluation; then continue +A10/A12, unresolved A4, real searches and D5. All required scope remains open +until its own evidence passes. See +[learning](../learnings/2026-09-06-v1-aggregate-worker.md). + +Closure: 881 CPU tests passed; Ruff, strict MkDocs and whitespace passed. +No foundation changes, push or publication. diff --git a/v1-sprints/057-paid-event-binding.md b/v1-sprints/057-paid-event-binding.md new file mode 100644 index 0000000..fc48b0d --- /dev/null +++ b/v1-sprints/057-paid-event-binding.md @@ -0,0 +1,41 @@ +# Sprint 057: Bind matched paid events to frozen A9 rows + +Parent: a041f1b. Status: complete for input binding; composition fit is next. + +## Plan and acceptance + +1. Independently reconstruct positive-payment counts/totals from retained claim + rows and compare them with source aggregates, rejecting mismatches. +2. Map those aggregates to the exact frozen A9 training/validation policy IDs, + verifying packet hashes, eligibility, target units and exposure weights. +3. Emit composition-only training/validation packets for all five folds; test + mismatched counts, row identities, eligibility and weights before accepting. +4. Run regression/lint/docs, record raw manifests/reflection and commit locally. + +This prerequisite slice proves input binding, not fitted composition quality. +The next slice trains and replays the public two-model composition on these +packets. The preparer reads the full source but opens no test-truth packet and +selects/scores no test partition. No frozen splits change. + +## Results and reflection + +All five frozen A9 training/validation bindings pass. Independent claim iteration +reproduces paid counts/totals exactly, while the fixture deliberately has different +raw claim counts. Policy order, eligibility, source exposure and annualized target +units agree with the frozen packets. Output zero-count/zero-total consistency, +positive exposure and at least one paid policy per partition were also verified. +The [manifest](../benchmarks/v1/evidence/paid-events-057/README.md) retains hashes +and source audit; large feature packets remain reproducibly generated artifacts. + +Eleven focused tests pass, including altered aggregates, invalid claim joins, +eligibility, weights, targets, foreign/overlapping rows and test-label injection. +Full CPU regression: 892 passed. Ruff, strict MkDocs and whitespace checks pass. + +The composition helper alone could not prove raw payment provenance. This binder +closes that input gap without changing the source freeze, population or foundation. +The summary and packet hashes establish reproducibility, not hostile-process +isolation. No model training occurred in this slice. Next train Poisson paid-event +frequency and count-weighted Gamma severity through paid_loss_problems, persist +FrequencySeverity, and replay annualized/period outputs on all five packets. +Component selection must be labeled separately from joint aggregate selection. +See [learning](../learnings/2026-09-06-v1-paid-event-binding.md). diff --git a/v1-sprints/058-composition-worker.md b/v1-sprints/058-composition-worker.md new file mode 100644 index 0000000..af182d9 --- /dev/null +++ b/v1-sprints/058-composition-worker.md @@ -0,0 +1,35 @@ +# Sprint 058: Fit and replay matched frequency-severity composition + +Parent: e603f1f. Status: complete for component-selected execution/replay. + +## Plan and acceptance + +1. Test public component parity and strict composition packet/job contracts. +2. Train paid-event Poisson and count-weighted Gamma through paid_loss_problems; + retain separate stopping and final/best selection, persist FrequencySeverity. +3. Run all five hash-bound Sprint 057 packets within 90-second combined fit and + 30-second fresh replay caps. Verify all named outputs, products and units. +4. Regression/lint/docs, evidence, reflection and local commit. + +Component selection is not joint aggregate selection. No test labels, source +population changes, compound distribution, quality/search or CUDA claims. + +## Results and reflection + +Nine focused tests pass, including direct public component identities, stopping, +fresh persistence, output products and rejected ambiguous/invalid packets. +Full CPU regression: 901 passed. All five hash-bound real packets pass combined +fit and fresh replay. Every named array is exactly reproduced; rate times severity +matches annualized mean and exposure conversion matches period mean. Source, +input and output hashes match the retained +[raw evidence](../benchmarks/v1/evidence/composition-058/README.md). + +No foundation changes were needed. The source-binding prerequisite mattered: +this executes paid-event frequency, not A7 raw claim frequency. The result verifies +composition mechanics and persistence on real inputs; separate component selection +is recorded honestly and cannot substitute for joint A9 quality/search acceptance. +Next connect A10 survival evaluation, then A12/unresolved A4 and real searches/D5. +Joint composition selection remains in A9's unfinished quality workflow. +See [learning](../learnings/2026-09-06-v1-composition-worker.md). + +Closure: Ruff, strict MkDocs and whitespace checks pass. No push or publication. diff --git a/v1-sprints/059-survival-worker.md b/v1-sprints/059-survival-worker.md new file mode 100644 index 0000000..ed7908a --- /dev/null +++ b/v1-sprints/059-survival-worker.md @@ -0,0 +1,43 @@ +# Sprint 059: Current A10 fixed-scale survival worker + +Parent: 20d9b7c. Status: complete for fixed-scale integration. + +## Plan and acceptance + +1. Verify weighted direct AFT parity with event/right-censored targets and reject + malformed events/nonpositive times/unsupported scale or offset options. +2. Persist fixed sigma=1 and emit [log-time location, sigma] for evaluation; + verify fresh replay and independently recompute censored likelihood. +3. Run all five frozen Veteran folds at unchanged 90/30-second caps, retain raw + outcomes and source hashes. No licensing or quality acceptance inferred. +4. Regression/lint/docs, record remaining CPU-to-GPU prerequisites and commit. + +No left/interval censoring, learned scale, test scoring, calibration or GPU claim. + +## Results and reflection + +Both direct A10 cases initially failed on missing support. The worker now binds +explicit event/right targets, fixed scale and weighted censored validation loss. +Final/best direct parity, fresh replay and invalid event/time/scale rejection pass. +All five frozen Veteran folds pass; independent erfc-based censored likelihood +agrees at rtol=1e-12/atol=1e-14. Source/output hashes match the +[raw evidence](../benchmarks/v1/evidence/survival-059/README.md). +Full CPU regression: 909 passed. No foundation production changes were needed. + +## CPU-to-GPU checkpoint + +The remaining current application adapter gaps are A12 structured Formula and A4 +ranking; implement those next without adding new built-in objective families. +A13 real search integration, joint A9 selection and outstanding D5/independent +author checks remain unfinished CPU workflow/evaluation work. Apply the declared +B11/F1–F2 acceptance gates before reporting phase exit; test counts are not exits. +Then B12 implements device operations and recipe parity, and B13 verifies batched +train-many execution/cost. Full real quality and adoption remain required, but +must not become an invented requirement to polish every CPU performance path +before attempting CUDA. Any phase overlap requires an explicit plan amendment. + +This slice validates fixed-scale survival integration only. Licensing closure, +IPCW/calibration and full A10 quality remain open. The next implementation is A12. +See [learning](../learnings/2026-09-06-v1-survival-worker.md). + +Closure: Ruff, strict MkDocs and whitespace pass. No push or publication. diff --git a/v1-sprints/060-structured-worker.md b/v1-sprints/060-structured-worker.md new file mode 100644 index 0000000..b3feee6 --- /dev/null +++ b/v1-sprints/060-structured-worker.md @@ -0,0 +1,40 @@ +# Sprint 060: Current A12 structured Formula integration + +Parent: 3ff97c3. Status: complete for structured integration. + +## Plan and acceptance + +1. Emit a separate frozen Formula packet with age/28 as structure and only + composition features as tree inputs; preserve the ordinary GBDT packet. +2. Bind the public two-parameter saturation recipe with explicit structured + inference, weighted direct parity and age/feature separation tests. +3. Run five frozen concrete folds under unchanged 90/30-second caps; retain + exact replay, independent formula/score checks and raw artifacts. +4. Regression/lint/docs, reflection and local commit. A4 and CPU phase gates next. + +No extrapolation/quality acceptance, global-formula parity or GPU claim. + +## Results and reflection + +The exporter now emits a separate formula-input packet without changing ordinary +GBDT inputs or the preprocessing freeze. Age/28 is structure, not a tree predictor. +Weighted final/best direct Formula parity and exact fresh replay pass. All five +real concrete folds pass, with independently recomputed saturation predictions +and scores, exact age separation and source IDs. See +[raw evidence](../benchmarks/v1/evidence/structured-060/README.md). + +The first binding test incorrectly assumed raw feature width equaled encoded +width; train-fitted missing indicators make that false. Corrected the assertion +to verify removal of exactly the appended age column. The initial real export +lacked xlrd and failed before fitting; retry with cached ephemeral uv dependency +passed. Both failures are documented rather than changing data/recipe semantics. + +Full CPU regression: 912 passed. No foundation production changes. A12 remains +open for interpolation/extrapolation quality, controls and complete searches. +A4 ranking is now the remaining current application adapter gap. Complete that, +then assess remaining A13/joint-search and D5/author requirements against B11; +do not infer CUDA readiness from recipe count. The Sprint 059 transition +checkpoint remains active. See +[learning](../learnings/2026-09-06-v1-structured-worker.md). + +Closure: Ruff, strict MkDocs and whitespace pass. No push or publication. diff --git a/v1-sprints/061-ranking-worker.md b/v1-sprints/061-ranking-worker.md new file mode 100644 index 0000000..dbafdc9 --- /dev/null +++ b/v1-sprints/061-ranking-worker.md @@ -0,0 +1,37 @@ +# Sprint 061: Current query-aware A4 adapter + +Parent: ca73a2d. Status: adapter verified; real A4 binding remains open. + +## Plan and acceptance + +1. Bind contiguous disjoint query groups and explicit per-query weights through + the public ranking recipe; preserve integer source row IDs for tie behavior. +2. Verify pairwise/lambda modes, final/best selection and fresh score replay; + reject row weights, fragmented/overlapping groups and ambiguous row identities. +3. Run regression/lint/docs and record the missing MSLR real-data prerequisite. + Synthetic tests do not close the required real A4 gate. +4. Commit locally and schedule CPU workflow/phase-gap review before more expansion. + +## Results and reflection + +Pairwise and lambda modes pass weighted direct parity with final/best selection +and exact fresh score/row-ID replay. The fixture uses unequal query weights and +reversed source row IDs to exercise stable tie identities. Seven counterexamples +reject fragmented/overlapping queries, ordinary row weights, overlapping/string +source rows, out-of-contract relevance and mis-shaped query weights. + +No foundation production changes were needed. The configured build/v1-data +inventory has no MSLR files and no committed MSLR preprocessing freeze exists. +Existing source-access/agreement gaps remain unresolved; synthetic verification +does not close real A4 integration or establish ranking scalability. The current +public ranking implementation still enumerates pairs quadratically per query. + +This completes the missing adapter implementation, not every application workflow. +Next audit the finite CPU exit list: A4 source/binding, A13 real searches and joint +A9 selection, remaining D5/independent author gates, and B11 acceptance. Then +record the exact B12 GPU starting slice or an explicit phase-overlap amendment. +Do not use more objective adapters or test counts as substitutes for that decision. +See [learning](../learnings/2026-09-06-v1-current-ranking-worker.md). + +Closure: 923 CPU tests passed; Ruff, strict MkDocs and whitespace pass. +Nothing pushed. diff --git a/v1-sprints/062-cpu-exit-and-gpu-entry.md b/v1-sprints/062-cpu-exit-and-gpu-entry.md new file mode 100644 index 0000000..64473b6 --- /dev/null +++ b/v1-sprints/062-cpu-exit-and-gpu-entry.md @@ -0,0 +1,126 @@ +# Sprint 062: CPU exit audit and GPU entry decision + +Reviewed revision: a2a03e4. Status: review complete; no phase exit declared. + +## Purpose and method + +Reconcile implementation with F0–F3/B11–B13, instead of treating adapter count as +completion. Read the current worker, installed scheduler verifier, search harness, +construction design and E0–E7 criteria. Retain earlier raw evidence and sealed +held-out boundaries. This is a source/evidence review, not a new test or benchmark. +Latest completed CPU regression remains Sprint 061: 923 tests. + +## What is built + +| Layer | Implemented evidence | Remaining acceptance boundary | +|---|---|---| +| C1 data/targets | Numeric/mixed inputs, training preparation, class/weight/offset/structure and event-right roles | Aggregate current R/C/A evidence into the declared gate ledger; source identity is not access isolation | +| C2/C3 ops/trees/leaves | Named statistics, candidate/feasibility/scoring/routing, three growers, scalar/vector/residual leaves; installed D2/D3 probes | Current coverage reconciliation and formal author evidence; no GPU ops | +| C4 runtime | Immutable transactions, deterministic keyed RNG, validation stopping, sequential M=1/8/32 and external result contract | Complete explicit installed D5 mutation probes; no device workspace/stream/transfer implementation | +| C5 persistence | Raw models and specialized output/scale/composition inference; current workers replay in fresh processes | Complete current workflow/installed delivery evidence; no training-resume or GPU parity claim | +| R1–R8 recipes | Twelve public CPU recipes plus frequency-severity composition; recent applications needed no core edits | Scope limits remain (fixed AFT scale/event-right, quadratic query pairs, no calibrated compound distribution) | +| R9/C7 workflows | Shared preparation, sequential scheduling, strict selection/release infrastructure | Current A13 evidence is synthetic A6 search; real searches and joint composition selection unfinished | +| C6 author evaluation | Installed D1–D4 exploratory packages and partial D5 evidence | Formal E5 cohort, independent attempts, cost accounting and held-out results absent | +| CUDA | Construction design only; RunContext rejects non-CPU | B12 device operations/recipe parity and B13 batching/cost are unimplemented | + +These are implemented capabilities, not a claim that CPU E0/E1/E2 pass in full. +The historical Sprint 035 gap table is superseded by this review where newer +sprints supply evidence; its old missing-objective/stopping statements are not +current blockers. + +## Application position + +| Applications | Current evidence | Still open | +|---|---|---| +| A1/A2/A3/A5/A6/A7/A8/A10/A11 | Five frozen current validation fits and fresh inference per application | Full baseline-matched quality/search, applicable domain metrics and source obligations | +| A9 | Direct annualized aggregate and matched paid-event composition pass five folds | Joint aggregate selection, complete searches, quality and calibration claims | +| A12 | Five Formula folds with explicit age separation and fresh inference | Control comparisons, interpolation/extrapolation and full quality/search | +| A4 | Current pairwise/lambda adapter; weighted synthetic direct/fresh checks | MSLR data/agreement, preprocessing freeze, official-query-fold binding and real fits | +| A13 | Current synthetic A6 16-trial selection and sealed release; M1/8/32 semantics | Real-data complete search/release workflows and full-set device cost | + +All A1–A13 remain required. No source was substituted, and no application was +removed. The Veteran source-license gap is not closed by its passing fits. +Short four-round validation jobs are not fair quality searches. No full E3 or E4 +claim can be derived from these artifacts. + +## Finite remaining work, in order + +1. **Complete explicit installed D5 development probes.** Extend the existing + examples/v1_extensions/scheduler_checks.py workflow, not a new trainer: + - Same seed/different stable run IDs must produce distinct keyed streams; + each stream must remain exact under permutation and retry. + - Changed feature content with unchanged row IDs must invalidate old prepared + data; altered row identity must also be rejected. Fresh preparation must + recover and match independent direct execution. + - Retain mixed K=1/2, M=1/8/32, different stopping and failure artifacts already + present. No private imports/core edits; build and exercise installed wheels. + These explicit cases are absent from the current installed verifier; this is + not a claim that the underlying runtime behavior is absent or incorrect. +2. **Complete source/workflow prerequisites.** Resolve MSLR access/agreement and + freeze official folds before real A4 execution. Preserve source terms. Finish + a real A13 selection/release run from existing supported frozen data, then + route remaining output schemas, including composition's joint selection, + through the declared workflow. Retain failed trials; no budget retuning. +3. **Reconcile CPU E0/E1/E2 and F0.3 readiness.** Produce current item-to-artifact + records for R1–R9/C1–C7/A1–A13, independent verifiers and fair comparator paths. + Mark missing records as unverified. Do not relabel historical or synthetic + results as real/current. Resolve judges, source and execution-budget gaps. +4. **Freeze and execute F2/E5.** First verify accounting with the required smoke. + Freeze version, model/reasoning/tools/docs/budgets and independent judge access. + Run all five development types and two held-outs with three attempts per arm; + 30 minutes/20k generated tokens per attempt, failures retained. Apply the + existing correctness/cost thresholds unchanged. Do not inspect sealed tasks + for implementation planning. Existing exploratory scripts are not a cohort. +5. **Enter B12/F3 after its prerequisites, or adopt an explicit amendment.** + No more built-in objectives or unmeasured CPU optimization are scheduled. + Correctness failures and demonstrated consumer blockers still take priority. + +Full baseline quality E3 and external adoption E7 remain v1 obligations, but +must not be invented as prerequisites for every initial GPU experiment. The +actual current ordering is F0/F1/F2 before F3, including the existing approved +CPU overlap; this review does not silently widen that authorization. + +## GPU decision and first slice + +**Decision under the current plan: F3 is not started or accepted.** The first +next implementation is the installed D5 slice above. Starting CUDA before the +formal CPU/author prerequisites would be a sequencing change; this review does +not claim such a change has already been approved. If the user chooses that +route, record a bounded B12 feasibility overlap, with all CPU/E5 obligations +retained and no interface-freeze or performance claim. + +The first B12 deliverable is one resident squared-error vertical path, followed +immediately by a two-parameter Normal path. Use the design's CuPy-owned arrays +and streams with numba-cuda kernels initially; change the kernel technology only +from measured evidence. Host metadata remains separate from device targets, +codes, raw predictions, statistics and row routing. Initial CPU preparation plus +one upload is permitted with its complete cost recorded. + +Acceptance for that first slice: + +- Real CUDA hardware; no skipped job counted as success and no CPU fallback. +- At least two rounds with declared precision/tie policy: compare gradients, + curvature, histogram totals, candidate decisions, routing, leaves, raw updates, + final predictions and task metrics against CPU/independent fixtures. +- Preserve transaction/stop/RNG semantics; expose synchronization and failures. +- Record preparation/upload, compilation cold/warm policy, transfer bytes, + synchronization, workspace peak and complete fit/predict cost. +- Persist output for CPU fresh inference. Single-recipe parity does not establish + multiparameter, nondefault extension, train-many or E4 acceptance. + +Only then expand required device compositions, a nondefault public component and +actual backtracking. B13 groups compatible M=1/8/32 runs after sequential device +parity; no fusion, multi-GPU or Ray claim precedes its evidence. + +## Reflection and verification + +Sprints 053–061 mostly added adapters and evidence rather than core primitives. +That supports the boundary for these internal consumers, but is not evidence of +lower external authoring cost. The next work changes from application plumbing +to explicit scheduling probes and phase acceptance. Count growth must not become +a substitute for the foundation's central hypothesis. + +At review start, the local branch was clean and twelve commits ahead of origin/main. No push, +network retrieval, new model fits, held-out inspection or threshold changes were +part of this review. Documentation and whitespace checks passed. See +[learning](../learnings/2026-09-06-v1-cpu-exit-review.md). diff --git a/v1-sprints/README.md b/v1-sprints/README.md index 2b260d7..f4628b6 100644 --- a/v1-sprints/README.md +++ b/v1-sprints/README.md @@ -13,7 +13,7 @@ folder manages execution, not a competing roadmap. R1–R9/C1–C7/A1–A13 all Current review and remaining plan: [Sprint 038](038-goal-progress-and-plan.md). Public CPU components now cover twelve recipes, multi-output target scaling and -shared training preparation. The latest full regression records 844 passes; +shared training preparation. The latest full regression records 923 passes; this includes references/evaluation infrastructure and is not a phase gate. Independent stopping is delivered in [Sprint 039](039-independent-stopping.md). Installed D2/D3 development wheels pass in [Sprint 040](040-installed-extensions.md). @@ -29,8 +29,28 @@ quality reporting while retaining every per-target gate. Next: remaining application adapters, real search integration and D5 checks. [Sprint 048](048-classification-workers.md) adds A2/A3 probability adapters and five-fold Adult integration. [Sprint 049](049-covertype-worker.md) records all -five full Covertype folds timing out at 90 seconds. A3 validation remains -incomplete; next profile this CPU path before further adapter expansion. +five full Covertype folds timing out at 90 seconds. [Sprint 050](050-covertype-profile.md) profiles the full input: +histogram aggregation and repeated candidate row hashing dominate the sampled +window. [Sprint 051](051-candidate-row-hash.md) hoists the invariant digest; +fold zero completes within 90 seconds with exact fresh replay. +[Sprint 052](052-histogram-gather.md) reuses selected histogram statistics; +all five full folds pass within the unchanged cap with exact fresh replay. +[Sprint 053](053-quantile-worker.md) adds current A5 independent quantiles on +all five Bike origins. [Sprint 054](054-count-worker.md) adds A7 explicit +count/exposure integration on all five frequency folds. +[Sprint 055](055-severity-worker.md) adds A8 severity on all five grouped claim +folds. [Sprint 056](056-aggregate-worker.md) adds direct A9 aggregate integration +on all five folds. [Sprint 057](057-paid-event-binding.md) verifies matched paid +event input packets. [Sprint 058](058-composition-worker.md) trains and replays +all five compositions with independent component selection. +[Sprint 059](059-survival-worker.md) adds A10 fixed-scale survival on all five folds +and records the CPU-to-GPU checkpoint. [Sprint 060](060-structured-worker.md) +adds A12 structured Formula. [Sprint 061](061-ranking-worker.md) adds the A4 +query-aware adapter; real MSLR binding remains open. +[Sprint 062](062-cpu-exit-and-gpu-entry.md) reviews CPU exit and GPU entry. +Next: installed D5 run-ID RNG and stale-preparation probes, then source/workflow +and gate reconciliation. Real searches and joint A9 selection remain open. +F3 has not started; the review preserves current phase ordering. CUDA, formal author comparisons, real application acceptance and independent adoption remain open.