Tutta la letteratura sul modello di distribuzione delle specie suggerisce che quando si prevede la presenza / assenza di una specie usando un modello che genera probabilità (ad esempio, RandomForests), la scelta della soglia di probabilità in base alla quale classificare effettivamente una specie come presenza o assenza è importante e si dovrebbe non sempre fare affidamento sul valore predefinito 0,5. Ho bisogno di aiuto con questo! Ecco il mio codice:
library(randomForest)
library(PresenceAbsence)
#build model
RFfit <- randomForest(Y ~ x1 + x2 + x3 + x4 + x5, data=mydata, mytry = 2, ntrees=500)
#eventually I will apply this to (predict for) new data but for first I predict back to training data to compare observed vs. predicted
RFpred <- predict(RFfit, mydata, type = "prob")
#put the observed vs. predicted in the same dataframe
ObsPred <- data.frame(cbind(mydata), Predicted=RFpred)
#create auc.roc plot
auc.roc.plot(ObsPred, threshold = 10, xlab="1-Specificity (false positives)",
ylab="Sensitivity (true positives)", main="ROC plot", color=TRUE,
find.auc=TRUE, opt.thresholds=TRUE, opt.methods=9)
Da ciò ho determinato che la soglia che vorrei utilizzare per classificare la presenza dalle probabilità previste è 0,7, non il valore predefinito 0,5. Non capisco perfettamente cosa fare con queste informazioni. Uso semplicemente questa soglia quando creo una mappa del mio output? Potrei facilmente creare un output mappato con probabilità continue, quindi riclassificare semplicemente quelli con valori maggiori di 0,7 come presenti e quelli <0,7 come assenti.
Oppure, voglio prendere queste informazioni e rieseguire la mia modellazione randomForests, usando il parametro cut-off? Cosa sta facendo esattamente il parametro cut-off? Cambia il voto risultante? (attualmente dice che è "maggioranza"). Come posso usare questo parametro di cut-off? Non capisco la documentazione! Grazie!