vocalpy / vak

A neural network framework for researchers studying acoustic communication
https://vak.readthedocs.io
BSD 3-Clause "New" or "Revised" License
78 stars 16 forks source link

ENH: `vak.predict` should record which input was used for each prediction #777

Open NickleDave opened 2 months ago

NickleDave commented 2 months ago

Currently vak.predict.frame_classification saves an output csv where we infer the annotated audio file from the name of the "frames path", the array file that contains the input frames to the model.

This has a couple of drawbacks:

So instead we should somehow track the exact frames path used for a prediction, and I think what would be extra nice here would be to save a new csv file that just adds columns to the splits_csv_path dataset, so that way we carry along any metadata we might have added as columsn in the splits_csv_path (e.g., species, animal ID, some other arbitrary group like "unit" or "song") that we can use for downstream analysis. We're most of the way to this already since we iterate over the "frames_path" column when we generate predictions.

Eventually we should do this for other predict functions as well, although not sure what it will look like there if we're not still using "frames_path"