Soy un principiante que usa el aprendizaje automático (terminé el curso de Ng), estoy usando scikit-learn en python. Quiero encontrar la mejor manera de detectar anomalías en nuestro sistema.
Tenemos eventos en curso que ocurren en un horario (cada pocos minutos / horas), y quiero detectar cuándo sucede algo anormal. Datos de ejemplo:
ID | epoch-time | duration (Sec) | status | is_manual
0400 | 1488801454 | 500 | completed | 1
0401 | 1488805055 | 500 | completed | 1
0402 | 1488812254 | 40000 | failed | 1
6831 | 1488805050 | 200 | failed | 0
.
... (Millions of examples)
.
0014 | 1488805055 | 1200 | completed | 0
así, por ejemplo, el evento ID 0400 ocurre una vez cada hora. Quiero decir cuándo no se ejecuta.
Lo que planeo hacer es alimentar el algoritmo con todos los eventos de los últimos 10 minutos.
Preguntas principales: ¿Cómo tratar la columna ID? ¿Cuál es el mejor enfoque que debo tomar?