時序群集模型的採礦模型內容
適用於: SQL Server 2019 和舊版 Analysis Services Azure Analysis Services Fabric/Power BI Premium
重要
SQL Server 2017 Analysis Services 中已淘汰數據採礦,現在已在 SQL Server 2022 Analysis Services 中停止。 檔不會更新為已淘汰和已停止的功能。 若要深入瞭解,請參閱 Analysis Services 回溯相容性。
本主題描述使用Microsoft時序群集演算法之模型特有的採礦模型內容。 如需適用於所有模型類型之採礦模型內容的一般和統計術語的說明,請參閱 採礦模型內容(Analysis Services - 數據採礦)。
瞭解時序群集模型的結構
時序群集模型具有代表模型及其元數據的單一父節點(NODE_TYPE = 1)。 標記為 (All)的父節點具有相關的時序節點 (NODE_TYPE = 13),其中會列出定型數據中偵測到的所有轉換。
此演算法也會根據數據中找到的轉換,以及建立模型時所包含的任何其他輸入屬性,例如客戶人口統計等等,建立一些叢集。 每個叢集 (NODE_TYPE = 5) 都包含自己的時序節點 (NODE_TYPE = 13),其中只會列出產生該特定叢集時所使用的轉換。 您可以從順序節點向下切入,以檢視個別狀態轉換的詳細數據(NODE_TYPE = 14)。
如需順序和狀態轉換的說明,以及範例,請參閱 Microsoft 時序群集演算法。
時序群集模型的模型內容
本節提供採礦模型內容中數據行的其他信息,這些數據行與時序群集具有特定相關性。
MODEL_CATALOG
儲存模型的資料庫名稱。
MODEL_NAME
模型的名稱。
ATTRIBUTE_NAME
一律為空白。
NODE_NAME
節點的名稱。 目前與NODE_UNIQUE_NAME相同的值。
NODE_UNIQUE_NAME
節點的唯一名稱。
NODE_TYPE
時序叢集模型會輸出下列節點類型:
節點類型標識碼 | 描述 |
---|---|
1 (模型) | 模型的根節點 |
5 (叢集) | 包含叢集中的轉換計數、屬性清單,以及描述叢集中值的統計數據。 |
13 (序列) | 包含叢集中所包含的轉換清單。 |
14 (轉換) | 將事件序列描述為數據表,其中第一個數據列包含起始狀態,而所有其他數據列都包含連續狀態,以及支援和機率統計數據。 |
NODE_GUID
空白。
NODE_CAPTION
為了顯示目的,標籤或與節點相關聯的標題。
您可以在使用模型時重新命名叢集標題;不過,如果您關閉模型,則不會保存新名稱。
CHILDREN_CARDINALITY
估計節點擁有的子係數目。
模型根目錄 基數值等於叢集數目加上一個。 如需詳細資訊,請參閱 基數。
叢集節點 基數一律為 1,因為每個叢集都有單一子節點,其中包含叢集中的序列清單。
時序節點 基數表示該叢集中所包含的轉換數目。 例如,模型根目錄之時序節點的基數會告訴您整個模型中有多少個轉換。
PARENT_UNIQUE_NAME
節點父代的唯一名稱。
根層級的任何節點會傳回NULL。
NODE_DESCRIPTION
與節點標題相同。
NODE_RULE
一律為空白。
MARGINAL_RULE
一律為空白。
NODE_PROBABILITY
模型根目錄 Always 0。
叢集節點 模型中叢集的調整機率。 調整后的機率不會加總為 1,因為序列群集中使用的群集方法允許多個叢集中的部分成員資格。
Always 0 時序節點。
Always 0 轉換節點。
MARGINAL_PROBABILITY
模型根目錄 Always 0。
叢集節點 與NODE_PROBABILITY相同的值。
Always 0 時序節點。
Always 0 轉換節點。
NODE_DISTRIBUTION
包含機率和其他信息的數據表。 如需詳細資訊,請參閱 NODE_DISTRIBUTION 資料表。
NODE_SUPPORT
支援此節點的轉換數目。 因此,如果定型數據中有 30 個序列 「產品 A 後面接著產品 B」的範例,則總支援為 30。
模型根目錄 模型中的轉換總數。
叢集節點 原始支援叢集,這表示參與此叢集案例的定型案例數目。
Always 0 時序節點。
轉換節點 代表特定轉換的叢集中案例百分比。 可以是 0,或可以有正值。 計算方式是取得叢集節點的原始支援,並乘以叢集的機率。
從此值中,您可以判斷轉換造成多少定型案例。
MSOLAP_MODEL_COLUMN
不適用。
MSOLAP_NODE_SCORE
不適用。
MSOLAP_NODE_SHORT_CAPTION
與NODE_DESCRIPTION相同。
瞭解序列、狀態和轉換
時序群集模型具有唯一的結構,結合了兩種物件與非常不同類型的資訊:第一種是叢集,第二種是狀態轉換。
由時序叢集建立的叢集就像Microsoft叢集演算法所建立的叢集。 每個叢集都有配置檔和特性。 不過,在時序叢集中,每個叢集會另外包含列出該叢集中序列的單一子節點。 每個時序節點都包含多個子節點,這些子節點會詳細描述狀態轉換,並具有機率。
模型中的序列幾乎一律會比在任何單一案例中找到的序列更多,因為序列可以鏈結在一起。 Microsoft Analysis Services 會將指標儲存至另一個狀態,以便計算每次轉換發生的次數。 您也可以找到序列發生次數的相關信息,並測量與整個觀察狀態集相較之下發生的機率。
下表摘要說明如何將資訊儲存在模型中,以及節點的關聯方式。
節點 | 具有子節點 | NODE_DISTRIBUTION數據表 |
---|---|---|
模型根目錄 | 多個叢集節點 具有整個模型序列的節點 |
列出模型中具有支援和機率的所有產品。 因為群集方法允許多個叢集中的部分成員資格,因此支援和機率可以有分數值。 也就是說,每個案例可能屬於多個叢集,而不是計算單一案例一次。 因此,判斷最終叢集成員資格時,該值會依該叢集的機率進行調整。 |
模型的順序節點 | 多個轉換節點 | 列出模型中具有支援和機率的所有產品。 由於模型已知序列數目,因此在此層級,支援和機率的計算相當簡單: 支援 = 案例計數 Probability = 模型中每個序列的原始機率。 所有機率應加總為 1。 |
個別叢集節點 | 只有該叢集序列的節點 | 列出叢集中的所有產品,但只針對叢集特性的產品提供支援和機率值。 支援代表此叢集中每個案例的調整支援值。 機率值會調整機率。 |
個別叢集的順序節點 | 具有該叢集中序列轉換的多個節點 | 與個別叢集節點中完全相同的資訊。 |
轉換 | 沒有子系 | 列出相關第一個狀態的轉換。 支援是調整的支援值,表示參與每個轉換的案例。 Probability 是調整的機率,以百分比表示。 |
NODE_DISTRIBUTION數據表
NODE_DISTRIBUTION數據表提供特定叢集之轉換和序列的詳細機率和支持資訊。
數據列一律會新增至轉換數據表,以表示可能 遺漏 值。 如需 遺漏 值的意義,以及其如何影響計算的資訊,請參閱 遺漏值 (Analysis Services - 數據採礦)。
支援和機率的計算會根據計算套用至定型案例或完成的模型而有所不同。 這是因為預設叢集方法預期最大化 (EM),假設任何案例都可以屬於多個叢集。 計算模型中案例的支援時,可以使用原始計數和原始機率。 不過,叢集中任何特定序列的機率必須依所有可能序列和叢集組合的總和來加權。
基數
在叢集模型中,父節點的基數通常會告訴您模型中有多少個叢集。 不過,時序叢集模型在叢集層級有兩種節點:一種節點包含叢集,另一種節點則包含整個模型的序列清單。
因此,若要瞭解模型中的叢集數目,您可以取得 [所有] 節點的 NODE_CARDINALITY 值,並減去一個。 例如,如果模型建立9個叢集,則模型根目錄的基數為10。 這是因為模型包含 9 個叢集節點,每個節點都有自己的時序節點,再加上一個標示為叢集 10 的額外時序節點,代表模型的序列。
結構的逐步解說
範例可能有助於釐清資訊儲存方式,以及如何解譯資訊。 例如,您可以使用下列查詢,找到最大順序,這表示基礎 AdventureWorksDW2012 數據中觀察到的最長鏈結:
USE AdventureWorksDW2012
SELECT DISTINCT OrderNumber, Count(*)
FROM vAssocSeqLineItems
GROUP BY OrderNumber
ORDER BY Count(*) DESC
從這些結果中,您會發現訂單編號 『SO72656』、『SO58845』和 『SO70714』 包含最大的序列,每個順序各有 8 個專案。 藉由使用訂單標識碼,您可以檢視特定訂單的詳細數據,以查看哪些專案已購買,以及依何種順序購買。
OrderNumber | LineNumber | 型 |
---|---|---|
SO58845 | 1 | Mountain-500 |
SO58845 | 2 | LL Mountain Tire |
SO58845 | 3 | 山輪胎管 |
SO58845 | 4 | 芬德集 - 山 |
SO58845 | 5 | 山瓶籠 |
SO58845 | 6 | 水瓶 |
SO58845 | 7 | Sport-100 |
SO58845 | 8 | Long-Sleeve 標誌澤西 |
不過,某些購買Mountain-500的客戶可能會購買不同的產品。 您可以檢視模型中序列清單,以檢視Mountain-500之後的所有產品。 下列程式會逐步引導您使用 SQL Server Analysis Services 中提供的兩個查看器來檢視這些序列:
使用時序叢集查看器檢視相關的序列
在 [物件總管] 中,以滑鼠右鍵按兩下 [時序叢集] 模型,然後選取 [流覽]。
在 [時序叢集查看器] 中,按兩下 [狀態轉換] 索引標籤。
在 [叢集] 下拉式清單中,確定已選取 [母體擴展]。
將窗格左側的滑桿列一路移至頂端,以顯示所有連結。
在圖表中,找出 Mountain-500,然後按兩下圖表中的節點。
醒目提示的線條指向下一個州(在Mountain-500之後購買的產品),數位表示機率。 將這些結果與泛型模型內容查看器中的結果進行比較。
若要使用泛型模型內容查看器來檢視相關的序列
在 [物件總管] 中,以滑鼠右鍵按兩下 [時序叢集] 模型,然後選取 [流覽]。
在查看器下拉式清單中,選取 Microsoft 一般內容樹視圖。
在 [
節點標題 ] 窗格中,按兩下叢集 16名為時序層級的節點。 在 [節點詳細數據] 窗格中,尋找NODE_DISTRIBUTION數據列,然後按兩下巢狀數據表中的任何位置。
頂端數據列一律適用於Missing值。 此數據列是順序狀態 0。
按向下鍵,或使用滾動條向下移動巢狀數據表,直到您看到 Row Mountain-500 為止。
此數據列是序列狀態 20。
注意
您可以透過程序設計方式取得特定時序狀態的數據列編號,但如果您只是流覽,可能比較容易將巢狀數據表複製到 Excel 活頁簿。
返回 [節點標題] 窗格,然後展開節點,如果尚未展開,叢集 16的時序層級。
查看其子節點,以取得序列狀態 20
[轉換] 資料列。 按兩下轉換節點。 巢狀NODE_DISTRIBUTION數據表包含下列產品和機率。 將這些結果與時序叢集查看器的 [狀態轉換] 索引卷標中的結果進行比較。
下表顯示NODE_DISTRIBUTION數據表的結果,以及圖形查看器中顯示的四捨五入機率值。
產品 | 支援(NODE_DISTRIBUTION表) | 機率 (NODE_DISTRIBUTION) 表表) | 機率(來自圖表) |
---|---|---|---|
失蹤 | 48.447887 | 0.138028169 | ( 未顯示 ) |
自行車帽 | 10.876056 | 0.030985915 | 0.03 |
芬德集 - 山 | 80.087324 | 0.228169014 | 0.23 |
Half-Finger 手套 | 0.9887324 | 0.002816901 | 0.00 |
水化套件 | 0.9887324 | 0.002816901 | 0.00 |
LL Mountain Tire | 51.414085 | 0.146478873 | 0.15 |
Long-Sleeve 標誌澤西 | 2.9661972 | 0.008450704 | 0.01 |
山瓶籠 | 87.997183 | 0.250704225 | 0.25 |
山輪胎管 | 16.808451 | 0.047887324 | 0.05 |
Short-Sleeve 經典澤西 | 10.876056 | 0.030985915 | 0.03 |
Sport-100 | 20.76338 | 0.05915493 | 0.06 |
水瓶 | 18.785915 | 0.053521127 | 0.25 |
雖然我們最初從定型數據中選取的案例包含產品 『Mountain-500』,後面接著 『LL Mountain Tire』,但您可以看到許多其他可能的序列。 若要尋找任何特定叢集的詳細資訊,您必須重複從叢集中序列清單向下切入到每個狀態或產品的實際轉換程式。
您可以從一個特定叢集中所列的序列跳至轉換資料列。 從該轉換數據列,您可以判斷下一個產品,然後在序列清單中跳回該產品。 針對每個第一個和第二個狀態重複此程式,您可以透過長時間的狀態鏈結。
使用序列資訊
時序叢集的常見案例是追蹤使用者按兩下網站。 例如,如果數據來自 Adventure Works 電子商務網站上的客戶購買記錄,則產生的時序群集模型可用來推斷用戶行為、重新設計電子商務網站來解決瀏覽問題,或促銷銷售。
例如,分析可能會顯示使用者一律遵循特定產品鏈結,而不論人口統計為何。 此外,您可能會發現使用者在按下特定產品之後經常結束網站。 根據該發現,您可能會詢問您可以提供給使用者哪些其他路徑,以誘使用戶留在網站上。
如果您沒有用於分類使用者的其他資訊,則可以直接使用時序資訊來收集數據,以進一步瞭解整體行為。 不過,如果您可以收集客戶的相關信息,並將該資訊與客戶資料庫相符,您可以將叢集的強大功能與序列上的預測結合,以提供針對使用者量身打造的建議,或根據流覽至目前頁面的路徑。
序列群集模型所編譯之廣泛狀態和轉換資訊的另一個用法,是判斷永遠不會使用哪些可能的路徑。 例如,如果您有許多訪客前往第 1-4 頁,但訪客永遠不會繼續到第 5 頁,您可能會調查是否有問題導致流覽到第 5 頁。 您可以藉由查詢模型內容,並將它與可能的路徑清單進行比較來達成此動作。 您可以透過程式設計方式或使用各種網站分析工具,以程式設計方式建立網站中的所有導覽路徑圖表。
若要瞭解如何藉由查詢模型內容來取得觀察到的路徑清單,以及查看序列群集模型的其他查詢範例,請參閱 時序群集模型查詢範例。
另請參閱
採礦模型內容 (Analysis Services - 數據採礦)
Microsoft 時序群集演算法
時序叢集模型查詢範例