You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The currently implemented perturb functions have different requirements, e.g., in terms of expected input shape, and are thus not really interchangable for all metrics. Requirements should either be unified for perturb functions, or at least an informative error message should be thrown in the metrics if an inapplicable perturb function is used.
The text was updated successfully, but these errors were encountered:
I think the most clean way of doing this would be to create some abstract classes or interfaces with abstract methods which specify the expected inputs, e.g. IndexPerturbatorInterface or PatchPerturbatorInterface. The calling metric then would just need to check if the passed perturbator object inherits from the expected type of perturbator.
This would also have the benefit of instantiating the perturbator object beforehand with any arguments wanted without unnecessarily dragging these arguments through the Metric implementations.
The currently implemented perturb functions have different requirements, e.g., in terms of expected input shape, and are thus not really interchangable for all metrics. Requirements should either be unified for perturb functions, or at least an informative error message should be thrown in the metrics if an inapplicable perturb function is used.
The text was updated successfully, but these errors were encountered: