Share via


Consultando um modelo de regressão logística (Analysis Services – Mineração de Dados)

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 com os novos dados.

Esta seção explica como criar consultas para modelos baseados no algoritmo Regressão Logística da Microsoft.

Consultas de conteúdo

Recuperando parâmetros do modelo usando o conjunto de linhas do esquema de mineração de dados

Localizando detalhes adicionais sobre o modelo usando DMX

Consultas de previsão

Fazendo previsões para um valor contínuo

Fazendo previsões para um valor discreto

Localizando informações sobre o modelo de regressão logística

Os modelos de regressão logística são criados com o uso do algoritmo Rede Neural da Microsoft com um conjunto especial de parâmetros; portanto, um modelo de regressão logística tem algumas das mesmas informações que um modelo de redes neurais, só que é mais complexo. Para entender a estrutura do conteúdo do modelo e que tipos de nós armazenam que tipos de informações, consulte Conteúdo do modelo de mineração para modelos de regressão logística (Analysis Services – Mineração de Dados).

Para acompanhar os cenários de consulta, você pode criar um modelo de regressão logística conforme descrito nesta seção do Tutorial de mineração de dados intermediário: Lição 5: Criando modelos de rede neural e de regressão logística (Tutorial de mineração de dados intermediário).

Também é possível usar a estrutura de mineração, Targeted Mailing, do Tutorial de mineração de dados básico. Em seguida, adicione um modelo de regressão logística ao executar o seguinte script DMX:

ALTER MINING STRUCTURE [Targeted Mailing]
ADD MINING MODEL [TM_Logistic Regression]
([Customer Key],
[Age],
[Bike Buyer] PREDICT,
[Yearly Income] PREDICT,
[Commute Distance],
[English Education],
Gender,
[House Owner Flag],
[Marital Status],
[Number Cars Owned],
[Number Children At Home],
[Region],
[Total Children]
)
USING Microsoft_Logistic_Regression

Exemplo de consulta 1: Recuperando parâmetros do modelo usando o conjunto de linhas do esquema de mineração de dados

Ao consultar o conjunto de linhas do esquema de mineração de dados, você encontra metadados sobre o modelo, como quando ele foi criado, a última vez em que foi processado, o nome da estrutura de mineração na qual o modelo é baseado e o nome da coluna usada como atributo previsível. O exemplo a seguir retorna os parâmetros usados quando o modelo foi criado, junto com o nome e o tipo de modelo, além da data de criação.

SELECT MODEL_NAME, SERVICE_NAME, DATE_CREATED, MINING_PARAMETERS 
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'Call Center_LR'

Resultados do exemplo:

MODEL_NAME

SERVICE_NAME

DATE_CREATED

MINING_PARAMETERS

Call Center_LR

Microsoft_Logistic_Regression

04/07/2009 20:38:33

HOLDOUT_PERCENTAGE=30, HOLDOUT_SEED=1, MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MAXIMUM_STATES=100, SAMPLE_SIZE=10000

Voltar ao início

Exemplo de consulta 2: Localizando detalhes adicionais sobre o modelo usando DMX

A consulta a seguir retorna algumas informações básicas sobre o modelo de regressão logística. Um modelo de regressão logística é semelhante a um modelo de rede neural em muitos aspectos, inclusive a presença de um nó de estatísticas marginais (NODE_TYPE = 24) que descreve os valores usados como entradas. Esta consulta de exemplo usa o modelo Endereçamento de Destino e obtém os valores de todas as entradas possíveis ao recuperá-las da tabela aninhada, NODE_DISTRIBUTION.

SELECT FLATTENED NODE_DISTRIBUTION AS t
FROM [TM_Logistic Regression].CONTENT 

Resultados parciais:

t.ATTRIBUTE_NAME

t.ATTRIBUTE_VALUE

t.SUPPORT

t.PROBABILITY

t.VARIANCE

t.VALUETYPE

Age

Ausente

0

0

0

1

Idade

45.43491192

17484

1

126.9544114

3

Comprador de Bicicleta

Ausente

0

0

0

1

Bike Buyer

0

8869

0.507263784

0

4

Bike Buyer

1

8615

0.492736216

0

4

Distância do Trabalho

Ausente

0

0

0

1

Distância do Trabalho

8-16 quilômetros

3033

0.173472889

0

4

A consulta real retorna muito mais linhas; no entanto, este exemplo demonstra o tipo de informações fornecidas sobre as entradas. Por exemplo, cada valor possível para um valor discreto é listado na tabela, enquanto as entradas contínuas são diferenciadas. Para obter mais informações sobre como usar as informações no nó de estatísticas marginais, consulte Conteúdo do modelo de mineração para modelos de regressão logística (Analysis Services – Mineração de Dados).

ObservaçãoObservação

Os resultados foram simplificados para facilitar a visualização, mas você poderá retornar a tabela aninhada para uma única coluna se seu provedor oferecer suporte a conjuntos de linhas hierárquicos. Para obter mais informações, consulte Conjuntos de Linhas Hierárquicos (em inglês) no Guia do Programador OLE DB.

Voltar ao início

Fazendo previsões com um modelo de regressão logística

Você pode usar a função Predict (DMX) com todos os tipos de modelos de mineração para fornecer dados novos e fazer previsões. Também é possível usar funções para retornar mais informações sobre a previsão, como a probabilidade de uma previsão estar correta. Esta seção fornece alguns exemplos de consultas de previsão em um modelo de regressão logística.

