In Python, scikit-learn sets discrimination threshold to 0.5. I am wondering what the default is 0.5? When should we change this default number in what kind of situations?
Could someone give me examples?
Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. It only takes a minute to sign up.
Sign up to join this communityThe discrimination threshold of 0.5 for binary classifier implies the assumption that both decisions are equally relevant. We should change it if one of both decisions has high costs.
Simple example: Screening for terrible disease
Assume you have a classifier which yields a probability for a patient based on some measurements (input features). Normally you would say that, if the probability p(+) is higher or equal to 0.5 it is more likely that the patient is positive than negative. Whereas if it is lower than 0.5, you would say that the patient most probability is not positive.
But now we assume that the cost are very high, if the patient is truly infected. Therefore we might want to look more closely at the patient if the resulting prediction is more than 0.3.
Therefore we might set the discrimination threshold to 0.3 effectively saying that a patient is positive if p(+) >= 0.3.