Curva ROC (Característica de Operação do Receptor)

Esta macro executa três funções como análise subsequente de uma regressão logística binária (BLR) para avaliar o desempenho do modelo:
  1. Gera uma tabela de classificação
  2. Gera uma curva ROC (Característica de Operação do Receptor)
  3. Considerando as probabilidades do evento, armazena uma probabilidade de evento para cada linha, não apenas a primeira instância de um conjunto único de valores da preditora

Download da macro

Certifique-se de que o Minitab sabe onde encontrar a macro baixada. Selecione Ferramentas > Opções > Geral. Em Local da macro navegue até o local em que você salva os arquivos de macro.

Importante

Se você usar um navegador mais antigo, quando clicar no botão Download, o arquivo pode abrir no Quicktime, que compartilha a extensão de arquivo .mac com macros do Minitab. Para salvar a macro, clique com o botão direito do mouse no botão Download e selecione Salvar arquivo como.

Entradas obrigatórias

  • Uma variável de resposta binária no formato resposta/frequência
  • Uma ou mais colunas de dados de variáveis preditoras
  • Uma coluna de probabilidades de eventos calculada durante a análise de regressão logística binária já efetuada nos dados
Observação

Para armazenar as probabilidades de eventos de uma regressão logística binária, clique em Armazenamento na caixa de diálogo principal e selecione Probabilidade do evento.

Entradas opcionais

FREQ C
Use se você tiver especificado uma coluna de frequência quando executou a regressão logística binária. Por exemplo, se você tiver especificado C4 como a coluna de frequência, será preciso enviar FREQ C4.
REFEVENT "texto"
Use se você tiver especificado um evento de referência ao executar a regressão logística binária. Por exemplo, se a variável de resposta binária inclui os valores, "Aprovado" e "Reprovado" e você tiver definido o evento de referência como "Aprovado", será necessário enviar REFEVENT "Aprovado".
FITSTORE C
Use para especificar uma coluna para armazenar os valores ajustados, que são usados para gerar a tabela de classificação. Na regressão logística binária, um valor ajustado de uma observação é igual ao evento de referência, se aquela a probabilidade do evento da observação for maior que ou igual a 0,5.
ROCSTORE C C C
Use para armazenar os dados utilizados para gerar a curva ROC. Especifique três colunas: uma para armazenar os valores de p, e duas para armazenar os valores de sensibilidade e especificidade para cada valor de p. (Observe que a curva de ROC representa graficamente a sensibilidade versus 1 - especificidade).

Execução da macro

Suponha que os dados de resposta estejam na coluna C3, e as duas preditoras estejam em C1 e C2. As probabilidades dos eventos estão armazenadas em C5. Para executar esta macro, selecione Editar > Editor de linha de comando e digite:

%ROCBLR C3;
MODEL C1 C2;
EPRO C5.

Clique em Enviar Comandos.

Informações adicionais

Tabelas de Classificação e Curvas ROC

Uma medida da adequação de um modelo de regressão logística binária é sua capacidade de prever com exatidão uma resposta binária, dados os valores dos termos (preditoras) no modelo. Esta capacidade pode ser resumida em uma tabela de classificação que tabula o número de vezes que o modelo ajustado classifica a resposta corretamente, para cada um dos dois valores de resposta.

Para um exemplo, consulte o tópico Exemplo de regressão logística binária na Ajuda do Minitab. Este exemplo ajusta um modelo de regressão logística binária onde a resposta é PulsoRepouso (Alto ou Baixo) e as preditoras são Peso (uma variável contínua) e Tabagismo (uma variável categórica com dois valores, Sim ou Não).

No conjunto de dados, uma pessoa é considerada não fumante e pesa 175 libras. Para predizer se essa pessoa terá um pulso alto ou baixo em repouso, o peso da pessoa e se ela fuma ou não (1 se fuma, 0 se não fuma) são "inseridos" na equação de regressão produzida na análise. O resultado é uma probabilidade estimada de pulso baixo em repouso (uma vez que "Baixo" é o evento de referência neste exemplo):