Exemplo de consulta 3: Fazendo previsões para um valor contínuo

Como a regressão logística dá suporte ao uso de atributos contínuos para entrada e previsão, é fácil criar modelos que correlacionam vários fatores nos seus dados. Você pode usar consultas de previsão para explorar a relação entre esses fatores.

O exemplo de consulta a seguir é baseado no modelo de Call Center e cria uma consulta singleton que prevê o nível de serviço do turno matutino da sexta-feira. A função PredictHistogram (DMX) retorna uma tabela aninhada que fornece estatísticas relevantes para a compreensão da validade do valor previsto.

SELECT
  Predict([Call Center_LR].[Service Grade]) as Predicted ServiceGrade,
  PredictHistogram([Call Center_LR].[Service Grade]) as [Results],
FROM
  [Call Center_LR]
NATURAL PREDICTION JOIN
(SELECT 'Friday' AS [Day Of Week],
  'AM' AS [Shift]) AS t

Resultados do exemplo:

Nível de serviço previsto

Resultados

0.102601830123659

Service Grade$SUPPORT$PROBABILITY$ADJUSTEDPROBABILITY$VARIANCE$STDEV
0.10260183012365983.02325581395350.98837209302325600.001205526606000870.034720694203902
0.9767441860465120.01162790697674420.011627906976744200

Para obter mais informações sobre a probabilidade, o suporte e os valores de desvio padrão na tabela NODE_DISTRIBUTION aninhada, consulte Conteúdo do modelo de mineração para modelos de regressão logística (Analysis Services – Mineração de Dados).

Voltar ao início

Exemplo de consulta 4: Fazendo previsões para um valor discreto

A regressão logística é normalmente usada nos cenários em que você deseja analisar os fatores que contribuem para um resultado binário. Embora o modelo original usado no tutorial intermediário preveja um valor contínuo, Nível de Serviço, em um cenário real, talvez você deseje prever se o nível de serviço atende a algum valor de destino discreto. Como alternativa, você pode produzir as previsões usando valores contínuos e depois agrupar os resultados previstos como Bom, Razoável ou Fraco.

O exemplo a seguir ilustra como alterar a forma como o atributo previsível é agrupado. Para fazer isso, crie uma cópia da estrutura de mineração e altere o método de discretização da coluna de destino. O procedimento a seguir descreve como alterar o agrupamento de valores de Service Grade nos dados do Call Center.

Para criar uma versão de dados discretos da estrutura e dos modelos de mineração do Call Center

  1. No Business Intelligence Development Studio, em Gerenciador de Soluções, expanda Estruturas de Mineração.

  2. Clique com o botão direito do mouse em Call Center.dmm e selecione Copiar.

  3. Clique com o botão direito em Estruturas de Mineração e selecione Pasta. Uma nova estrutura de mineração, chamada Call Center 1, é adicionada.

  4. Clique com o botão direito do mouse na nova estrutura de mineração e selecione Renomear. Digite o novo nome, Dados Discretos do Call Center.

  5. Clique duas vezes na nova estrutura de mineração para abri-la no designer. Repare que os modelos de mineração também foram todos copiados, e todos têm a extensão 1. Por enquanto, deixe os nomes como estão.

  6. Na guia Estrutura de Mineração, clique com o botão direito do mouse na coluna Service Grade e selecione Propriedades.

  7. Altere a propriedade Content de Contínua para Dados Discretos. Altere a propriedade DiscretizationMethod para Clusters. Para DiscretizationBucketCount, digite 3.

    ObservaçãoObservação

    Esses parâmetros são usados somente para ilustrar o processo, e não necessariamente geram um modelo válido.

  8. No menu Modelo de Mineração, selecione Processar estrutura de mineração e todos os Modelos.

A consulta de exemplo a seguir se baseia nesse modelo de dados discretos e prevê o nível de serviço para o dia da semana especificado, bem como as probabilidades de cada resultado previsto.

SELECT
  (PredictHistogram([Call Center_LR 1].[Service Grade])) as [Predictions]
FROM
  [Call Center_LR 1]
NATURAL PREDICTION JOIN
(SELECT 'Saturday' AS [Day Of Week]) AS t  

Resultados esperados:

Previsões

Nível de serviço$SUPPORT$PROBABILITY$ADJUSTEDPROBABILITY$VARIANCE$STDEV
0.1087271838312535.72465047706410.4252934580602870.017016836003029300
0.0585576923062531.70988808007030.3774986676198850.02088202006045400
0.17016949152515.61091598832020.1858442379561920.066138657138604900
0.9545454545454550.01136363636363640.011363636363636400

Observe que os resultados previstos foram agrupados em três categorias conforme especificado; entretanto, esses agrupamentos se baseiam no clustering dos valores reais dos dados, não dos valores arbitrários que você possa definir como metas de negócios.

Voltar ao início

Lista de funções de previsão

Todos os algoritmos da Microsoft oferecem suporte a um conjunto comum de funções. Entretanto, o algoritmo Regressão Logística da Microsoft oferece suporte às funções adicionais relacionadas na tabela a seguir.

Para obter uma lista das funções comuns a todos os algoritmos Microsoft, consulte Mapeando funções para tipos de consulta (DMX). Para obter a sintaxe de funções específicas, consulte Referência de função de DMX (Data Mining Extensions).

ObservaçãoObservação

Para modelos de rede neural e regressão logística, a função PredictSupport (DMX) retorna um único valor que representa o tamanho do conjunto de treinamento de todo o modelo.