aai-institute / aai-institute/pyDVL

Implement Projected Stochastic Gradient Shapley

Open
#253 0 comments 0 reactions 0 assignees View on GitHub
new-method
Dominant language
Python
Stars
146
Forks
10
PR merge metrics
No merged PRs in 30d

Description

As introduced in _Simon, Grah, and Thouvenot Vincent. ‘A Projected Stochastic Gradient Algorithm for Estimating Shapley Value Applied in Attribute Importance’. In Machine Learning and Knowledge Extraction, edited by Andreas Holzinger, Peter Kieseberg, A Min Tjoa, and Edgar Weippl, 12279:97–115. Lecture Notes in Computer Science. Cham: Springer International Publishing, 2020. https://doi.org/10.1007/978-3-030-57321-8_6._
Code available [here](https://github.com/ThalesGroup/shapkit)

The paper focuses on feature valuation, but it's just another approximation for Shapley Values based on convex optimization. It's also roughly on-par with Monte Carlo and sometimes worse, so maybe not so important. But may be worth checking.

![image](https://user-images.githubusercontent.com/1548327/216106452-5686e80b-2019-48a7-9adb-ed76aa1ea5d7.png)

Contributor guide

Open the contributing guide

Research direction

Read the linked paper and examine the reference implementation in the ThalesGroup/shapkit repository. Understand the projected stochastic gradient algorithm for Shapley value approximation. Identify where in pyDVL's codebase new approximation methods are added, likely in a module like `pydvl.value.shapley`. Implement the algorithm, ensuring it integrates with the existing API for data valuation. Write tests to compare its performance against Monte Carlo methods.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
ai, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.