nirs4all.pipeline.dagml.full_train module
DAG-owned single full-training execution, with no invented cross-validation.
The host assembles the plan and supplies operator callbacks, as for the CV profile. Rust schedules one REFIT phase and owns its NodeResults and ScoreSet. The historical test-as-validation view is explicitly labeled; it never becomes a native OOF report or an independently validated model-selection claim.
- exception nirs4all.pipeline.dagml.full_train.NoSplitEvaluationWarning[source]
Bases:
UserWarningA full-training run has no independent cross-validation evidence.
- nirs4all.pipeline.dagml.full_train.run_by_source_auto_full_train(source_bodies: dict[str, list[Any]], y_steps: list[Any], spectro: Any, *, metric: str = 'rmse', task_type: str = 'regression', config_name: str = '', cli: str | None = None, venv_python: str | None = None, dataset_path: str | None = None, dataset_pickle: str | None = None, workdir: Any = None, random_state: int | None = None, train_sample_ids: list[int] | None = None) RunResult[source]
Fit source-local models once each for a by_source auto merge without CV.
- nirs4all.pipeline.dagml.full_train.run_full_train(pipeline: list[Any], spectro: Any, *, metric: str = 'rmse', task_type: str = 'regression', config_name: str = '', augmented_train: bool = False, cli: str | None = None, venv_python: str | None = None, dataset_path: str | None = None, dataset_pickle: str | None = None, workdir: Any = None, random_state: int | None = None, train_sample_ids: list[int] | None = None, base_fit_model_count: int = 0) RunResult[source]
Fit one concrete pipeline once on selected train rows using the DAG scheduler.
No splitter, selection loop or legacy runner is introduced. Test rows are fitted only by an explicit
fit_on_all=Truetransform. A test partition retains the historicalvalalias with explicit provenance; without test, only training predictions are exposed.cv_best_scorestays NaN in both cases because no CV occurred.