SystemGetCrossValidationResults (Analysis Services - Data Mining)

Aplica-se a: SQL Server 2019 e anteriores do Analysis Services Azure Analysis Services Fabric/Power BI Premium

Importante

A mineração de dados foi preterida no SQL Server 2017 Analysis Services e agora foi descontinuada no SQL Server 2022 Analysis Services. A documentação não foi atualizada para recursos preteridos e descontinuados. Para saber mais, confira Compatibilidade com versões anteriores do Analysis Services.

Particiona a estrutura de mineração em um número especificado de seções cruzadas, treina um modelo para cada partição e retorna métricas de precisão para cada partição.

Observação

Este procedimento armazenado não pode ser usado para validar clustering modelos ou modelos criados usando o algoritmo Microsoft Time Series ou o algoritmo Microsoft Sequence Clustering. Para validar clustering modelos, você pode usar o procedimento armazenado separado, SystemGetClusterCrossValidationResults (Analysis Services – Data Mining).

Sintaxe

  
SystemGetCrossValidationResults(  
<mining structure>  
[, <mining model list>]  
,<fold count>  
,<max cases>  
,<target attribute>  
[,<target state>]  
[,<target threshold>]  
[,<test list>])  

Argumentos

estrutura de mineração
Nome de uma estrutura de mineração no banco de dados atual.

(obrigatório)

lista do modelo de mineração
Lista separada por vírgulas de modelos de mineração para validar.

Se um nome de modelo contiver caracteres que não são válidos no nome de um identificador, o nome deverá ser colocado entre parênteses.

Se uma lista de modelos de mineração não for especificada, a validação cruzada será executada em todos os modelos de clustering associados com a estrutura especificada e que contenha um atributo previsível.

Observação

Para validar clustering modelos, você deve usar um procedimento armazenado separado, SystemGetClusterCrossValidationResults (Analysis Services – Data Mining).

(opcional)

número de partições
Inteiro que especifica o número de partições nas quais separar o conjunto de dados. O valor mínimo é 2. O número máximo de dobras é maximum integer ou o número de casos, o que for inferior.

Cada partição conterá aproximadamente esse número de casos:contagemmáxima de dobras/ de casos.

Nenhum valor padrão.

Observação

O número de dobras afeta grandemente o tempo necessário para realizar a validação cruzada. Se você selecionar um número que seja muito alto, a consulta poderá ser executada por muito tempo e, em alguns casos, o servidor poderá ficar sem-resposta ou expirar.

(obrigatório)

max cases
Inteiro que especifica o número máximo de casos que podem ser testados em todas as dobras.

Um valor de 0 indica que serão usadas todas as caixas na fonte de dados.

Se for especificado um valor maior que o de casos reais no conjunto de dados, todos os casos serão da fonte de dados serão usados.

Nenhum valor padrão.

(obrigatório)

atributo de destino
Cadeia de caracteres que contém o nome do atributo previsível. Um atributo previsível pode ser uma coluna, coluna de tabela aninhada ou coluna de chave de tabela aninhada de um modelo de mineração.

Observação

A existência do atributo de destino só é validada no tempo de execução.

(obrigatório)

estado de destino
Fórmula que especifica o valor para prever. Se um valor de destino for especificado, as métricas serão coletadas somente para o valor especificado.

Se um valor não for especificado ou for nulo, as métrica serão computadas para o estado mais provável para cada previsão.

O padrão é nulo.

Um erro é gerado durante a validação se o valor especificado não for válido para o atributo especificado ou se a fórmula não for o tipo correto para o atributo especificado.

(opcional)

limitede destino
Double maior que 0 e menor que 1. Indica a pontuação de probabilidade mínima que deve ser obtida para a previsão do estado de destino especificado ser contado como correto.

Uma previsão que tem uma probabilidade menor ou igual a este valor é considerada incorreta.

Se nenhum valor for especificado ou for nulo, o estado mais provável será usado, independentemente de sua pontuação de probabilidade.

O padrão é nulo.

Observação

SQL Server Analysis Services não gerará um erro se você definir o limite de estado como 0,0, mas nunca deverá usar esse valor. Na realidade, um limite de 0.0 significa que as previsões com uma probabilidade de 0 por cento foram contadas como corretas.

(opcional)

test list
Uma cadeia de caracteres que especifica opções de teste.

Observação : esse parâmetro é reservado para uso futuro.

(opcional)

Tipo de retorno

O conjunto de linhas que é retornado contém pontuações para cada partição em cada modelo.

