Microsoft シーケンス クラスタ アルゴリズム
Microsoft シーケンス クラスタ アルゴリズムは、Microsoft SQL Server 2005 Analysis Services (SSAS) によって提供されるシーケンス分析アルゴリズムです。このアルゴリズムを使用すると、パス (シーケンス) を通じてリンク可能なイベントを含むデータを調べることができます。このアルゴリズムは、同一の複数のシーケンスをグループ化またはクラスタ化することによって、最も一般的なシーケンスを見つけます。これらのシーケンスには、次のようにさまざまな形式があります。
- ユーザーが Web サイト内でたどるクリック パスを説明するデータ
- オンラインの小売店舗で顧客が商品を買い物かごに追加する順序を説明するデータ
このアルゴリズムは、Microsoft クラスタリング アルゴリズムに似ています。ただし Microsoft シーケンス クラスタ アルゴリズムでは、類似する属性を含むケースのクラスタを検索する代わりに、シーケンス内の類似するパスを含むケースのクラスタを検索します。
このアルゴリズムが作成するマイニング モデルには、データ内の最も一般的なシーケンスの説明が含まれています。この説明を使用して、新しいシーケンスの次に来る可能性の高いステップを予測できます。アルゴリズムがレコードをクラスタ化すると、シーケンスに直接関係しないデータ内の列も説明できます。アルゴリズムでこれらの無関係な列を含めるので、結果として得られるモデルを使用して、シーケンス化されたデータとシーケンス内では発生しないデータ間の関係を識別できます。
例
Adventure Works の Web サイトでは、サイトのユーザーがどのページを閲覧するかについての情報と、これらのページの閲覧順序についての情報が収集されます。顧客は、サイトにログインしてオンラインで注文することができます。これにより、各顧客プロファイルに対するクリック情報が得られます。このデータに対して Microsoft シーケンス クラスタ アルゴリズムを使用することによって、類似したクリックのパターンまたはシーケンスを持つ顧客のグループ (クラスタ) を検出できます。次に、これらのクラスタを使用して、顧客の Web サイト内での移動状況の分析、特定の製品の売上に最も密接に関連しているページの識別、次に閲覧される可能性が高いページの予測などが実行できます。
アルゴリズムの動作
このアルゴリズムは、Expectation Maximization (EM) クラスタリング手法を使用してクラスタおよびそのシーケンスを識別します。特に、このアルゴリズムでは、あるデータ ポイントがクラスタ内に存在する可能性を判断するための確率論手法が使用されます。Microsoft クラスタリング アルゴリズムでこのクラスタリング手法がどのように使用されるかについては、「Microsoft クラスタリング アルゴリズム」を参照してください。
Microsoft シーケンス クラスタ アルゴリズムが使用する入力列の 1 つに、シーケンス データを含む入れ子になったテーブルがあります。このデータは、製品購入や Web でのクリックなど、データセット内にある個々のケースの一連の状態遷移です。どのシーケンス列をクラスタリング用の入力列として扱うかを判断するために、アルゴリズムはデータセット内の有効なすべてのシーケンス間の差異または距離を測定します。アルゴリズムによってこれらの距離が測定された後、クラスタリングの EM 手法の入力としてシーケンス列が使用されます。
アルゴリズムの使用
シーケンス クラスタ モデルでは、レコードを識別するキーが必要なほか、Web ページ識別子など、シーケンス内のイベントを識別するシーケンス関連の列を含む入れ子になったテーブルも必要です。各シーケンスが持てるシーケンスに関連する列は 1 列のみ、また、各モデルが持てるシーケンスの種類は 1 種類のみです。このトピックで使用した例のシナリオでモデルを作成するには、2 つのテーブルを含むデータ ソースが必要です。注文を含むテーブルと買い物かごに注文が入れられたシーケンスを含むテーブルです。
次の表のように、Microsoft シーケンス クラスタ アルゴリズムでは、特定の入力列のコンテンツの種類、予測可能列のコンテンツの種類、およびモデリング フラグがサポートされています。
入力列のコンテンツの種類 |
Continuous、Cyclical、Discrete、Discretized、Key、Key Sequence、Table、Ordered |
予測可能列のコンテンツの種類 |
Continuous、Cyclical、Discrete、Discretized、Table、Ordered |
モデリング フラグ |
MODEL_EXISTENCE_ONLY と NOT NULL |
すべての Microsoft アルゴリズムでは、共通の関数セットがサポートされています。ただし、Microsoft シーケンス クラスタ アルゴリズムでは、次の表のような追加の関数がサポートされています。
すべての Microsoft アルゴリズムに共通の関数の一覧については、「データ マイニング アルゴリズム」を参照してください。これらの関数の使用方法については、「データ マイニング拡張機能 (DMX) 関数リファレンス」を参照してください。
Microsoft シーケンス クラスタ アルゴリズムでは、Predictive Model Markup Language (PMML) を使用したマイニング モデルの作成はサポートされていません。
Microsoft シーケンス クラスタ アルゴリズムでは、結果として得られるマイニング モデルのパフォーマンスおよび精度に影響を与えるいくつかのパラメータがサポートされています。次の表では、各パラメータについて説明します。
パラメータ | 説明 |
---|---|
CLUSTER_COUNT |
アルゴリズムによって作成されるクラスタの概数を指定します。その数のクラスタをデータから作成できない場合、アルゴリズムでは可能な限り多数のクラスタが作成されます。CLUSTER_COUNT パラメータを 0 に設定すると、アルゴリズムではヒューリスティックを使用して、作成するクラスタの最適な数が決定されます。 既定値は 10 です。 |
MINIMUM_SUPPORT |
各クラスタのケースの最小数を指定します。 既定値は 10 です。 |
MAXIMUM_SEQUENCE_STATES |
シーケンスが持てる状態数の最大値を指定します。この値を 100 より大きい数値に設定すると、アルゴリズムは意味のある情報を提供するモデルを作成できなくなります。 既定値は 64 です。 |
MAXIMUM_STATES |
アルゴリズムによってサポートされる非シーケンス属性用の状態の最大数を指定します。非シーケンスの属性の状態の数が状態の最大数よりも大きい場合、アルゴリズムでは属性の最も一般的な状態が使用され、残りの状態は存在しないものとして処理されます。 既定値は 100 です。 |
参照
概念
データ マイニング アルゴリズム
データ マイニング ウィザード
データ マイニング ツールの使用
Microsoft シーケンス クラスタ ビューアを使用したマイニング モデルの表示