IKPLS: Improved Kernel Partial Least Squares and Fast Cross-Validation Algorithms for Python with CPU and GPU Implementations Using NumPy and JAX
Research output: Contribution to journal › Journal article › Research › peer-review
Standard
IKPLS : Improved Kernel Partial Least Squares and Fast Cross-Validation Algorithms for Python with CPU and GPU Implementations Using NumPy and JAX. / Engstrøm, Ole-Christian Galbo; Dreier, Erik Schou; Jespersen, Birthe P Møller; Steenstrup Pedersen, Kim.
In: The Journal of Open Source Software, Vol. 9, No. 99, 6533, 2024.Research output: Contribution to journal › Journal article › Research › peer-review
Harvard
APA
Vancouver
Author
Bibtex
}
RIS
TY - JOUR
T1 - IKPLS
T2 - Improved Kernel Partial Least Squares and Fast Cross-Validation Algorithms for Python with CPU and GPU Implementations Using NumPy and JAX
AU - Engstrøm, Ole-Christian Galbo
AU - Dreier, Erik Schou
AU - Jespersen, Birthe P Møller
AU - Steenstrup Pedersen, Kim
PY - 2024
Y1 - 2024
N2 - The ikpls software package provides fast and efficient tools for PLS (Partial Least Squares)modeling. This package is designed to help researchers and practitioners handle PLS modelingfaster than previously possible - particularly on large datasets. The PLS implementations inikpls use the fast IKPLS (Improved Kernel PLS) algorithms (Dayal & MacGregor, 1997),providing a substantial speedup compared to scikit-learn’s (Pedregosa et al., 2011) PLSimplementation, which is based on NIPALS (Nonlinear Iterative Partial Least Squares) (H.Wold, 1966). The ikpls package also offers an implementation of IKPLS combined withthe fast cross-validation algorithm by O.-C. G. Engstrøm (2024), significantly acceleratingcross-validation of PLS models - especially when using a large number of cross-validation splits.ikpls offers NumPy-based CPU and JAX-based CPU/GPU/TPU implementations. TheJAX implementations are also differentiable, allowing seamless integration with deep learningtechniques. This versatility enables users to handle diverse data dimensions efficiently.In conclusion, ikpls empowers researchers and practitioners in machine learning, chemometrics,and related fields with efficient, scalable, and end-to-end differentiable tools for PLS modeling,facilitating optimal component selection and preprocessing decisions by offering implementationsof1. both variants of IKPLS for CPUs;2. both variants of IKPLS for GPUs, both of which are end-to-end differentiable, allowingintegration with deep learning models;3. IKPLS combined with a cross-validation algorithm that yields a substantial speedupcompared to the classical cross-validation algorithm.
AB - The ikpls software package provides fast and efficient tools for PLS (Partial Least Squares)modeling. This package is designed to help researchers and practitioners handle PLS modelingfaster than previously possible - particularly on large datasets. The PLS implementations inikpls use the fast IKPLS (Improved Kernel PLS) algorithms (Dayal & MacGregor, 1997),providing a substantial speedup compared to scikit-learn’s (Pedregosa et al., 2011) PLSimplementation, which is based on NIPALS (Nonlinear Iterative Partial Least Squares) (H.Wold, 1966). The ikpls package also offers an implementation of IKPLS combined withthe fast cross-validation algorithm by O.-C. G. Engstrøm (2024), significantly acceleratingcross-validation of PLS models - especially when using a large number of cross-validation splits.ikpls offers NumPy-based CPU and JAX-based CPU/GPU/TPU implementations. TheJAX implementations are also differentiable, allowing seamless integration with deep learningtechniques. This versatility enables users to handle diverse data dimensions efficiently.In conclusion, ikpls empowers researchers and practitioners in machine learning, chemometrics,and related fields with efficient, scalable, and end-to-end differentiable tools for PLS modeling,facilitating optimal component selection and preprocessing decisions by offering implementationsof1. both variants of IKPLS for CPUs;2. both variants of IKPLS for GPUs, both of which are end-to-end differentiable, allowingintegration with deep learning models;3. IKPLS combined with a cross-validation algorithm that yields a substantial speedupcompared to the classical cross-validation algorithm.
U2 - 10.21105/joss.06533
DO - 10.21105/joss.06533
M3 - Journal article
VL - 9
JO - The Journal of Open Source Software
JF - The Journal of Open Source Software
SN - 2475-9066
IS - 99
M1 - 6533
ER -
ID: 401142043