BaseGroupの用語集から:
マーケットバスケット分析は、最も一般的なスーパーマーケットのショッピングパターンを見つけるプロセスです。 これは、トランザクションデータベースを分析して、相互に関連する商品の組み合わせを判断することによって行われます。 言い換えれば、トランザクション内に存在する商品の検出は、他の商品またはそれらの組み合わせの可能性に影響します。
マーケットバスケットを分析して得られた結果により、商品と在庫の品揃えを最適化し、トレーディングフロアに配置し、関連製品を顧客に提供することで売上を増やすことができます。 たとえば、分析の結果、パスタとケチャップの共同購入が典型的なテンプレートであることが判明した場合、これらの製品を同じディスプレイウィンドウに配置すると、購入者が一緒に購入することを「誘発」できます。
連想ルール
マーケットバスケット分析の問題を解決するために、「if ... then ...」という形式の連想ルールが使用されます。 たとえば、「顧客がビールを購入した場合、チップを購入します」。 このようなトランザクションのより大きなセットに基づいて、各購入は「トランザクション」と呼ばれ、顧客の行動に関する調査を構築します。
連想ルールは、 知識を記録する非常にシンプルで便利な形式です。 ここでも、トランザクション情報がソースデータであることを明確にしたいのですが、取得される関連ルールは、80年代の大きなスーパーマーケットで多くのお金を節約するのに役立つ知識です。
ルールを特徴付けるためにいくつかのメトリックが使用されます:
DからのトランザクションのsがセットXとYの共通部分を含む場合、ルールX-> Yにはサポートs(サポート)があります。ルールの有効性は、YがXから続く確率を示します。 Xを含むDからのcトランザクションにYも含まれる場合、conf(X-> Y)= supp(X-> Y)/ supp(X)。
例:「パンを含むトランザクションの75%にはミルクも含まれています。 すべてのトランザクションの総数の3%に両方の製品が含まれています。」 75%はルールの信頼度、3%はサポート、または75%と3%のサポートの可能性がある「パン」->「ミルク」です。
原則として、明白なルールにはサポートがあり、信頼性は高い(60%以上)が、事実上の知識ではない。 主な注意は、5〜10%のサポートを持つルールに払われる必要があります。ルールは、プロモーションまたはサービスのアイデアのソースになる可能性があります。
アプリオリアルゴリズム
連想ルールを取得するために使用される主なアルゴリズムは、アプリオリアルゴリズムです。 著者はRakesh Agrawal( Rakesh Agrawal 、現在はMicrosoft Researchの従業員)です。
Aprioriアルゴリズムは、すべての頻繁な機能セットを検索するように設計されています。 それは平準化され、幅優先検索戦略を使用し、ボトムアップで実装します。
次の検索アルゴリズム( source ):
アルゴリズムの主な機能は反単調性プロパティ( source )です。
Aprioriは、サポート機能の1つを使用します。サポート機能のいずれかでは、どの要素セットのサポートも、そのサブセットの最小サポートを超えることはできません。 たとえば、3要素セット{Bread、Butter、Milk}のサポートは、常に2要素セット{Bread、Butter}、{Bread、Milk}、{Butter、Milk}のサポート以下になります。 実際には、{Bread、Butter、Milk}を含むトランザクションには{Bread、Butter}、{Bread、Milk}、{Butter、Milk}も含まれている必要があり、その逆は当てはまりません。
このプロパティにより、バスティングは「貪欲」ではなく、大量の情報を数秒で処理できます。
従来のアプリオリアルゴリズムはすでに数回修正されており、現在、速度を改善するための作業が進行中です。
アプリオリに加えて、他のアルゴリズムも使用されます。
- Eclatアルゴリズム
- FP-Growthアルゴリズム
- 単一属性ルール
- ゼロ属性属性
その他のタスク
マーケットバスケットを分析する古典的なタスクは、私たちの時代に解決する必要がある新しいタスクに変わりました。
- クレジットカードショッピング分析
- 通話パターンの分析
- その他のあらゆる分野の不正取引の分析と検出に関連するもの
ソフトウェア実装
- C#実装
- codeplexでのいくつかの実装: データマイニングソースコード