Identificando patrones secuenciales

8

Estoy trabajando con datos de secuencia que son largas listas de llamadas win-api de malware. Estoy tratando de convertir el problema de identificar 'comportamiento de malware' en encontrar patrones secuenciales. Trato cada llamada de API como un elemento único Conjunto de elementos. El número de diferentes elementos posibles (llamadas de API) es bastante grande.

Ahora, cuando aplico el algoritmo SPADE (ver también, Zaki, SPADE: un algoritmo eficiente para minar secuencias frecuentes , Machine Learning, 42, 31-60, 2001) me encuentro con problemas de memoria. ¿Existe una mejor forma alternativa de encontrar patrones secuenciales entre grandes secuencias de vocabulario alto?

chet
fuente
¿Podría usar un enfoque de Markov-Chain Monte-Carlo?
Zach

Respuestas:

2

Puede asignar los datos a un espacio de características donde la secuencia es importante, junto con las estadísticas calculadas sobre ventanas deslizantes y estadísticas acumulativas, y usar eso en un árbol de decisión.

Un árbol de decisión podría manejar tanto secuencias como datos no secuenciales. Esto puede reducir sustancialmente la complejidad de sus datos.

Iterador
fuente
1

Puede probar otro algoritmo de minería de patrones secuenciales.

Por ejemplo, la biblioteca de minería de datos SPMF de Java de código abierto ofrece SPADE, pero también PrefixSpan, SPAM, CM-SPAM, CM-SPADE, GSP, etc. (por cierto, soy el fundador del proyecto). Que yo sepa, CM-SPADE suele ser más rápido que SPADE. En términos de memoria, tal vez el SPAM usa menos memoria. Podría intentarlo.

Phil
fuente