Dobre pakiety „częstego przeszukiwania sekwencji” w Pythonie?


14

Czy ktoś używał (i lubił) jakieś dobre pakiety „częstego przeszukiwania sekwencji” w Pythonie inne niż FPM w MLLib? Szukam stabilnego pakietu, najlepiej utrzymywanego przez ludzi. Dziękuję Ci!

Odpowiedzi:


6

Znalazłem tylko: https://github.com/bartdag/pymining

mają tam implementację, BIDEale nie jest to utrzymywany kod.

PS Dołączam do twojego pytania: - |


Dla wyjaśnienia, nie wdrożył BIDE, który wydobywa często zamknięte sekwencje. W rzeczywistości zaimplementował PrefixSpan, który wydobywa wszystkie częste sekwencje. PrefixSpan i BIDE mają tę samą strukturę wyliczania wzorców i dlatego autorzy zacytowali artykuł BIDE.
Chuancong Gao,

Użyłem tego, co zrobiłem w końcu: philippe-fournier-viger.com/spmf - To jest biblioteka JAVA, ale
owinęłam ją pytonem,

6

Aktywnie utrzymuję wydajną implementację zarówno PrefixSpan, jak i BIDE w Pythonie 3, obsługując wyszukiwanie zarówno częstych, jak i top-k (zamkniętych) wzorców sekwencyjnych.

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


Chciałbym zaimplementować je w javascript, ale nie do końca rozumiem, jak działają te algorytmy. Czy możesz to wyjaśnić zwykłym angielskim?
inf3rno

Sugeruję sprawdzenie mojej oryginalnej minimalnej implementacji PrefixSpan. Jego podstawowa część zajmuje tylko 15 linii. gist.github.com/chuanconggao/4df9c1b06fa7f3ed854d5d96e2ae499f
Chuancong Gao

Dzięki! Spróbuję przetłumaczyć to na js, ale nie będzie to łatwe. :-) Afaik PrefixSpan buduje prognozowane bazy danych na podstawie tego, gdzie pasuje prefiks. Obecnie czytam o BIDE, który jest teorią jeszcze lepszym algorytmem.
inf3rno

Istnieje zbyt wiele różnic między kolekcjami js i python. Nie udało mi się odtworzyć kodu w js. Spróbuję ponownie później.
inf3rno

Nie jestem pewien, czy to pomaga, ale mam inną wersję PrefixSpan Scali. github.com/chuanconggao/PrefixSpan-scala Jednak bardzo sugeruję, abyś w pełni zrozumiał algorytm przed wdrożeniem.
Chuancong Gao

1

Użyłem fim „s funkcję fpgrowth w przeszłości i to działało dobrze. Jednak instalowanie na komputerach z systemem Windows jest dość uciążliwe. Wygląda na stronę akademicką, więc nie jestem pewien, czy z czasem wprowadzają wiele aktualizacji kodu ...


1

Czy zastanawiałeś się nad napisaniem go samemu? Ponieważ prawdopodobnie nie ma obecnie aktualnej biblioteki.

Sprawdź to, jego podstawowe - wzorce PrefixSpan i Closed / Maximal nie są tak trudne do wdrożenia:

http://sequenceanalysis.github.io/



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.