How to do multivariate machine learning? (predicting multiple dependent variables)

I am looking to predict groups of items that someone will purchase... i.e., I have multiple, colinear dependent variables.

Rather than building 7 or so independent models to predict the probability of someone buying each of the 7 items, and then combining the results, what methods should I look into to have one model that accounts for the relationships between the 7 related, dependent variables (things they can purchase).

I am using R as a programming language, so any R specific advice is appreciated.

-

Based on your description, it appears a multinomial logistic regression is appropriate. Assuming your outcome is a factor with 7 levels (one of the 7 buying options), then you can quickly predict membership using a multinomial logistic regression model (see ?multinom in the nnet package in R). If your outcome cannot be combined into a factor with 7 levels, then a cluster analysis would be needed to group the items together before fitting the multinomial logistic regression.

-
It is not multinomial regression. I have 7 different products, each product has up to 4 factors.... there are strawberries, and types of strawberries, and then milk and different types of milk, and apples and different types of apples, and I need to predict the correct shopping cart... so green apples with farmed strawberries, with 2% milk etc., –  blast00 Apr 20 at 22:26
I have your solution! I'd recommend polytomous latent class analysis, in which the outcome is a set of factors that are assumed to group in one or more latent classes. Membership in these classes is predicted based on a multinomial logistic regression. See ?poLCA in R for more information on fitting this model. –  statsRus Apr 20 at 22:30
I am reading through this - thank you statsRus. There must be other ways though. –  blast00 Apr 20 at 22:49
Specifically, machine learning methods, since I do not need to fit a probability distribution / am OK with a black box model –  blast00 Apr 20 at 23:07
Keep in mind a great deal of statistical models are in fact unsupervised machine learning models -- but you're right we usually care about the inputs with these models. For supervised machine learning with many inputs and outcomes (and a black box quality), I'd suggest neural networks (?nnet in R). –  statsRus Apr 20 at 23:11