Em outras palavras, dados os coeficientes estimados, o não-fumante com um peso de 175 libras tem uma chance estimada de 92% de ter um pulso baixo em repouso. Esta é a probabilidade do evento. Como essa probabilidade é muito alta, devemos classificar esta observação como "Baixa". Estamos tomando uma probabilidade estimada e classificando-a como uma de dois valores. Da mesma forma, o pulso real, observado em repouso, desta pessoa em particular, estava baixo. Por tanto, o modelo era exato na predição do pulso em repouso para este indivíduo.

Podemos fazer a mesma coisa para cada uma das observações no conjunto de dados, mas devemos, primeiro, decidir onde "cortar" a probabilidade do evento. O corte mais óbvio é 0,5. Podemos dizer, para cada observação no conjunto de dados, que se a probabilidade do evento for maior do que 0,5 iremos classificar o pulso em repouso como "Baixo" e se a probabilidade do evento for menor do que 0,5, classificaremos o pulso em repouso como "Alto".

Finalmente, podemos comparar o pulso em repouso predito com o pulso em repouso real e tabular esses resultados em uma tabela de classificação (não mostrada).

A tabela mostraria que havia 68 indivíduos cujo pulso em repouso estava baixo e a probabilidade do evento era maior do que 0,5; a classificação foi exata. Além disso, havia dois indivíduos cujo pulso em repouso estava baixo, mas a probabilidade do evento era menor do que 0,5; a classificação era inexata. Similarmente, havia dois indivíduos cujo pulso em repouso estava alto e o modelo classificou o pulso em repouso predito corretamente. Contudo, havia também 20 indivíduos cujo pulso em repouso estava alto, mas o modelo classificou incorretamente o pulso em repouso predito como baixo. Por tanto, você poderia concluir que o modelo se inclina para a predição do pulso em repouso como baixa.

Duas outras estatísticas que ajudam a resumir a exatidão do modelo são sensibilidade e especificidade. A sensibilidade mede quão bem o modelo prediz um pulso em repouso baixo, dado que o pulso em repouso real de um indivíduo é baixo. A especificidade mede quão bem o modelo prediz um pulso em repouso alto, dado que o pulso em repouso real de um indivíduo é alto. Para ambas as estatísticas, quanto maior o valor, melhor a habilidade do modelo para classificar observações.

Neste exemplo, sensitividade = 68 /70 ≅ 97% e especificidade = 2/22 ≅ 9%.

Contudo, as tabelas de classificação são muito dependentes da distribuição das observações na tabela de classificação e podem ser muito enganadoras. Uma discussão aprofundada e clara sobre os problemas inerentes às tabelas de classificação está incluída em Applied Logistic Regression, de Hosmer e Lemeshow.

Um meio melhor de avaliar a habilidade do modelo de regressão logística binária em classificar as observações com exatidão é uma curva característica de operação do receptor (ROC). Uma curva ROC é construída gerando-se diversas tabelas de classificação, para valores de corte que variam de 0 a 1 e calculando-se a sensibilidade e a especificidade de cada valor. A sensibilidade é traçada contra 1 - especificidade para construir uma curva ROC.

A área sob a curva ROC (AUC) é uma medida de discriminação; um modelo com uma área elevada sob a curva ROC sugere que o modelo é capaz de predizer com precisão o valor de uma resposta da observação.

Hosmer e Lemeshow fornecem regras gerais para se interpretar valores AUC. Parafrasear suas regras fornece as diretrizes gerais abaixo:

AUC = 0,5 Sem discriminação (ou seja, o mesmo que jogar uma moeda para o alto)
0,7 ≤ AUC < 0,8 Discriminação aceitável
0,8 ≤ AUC < 0,9 Discriminação excelente
AUC ≥ 0,9 Discriminação fora de série (mas, extremamente rara)

Como a AUC para este modelo é menor que 0,7, você poderia concluir que o modelo não fornece uma discriminação adequada.

Referências:

D.W. Hosmer and S. Lemeshow (2000). Applied Logistic Regression. 2nd ed. John Wiley & Sons, Inc. Pp. 156-164.

A. Agresti (2002). Categorical Data Analysis. 2nd ed. John Wiley & Sons, Inc. Pp.228-230.

Ao usar esse site, você concorda com a utilização de cookies para análises e conteúdo personalizado.  Leia nossa política