Skip to main content
added 95 characters in body
Source Link
Stephan Kolassa
  • 130.8k
  • 22
  • 264
  • 497

Accuracy is a highly problematic KPI, because it presupposes one very specific cost structure without making this explicit. This is most problematic for "unbalanced" data, but pertains also to "balanced" data. Why is accuracy not the best measure for assessing classification models?

Instead, I recommend you work with probabilistic classifications, and assess these using a proper scoring rule, such as the Brier or the log score.

Now, what you can do is to build your probabilistic classifier and assess its performance on test data, using a proper scoring rule. And of course you can plot the age variable of your test dataset against its Brier or log score contributions, and if you want to, analyze it using standard tools like regression. Since the predictive performance may depend on more factors than just age, it may make sense to run a multivariate model. And age may well have a nonlinear influence, so it might make sense to use a spline transform.

Each contribution to the Brier score is either $\hat{p}_i^2$ or $(1-\hat{p}_i)^2$, i.e., they are all bounded between zero and one, so it may make sense to do a beta regression. However, if you have lots of data, a straightforward OLS might be fine. The log score is unbounded below (and bounded above by zero), so an OLS would make sense.

You may need a lot of test data to actually detect a signal, simply because we can't observe the underlying true probability of being of the target class, only the final outcome.

Finally, yes, you could also use accuracy as a KPI: for each instance in the test sample, encode whether it was classified correctly or not, and then run a logistic regression on this outcome against age or any other variable. But per above, optimizing accuracy will mislead your original model in the first place, so I very much recommend not to do this.

Accuracy is a highly problematic KPI, because it presupposes one very specific cost structure without making this explicit. This is most problematic for "unbalanced" data, but pertains also to "balanced" data. Why is accuracy not the best measure for assessing classification models?

Instead, I recommend you work with probabilistic classifications, and assess these using a proper scoring rule, such as the Brier or the log score.

Now, what you can do is to build your probabilistic classifier and assess its performance on test data, using a proper scoring rule. And of course you can plot the age variable of your test dataset against its Brier or log score contributions, and if you want to, analyze it using standard tools like regression. Since the predictive performance may depend on more factors than just age, it may make sense to run a multivariate model.

Each contribution to the Brier score is either $\hat{p}_i^2$ or $(1-\hat{p}_i)^2$, i.e., they are all bounded between zero and one, so it may make sense to do a beta regression. However, if you have lots of data, a straightforward OLS might be fine. The log score is unbounded below (and bounded above by zero), so an OLS would make sense.

You may need a lot of test data to actually detect a signal, simply because we can't observe the underlying true probability of being of the target class, only the final outcome.

Finally, yes, you could also use accuracy as a KPI: for each instance in the test sample, encode whether it was classified correctly or not, and then run a logistic regression on this outcome against age or any other variable. But per above, optimizing accuracy will mislead your original model in the first place, so I very much recommend not to do this.

Accuracy is a highly problematic KPI, because it presupposes one very specific cost structure without making this explicit. This is most problematic for "unbalanced" data, but pertains also to "balanced" data. Why is accuracy not the best measure for assessing classification models?

Instead, I recommend you work with probabilistic classifications, and assess these using a proper scoring rule, such as the Brier or the log score.

Now, what you can do is to build your probabilistic classifier and assess its performance on test data, using a proper scoring rule. And of course you can plot the age variable of your test dataset against its Brier or log score contributions, and if you want to, analyze it using standard tools like regression. Since the predictive performance may depend on more factors than just age, it may make sense to run a multivariate model. And age may well have a nonlinear influence, so it might make sense to use a spline transform.

Each contribution to the Brier score is either $\hat{p}_i^2$ or $(1-\hat{p}_i)^2$, i.e., they are all bounded between zero and one, so it may make sense to do a beta regression. However, if you have lots of data, a straightforward OLS might be fine. The log score is unbounded below (and bounded above by zero), so an OLS would make sense.

You may need a lot of test data to actually detect a signal, simply because we can't observe the underlying true probability of being of the target class, only the final outcome.

Finally, yes, you could also use accuracy as a KPI: for each instance in the test sample, encode whether it was classified correctly or not, and then run a logistic regression on this outcome against age or any other variable. But per above, optimizing accuracy will mislead your original model in the first place, so I very much recommend not to do this.

Source Link
Stephan Kolassa
  • 130.8k
  • 22
  • 264
  • 497

Accuracy is a highly problematic KPI, because it presupposes one very specific cost structure without making this explicit. This is most problematic for "unbalanced" data, but pertains also to "balanced" data. Why is accuracy not the best measure for assessing classification models?

Instead, I recommend you work with probabilistic classifications, and assess these using a proper scoring rule, such as the Brier or the log score.

Now, what you can do is to build your probabilistic classifier and assess its performance on test data, using a proper scoring rule. And of course you can plot the age variable of your test dataset against its Brier or log score contributions, and if you want to, analyze it using standard tools like regression. Since the predictive performance may depend on more factors than just age, it may make sense to run a multivariate model.

Each contribution to the Brier score is either $\hat{p}_i^2$ or $(1-\hat{p}_i)^2$, i.e., they are all bounded between zero and one, so it may make sense to do a beta regression. However, if you have lots of data, a straightforward OLS might be fine. The log score is unbounded below (and bounded above by zero), so an OLS would make sense.

You may need a lot of test data to actually detect a signal, simply because we can't observe the underlying true probability of being of the target class, only the final outcome.

Finally, yes, you could also use accuracy as a KPI: for each instance in the test sample, encode whether it was classified correctly or not, and then run a logistic regression on this outcome against age or any other variable. But per above, optimizing accuracy will mislead your original model in the first place, so I very much recommend not to do this.