This package should only report, by default, generic metrics
> This issue was opened from the discussion on #38. In order to make bob more useful for other tasks unrelated to biometrics, it would be beneficial to address this issue. To reply correctly, I need to know if there are any practical differences between FAR and FMR, and FRR and FNMR. If there aren't, I would report, on a given threshold: * FPR -> `False Positive Rate` (spell it out so there are no confusions) * FNR -> `False Negative Rate` * Precision * Recall * F1-Score And that is it An option could allow you, for example, to replace the values above by something more digestible for biometrics, say `--biometrics` and then the program prints: * False Acceptance Rate * False Rejection Rate * Half-Total Error Rate The thresholding should also be configurable if that is not already the case: it should be possible to say "report me all values when FPR is set to 10%" or "report me all values when FAR is set to 0.01%" or "report me all values at the Equal-Error Rate": * `bob measure metrics dev-1.txt` (as per above, use Equal-Error Rate to calculate the threshold, that should be also reported) * `bob measure metrics --biometrics dev-1.txt` (as per above) * `bob measure metrics --far=0.0001 --biometrics dev-1.txt` (reports values for an FAR of 0.0001 (0.01%), no minimisation takes place) * `bob measure metrics --criterion=minhter dev-1.txt` (reports values using FPR/FNR terminology with threshold calculated by minimizing the HTER on the set) For obvious reasons, options such as `--criterion` and `--far` should be mutually exclusive. As it is currently coded, it is confusing that you should pass `--criterion=far --far-value=0.0001`. It would be easier to say `--far=0.0001` and that is it. If the user passes both, then an error is raised. It is important that this program is very clear about metrics being used, so I would avoid any acronyms during the error reporting. It is OK to have acronyms on the option names, but documentation should be explicit. Does that sound reasonable?
issue