A tabela a seguir descreve as colunas no conjunto de linhas.

Nome da coluna Descrição
ModelName O nome do modelo que foi testado.
AttributeName O nome da coluna previsível.
AttributeState Um valor de destino especificado na coluna previsível. Se este valor for nulo, a previsão mais provável foi usada.

Se esta coluna contiver um valor, a precisão do modelo será avaliada com relação a esse valor somente.
PartitionIndex Um índice de base 1 que identifica a qual partição os resultados se aplicam.
PartitionSize Um inteiro que indica quantos casos foram incluídos em cada partição.
Teste Categoria do teste que foi executado. Para obter uma descrição das categorias e dos testes incluídos em cada categoria, consulte Medidas no relatório de validação cruzada.
Medida Nome da medida retornada pelo teste. Medidas para cada modelo dependem do tipo do valor previsível. Para obter uma definição de cada medida, consulte Validação cruzada (Analysis Services – Mineração de dados).

Para obter uma lista de medidas retornadas para cada tipo previsível, consulte Medidas no relatório de validação cruzada.
Valor O valor da medida de teste especificada.

Comentários

Para retornar métricas de precisão para o conjunto de dados completo, use SystemGetAccuracyResults (Analysis Services – Data Mining).

Se o modelo de mineração já tiver sido particionado em dobras, você poderá ignorar o processamento e retornar apenas os resultados da validação cruzada usando SystemGetAccuracyResults (Analysis Services – Data Mining).

Exemplos

O exemplo a seguir demonstra como particionar uma estrutura de mineração para uma validação cruzada em três dobras e, em seguida, testar dois modelos de mineração associados com a estrutura de mineração, [v Target Mail].

A linha três do código lista os modelos de mineração que você deseja testar. Se você não especificar a lista, todos os modelos que não forem de clustering associados à estrutura serão usados. A linha quatro do código especifica o número de partições. Como nenhum valor foi especificado para máximo de casos, todos os casos na estrutura de dados serão usados e distribuídos uniformemente nas partições.

A linha cinco especifica o atributo previsível, Comprador de Bicicleta, e a linha seis especifica o valor para prever, 1 ("sim, comprará").

O valor NULL da linha sete indica que não há barra de probabilidade mínima a ser correspondida. Então, a primeira previsão com uma probabilidade diferente de zero será usada na avaliação da precisão.

CALL SystemGetCrossValidationResults(  
[v Target Mail],  
[Target Mail DT], [Target Mail NB],  
2,  
'Bike Buyer',  
1,  
NULL  
)  

Resultados do exemplo:

ModelName AttributeName AttributeState PartitionIndex PartitionSize Teste Medida Valor
Target Mail DT Bike Buyer 1 1 500 classificação Verdadeiro Positivo 144
Target Mail DT Bike Buyer 1 1 500 classificação Falso Positivo 105
Target Mail DT Bike Buyer 1 1 500 classificação Verdadeiro Negativo 186
Target Mail DT Bike Buyer 1 1 500 classificação Falso Negativo 65
Target Mail DT Bike Buyer 1 1 500 Probabilidade Pontuação de log -0.619042807138345
Target Mail DT Bike Buyer 1 1 500 Probabilidade Comparação de Precisão 0.0740963734002671
Target Mail DT Bike Buyer 1 1 500 Probabilidade Erro de Raiz Quadrada Média 0.346946279977653
Target Mail DT Bike Buyer 1 2 500 classificação Verdadeiro Positivo 162
Target Mail DT Bike Buyer 1 2 500 classificação Falso Positivo 86
Target Mail DT Bike Buyer 1 2 500 classificação Verdadeiro Negativo 165
Target Mail DT Bike Buyer 1 2 500 classificação Falso Negativo 87
Target Mail DT Bike Buyer 1 2 500 Probabilidade Pontuação de log -0.654117781086519
Target Mail DT Bike Buyer 1 2 500 Probabilidade Comparação de Precisão 0.038997399132084
Target Mail DT Bike Buyer 1 2 500 Probabilidade Erro de Raiz Quadrada Média 0.342721344892651

Requisitos

A validação cruzada está disponível apenas em SQL Server Enterprise começando com SQL Server 2008.

Consulte Também

SystemGetCrossValidationResults
SystemGetAccuracyResults (Analysis Services - Data Mining)
SystemGetClusterCrossValidationResults (Analysis Services - Data Mining)
SystemGetClusterAccuracyResults (Analysis Services - Data Mining)