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.