Граф коммитов

2 Коммитов

Автор SHA1 Сообщение Дата
Eric StJohn d3c31274ce
Make double assertions compare with tolerance instead of precision (#6923)
Precision might cause small differences to round to a different number.
Instead compare with a tolerance which is not sensitive to rounding.
2023-12-22 12:18:29 -08:00
Xiaoyun Zhang 1dcae100ed
Fairlearn (#6539)
* same as last commit message

* using xiaoyun\'s .rows.gropy() implementation method for the ByGroup() function

* adding the regression catalog

* added the fairlearn extension

* Fixed the dataframe column adding bug; added unit testing

Added `inPlace:true` to the append to fix the bug that no columns are added;

Added unit testing to test the basic funcitonality of Metrc.Regression.ByGroup()

* Added a Metric Test; Added difference between groups in regression

* Added more metrics to the regression

Added MSE and MAE (MeanAbsoluteError), and included tests for MSE and RMS

* RMS and MSE support

RMS and MSE fully supported by Fairlearn.Metric.Regression now accross all three functions

* Moment and UtilityParity

created the moment class and utilityParity class. Initial commit

* Demographic Parity initial unit tests passed

Passed the initial unit tests for Demographic Parity. Every class is made public which needs to be changed in the future. Utility Parity still needs to be changed for other parities to work

* update

* Added the rest of the binary metrics at byGroup()

* Fixed a typo in the comment

* Started on GridSearch, finished implementing the first approach to calculating the signed weights

* Turned the moment class to an abstract class

There is still a lot of development needed to be done with the moment class

* Added signed weights, fixed ordering in Gamma

* Added assembly reference for the AutoML to gain access to different models

* fix sensitive feature column name bug, change default value for grid search

getting sensitive feature column names directly from a getter function, adjusted default value for the option to a random value

* Created a trail runner for grid search

built the first prototype for the gridSearchTrialRunner. We have enabled a seperate training set for training and testing set for validating the result, which is a different approach from the original implementation.

* Added AutoMLExperimentExtension to enable AutoML methods on gridsearch

* Added row item lookup by columnname

Added a new feature so that users can look up row item by the name of the column instead of the raw row index

* Revert "Added AutoMLExperimentExtension to enable AutoML methods on gridsearch"

This reverts commit a9f07a9064.

* made serviceCollection internal to be accessed by AutoML extension in fairlearn

In fairlearn AutoML, we have to add in a singleton to the serviceCollection called moment, which will be later extracted to calculate the fairness parity.

* Updated IMonitor for fairlearn

Added an if statement to output fairlearn metric if using fairlearn

* added FairnessTrialResulst for fairnessMetric

* Revert "made serviceCollection internal to be accessed by AutoML extension in fairlearn"

This reverts commit 328f718f08.

* Added an extension for AutoML experiment

the experiment is able to add a moment to its serviceCollection which is later used to calculate fairlearn parity.

* Added a Fairlearn AutoMLTuner

Created a tuner so that we can go through the search space through the gridsearch algorithm

* updated Project reference

* added a gridSearch test

* Update BranchInfo.props

* Fixed documentation

Added documentation, deleted unneeded code

* Update abstract methods

Updating two methods and making them abstract

* Updated documentation and added the Bound method

* Moved metric related files into the metric folder

* Added user's gridLimit support

Allows users to provide customized gridLimit input for Grid Search

* Delete GridSearch.cs

Since we are leveraging AutoML, having a gridSearch file will not be necessary

* added include Fairlearn.metric

* added binary classification metric tests

* fix tests

* update

* update

* update

* fix build error

* re-add fsharp test

* disable fairlearn test in automl as it's too costy

* fix build issue

* fix test

* Update GridSearchTest.cs

* fix comment

* fix build error

* capitalize folder name

* fix builderror

* revert change in AutoFit

---------

Co-authored-by: Jordi Ramos <jordi1215@icloud.com>
Co-authored-by: Jordi Ramos <jordi1215.jrc@gmail.com>
2023-05-11 10:16:05 -07:00