Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🔧 Implement an analysis block for "anchors" #1006

Closed
paxcema opened this issue Oct 5, 2022 · 1 comment
Closed

🔧 Implement an analysis block for "anchors" #1006

paxcema opened this issue Oct 5, 2022 · 1 comment
Labels
Community Community-led efforts discussion Further discussion is required enhancement New feature or request hacktoberfest Contirubte to Lightwood and participate in Hacktoberfest. help wanted Extra attention is needed Research For PRs that are research-oriented

Comments

@paxcema
Copy link
Contributor

paxcema commented Oct 5, 2022

Introduction

Lightwood is an AutoML library that aims at abstracting common procedures in the Machine Learning workflow (e.g. data preparation, feature engineering, model building, model analysis) with an approach that can be fully automated but easily customizable and extended thanks to its flexibility.

To analyze a model, a series of "analysis blocks" run after the ensemble step and when generating predictions. Each of these blocks can (1) do some type of analysis after training has finished, (2) do computations at inference time to give additional insights about predictions (e.g. a confidence score), or both (1) and (2).

Anchors (High-Precision Model-Agnostic Explanations) are a popular method for explaining predictions of a ML model for tabular data.

Task

In this task, we seek to add an analysis block that will output anchor explanations for the predictions of Lightwood models.

Steps 🕵️‍♂️ 🕵️‍♀️

  • Fork the Lightwood repository, checkout the staging branch and from it create a new one.
  • Add an analysis block (inherit from lightwood/analysis/base/BaseAnalysisBlock) in lightwood/analysis/helpers/ that computes anchors in its .explain() method by interacting with the library linked above. The output should be added to the input insights in additional columns with a naming scheme like f"prediction_anchor", or similar, with a string containing the entire rule (e.g. "COLUMN_NAME >= VALUE").
  • Create (or modify an existing) integration test that uses your analysis block and checks the output has the expected properties. Alternatively, you can create a tutorial in the docssrc/source/tutorial/custom_explainer folder, explaining how to use this block and what insights can be made from an example predictive task.
  • Make the PR and address any comments that reviewers might make.

Additional rewards 🥇

Accepted PRs will let you participate in the MindsDB hacktoberfest contest! For more info check out https://mindsdb.com/hacktoberfest/.

@paxcema paxcema added enhancement New feature or request help wanted Extra attention is needed discussion Further discussion is required Research For PRs that are research-oriented hacktoberfest Contirubte to Lightwood and participate in Hacktoberfest. Community Community-led efforts labels Oct 5, 2022
@paxcema
Copy link
Contributor Author

paxcema commented Jan 22, 2024

Closing for now.

@paxcema paxcema closed this as completed Jan 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Community Community-led efforts discussion Further discussion is required enhancement New feature or request hacktoberfest Contirubte to Lightwood and participate in Hacktoberfest. help wanted Extra attention is needed Research For PRs that are research-oriented
Projects
None yet
Development

No branches or pull requests

1 participant