Bons pacotes de "mineração de sequência frequente" em Python?

12

Alguém já usou (e gostou) de bons pacotes de "mineração de sequência frequente" no Python que não sejam o FPM no MLLib? Estou à procura de um pacote estável, de preferência mantido por pessoas. Obrigado!

Edamame
fonte

Respostas:

6

O único que eu encontrei é: https://github.com/bartdag/pymining

eles têm uma implementação de BIDElá, mas não é mantido o código.

PS Estou participando da sua pergunta: - |

yossico
fonte
Apenas para esclarecer, ele não implementou o BIDE, que explora sequências fechadas frequentes. Na verdade, ele implementou o PrefixSpan, que extrai todas as seqüências frequentes. PrefixSpan e BIDE compartilham a mesma estrutura de enumeração de padrões, e é por isso que os autores citaram o artigo BIDE.
Chuancong Gao
O que eu fiz no final é usado: philippe-fournier-viger.com/spmf - É um lib JAVA mas eu envolveu-o com python para coincidir com as minhas necessidades
yossico
6

Estou mantendo ativamente uma implementação eficiente do PrefixSpan e do BIDE no Python 3, suportando a mineração de padrões seqüenciais freqüentes e top-k (fechados).

https://github.com/chuanconggao/PrefixSpan-py

Chuancong Gao
fonte
Gostaria de implementar aqueles em javascript, mas não entendo completamente como esses algoritmos funcionam. Você pode explicar isso em inglês simples?
Inf3rno 25/05
Sugiro que você verifique minha implementação mínima original do PrefixSpan. Sua parte principal leva apenas 15 linhas. gist.github.com/chuanconggao/4df9c1b06fa7f3ed854d5d96e2ae499f
Chuancong Gao
Obrigado! Vou tentar traduzi-lo para js, mas não será fácil. :-) O Afaik PrefixSpan está construindo bancos de dados projetados com base em onde o prefixo corresponde. Atualmente, estou lendo sobre o BIDE, que é uma teoria que é um algoritmo ainda melhor.
Inf3rno 28/05
Existem muitas diferenças entre as coleções js e python. Não consegui reproduzir o código em js. Vou tentar novamente mais tarde.
Inf3rno 28/05/19
Não tenho certeza se isso ajuda, mas tenho outra versão Scala do PrefixSpan. github.com/chuanconggao/PrefixSpan-scala No entanto, sugiro que você entenda completamente o algoritmo antes da implementação.
Chuancong Gao
1

Eu usei a função fpgrowth do fim no passado e funcionou bem. No entanto, é meio difícil instalar em máquinas Windows. Parece ser um site acadêmico, então não tenho certeza se eles estão fazendo muitas atualizações no código ao longo do tempo ...

Jed
fonte
1

Você já pensou em escrever sozinho? Porque provavelmente não há uma biblioteca mantida atualizada no momento.

Verifique isso, é o básico - os padrões PrefixSpan e Closed / Maximal não são tão difíceis de implementar:

http://sequenceanalysis.github.io/

HonzaB
fonte