Align Matching
to WeightEstimator
interface
#53
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Matching can be naturally presented as a weight model (in the most basic scenario, weighting samples as zero and ones for whether they were matched or excluded).
Current implementation of
Matching
also supports this with thematching_to_weights()
function.However, the API did not align with
WeightEstimator
'scompute_weights(X, a)
interface.This PR fixes it and realigns
Matching
toWeightEstimator
.This allows
Matching
to be evaluated usingevaluate
(for example,plot_covariate_balance()
) and allows it to be plugged into other models using weight-models such asWeightedSurvival
(which can now generate, for example, matched Kaplan-Meier curves).This PR also includes an adjustment to the
evaluation
module to allowMatching
to be used - moving the treatment label prediction (used for classification metrics) from theWeightPredictions
toPropensityPredictions