La minería de patrones secuenciales es un tema de minería de datos que se ocupa de encontrar patrones estadísticamente relevantes entre ejemplos de datos donde los valores se entregan en una secuencia. [ 1 ] [ 2 ] Generalmente se presume que los valores son discretos, por lo que la minería de series temporales está estrechamente relacionada, pero suele considerarse una actividad diferente. La minería de patrones secuenciales es un caso especial de minería de datos estructurados .
En este campo se abordan varios problemas computacionales tradicionales clave. Estos incluyen la creación de bases de datos e índices eficientes para información de secuencias, la extracción de patrones frecuentes, la comparación de secuencias para detectar similitudes y la recuperación de elementos faltantes en las secuencias. En general, los problemas de minería de secuencias se pueden clasificar como minería de cadenas, que generalmente se basa en algoritmos de procesamiento de cadenas, y minería de conjuntos de elementos , que generalmente se basa en el aprendizaje de reglas de asociación . Los modelos de procesos locales [ 3 ] extienden la minería de patrones secuenciales a patrones más complejos que pueden incluir elecciones (exclusivas), bucles y estructuras de concurrencia, además de la estructura de ordenación secuencial.
minería de cadenas
La minería de cadenas generalmente trabaja con un alfabeto limitado para los elementos que aparecen en una secuencia , pero la secuencia en sí puede ser muy larga. Ejemplos de un alfabeto pueden ser los del conjunto de caracteres ASCII utilizado en el lenguaje natural, las bases nucleotídicas 'A', 'G', 'C' y 'T' en secuencias de ADN , o los aminoácidos en secuencias de proteínas . En aplicaciones biológicas , el análisis de la disposición del alfabeto en cadenas puede utilizarse para examinar secuencias de genes y proteínas y determinar sus propiedades. Conocer la secuencia de letras de un ADN o una proteína no es un objetivo final en sí mismo. Más bien, la tarea principal es comprender la secuencia en términos de su estructura y función biológica . Esto generalmente se logra primero identificando regiones individuales o unidades estructurales dentro de cada secuencia y luego asignando una función a cada unidad estructural. En muchos casos, esto requiere comparar una secuencia dada con secuencias estudiadas previamente. La comparación entre las cadenas se complica cuando ocurren inserciones , deleciones y mutaciones en una cadena.
Abouelhoda y Ghanem (2010) presentan una revisión y taxonomía de los algoritmos clave para la comparación de secuencias para bioinformática, que incluyen: [ 4 ]
- Problemas relacionados con repeticiones: que tratan sobre operaciones en secuencias individuales y pueden basarse en métodos de coincidencia de cadenas exactas o aproximadas para encontrar repeticiones dispersas de longitud fija y de longitud máxima, encontrar repeticiones en tándem y encontrar subsecuencias únicas y subsecuencias faltantes (sin escribir).
- Problemas de alineación: se refieren a la comparación entre cadenas mediante la alineación de una o más secuencias. Algunos ejemplos de métodos populares son BLAST , para comparar una sola secuencia con múltiples secuencias en una base de datos, y ClustalW, para alineamientos múltiples. Los algoritmos de alineación pueden basarse en métodos exactos o aproximados, y también se clasifican en alineamientos globales, semiglobales y locales. Véase alineación de secuencias .
Extracción de conjuntos de elementos
Algunos problemas en la minería de secuencias se prestan al descubrimiento de conjuntos de elementos frecuentes y el orden en que aparecen. Por ejemplo, se buscan reglas del tipo "si un cliente compra un coche, es probable que compre un seguro en el plazo de una semana", o, en el contexto de los precios de las acciones, "si Nokia y Ericsson suben, es probable que Motorola y Samsung suban en los próximos dos días". Tradicionalmente, la minería de conjuntos de elementos se utiliza en aplicaciones de marketing para descubrir regularidades entre elementos que aparecen con frecuencia en grandes transacciones. Por ejemplo, analizando las transacciones de las cestas de la compra de los clientes en un supermercado, se puede generar una regla que diga: "si un cliente compra cebollas y patatas juntas, es probable que también compre carne picada para hamburguesas en la misma transacción".
Han et al. (2007) presentan una revisión y taxonomía de los algoritmos clave para la minería de conjuntos de elementos. [ 5 ]
Las dos técnicas comunes que se aplican a las bases de datos de secuencias para la minería de conjuntos de elementos frecuentes son el influyente algoritmo Apriori y la técnica más reciente de crecimiento de FP .
Aplicaciones
Con una gran variedad de productos y comportamientos de compra de los usuarios, el espacio en los estantes donde se exhiben los productos es uno de los recursos más importantes en el entorno minorista. Los minoristas no solo pueden aumentar sus ganancias, sino también reducir costos mediante una gestión adecuada de la asignación del espacio en los estantes y la exhibición de los productos. Para resolver este problema, George y Binu (2013) propusieron un enfoque para extraer patrones de compra de los usuarios utilizando el algoritmo PrefixSpan y colocar los productos en los estantes según el orden de los patrones de compra extraídos. [ 6 ]
Algoritmos
Los algoritmos más utilizados incluyen:
- Algoritmo GSP
- Descubrimiento de patrones secuenciales mediante clases de equivalencia (SPADE)
- FreeSpan
- PrefixSpan
- MAPres [ 7 ]
- Seq2Pat (para minería de patrones secuenciales basada en restricciones) [ 8 ] [ 9 ]
Véase también
- Extracción de colocaciones : técnica computacional para encontrar secuencias de palabras.
- Minería de procesos : técnica de minería de datos que utiliza registros de eventos.
- Análisis de secuencias : identificación y estudio de secuencias genómicas.
- Análisis de secuencias en ciencias sociales – Análisis de conjuntos de secuencias categóricas
- Agrupación de secuencias
- Etiquetado de secuencias
Referencias
- ↑ Mabroukeh, NR; Ezeife, CI (2010). "Una taxonomía de algoritmos de minería de patrones secuenciales". ACM Computing Surveys . 43 : 1–41 . CiteSeerX 10.1.1.332.4745 . doi : 10.1145/1824795.1824798 . S2CID 207180619 .
- ↑ Bechini, A.; Bondielli, A.; Dell'Oglio, P.; Marcellonii, F. (2023). "De los enfoques básicos a los nuevos desafíos y aplicaciones en la minería de patrones secuenciales" . Applied Computing and Intelligence . 3 (1): 44– 78. doi : 10.3934/aci.2023004 . hdl : 11568/1172332 .
- ^ Impuesto, N.; Sidorova, N.; Haakma, R.; van der Aalst, Wil MP (2016). "Modelos de procesos locales mineros". Revista de Innovación en Ecosistemas Digitales . 3 (2): 183–196 . arXiv : 1606.06066 . doi : 10.1016/j.jides.2016.11.001 . S2CID 10872379 .
- ↑ Abouelhoda, M.; Ghanem, M. (2010). "String Mining in Bioinformatics". En Gaber, MM (ed.). Scientific Data Mining and Knowledge Discovery . Springer. doi : 10.1007/978-3-642-02788-8_9 . ISBN 978-3-642-02787-1.
- ↑ Han, J.; Cheng, H.; Xin, D.; Yan, X. (2007). "Minería de patrones frecuentes: estado actual y direcciones futuras" . Minería de datos y descubrimiento de conocimiento . 15 (1): 55– 86. doi : 10.1007/s10618-006-0059-1 .
- ↑ George, A.; Binu, D. (2013). "Un enfoque para la colocación de productos en supermercados utilizando el algoritmo PrefixSpan" . Revista de la Universidad Rey Saud - Ciencias de la Computación e Información . 25 (1): 77– 87. doi : 10.1016/j.jksuci.2012.07.001 .
- ↑ Ahmad, Ishtiaq; Qazi, Wajahat M.; Khurshid, Ahmed; Ahmad, Munir; Hoessli, Daniel C.; Khawaja, Iffat; Choudhary, M. Iqbal; Shakoori, Abdul R.; Nasir-ud-Din (1 de mayo de 2008). "MAPRes: Minería de patrones de asociación entre residuos de aminoácidos preferidos en las proximidades de aminoácidos dirigidos a modificaciones postraduccionales". Proteomics . 8 (10): 1954– 1958. doi : 10.1002/pmic.200700657 . PMID 18491291 . S2CID 22362167 .
- ↑ Hosseininasab A, van Hoeve WJ, Cire AA (2019). "Minería de patrones secuenciales basada en restricciones con diagramas de decisión" . Actas de la Conferencia AAAI sobre Inteligencia Artificial . 33 : 1495–1502 . arXiv : 1811.06086 . doi : 10.1609/aaai.v33i01.33011495 . S2CID 53427299 .
- ↑ "Seq2Pat: Biblioteca de generación de secuencias a patrones" . GitHub . 9 de abril de 2022.
Enlaces externos
- SPMF incluye implementaciones de código abierto de GSP, PrefixSpan, SPADE, SPAM y muchas otras.
- minería de datos
- Bioinformática
- Algoritmos bioinformáticos