Paket “frequent sequence mining” yang bagus dalam Python?

12

Adakah yang menggunakan (dan menyukai) paket-paket "frequent sequence mining" yang bagus dengan Python selain FPM di MLLib? Saya mencari paket yang stabil, lebih baik diam dipelihara oleh orang-orang. Terima kasih!

sejenis kacang-kacangan dari Jepang
sumber

Jawaban:

6

Satu-satunya yang saya temukan adalah: https://github.com/bartdag/pymining

mereka memiliki implementasi di BIDEsana tetapi tidak dipelihara kode.

PS Saya bergabung dengan pertanyaan Anda: - |

yossico
sumber
Hanya untuk mengklarifikasi, itu tidak menerapkan BIDE tambang yang sering ditutup urutan. Ini sebenarnya menerapkan PrefixSpan yang menambang semua urutan yang sering. PrefixSpan dan BIDE berbagi kerangka enumerasi pola yang sama, dan itulah sebabnya penulis mengutip makalah BIDE.
Chuancong Gao
Apa yang saya lakukan pada akhirnya digunakan: philippe-fournier-viger.com/spmf - Ini adalah lib JAVA tapi saya membungkusnya dengan python agar sesuai dengan kebutuhan saya
yossico
6

Saya aktif mempertahankan implementasi yang efisien dari PrefixSpan dan BIDE di Python 3, mendukung penambangan pola sekuensial sering dan top-k (tertutup).

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

Chuancong Gao
sumber
Saya ingin menerapkannya dalam javascript, tapi saya tidak sepenuhnya mengerti bagaimana algoritma ini bekerja. Bisakah Anda menjelaskannya dalam bahasa Inggris?
inf3rno
Saya sarankan Anda memeriksa penerapan minimal awal PrefixSpan saya. Bagian intinya hanya membutuhkan 15 baris. gist.github.com/chuanconggao/4df9c1b06fa7f3ed854d5d96e2ae499f
Chuancong Gao
Terima kasih! Saya akan mencoba menerjemahkannya ke js, tetapi tidak akan mudah. :-) Afaik PrefixSpan sedang membangun basis data yang diproyeksikan berdasarkan di mana awalan cocok. Saat ini saya membaca tentang BIDE, yang merupakan teori adalah algoritma yang bahkan lebih baik.
inf3rno
Ada terlalu banyak perbedaan antara koleksi js dan python. Saya tidak berhasil mereproduksi kode dalam js. Saya akan coba lagi nanti.
inf3rno
Tidak yakin apakah itu membantu, tapi saya punya versi Scala lain dari PrefixSpan. github.com/chuanconggao/PrefixSpan-scala Namun, saya sangat menyarankan Anda memahami algoritma sebelum mengimplementasikan.
Chuancong Gao
1

Saya telah menggunakan fungsi fpgrowth fim di masa lalu dan itu bekerja dengan baik. Ini agak merepotkan untuk diinstal pada mesin Windows. Tampaknya situs web akademik jadi saya tidak yakin apakah mereka melakukan banyak pembaruan pada kode dari waktu ke waktu ...

Jed
sumber
1

Sudahkah Anda mempertimbangkan untuk menulisnya sendiri? Karena mungkin saat ini tidak ada perpustakaan yang dipelihara.

Lihat ini, dasarnya - pola PrefixSpan dan Closed / Maximal sebenarnya tidak terlalu sulit untuk diimplementasikan:

http://afterenceanalysis.github.io/

HonzaB
sumber