Shapley Value for Feature Selection in Matlab
조회 수: 17 (최근 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!