線性回歸模型的採礦模型內容 (Analysis Services - 數據採礦)

適用於: 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 = 25)。

線性回歸模型的結構

線性回歸模型使用與Microsoft判定樹相同的演算法,但使用不同的參數來限制樹狀結構,而且只接受連續屬性做為輸入。 不過,由於線性回歸模型是以Microsoft判定樹演算法為基礎,因此線性回歸模型會使用Microsoft判定樹查看器來顯示。 如需詳細資訊,請參閱 使用 Microsoft 樹檢視器流覽模型

下一節說明如何解譯回歸公式節點中的資訊。 這項信息不僅適用於線性回歸模型,也適用於包含樹狀結構部分回歸的判定樹模型。

線性回歸模型的模型內容

本節僅提供採礦模型內容中具有線性回歸特定相關性之數據行的詳細數據和範例。

如需架構資料列集中一般用途數據行的相關信息,請參閱 採礦模型內容 (Analysis Services - 數據採礦)

MODEL_CATALOG
儲存模型的資料庫名稱。

MODEL_NAME
模型的名稱。

ATTRIBUTE_NAME
根節點: 空白

回歸節點: 可預測屬性的名稱。

NODE_NAME
一律與NODE_UNIQUE_NAME相同。

NODE_UNIQUE_NAME
模型內節點的唯一標識符。 這個值無法變更。

NODE_TYPE
線性回歸模型會輸出下列節點類型:

節點類型標識碼 類型 描述
25 回歸樹根目錄 包含描述輸入和輸出變數之間關聯性的公式。

NODE_CAPTION
與節點相關聯的標籤或標題。 此屬性主要是為了顯示目的。

根節點: 空白

回歸節點: 全部。

CHILDREN_CARDINALITY
估計節點擁有的子係數目。

根節點: 指出回歸節點的數目。 模型中的每個可預測屬性都會建立一個回歸節點。

回歸節點: Always 0。

PARENT_UNIQUE_NAME
節點父代的唯一名稱。 根層級的任何節點會傳回NULL。

NODE_DESCRIPTION
節點的描述。

根節點: 空白

回歸節點: 全部。

NODE_RULE
不適用於線性回歸模型。

MARGINAL_RULE
不適用於線性回歸模型。

NODE_PROBABILITY
與此節點相關聯的機率。

根節點: 0

回歸節點: 1

MARGINAL_PROBABILITY
從父節點到達節點的機率。

根節點: 0

回歸節點: 1

NODE_DISTRIBUTION
巢狀數據表,提供節點中值的相關統計數據。

根節點: 0

回歸節點: 包含用來建置回歸公式之元素的數據表。 回歸節點包含下列實值類型:

VALUETYPE
1 (遺漏)
3 (連續)
7 (係數)
8 (分數獲得)
9 (統計資料)
11 (攔截)

NODE_SUPPORT
支援此節點的案例數目。

根節點: 0

回歸節點: 定型案例的計數。

MSOLAP_MODEL_COLUMN
可預測屬性的名稱。

MSOLAP_NODE_SCORE
與NODE_PROBABILITY相同

MSOLAP_NODE_SHORT_CAPTION
用於顯示用途的標籤。

言論

當您使用Microsoft線性回歸演算法建立模型時,數據採礦引擎會建立判定樹模型的特殊實例,並提供參數來限制樹狀結構以包含單一節點中的所有定型數據。 所有連續輸入都會標示並評估為潛在的回歸輸入,但只有符合數據的回歸輸入器會保留為最終模型中的回歸輸入器。 分析會針對每個回歸輸入器產生單一回歸公式,或完全不會產生任何回歸公式。

若要檢視 採礦圖例中的完整回歸公式,請按兩下 [Microsoft 樹檢視器]中的 [][全部] 節點。

此外,當您建立包含連續可預測屬性的判定樹模型時,有時候樹狀結構具有共用回歸樹狀節點屬性的回歸節點。

連續屬性的節點分佈

