Does it make sense to run partial least squares (PLS) regression on a data set where there are more dependent variables (output Y(2000*16)) than the independent variables(input X(2000*4))?

I'm using plsregress in Matlab.


There are two types of PLS: PLS1 and PLS2

In PLS1, you obtain a model for a single vector of Y each time. If the columns of Y are thought to be uncorrelated, this method is considered to be more reliable than PLS2. In this case, your situation makes sense almost for sure because it comes down to regressing whole X to a single dependent variable.

In PLS2, the model you obtain is for predicting whole Y matrix. This works well, for example, in PLS-DA or a determination of contents in a mixture that adds up to 100% or if columns of Y matrix are correlated.

Thus, I can't say for sure if PLS2 is reliable in your case. I would rather test it as it probably depends on the data too. Another thing that I would try would be replacing X and Y for the PLS and then deriving an inverse way to calculate Y from X.

Small note: MATLAB implementation of PLS does PLS1 or PLS2 automatically depending on the Y matrix/vector you provide.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.