nirs4all.operators.models.sklearn.nlpls module
Nonlinear PLS (NL-PLS / Kernel PLS) regressor for nirs4all.
A sklearn-compatible implementation of Nonlinear PLS using kernel methods. This approach maps the data into a higher-dimensional feature space using a kernel function (e.g., RBF) and then fits a standard PLS model on the kernel matrix.
Supports both NumPy (CPU) and JAX (GPU/TPU) backends.
Two implementations are provided:
KernelPLS (KPLS) - Simple Kernel PLS Maps X into kernel space using a nonlinear kernel (RBF, polynomial, etc.) and fits PLS on the kernel matrix K = kernel(X, X).
MIRPLS - Monotonic Inner Relation PLS (experimental) Implements the MIR-PLS algorithm from Zheng et al. (2024) which uses monotonic cubic spline piecewise regression for the inner model.
References
Rosipal, R., & Trejo, L. J. (2001). Kernel partial least squares regression in reproducing kernel hilbert space. Journal of Machine Learning Research, 2, 97-123.
Zheng, X., Nie, B., Du, J., et al. (2024). A non-linear partial least squares based on monotonic inner relation. Frontiers in Physiology, 15, 1369165. doi:10.3389/fphys.2024.1369165
Qin, S. J., & McAvoy, T. J. (1992). Nonlinear PLS modeling using neural networks. Computers & Chemical Engineering, 16(4), 379-391.
- nirs4all.operators.models.sklearn.nlpls.KPLS
alias of
KernelPLS