Estoy tratando de resolver la tarea de regresión. Descubrí que 3 modelos funcionan bien para diferentes subconjuntos de datos: LassoLARS, SVR y Gradient Tree Boosting. Me di cuenta de que cuando hago predicciones usando todos estos 3 modelos y luego hago una tabla de 'salida real' y salidas de mis 3 modelos, veo que cada vez que al menos uno de los modelos está realmente cerca de la salida verdadera, aunque otros 2 podría estar relativamente lejos.
Cuando calculo el mínimo error posible (si tomo la predicción del "mejor" predictor para cada ejemplo de prueba) obtengo un error que es mucho más pequeño que el error de cualquier modelo solo. Así que pensé en tratar de combinar predicciones de estos 3 modelos diferentes en algún tipo de conjunto. La pregunta es, ¿cómo hacer esto correctamente? Todos mis 3 modelos están construidos y ajustados usando scikit-learn, ¿proporciona algún tipo de método que podría usarse para empaquetar modelos en un conjunto? El problema aquí es que no quiero promediar las predicciones de los tres modelos, quiero hacerlo con la ponderación, donde la ponderación debe determinarse en función de las propiedades de un ejemplo específico.
Incluso si scikit-learn no proporciona esa funcionalidad, sería bueno que alguien supiera cómo abordar esta tarea de manera adecuada: calcular la ponderación de cada modelo para cada ejemplo en los datos. Creo que podría hacerlo un regresor separado construido sobre estos 3 modelos, que intentará obtener pesos óptimos para cada uno de los 3 modelos, pero no estoy seguro de si esta es la mejor manera de hacerlo.