- Verify that the “fairnessWeights” function is returning non-uniform weights. You can do this by printing out the values of fairWeights and checking that they are different from each other.
- Ensure that the fairness issue you are trying to mitigate is present in the data. If the data is already fair, reweighting may not have any effect on the predictions.
Reweighting algorithm for fairness
5 views (last 30 days)
Show older comments
Hello,
I want to apply reweighting to mitigate fairness. I saw there is one way in matlab but when I use it, It does not do anything to the method. The results / predictions are exactly the same. What I do is the following:
fairWeights = fairnessWeights(trainingData,attributename,"Eval");
predictors.Weights= fairWeights;
classificationSVM = fitcsvm(...
predictors, ...
response, ...
'KernelFunction','rbf',...
'OptimizeHyperparameters','auto','HyperparameterOptimizationOptions',
opts,'Standardize',true,Weights=
"Weights");
and predictors contain the fair weights-
fitcsvm returns the same predictions without weights. How can I do reweighting in matlab then?. The example of matlab has a initial weight as a predictor so it does not make sense as in a real example you do not have weights computed as a features in the model.
Thank you
0 Comments
Answers (1)
Rohit
on 24 Mar 2023
Hi Esmeralda,
Since I do not have access to data and know which feature you are using to get new weights, predicting the exact reason for your issue is hard. But here are a few things you can try to troubleshoot the issue:
Please refer to the following MathWorks documentation to understand and visualize fairness weights: https://www.mathworks.com/help/stats/fairnessweights.html
0 Comments
See Also
Categories
Find more on Classification Ensembles in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!