2012-04-01 4 views
1

イベントシーケンスのデータベースで共通のパターンを見つける必要があります。だから、私はthe longest common substring problemthe python implementationと解決策を探しています。データベース内の共通パターン

私は最も長い共通部分文字列のみを検索しているわけではありません。データベース内に頻繁に現れるより短い共通部分文字列を受け入れます。

この問題についていくつかのアルゴリズム、実装方法、または一般的なアドバイスを提案できますか?

答えて

1

前の回答はAprioriを示唆していました。しかし、Aprioriは時間を考慮しないため(Aprioriは非効率的なアルゴリズムであるため)、頻繁なシーケンスを探したい場合には不適切です。

複数のシーケンスに共通するサブシーケンスを検索する場合は、PrefixSpanやSPAMなどのシーケンシャルパターンマイニングアルゴリズムを使用する方が適切です。

予測を行いたい場合は、順次ルールマイニングアルゴリズムを使用することもできます。

私持っているあなたは私のウェブサイトからダウンロードすることができ、シーケンシャルパターンマイニングとシーケンシャルルールマイニングアルゴリズムのオープンソースのJava実装:私はあなたと一括してデータの8ギガバイトを処理することができるとは思わないhttp://www.philippe-fournier-viger.com/spmf/

これらのアルゴリズム。しかし、それは出発点になる可能性があります。実際には、これらのアルゴリズムの一部は、ディスクベースの戦略を実装することによって、非常に大きなデータベースの場合に適合させることができます。

0

あなたはAprioriのような頻出アイテムセットマイニングメソッドを考えましたか?

+0

私と一緒に働いている機械技術者は、20年以上(約8 GB、5ミリオンの記録)のデータベースをデータマイニングすることを探しています。最終的な目標は、メンテナンスタスク(「このトラックの現在の状態では、これらのタスクを実行する必要があります」など)のためのアドバイザーを作成することです。だから、はい、私はAprioriアルゴリズムを検討し、イベント間のいくつかの興味深い関連を見つけました。私たちの現在の問題は、単に比較のために、別のモデルを見つけることです。 LCSのようなメソッドを使用する私のポイントは、パターンを見つけるのにちょうど2つのストーリーを処理する必要があるということです。 –

関連する問題