¿Cuál es el mejor método de aprendizaje automático para predecir el tiempo de una observación dada?

No siempre elija, por ejemplo, LSTM o el sabor de aprendizaje profundo del día.

El aprendizaje profundo se trata de crear una arquitectura personalizada para su problema; no se trata de incluir la nueva arquitectura de otra persona en la tuya.

La hora del día podría predecirse mediante una simple regresión. Es posible que pueda utilizar un bosque aleatorio simple.

Sin embargo, si su modelo tiene un poder predictivo pobre, todas sus predicciones se agruparán a la mitad del día.

Por lo tanto, puede intentar entrenar a un clasificador de varias clases donde la salida es, por ejemplo, la hora del día.

Sin embargo, no todos los errores serían equivalentes; si puede pasar una matriz de penalización que le otorga una penalización mayor por predecir una hora más lejos de la verdad, entonces tendrá algunas razonables.

Eso será lo suficientemente complicado como para comenzar a trabajar; está personalizado a tu problema; y: es más fácil que el aprendizaje profundo.

Probablemente esté prediciendo intervalos de tiempo, de manera no correlacionada . Por ejemplo, si sus salidas son días de la semana, hace que su modelo prediga probabilidades para siete clases y entrene una red utilizando la pérdida de softmax. Esto se opone a si las salidas son valores continuos que representan un rango de veces. Esto solo tiene sentido si le importa más la diferencia entre lunes y viernes que la diferencia entre lunes y martes.

La red en sí misma depende del tipo de datos que tenga. Si tiene una serie de observaciones y el orden de esa serie es importante, entonces es apropiado usar un LSTM o un ConvNet. De lo contrario, como parece de su publicación, puede usar un MLP normal. De hecho, un SVM con una clase que representa cada vez que bin puede funcionar bien para su problema.