मैं इस एक से संबंधित एक प्रश्न पूछूंगा ।
मुझे यहाँ xgboost के लिए कस्टम लॉस फंक्शन लिखने का एक उदाहरण मिला :
loglossobj <- function(preds, dtrain) {
# dtrain is the internal format of the training data
# We extract the labels from the training data
labels <- getinfo(dtrain, "label")
# We compute the 1st and 2nd gradient, as grad and hess
preds <- 1/(1 + exp(-preds))
grad <- preds - labels
hess <- preds * (1 - preds)
# Return the result as a list
return(list(grad = grad, hess = hess))
}
लॉजिस्टिक लॉस फंक्शन है
जहां लॉग-ऑड है और लेबल (0 या 1) है।
मेरा सवाल है: हम कैसे ग्रेडिएंट (पहली व्युत्पन्न) प्राप्त कर सकते हैं जो कि सच्चे मूल्यों और अनुमानित संभावनाओं के बीच अंतर के बराबर है (लॉग-ऑड्स से गणना की जाती है preds <- 1/(1 + exp(-preds))
)?