técnicas de aprendizaje automático para datos longitudinales

11

Me preguntaba si había alguna técnica de aprendizaje automático (sin supervisión) para modelar datos longitudinales. Siempre he usado modelos de efectos mixtos (en su mayoría no lineales), pero me preguntaba si hay otras formas de hacerlo (usando el aprendizaje automático).

Por aprendizaje automático, me refiero a bosque aleatorio, clasificación / agrupamiento, árboles de decisión e incluso aprendizaje profundo, etc.

John_dydx
fuente
¿Puede definir qué quiere decir con "aprendizaje automático"? Puede aumentar un LME después de la estratificación adecuada. ¡Eso sería bastante novedoso en realidad!
usεr11852
@ usεr11852, agregué un poco más de explicación a la pregunta; espero que esto lo aclare un poco más.
John_dydx
Ah ... así que impulsar no es ML según tu definición. Gracias por la aclaración, espero que pronto reciba algo de atención.
usεr11852
... y alza también.
John_dydx
3
Esta pregunta parece bastante vaga. "Aprendizaje automático" es un término amplio, e incluso las categorías de "bosque aleatorio, clasificación / agrupación, árboles de decisión e incluso aprendizaje profundo, etc." Son bastante amplios. ¿Hay alguna aplicación clara que te interese? Si, por ejemplo, necesita clasificar la salida dicotómica, puede usar un modelo logístico de efectos mixtos o un GEE logístico. El aprendizaje automático y los modelos estadísticos no son necesariamente para cosas diferentes.
Jon

Respuestas:

7

En el caso de que haya múltiples observaciones de un sujeto (p. Ej., Múltiples visitas del mismo paciente), la 'identificación del paciente' es una variable de 'agrupación'. Se debe tener cuidado durante la evaluación del modelo para que las visitas del mismo paciente no aparezcan tanto en los datos de entrenamiento como de prueba, ya que estos están correlacionados y conducirán a la inflación de la precisión del clasificador .

La documentación de sklearn de validación cruzada tiene iteradores de validación cruzada para datos agrupados. Ver GroupKFold , LeaveOneGroupOut y LeavePGroupsOut .

Aún mejor, pruebe las redes neuronales recurrentes o los modelos ocultos de Markov .

usuario0
fuente
4

Puede modelar su longitudinal con métodos estándar de aprendizaje automático simplemente agregando características, que representan la longitudinalidad, por ejemplo, agregando una característica que represente el tiempo. O una función que indica la pertenencia a un grupo, persona, etc. (en el caso de datos del panel).

Si es creativo con la creación / extracción de características, puede modelar cualquier cosa con algoritmos ML.

PhilippPro
fuente
1
@PhlippePro, estoy un poco confundido acerca de esta respuesta. (1) ¿Qué sucede si desea predecir para una persona que no está en su conjunto de entrenamiento? Solo tienes coeficientes para aquellos en tu conjunto de entrenamiento, ¿verdad? (2) Agregar una función que corresponda a la persona podría generar hasta 100,000 nuevas variables ficticias, suponiendo que tenga 100,000 personas en su conjunto de datos. ¿Estas nuevas características se adaptarían a las originales?
usuario0
(1) Si no tiene las personas que desea predecir en su conjunto de datos de entrenamiento, no puede usar la "función de persona", eso es correcto. (2) En lugar de crear funciones ficticias, puede crear una función "categórica" ​​(por ejemplo, las especifica como categóricas con un.factor en R). Algunos algoritmos no pueden manejar tantas categorías (como, por ejemplo, randomForest solo puede manejar aproximadamente 50), entonces realmente tiene que especificarlas como variables ficticias y puede obtener (también) muchas características, como señaló.
PhilippPro
ML no se traduce tan fácilmente en datos longitudinales
Aksakal