Question about rescaling in plsregress()

9 visualizaciones (últimos 30 días)
Mads
Mads el 18 de Jul. de 2012
I trying to do Partial Least Squares regression (PLSR) by using the plsregress() function in matlab on two datamatrices X and Y. I have also done extracted factors by Principal Component Analysis (PCA) by the function princomp(). In PCA I understand that the factors depend upon whether X is rescaled by zscore() or not. However, to my knowledge, the factors/Xscores extracted by plsregress() shouldn't differ when X and Y are rescaled, since the algorithm deflates X and Y, but when I use plsregress(), the results does depend upon whether X and Y have been rescaled.
Am I wrong? And if so, is it because plsregress() uses SIMPLS and not NIPALS?
Thanks!
Mads

Respuestas (1)

Ilya
Ilya el 18 de Jul. de 2012
I am no expert on SIMPLS vs NIPALS. But the doc for plsregress states that
XLOADINGS = X0'*XSCORES
(with a similar relationship for Y), and X0 is centered but not scaled. So if you change the scale for X0, this change must propagate either into the loadings or scores.
Deflation amounts to orthogonalization; it can be performed on scaled or unscaled variables.
  1 comentario
Mads
Mads el 19 de Jul. de 2012
Thanks for the answer!
I didn't know that deflation refered to orthogonalization. Accepting that rescaling change the loadings and scores, I am now in doubt what would be the wisest choice, when it comes to interpret the scores in terms of the original variables. In Principal component analysisi (PCA) the weights are very sensitive to the scaling of the variables. That is the result depends on whether a variable is measured in grams or kilo grams, as an example, but rescaling removes this problem. Is this also a problem in partial least squares regression?
cheers,
Mads

Iniciar sesión para comentar.

Categorías

Más información sobre Dimensionality Reduction and Feature Extraction en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by