¿Cómo hacer un aprendizaje automático multivariado? (prediciendo múltiples variables dependientes)

9

Estoy buscando predecir grupos de artículos que alguien comprará ... es decir, tengo múltiples variables dependientes colineales.

En lugar de construir 7 modelos independientes para predecir la probabilidad de que alguien compre cada uno de los 7 artículos, y luego combinar los resultados, ¿qué métodos debo considerar para tener un modelo que tenga en cuenta las relaciones entre las 7 variables dependientes relacionadas ( cosas que pueden comprar).

Estoy usando R como lenguaje de programación, por lo que cualquier consejo específico de R es apreciado.

blast00
fuente

Respuestas:

7

Según su descripción, parece que es apropiada una regresión logística multinomial. Suponiendo que su resultado es un factor con 7 niveles (una de las 7 opciones de compra), puede pronosticar rápidamente la membresía utilizando un modelo de regresión logística multinomial (consulte ?multinomel nnetpaquete en R). Si su resultado no se puede combinar en un factor con 7 niveles, entonces se necesitaría un análisis de conglomerados para agrupar los elementos antes de ajustar la regresión logística multinomial.

statsRus
fuente
No es regresión multinomial. Tengo 7 productos diferentes, cada producto tiene hasta 4 factores ... hay fresas y tipos de fresas, y luego leche y diferentes tipos de leche, y manzanas y diferentes tipos de manzanas, y necesito predecir el correcto carrito de compras ... manzanas verdes con fresas cultivadas, con 2% de leche, etc.,
blast00
1
Tengo tu solución! Recomendaría el análisis de clases latentes politómicas, en el que el resultado es un conjunto de factores que se supone que se agrupan en una o más clases latentes. La membresía en estas clases se predice en base a una regresión logística multinomial. Consulte ?poLCAen R para obtener más información sobre cómo ajustar este modelo.
statsRus
Estoy leyendo esto, gracias statsRus. Sin embargo, debe haber otras formas.
blast00
Específicamente, métodos de aprendizaje automático, ya que no necesito ajustar una distribución de probabilidad / estoy bien con un modelo de caja negra
blast00
Tenga en cuenta que una gran cantidad de modelos estadísticos son, de hecho, modelos de aprendizaje automático no supervisados, pero tiene razón, generalmente nos interesan las entradas con estos modelos. Para el aprendizaje automático supervisado con muchas entradas y resultados (y una calidad de caja negra), sugeriría redes neuronales ( ?nneten R).
statsRus
5

Podría construir un bosque aleatorio donde cada una de sus clases es un grupo de elementos (es decir, "manzanas verdes con fresas cultivadas, con un 2% de leche"). Luego, según las características del comprador o cualesquiera que sean sus predictores, puede proporcionar una probabilidad de compra prevista para cada grupo de artículos. Usaría el paquete randomForest de R ( https://cran.r-project.org/web/packages/randomForest/index.html ) para hacer esto.

LindsayL
fuente
3

Una opción es obtener frecuencias de todas las combinaciones de compras de productos; seleccione las pocas combinaciones más comunes; luego construya un modelo de regresión para predecir la combinación elegida de cada individuo. Por ejemplo, con una regresión logística binaria se podría predecir la compra de a) Vino blanco, brie, fresas y uvas vs.b) Vino tinto, cheddar y gouda. Con más de 2 combinaciones de este tipo, o si desea incluir la categoría de "ninguna de las anteriores", la regresión logística multinomial probablemente sería el método de elección.

Tenga en cuenta que incluir solo los combos comunes significa que tendrá más números viables de cada uno, pero que excluirá a los demás, al menos de este procedimiento. Me imagino 7 elementos creando docenas de combos cada uno elegido por al menos algunas personas. Posiblemente sean demasiadas categorías para el tamaño de su muestra. Además, si unas pocas personas eligieran un combo, su modelo tendría muy poca información para trabajar.

Otra opción es utilizar el análisis de conglomerados para llegar a algunos conjuntos de artículos que tienden a comprarse juntos. Con 7 elementos, probablemente terminará con menos de 4 grupos, lo que podría facilitar su tarea. Si intenta el análisis de conglomerados y encuentra que los resultados no son viables, no hay razón para usarlos: simplemente regrese al enfoque basado en la frecuencia descrito anteriormente. En este caso, si lo leo bien, está buscando la gama de categorías más descriptiva e interesante, y al establecer eso, no necesita preocuparse por los grados de libertad o las comparaciones múltiples o cualquier preocupación que pueda aplicarse si estaba probando múltiples métodos para realizar alguna prueba inferencial.

rolando2
fuente
Gracias por esta sugerencia Sin embargo, debe haber métodos de aprendizaje automático multivariados. Simliar a la forma en que podría tener 2 variables dependientes en un modelo "más fácil" de regresión .. y que acaba de hacer lm (y + z ~ ...) .. creo ..
blast00
0

Supongo que desea analizar una situación similar a la siguiente;

Yi = f (X), donde f () es un enlace no lineal y X es un vector de covariables e Yi es la variable dependiente i-ésima, que es de naturaleza ordinal (si es categórica Yi no puede tener más de dos categorías), y diga en su modelo i = 1, 2, ... 5 y cada uno de los Yi s está correlacionado ... Si es así, ciertamente puede emplear Probit multivariante. R, Mplus y SAS pueden estimar MVP

Por el contrario, tiene Y = f (X) e Y (observe que solo hay una Y) es categórica y, por ejemplo, tiene N categorías, de modo que las elecciones realizadas sobre las N categorías son exclusivas y exhaustivas; Necesita ajustar el modelo Multinomial Logit. También hay algo llamado probit multinomial, simialr a multinomial Logit.

Espero que esto ayude. Gracias sanjoy

Sanjoy Bhattacharjee
fuente