This minor release provides updates to example notebooks, interface naming updating for consistency, as well as added a "high level" interface for visual saliency map generation from black-box classifiers.
Documentation
- Add "SuperPixelSaliency" notebook to demonstrate use of arbitrary perturbation masks based on superpixels for saliency map generation.
- Add "VIAME_OcclusionSaliency" notebook demonstrating integration with VIAME toolkit based on saliency map generation for a fish classification task.
- Add "covid_classification" notebook demonstrating integration with MONAI based on saliency map generation for a COVID-19 X-ray classification task.
- Updated notebook demonstration for
SimilarityScoring
usage to better track the notebook structures across the repo. - Introduce class naming philosophy in the
CONTRIBUTING.md
file. - Updated notebooks to make use of
GenerateImageClassifierBlackboxSaliency
interface/implementations where appropriate. - Updated wording of the
SuperPixelSaliency.ipynb
notebook as to cover a use-case where theGenerateImageClassifierBlackboxSaliency
interface API is not appropriate, i.e. already have masks computed. - Added support for doc building on Windows by adding a platform check so that "make.bat" is called for and not "make html".
Interfaces
- Update
PerturbImage
to only output perturbation masks, dropping physical image perturbation output. Since this output generation was the same across all known implementations, that part has been split out into a utility function. - Added support for positive and negative saliency values as output by the saliency map generation interfaces.
- Updated
PerturbImage
interface to take in numpy.ndarray as the image data structure. - Added new, higher-level
GenerateImageClassifierBlackboxSaliency
interface for transforming an image and black-box classifier into visual saliency maps. - Renamed
ImageClassifierSaliencyMapGenerator
interface to beGenerateClassifierConfidenceSaliency
. - Renamed
ImageSimilaritySaliencyMapGenerator
interface to beGenerateDescriptorSimilaritySaliency
. - Renamed
ImageDetectionSaliencyMapGenerator
interface to beGenerateDetectorProposalSaliency
.
Implementations
- Add
RISEScoring
implementation, with the ability to also compute a de-biased form of RISE with an optional input parameter. - Add
RISEStack
implementation of theGenerateImageClassifierBlackboxSaliency
interface as a simple way to invoke the combination of RISE component algorithms. - Add
SlidingWindowStack
implementation of theGenerateImageClassifierBlackboxSaliency
interface as a simple way to invoke the combination of the Sliding Window perturbation method and the occlusion-based based scoring method.
Misc.
- Update locked dependency versions to latest defined by abstract requirements.
Utils
- Masking
- Added utility functions for occluded image generation that was previously duplicated across
PerturbImage
implementations. Added both batch and streaming versions of this utility.
- Added utility functions for occluded image generation that was previously duplicated across
Documentation
- Fixed misspelled "miscellaneous" file.
Implementations
- Fix saliency map normalization in both
OcclusionScoring
as well asSimilarityScoring
to disallow cross-class pollution in the norm.
Misc.
- Fixed up module naming inconsistencies.