Closed riebling closed 6 years ago
wait wait, it's making slightly more sense now. (the lack of examples and incomplete usage statements had me playing guessing names with case and concatenating _sad arbitrarily). The <<optionalSAD>>
is crucial: this New Concept uses different tool names, am I right? OptionalSAD takes tool names with capitalizations in them? maybe? Or tool names with _sad in them? Oh heck, back to being confused again.
Ok fixed the bug! In create_ref_sys.sh
it was creating reference files with .rttm.lab
filenames. These were breaking the evaluation later on. The resulting behavior was that the code that tests for existence of ref and sys .lab files was not finding them (names were wrong) and ALWAYS outputting scores of "75.00% 0.00% 100.00%" rather than running score.py
My bad. I should have been more careful about the .lab files. I wrote this script to refactor the code that was common between evalDiar.sh and evalSAD.sh Now that you fixed that, I think the error messages should be clear enough and everything should work well.
The non-clarity comes from the model naming convention which is not consistent with itself + not consistent with the output rttm files. We need to improve that. :/
In testing the test (more!) I came across this situation: I run eval.sh to get the usage, showing:
But then when I actually run it, and somewhere I didn't notice the output(?) it seems that an enclosed script
create_ref_sys.sh
is necessary to create reference .lab files for the scoring tool(s) to use. But it (internally, and does not list names via it's usage, just talks about "model prefix" which confuses me) is looking for different names:Now that I re-read the usage for
eval.sh
I'm not sure the usage "If evaluating diartk, please give which flavour of SAD you used to produce the diartk transcription you want to evaluate" - where and how should a person do this, maybe by example?" is asking me to do. Do I create a compound name likediartk_noisemes
maybe? Or maybe this is where "system name" comes into play, with names like "diartk_noisemesSad", "diartk_tocomboSad", "diartk_opensmile_Sad" etc. as specified farther down insidecreate_ref_sys.sh
andevalDiar.sh
andevalSAD.sh
So two points, really: the usage is confusing, and in the case of eval.sh when I give it
noisemes
, it fails to produce reference transcriptions because it wantsnoisemes_sad
AHA, it's starting to make more sense: inside of
evalSAD.sh
it maps it's arguments such asldc_sad
,noisemes
,tocombo_sad
,opensmile
,lena_sad
into the variablesys_name. This is an intermediate system name understood by create_ref_sys.sh, but lost in translation, because create_ref_sys.sh wants system names to have capitalization, as in the error message above
ldcSad`, etc. The changing of case names makes this really confusing (and in fact broken, I think?)