AOM PLS Superblock

n4m.aom_pls_superblock is a strict-linear donor-style AOM-PLS method. It materializes a bank of AOM operator views, concatenates them into one wide superblock, then fits a PLS head on that superblock.

The fitted model is replayable from the original input spectra:

pred = X @ result["input_coefficients"] + result["intercept"]

The sklearn wrapper is n4m.sklearn.NativeAOMPLSSuperblockRegressor. The same surface is exported from n4m.aom and n4m.moment.

Selection Protocol

  • Operators must be strict-linear AOM operators supported by aom_preprocess.

  • PLS component selection is train-CV only via pls_components.

  • Each CV fold builds its superblock from the fold training rows, applies train-fold centering and optional block RMS scaling, and scores validation rows through that fold-local state.

  • The final model fits the selected component count on all calibration rows.

  • Test/eval rows are never used for production selection.

Scope

This ports the donor AOM-PLS superblock idea only. It does not include row-reference preprocessing branches, nonlinear lifts, MKL/kernel weighting, or dataset/source/name routing.

CUDA builds can route the underlying PLS fit through the existing native PLS CUDA controls, but this is not yet a fused many-operator GPU superblock grinder.