Microsoft 時序群集演算法
Microsoft 時序群集演算法是 Microsoft SQL Server 2005 Analysis Services (SSAS) 提供的時序分析演算法。您可以使用此演算法來探索資料,其中包含可以由下列路徑或 [順序] 來連結的事件。此演算法會透過分組或群集相同的順序來尋找最常見的順序。這些順序有許多種形式,包括:
- 描述使用者在整個網站依序按下的路徑資料。
- 描述客戶在線上零售店將商品放入購物籃的順序資料。
此演算法類似於 Microsoft 群集演算法。不過,Microsoft 時序群集演算法會尋找時序中路徑相似的案例群集,而非包含相似屬性的案例群集。
此演算法建立的採礦模型,會包含資料中最常見時序的描述。您可以使用描述來預測新時序中下一個可能的步驟。當演算法將記錄群集時,它也可以計算資料中與順序沒有直接關聯的資料行。因為此演算法包含不相關的資料行,您可以使用產生的模型,來識別順序資料和順序中未出現的資料之間的關聯性。
範例
Adventure Works 公司的網站會對使用者造訪的網頁及造訪順序收集相關資訊。因為該公司提供線上訂購,客戶必須登入站台。這樣為公司提供每一個客戶設定檔的點選資訊。在此資料上使用 Microsoft 時序群集演算法,公司可以找出具有類似點選模式或時序的客戶群組或群集。然後,公司可以使用這些群集來分析使用者在整個網站的移動情形,識別哪些頁面與某項特定產品最有關係,並預測下次最可能再造訪哪些頁面。
演算法的運作方式
此演算法使用最大期望值 (EM) 群集方法來識別群集及其順序。尤其,此演算法使用機率方法來判斷資料點出現在群集中的機率。如需在 Microsoft 群集演算法中如何使用此群集方法的描述,請參閱<Microsoft 群集演算法>。
Microsoft 時序群集演算法使用的其中一個輸入資料行,是包含時序資料的巢狀資料表。此資料是資料集裡個別案例的一系列狀態轉換,例如產品採購或 Web 點選。為了決定使用哪些順序資料行作為群集的輸入資料行,此演算法會測量資料集裡所有可能的順序之間的差異或距離。演算法測量這些距離之後,就會使用順序資料行作為群集之 EM 方法的輸入。
使用演算法
時序群集模型需要可識別記錄的索引鍵,和識別時序事件的巢狀資料表,資料表包含時序相關的資料行,例如網頁識別碼。每一個順序只能有一個順序相關的資料行,且每一個模型只能有一種順序類型。若要在此主題稍早範例的狀況中建立模型,您需要含有兩個資料表的資料來源。第一個資料表包含訂單,而第二個資料表包含訂單放入購物籃的順序。
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 時序演算法不支援使用預測模型標記語言 (PMML) 來建立採礦模型。
Microsoft 時序演算法支援數個參數,這些參數會影響產生之採礦模型的效能和精確度。下表描述每一個參數。
參數 | 描述 |
---|---|
CLUSTER_COUNT |
指定演算法要建立的大約群集數目。如果無法從資料建立大約群集數目,則演算法會盡可能建立最多的群集。將 CLUSTER_COUNT 參數設定為 0,會導致演算法使用啟發式來判斷可建立的最佳群集數目。 預設值為 10。 |
MINIMUM_SUPPORT |
指定每一個群集的最小案例數目。 預設值為 10。 |
MAXIMUM_SEQUENCE_STATES |
指定一個順序可以具有的最大狀態數目。將此值設定為大於 100 的數字,可能會導致演算法建立一個無法提供有用資訊的模型。 預設值為 64。 |
MAXIMUM_STATES |
針對演算法支援的非順序屬性指定最大狀態數目。如果非順序屬性的狀態數目大於最大狀態數目,演算法會使用該屬性最常用的狀態,並將其餘的狀態視為遺漏。 預設值為 100。 |
請參閱
概念
資料採礦演算法
資料採礦精靈
使用資料採礦工具
以 Microsoft 時序群集檢視器檢視採礦模型