Exemplos de consulta de modelo de regressão linear
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.
Ao criar uma consulta para um modelo de mineração de dados, você pode criar uma consulta de conteúdo que fornece detalhes de padrões encontrados em análises ou uma consulta de previsão que usa os padrões no modelo para fazer previsões para novos dados. Por exemplo, uma consulta de conteúdo pode fornecer mais detalhes sobre a fórmula de regressão, enquanto uma consulta de previsão pode informar se um novo ponto de dados se ajusta ao modelo. Você também pode recuperar metadados sobre o modelo usando uma consulta.
Esta seção explica como criar consultas para modelos baseados no algoritmo Regressão Linear da Microsoft.
Observação
Como a regressão linear se baseia em um caso especial do algoritmo Árvores de Decisão da Microsoft, há muitas semelhanças. Além disso, alguns modelos de árvore de decisão que usam atributos previsíveis contínuos podem conter fórmulas de regressão. Para obter mais informações, consulte Referência técnica do algoritmo Árvores de Decisão da Microsoft.
Consultas de conteúdo
Usando o DMX para retornar a fórmula de regressão do modelo
Retornando apenas o coeficiente do modelo
Consultas de previsão
Prevendo o resultado com o uso de uma consulta singleton
Usando funções de previsão com um modelo de regressão
Localizando informações sobre o modelo de regressão linear
A estrutura de um modelo de regressão linear é extremamente simples: o modelo de mineração representa os dados como um único nó, que define a fórmula de regressão. Para obter mais informações, consulte Conteúdo do modelo de mineração para modelos de regressão logística (Analysis Services – Mineração de dados).
Exemplo de consulta 1: Usando o conjunto de linhas de esquema de mineração de dados para determinar parâmetros usados para um modelo
Ao consultar o conjunto de linhas do esquema de mineração de dados, você pode encontrar metadados sobre o modelo. Isso pode incluir quando o modelo foi criado, quando o modelo foi processado pela última vez, o nome da estrutura de mineração na qual o modelo se baseia e o nome da coluna designada como o atributo previsível. Você também pode retornar os parâmetros que foram usados quando o modelo foi criado.
SELECT MINING_PARAMETERS
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_PredictIncome'
Resultados do exemplo:
MINING_PARAMETERS |
---|
COMPLEXITY_PENALTY=0.9, MAXIMUM_INPUT_ATTRIBUTES = 255 MAXIMUM_OUTPUT_ATTRIBUTES=255, MINIMUM_SUPPORT = 10 SCORE_METHOD=4, SPLIT_METHOD=3, FORCE_REGRESSOR= |
Observação
A configuração de parâmetro "FORCE_REGRESSOR =
" indica que o valor atual do parâmetro FORCE_REGRESSOR é nulo.
Exemplo de consulta 2: Recuperando a fórmula de regressão do modelo
A consulta a seguir retorna o conteúdo do modelo de mineração de um modelo de regressão linear criado com o uso dos mesmos dados de Mala Direta utilizados no Basic Data Mining Tutorial. Este modelo prevê a renda do cliente com base na idade.
A consulta retorna o conteúdo do nó que contém a fórmula de regressão. Cada variável e coeficiente são armazenados em uma linha separada da tabela aninhada NODE_DISTRIBUTION. Para exibir a fórmula de regressão completa, use o Visualizador de Árvore da Microsoft, clique no nó (Tudo) e abra a Legenda de Mineração.
SELECT FLATTENED NODE_DISTRIBUTION as t
FROM LR_PredictIncome.CONTENT
Observação
Se você referenciar colunas individuais da tabela aninhada usando uma consulta como SELECT <column name> from NODE_DISTRIBUTION
, algumas colunas, como SUPPORT ou PROBABILITY, deverão ser colocadas entre colchetes para distingui-las das palavras-chave reservadas de mesmo nome.
Resultados esperados:
T.ATTRIBUTE_NAME | t.ATTRIBUTE_VALUE | t.SUPPORT | t.PROBABILITY | t.VARIANCE | t.VALUETYPE |
---|---|---|---|---|---|
Renda Anual | Ausente | 0 | 0.000457142857142857 | 0 | 1 |
Renda Anual | 57220.8876687257 | 17484 | 0.999542857142857 | 1041275619.52776 | 3 |
Idade | 471.687717702463 | 0 | 0 | 126.969442359327 | 7 |
Idade | 234.680904692439 | 0 | 0 | 0 | 8 |
Idade | 45.4269617936399 | 0 | 0 | 126.969442359327 | 9 |
35793.5477381267 | 0 | 0 | 1012968919.28372 | 11 |
Em comparação, na Legenda de Mineração, a fórmula de regressão aparece da seguinte forma:
Yearly Income = 57,220.919 + 471.688 * (Age - 45.427)
Você pode observar que, na Legenda de Mineração, alguns números são arredondados; no entanto, a tabela NODE_DISTRIBUTION e a Legenda de Mineração contêm basicamente os mesmos valores.
Os valores na coluna VALUETYPE informa que tipo de informações estão em cada linha, o que será útil se você estiver processando os resultados programaticamente. A tabela a seguir mostra os tipos de valores produzidos para uma fórmula de regressão linear.
VALUETYPE |
---|
1 (Ausente) |
3 (Contínuo) |
7 (Coeficiente) |
8 (Ganho de pontos) |
9 (Estatísticas) |
7 (Coeficiente) |
8 (Ganho de pontos) |
9 (Estatísticas) |
11 (Interceptação) |
Para obter mais informações sobre o significado de cada tipo de valor para modelos de regressão, consulte Conteúdo do modelo de mineração para modelos de regressão linear (Analysis Services – Data Mining).
Exemplo de consulta 3: Retornando apenas o coeficiente do modelo
Ao usar a enumeração VALUETYPE, você só pode retornar o coeficiente da equação de regressão, conforme mostrado na seguinte consulta:
SELECT FLATTENED MODEL_NAME,
(SELECT ATTRIBUTE_VALUE, VALUETYPE
FROM NODE_DISTRIBUTION
WHERE VALUETYPE = 11)
AS t
FROM LR_PredictIncome.CONTENT
Essa consulta retorna duas linhas, um a do conteúdo do modelo de mineração e a outra da tabela aninhada que contém o coeficiente. A coluna ATTRIBUTE_NAME não é incluída aqui porque sempre fica em branco para o coeficiente.
MODEL_NAME | t.ATTRIBUTE_VALUE | t.VALUETYPE |
---|---|---|
LR_PredictIncome | ||
LR_PredictIncome | 35793.5477381267 | 11 |
Fazendo previsões de um modelo de regressão linear
Você pode criar consultas de previsão em modelos de regressão linear usando a guia Previsão do Modelo de Mineração no Designer de Mineração de Dados. O construtor de consultas de previsão está disponível em SQL Server Management Studio e SQL Server Data Tools.
Observação
Você também pode criar consultas em modelos de regressão usando os Suplementos de Mineração de Dados do SQL Server 2005 (9.x) para Excel ou os Suplementos de Mineração de Dados do SQL Server 2008 para Excel. Embora os Suplementos de Mineração de Dados para Excel não criem modelos de regressão, você pode procurar e consultar qualquer modelo de mineração armazenado em uma instância de SQL Server Analysis Services.
Exemplo de consulta 4: Prevendo a renda com o uso de uma consulta singleton
A maneira mais fácil de criar uma consulta single em um modelo de regressão é usando a caixa de diálogo Entrada de Consulta Singleton . Por exemplo, você pode criar a consulta DMX a seguir selecionando o modelo de regressão apropriado, escolhendo Consulta Singletone depois digitando 20 como o valor de Idade.
SELECT [LR_PredictIncome].[Yearly Income]
From [LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Resultados do exemplo:
Renda Anual |
---|
45227.302092176 |
Exemplo de consulta 5: Usando funções de previsão com um modelo de regressão
Você pode usar muitas das funções de previsão padrão com modelos de regressão linear. O exemplo a seguir demonstra como adicionar algumas estatísticas descritivas aos resultados da consulta de previsão. Com base nesses resultados, você pode observar que há um desvio considerável da média para este modelo.
SELECT
([LR_PredictIncome].[Yearly Income]) as [PredIncome],
(PredictStdev([LR_PredictIncome].[Yearly Income])) as [StDev1]
From
[LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Resultados do exemplo:
Renda Anual | StDev1 |
---|---|
45227.302092176 | 31827.1726561396 |
Lista de funções de previsão
Todos os algoritmos da Microsoft dão suporte a um conjunto comum de funções. No entanto, o algoritmo regressão linear da Microsoft dá suporte às funções adicionais listadas na tabela a seguir.
Função de previsão | Uso |
---|---|
IsDescendant (DMX) | Determina se um nó é um filho de outro nó no modelo. |
IsInNode (DMX) | Indica se o nó especificado contém o caso atual. |
PredictHistogram (DMX) | Retorna um valor previsto ou conjunto de valores de uma coluna especificada. |
PredictNodeId (DMX) | Retorna Node_ID para cada caso. |
PredictStdev (DMX) | Retorna o desvio padrão previsto para o valor previsto. |
PredictSupport (DMX) | Retorna o valor de suporte para um estado especificado. |
PredictVariance (DMX) | Retorna a variação de uma coluna especificada. |
Para obter uma lista das funções comuns a todos os algoritmos da Microsoft, consulte Algoritmos de mineração de dados (Analysis Services – Mineração de Dados). Para obter mais informações sobre como usar essas funções, consulte Referência de função DMX (Extensões de Mineração de Dados).
Consulte Também
Algoritmo Regressão Linear da Microsoft
Consultas de mineração de dados
Referência Técnica do Algoritmo de Regressão Linear da Microsoft
Conteúdo do modelo de mineração para modelos de regressão linear (Analysis Services – Mineração de Dados)