Partilhar via


Referência técnica do algoritmo Regressão Logística da Microsoft

O algoritmo Regressão Logística da Microsoft é uma variação do algoritmo rede neural da Microsoft, em que o parâmetro HIDDEN_NODE_RATIO é definido como 0. Essa configuração criará um modelo de rede neural que não contém uma camada oculta e, portanto, é equivalente à regressão logística.

Implementação do algoritmo Regressão Logística da Microsoft

Suponha que a coluna previsível contenha apenas dois estados, mas você deseja executar uma análise de regressão, relacionando as colunas de entrada com a probabilidade de que a coluna previsível contenha um estado específico. O diagrama a seguir ilustra os resultados que você obterá se atribuir 1 e 0 aos estados da coluna previsível, calcular a probabilidade de que a coluna previsível contenha um estado específico e executar uma regressão linear em uma variável de entrada.

Dados mal modelados usando regressão linear

O eixo x contém os valores de uma coluna de entrada. O eixo y contém as probabilidades de que a coluna previsível tenha um estado ou outro. O problema disso é que a regressão linear não restringe a coluna para que fique entre 0 e 1, embora esses sejam os valores máximo e mínimo da coluna. Uma maneira de resolver isso é executar regressão logística. Em vez de criar uma linha reta, a análise de regressão logística cria uma curva em forma de "S" que contém as restrições máxima e mínima. Por exemplo, o diagrama a seguir ilustra os resultados que você obterá se executar uma regressão logística nos mesmos dados usados no exemplo anterior.

Dados modelados usando regressão logística

Observe como a curva nunca atinge mais do que 1 ou menos que 0. Você pode usar a regressão logística para descrever quais colunas de entrada são importantes para determinar o estado da coluna previsível.

Seleção de recursos

A seleção de recursos é usada automaticamente por todos os algoritmos de mineração de dados do Analysis Services para melhorar a análise e reduzir a carga de processamento. O método usado para seleção de recursos em um modelo de regressão logística depende do tipo de dados do atributo. Como a regressão logística se baseia no algoritmo Rede Neural da Microsoft, ela usa um subconjunto dos métodos de seleção de recursos que se aplicam às redes neurais. Para obter mais informações, consulte Seleção de recursos (mineração de dados).

Entradas de pontuação

Pontuação no contexto de um modelo de rede neural ou de regressão logística significa o processo de converter os valores presentes nos dados em um conjunto de valores que usam a mesma escala e, portanto, podem ser comparados. Por exemplo, vamos supor que as entradas do intervalo de Renda vão de 0 a 100.000, enquanto as entradas de [Número de Filhos] vão de 0 a 5. Esse processo de conversão permite pontuar ou comparar a importância de cada entrada, independentemente da diferença de valores.

Para cada estado que aparece no conjunto de treinamento, o modelo gera uma entrada. Para entradas discretas ou diferenciadas, uma entrada adicional será criada para representar o estado Ausente, se o estado ausente aparecer pelo menos uma vez no conjunto de treinamento. Para entradas contínuas, no máximo dois nós de entrada são criados: um para valores Ausentes, se presentes nos Dados de Treinamento e uma entrada para todos os valores existentes ou não nulos. Cada entrada é dimensionada para um formato numérico usando o método de normalização de pontuação z, (x - μ)/StdDev.

Durante a normalização da pontuação z, a média (µ) e o desvio padrão são obtidos sobre o conjunto de treinamento completo.

Valores contínuos

O valor está presente: (X - μ)/σ // X é o valor real que está sendo codificado)

O valor está ausente: - μ/σ // mu negativo dividido por sigma)

Valores discretos

μ = p - (a probabilidade anterior de um estado)

StdDev = sqrt(p(1-p))

O valor está presente: (1 - μ)/σ// (Um menos mu) dividido por sigma)

O valor está ausente: (- μ)/σ// mu negativo dividido por sigma)

Entendendo coeficientes de regressão logística

Há vários métodos na literatura estatística para execução de regressão logística, mas uma parte importante de todos os métodos é avaliar a adequação do modelo. Várias estatísticas de adequação do ajuste foram propostas, dentre elas taxas de possibilidades e padrões de covariável. Uma análise de como medir a adequação de um modelo está além do escopo deste tópico; no entanto, você pode recuperar o valor dos coeficientes no modelo e usá-los para projetar suas próprias medidas de ajuste.

Observação

Os coeficientes criados como parte de um modelo de regressão logística não representam taxas de possibilidades e não devem ser interpretados como tal.

Os coeficientes para cada nó no gráfico do modelo representam uma soma ponderada das entradas do nó. Em um modelo de regressão logística, a camada oculta está vazia; portanto, há apenas um conjunto de coeficientes, que é armazenado nos nós de saída. Você pode recuperar os valores dos coeficientes usando a seguinte consulta:

