Shapley Value for Feature Selection in Matlab
13 次查看(过去 30 天)
显示 更早的评论
Hi everyone,
I would like to ask you all if someone knows how to implement in Matlab the Shapley value algorithm to EMG features, just to see the weights of each feature.
I found some Add-ons about Shapley but all of them are focus on game theory obviosuly. So, someone know how to implement it for a EMG dataset from different subjects to get an outcome of one shapley value for each feature (something similar to NCA: https://es.mathworks.com/help/stats/neighborhood-component-analysis.html)?
Thanks in advance,
David
2 个评论
Ali Asghar
2021-4-21
I am looking for solution of same problem. Please let me know if any know it.
Thanks
回答(1 个)
Drew
2024-1-11
This can be done in 21a or higher using the shapley function https://www.mathworks.com/help/stats/shapley.html by looping over the query points to calculate shapley values and then creating the appropriate plot from the shapley values.
In 24a, this got easier with the addition of multi-query-point shapley and the "mean(abs(shap))" bar plot (also known as "Shapley Importance plot") for multi-query-point shapley objects. With these changes, a single call to shapley can be used to calculate the shapley values for many query points, and the object function "plot" can be used to create the mean(abs(shap)) Shapley Importance bar plot. See the release notes https://www.mathworks.com/help/releases/R2024a/stats/release-notes.html.
There is an example of creating a shapley importance bar plot on the fisher iris dataset using R2024a in the answer at https://www.mathworks.com/matlabcentral/answers/1578665-how-can-i-get-a-shapley-summary-plot
If this answer helps you, please remember to accept the answer.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!