Python implementation of di-PLS for domain adaptation in multivariate regression problems.
Train regression model
import dipals as ml
m = ml.model(X, y, X_source, X_target, 2)
l = 100000 # Regularization
m.fit(l)
# Typically X=X_source and y are the corresponding response values
Apply the model
yhat_dipls, err = m.predict(X_test, y_test=[])
The first version of di-PLS was developed by Ramin Nikzad-Langerodi, Werner Zellinger, Edwin Lughofer, Bernhard Moser and Susanne Saminger-Platz and published in:
- Ramin Nikzad-Langerodi, Werner Zellinger, Edwin Lughofer, and Susanne Saminger-Platz Analytical Chemistry 2018 90 (11), 6693-6701 DOI: 10.1021/acs.analchem.8b00498
Further refinements to the initial algorithm were published in:
-
R. Nikzad-Langerodi, W. Zellinger, S. Saminger-Platz and B. Moser, "Domain-Invariant Regression Under Beer-Lambert's Law," 2019 18th IEEE International Conference On Machine Learning And Applications (ICMLA), Boca Raton, FL, USA, 2019, pp. 581-586, doi: 10.1109/ICMLA.2019.00108.
-
Ramin Nikzad-Langerodi, Werner Zellinger, Susanne Saminger-Platz, Bernhard A. Moser, Domain adaptation for regression under Beer–Lambert’s law, Knowledge-Based Systems, Volume 210, 2020, https://doi.org/10.1016/j.knosys.2020.106447.
Bottleneck Analytics GmbH
info@bottleneck-analytics.com