回歸節點中的大部分重要資訊都包含在NODE_DISTRIBUTION數據表中。 下列範例說明NODE_DISTRIBUTION數據表的配置。 在此範例中,Targeted Mailing 採礦結構已用來建立線性回歸模型,以根據年齡預測客戶收入。 此模型僅供說明之用,因為它可以使用現有的 AdventureWorks2012 範例數據和採礦結構輕鬆地建置。

ATTRIBUTE_NAME ATTRIBUTE_VALUE 支援 概率 方差 VALUETYPE
每年收入 失蹤 0 0.000457142857142857 0 1
每年收入 57220.8876687257 17484 0.999542857142857 1041275619.52776 3
年齡 471.687717702463 0 0 126.969442359327 7
年齡 234.680904692439 0 0 0 8
年齡 45.4269617936399 0 0 126.969442359327 9
35793.5477381267 0 0 1012968919.28372 11

NODE_DISTRIBUTION數據表包含多個數據列,每個數據列都依變數分組。 前兩個數據列一律是實值類型 1 和 3,並描述目標屬性。 後續資料列會提供特定 回歸輸入器公式的詳細數據,。 回歸輸入變數是與輸出變數具有線性關聯性的輸入變數。 您可以有多個回歸輸入變數,而且每個回歸輸入器都會有一個不同的係數數據列(VALUETYPE = 7)、分數增益(VALUETYPE = 8),以及統計數據(VALUETYPE = 9)。 最後,數據表有一個數據列,其中包含方程式的截距 (VALUETYPE = 11)。

回歸公式的元素

巢狀NODE_DISTRIBUTION數據表包含個別數據列中回歸公式的每個元素。 範例結果中的前兩個數據列包含可預測屬性的相關信息,Yearly Income,其會建立相依變數的模型。 SUPPORT 資料行會顯示支援此屬性兩種狀態的案例計數:有 年收入 值可用,或遺漏每年收入 值

VARIANCE 資料行會告訴您可預測屬性的計算變數。 變異數 是一個量值在樣本中散佈方式的量值,假設有預期的分佈。 此處的變異數是藉由從平均值取得平方偏差的平均值來計算。 變異數的平方根也稱為標準偏差。 SQL Server Analysis Services 不提供標準偏差,但您可以輕鬆地計算。

針對每個回歸輸入變數,會輸出三個數據列。 它們包含係數、分數增益和回歸輸入項統計數據。

最後,數據表包含提供方程式攔截的數據列。

係數

針對每個回歸輸入變數,會計算係數 (VALUETYPE = 7)。 係數本身會出現在ATTRIBUTE_VALUE數據行中,而 VARIANCE 數據行會告訴您係數的變數。 系統會計算係數,以將線性最大化。

分數增益

每個回歸輸入器的分數增益 (VALUETYPE = 8) 代表屬性的有趣性分數。 您可以使用此值來估計多個回歸輸入器的有用性。

統計學

回歸輸入器統計數據 (VALUETYPE = 9) 是具有值之案例之屬性的平均值。 ATTRIBUTE_VALUE數據行包含平均值本身,而 VARIANCE 資料行則包含與平均值偏差的總和。

攔截

一般而言,回歸方程式中的 攔截(VALUETYPE = 11) 或 剩餘 會告訴您可預測屬性的值,在輸入屬性的點為 0。 在許多情況下,這可能不會發生,而且可能會導致反直覺的結果。

例如,在根據年齡預測收入的模型中,學習 0 歲時的收入是毫無用處的。 在現實生活中,了解線條相對於平均值的行為通常更有用。 因此,SQL Server SQL Server Analysis Services 會修改截距,以表示與平均值關聯性中的每個回歸變數。

此調整在採礦模型內容中很難看到,但如果您檢視 採礦圖例中已完成的方程式,Microsoft 樹視圖器。 回歸公式會從 0 點移轉至代表平均值的點。 這會在目前數據的情況下呈現更直覺的檢視。

因此,假設平均年齡在 45 左右,回歸公式的截距 (VALUETYPE = 11) 會告訴您平均收入。

另請參閱

採礦模型內容 (Analysis Services - 數據採礦)
Microsoft 線性回歸演算法
Microsoft 線性回歸演算法技術參考
線性回歸模型查詢範例