共用方式為


SystemGetClusterCrossValidationResults (Analysis Services - 資料採礦)

將採礦結構分割成指定數目的交叉區段、定型每一個資料分割的模型,然後傳回每一個資料分割的精確度度量。

注意:這個預存程序只能搭配至少包含一個群集模型的採礦結構使用。 若要交叉驗證非群集模型,您必須使用<SystemGetCrossValidationResults (Analysis Services - 資料採礦)>。

語法

SystemGetClusterCrossValidationResults(
<structure name>, 
[,<mining model list>]
,<fold count>}
,<max cases>
<test list>])

引數

  • mining structure
    目前資料庫中的採礦結構名稱。

    (必要)

  • mining model list
    要驗證之採礦模型的逗號分隔清單。

    如果未指定採礦模型清單,將會針對與指定之結構有關的所有群集模型執行交叉驗證。

    [!附註]

    若要交叉驗證不是群集模型的模型,您必須使用個別的預存程序 SystemGetCrossValidationResults (Analysis Services - 資料採礦)

    (選擇性)

  • fold count
    指定要將資料集分成的資料分割數目的整數。 最小值為 2。 摺疊的最大數目為 maximum integer 或是案例數,以較低者為準。

    每一個資料分割都大概包含這個案例數:max cases/fold count。

    沒有預設值。

    [!附註]

    摺疊數會大幅影響執行交叉驗證所需的時間。 如果您選取的數字太高,查詢可能會執行很長的一段時間,而在某些情況下可能會造成伺服器沒有回應或逾時。

    (必要)

  • max cases
    指定可以測試之最大案例數的整數。

    0 的值表示將會使用資料來源內的所有案例。

    如果您指定的數字高於資料集內的實際案例數,就會使用資料來源內的所有案例。

    (必要)

  • test list
    指定測試選項的字串。

    注意:這個參數保留給未來使用。

    (選擇性)

傳回類型

傳回類型資料表包含每一個個別資料分割的分數及所有模型的彙總。

下表描述傳回的資料行。

資料行名稱

說明

ModelName

已測試的模型名稱。

AttributeName

可預測的資料行名稱。 如果是群集模型,一定是 null。

AttributeState

可預測資料行內的指定目標值。 如果是群集模型,一定是 null.。

PartitionIndex

以 1 為基準的索引,可識別套用結果的資料分割。

PartitionSize

指示每一個資料分割內包含了多少案例數的整數。

Test

已執行的測試類型。

Measure

測試所傳回之量值的名稱。 每一個模型的量值都取決於可預測值的類型。 如需每一個量值的定義,請參閱<交叉驗證 (Analysis Services - 資料採礦)>。

如需每一個可預測類型所傳回的量值清單,請參閱<交叉驗證報表中的量值>。

指定之測試量值的值。

備註

若要傳回整個資料集的精確度度量,請使用 SystemGetClusterAccuracyResults (Analysis Services - 資料採礦)

此外,如果採礦模型已經分割成若干摺疊,您可以使用 SystemGetClusterAccuracyResults (Analysis Services - 資料採礦) 來略過處理,並只傳回交叉預測的結果。

範例

下列範例示範如何將採礦結構分割成三個摺疊,然後測試與此採礦結構有關的兩個群集模型。

程式碼的第三行會列出您想要測試的特定採礦模型。 如果您未指定此清單,便會使用與此結構有關的所有群集模型。

程式碼的第四行指定摺疊的數目,第五行則指定要使用的最大案例數。

因為這些是群集模型,所以您不需要指定可預測的屬性或值。

CALL SystemGetClusterCrossValidationResults(
[v Target Mail],
[Cluster 1], [Cluster 2],
3,
10000
)

範例結果:

ModelName

AttributeName

AttributeState

PartitionIndex

PartitionSize

測試

量值

群集 1

 

 

1

3025

群集

Case Likelihood

0.930524511864121

群集 1

 

 

2

3025

群集

Case Likelihood

0.919184178430778

群集 1

 

 

3

3024

群集

Case Likelihood

0.929651120490248

群集 2

 

 

1

1289

群集

Case Likelihood

0.922789726933607

群集 2

 

 

2

1288

群集

Case Likelihood

0.934865535691068

群集 2

 

 

3

1288

群集

Case Likelihood

0.924724595688798

需求

從 SQL Server 2008 開始,交叉驗證只能在 SQL Server Enterprise 中使用。

請參閱

參考

SystemGetCrossValidationResults (Analysis Services - 資料採礦)

SystemGetAccuracyResults (Analysis Services - 資料採礦)

SystemGetClusterCrossValidationResults (Analysis Services - 資料採礦)

SystemGetClusterAccuracyResults (Analysis Services - 資料採礦)