0

I am doing multiclass classification for 3 labell with neural net. The model works fine but when I check precision/recall per label in validation set I can see that precision is a little bit too low to be acceptable for one label only.

I have introduced threshold only for this label, if score is below this threshold I classify with label 'other'.

E.g threshold 0.8 for label 'third_label'

1)
proba = [0.2, 0.1, 0.7]
predicted_label -> 'other'

2)
proba = [0.1, 0.1, 0.8]
predicted_label -> 'third_label'

3) 
proba = [0.4, 0.3, 0.3]
predicted_label -> 'first_label'

I have obtained acceptable threshold by try and error on validation dataset. Do I do something wrong, do I miss something?

jacekblaz
  • 31
  • 2
  • 1
    Don't use accuracy, precision, recall, sensitivity, specificity, or the F1 score. Every criticism at the following threads applies equally to all of these, and indeed to all evaluation metrics that rely on hard classifications: [Why is accuracy not the best measure for assessing classification models?](https://stats.stackexchange.com/q/312780/1352) [Is accuracy an improper scoring rule in a binary classification setting?](https://stats.stackexchange.com/q/359909/1352) [Classification probability threshold](https://stats.stackexchange.com/q/312119/1352) – Stephan Kolassa Jul 08 '21 at 15:39
  • 1
    Instead, use probabilistic classifications, and evaluate these using [proper scoring rules](https://stats.stackexchange.com/tags/scoring-rules/info). – Stephan Kolassa Jul 08 '21 at 15:39

0 Answers0