Support for multi-label classification
This MR brings back support for multi-label and multi-class training, prediction and evaluation.
The patch should work for both classification and semantic segmentation tasks, however the later remains untested.
Multi-label classification is supported out-of-the-box using any of the deep network models (alexnet
, densenet
, or pasa
) and datamodule nih-cxr14
(use nih-cxr14-100
for a smaller, locally testable example).
This MR also introduces a rather major simplification on the sample definition, converting it to a simple dictionary, instead of a tuple of dictionaries. This architecture allows for a more seemless integration between classification and semantic segmentation. It allowed the suppression of various duplicated pieces of code.
Documentation and tests were updated accordingly.
This MR also advances changes required for issues #68 (closed) and #30.