J'utilise la régression logistique pour prédire la probabilité qu'un événement se produise. En fin de compte, ces probabilités sont placées dans un environnement de production, où nous nous concentrons autant que possible sur nos prévisions de «oui». Il est donc utile pour nous d'avoir une idée de ce que les "hits" ou "non-hits" définitifs pourraient être a priori (avant la mise en production), en plus des autres mesures que nous utilisons pour éclairer cette détermination.
Ma question est, quelle serait la bonne façon de prédire une classe définitive (1,0) basée sur la probabilité prédite? Plus précisément, j'utilise le glmnet
package de R pour ma modélisation. Ce package choisit arbitrairement une probabilité de 0,5 comme seuil pour un oui ou un non. Je crois que je dois prendre les résultats d'une règle de notation appropriée, basée sur les probabilités prédites, pour extrapoler à une classe définitive. Un exemple de mon processus de modélisation est ci-dessous:
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)
J'ai donc maintenant une série de scores Brier pour chaque prédiction, mais comment puis-je utiliser le score Brier pour pondérer de manière appropriée chaque probabilité d'être oui ou non?
Je comprends qu'il existe également d'autres méthodes pour prendre cette décision, comme Random Forest.
la source