Estou usando regressão logística para prever a probabilidade de ocorrência de um evento. Por fim, essas probabilidades são colocadas em um ambiente de produção, onde nos concentramos o máximo possível em atingir nossas previsões de "sim". Portanto, é útil ter uma idéia do que "hits" ou "não hits" definitivos podem ser a priori (antes da execução na produção), além de outras medidas que usamos para informar essa determinação.
Minha pergunta é: qual seria a maneira correta de prever uma classe definitiva (1,0) com base na probabilidade prevista? Especificamente, eu uso o glmnet
pacote de R para minha modelagem. Este pacote escolhe arbitrariamente a probabilidade 0,5 como limite para um sim ou não. Acredito que preciso levar os resultados de uma regra de pontuação adequada, com base nas probabilidades previstas, para extrapolar para uma classe definitiva. Um exemplo do meu processo de modelagem está abaixo:
mods <- c('glmnet', 'scoring')
lapply(mods, require, character.only = T)
# run cross-validated LASSO regression
fit <- cv.glmnet(x = df1[, c(2:100)]), y = df1[, 1], family = 'binomial',
type.measure = 'auc')
# generate predicted probabilities across new data
df2$prob <- predict(fit, type="response", newx = df2[, c(2:100)], s = 'lambda.min')
# calculate Brier score for each record
df2$propscore <- brierscore(df2[,1] ~ df2$prob, data = df2)
Portanto, agora tenho uma série de pontuações de Brier para cada previsão, mas como utilizo a pontuação de Brier para ponderar adequadamente cada probabilidade de sim ou não?
Entendo que também existem outros métodos para fazer essa determinação, como a Random Forest.
fonte