SELECT FLATTENED [NODE_UNIQUE NAME],
(SELECT ATTRIBUTE_NAME< ATTRIBUTE_VALUE
FROM NODE_DISTRIBUTION) AS t
FROM <model name>.CONTENT
WHERE NODE_TYPE = 23

Para cada valor de saída, essa consulta retorna os coeficientes e uma ID que aponta para o nó de entrada relacionado. Também retorna uma linha que contém o valor da saída e da interseção. Cada entrada X tem seu próprio coeficiente (Ci), mas a tabela aninhada também contém um coeficiente "livre" (Co), calculado de acordo com a seguinte fórmula:

F(X) = X1*C1 + X2*C2 + ... +Xn*Cn + X0

Ativação: exp(F (X)) / (1 + exp(F (X)) )

Para obter mais informações, consulte Exemplos de consulta de modelo de regressão logística.

Personalizando o algoritmo de regressão logística

O algoritmo de regressão logística da Microsoft dá suporte a vários parâmetros que afetam o comportamento, o desempenho e a precisão do modelo de mineração resultante. Você também pode modificar o comportamento do modelo definindo sinalizadores de modelagem nas colunas usadas como entrada.

Definindo parâmetros de algoritmo

A tabela a seguir descreve os parâmetros que podem ser usados com o algoritmo Regressão Logística da Microsoft.

HOLDOUT_PERCENTAGE Especifica o percentual de casos nos dados de treinamento usados para calcular o erro de retenção. HOLDOUT_PERCENTAGE é usado como parte dos critérios de interrupção durante o treinando do modelo de mineração.

O padrão é 30.

HOLDOUT_SEED Especifica um número a ser usado para propagar o gerador pseudo-aleatório ao determinar aleatoriamente os dados de controle. Se HOLDOUT_SEED for definido como 0, o algoritmo gerará a semente com base no nome do modelo de mineração, para garantir que o conteúdo do modelo permaneça o mesmo durante um novo processamento.

O padrão é 0.

MAXIMUM_INPUT_ATTRIBUTES Define o número de atributos de entrada que o algoritmo pode manipular antes de invocar a seleção de recursos. Defina este valor como 0 para desativar a seleção de recursos.

O padrão é 255.

MAXIMUM_OUTPUT_ATTRIBUTES Define o número de atributos de saída que o algoritmo pode manipular antes de invocar a seleção de recursos. Defina este valor como 0 para desativar a seleção de recursos.

O padrão é 255.

MAXIMUM_STATES Especifica o número máximo de estados de atributo aos quais o algoritmo dá suporte. Se o número de estados que um atributo tiver for maior que o número máximo de estados, o algoritmo usará os estados mais populares do atributo e ignorará os demais estados.

O padrão é 100.

SAMPLE_SIZE Especifica o número de casos a serem usados para treinar o modelo. O provedor de algoritmo usa esse número ou a porcentagem do total de casos não incluídos na porcentagem de controle conforme especificado pelo parâmetro HOLDOUT_PERCENTAGE, o que tiver menor valor.

Em outras palavras, se HOLDOUT_PERCENTAGE for definido como 30, o algoritmo usará o valor desse parâmetro ou um valor igual a 70 por cento do número total de casos, o que for menor.

O padrão é 10000.

Sinalizadores de modelagem

Os sinalizadores de modelagem a seguir têm suporte para uso com o algoritmo Regressão Logística da Microsoft.

NOT NULL Indica que a coluna não pode conter um nulo. Um erro ocorrerá se o Analysis Services encontrar um valor nulo durante o treinamento do modelo.

Aplica-se às colunas de estrutura de mineração.

MODEL_EXISTENCE_ONLY Significa que a coluna será tratada como tendo dois estados possíveis: Missing e Existing. Nulo é um valor ausente.

Aplica-se à coluna de modelo de mineração.

Requisitos

Um modelo de regressão logística deve conter uma coluna de chave, colunas de entrada e pelo menos uma coluna previsível.

Colunas de entrada e colunas previsíveis

O algoritmo Regressão Logística da Microsoft dá suporte aos tipos de conteúdo de coluna de entrada específicos, tipos de conteúdo de coluna previsíveis e sinalizadores de modelagem listados na tabela a seguir. Para obter mais informações sobre o que os tipos de conteúdo significam quando usados em um modelo de mineração, consulte Tipos de conteúdo (mineração de dados).

Coluna Tipos de conteúdo
Atributo de entrada Contínuo, discreto, diferenciado, chave, tabela
Atributo previsível Contínuo, discreto, diferenciado

Consulte Também

Microsoft Logistic Regression AlgorithmLinear Regression Model Query ExamplesMining Model Content for Logistic Regression Models (Analysis Services – Data Mining)Microsoft Neural Network Algorithm