-
Notifications
You must be signed in to change notification settings - Fork 0
/
mitigation.html
220 lines (200 loc) · 12.9 KB
/
mitigation.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Mitigation — holisticai documentation</title>
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/copybutton.css" type="text/css" />
<link rel="stylesheet" href="_static/css/custom_style.css" type="text/css" />
<!--[if lt IE 9]>
<script src="_static/js/html5shiv.min.js"></script>
<![endif]-->
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/clipboard.min.js"></script>
<script src="_static/copybutton.js"></script>
<script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
<script src="_static/js/theme.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="holisticai.bias.mitigation.Reweighing" href="generated/holisticai.bias.mitigation.Reweighing.html" />
<link rel="prev" title="holisticai.bias.metrics.recommender_rmse_ratio" href="generated/holisticai.bias.metrics.recommender_rmse_ratio.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home"> holisticai
<img src="_static/holistic_ai.png" class="logo" alt="Logo"/>
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Documentation</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="metrics.html">Metrics</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Mitigation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#pre-processing">Pre-processing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.Reweighing.html">holisticai.bias.mitigation.Reweighing</a></li>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.LearningFairRepresentation.html">holisticai.bias.mitigation.LearningFairRepresentation</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#in-processing">In-processing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.ExponentiatedGradientReduction.html">holisticai.bias.mitigation.ExponentiatedGradientReduction</a></li>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.GridSearchReduction.html">holisticai.bias.mitigation.GridSearchReduction</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#post-processing">Post-processing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.CalibratedEqualizedOdds.html">holisticai.bias.mitigation.CalibratedEqualizedOdds</a></li>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.EqualizedOdds.html">holisticai.bias.mitigation.EqualizedOdds</a></li>
<li class="toctree-l3"><a class="reference internal" href="generated/holisticai.bias.mitigation.RejectOptionClassification.html">holisticai.bias.mitigation.RejectOptionClassification</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="plotting.html">Plotting</a></li>
<li class="toctree-l1"><a class="reference internal" href="datasets.html">Datasets</a></li>
<li class="toctree-l1"><a class="reference internal" href="pipeline.html">Pipeline</a></li>
<li class="toctree-l1"><a class="reference internal" href="utils.html">Utils</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Tutorials</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="measuring_bias.html">Measuring bias</a></li>
<li class="toctree-l1"><a class="reference internal" href="mitigating_bias.html">Mitigating bias</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">holisticai</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html" class="icon icon-home"></a> »</li>
<li>Mitigation</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/mitigation.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<style>
/* CSS overrides for sphinx_rtd_theme */
/* 24px margin */
.nbinput.nblast.container,
.nboutput.nblast.container {
margin-bottom: 19px; /* padding has already 5px */
}
/* ... except between code cells! */
.nblast.container + .nbinput.container {
margin-top: -19px;
}
.admonition > p:before {
margin-right: 4px; /* make room for the exclamation icon */
}
/* Fix math alignment, see https://github.com/rtfd/sphinx_rtd_theme/pull/686 */
.math {
text-align: unset;
}
</style>
<section id="mitigation">
<h1>Mitigation<a class="headerlink" href="#mitigation" title="Permalink to this heading"></a></h1>
<p><cite>holisticai.bias.mitigation</cite> is a python module mitigating <em>bias</em> in algorithms. Our classes cover <em>pre-processing</em>, <em>post-processing</em> and <em>post-processing</em>.</p>
<section id="pre-processing">
<span id="preprocessing"></span><h2>Pre-processing<a class="headerlink" href="#pre-processing" title="Permalink to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.Reweighing.html#holisticai.bias.mitigation.Reweighing" title="holisticai.bias.mitigation.Reweighing"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.Reweighing</span></code></a>(*args, ...)</p></td>
<td><p>Reweighing preprocessing weights the examples in each group-label combination to ensure fairness before classification.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.LearningFairRepresentation.html#holisticai.bias.mitigation.LearningFairRepresentation" title="holisticai.bias.mitigation.LearningFairRepresentation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.LearningFairRepresentation</span></code></a>(...)</p></td>
<td><p>Learning fair representations finds a latent representation which encodes the data well while obfuscates information about protected attributes.</p></td>
</tr>
</tbody>
</table>
</section>
<section id="in-processing">
<span id="inprocessing"></span><h2>In-processing<a class="headerlink" href="#in-processing" title="Permalink to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.ExponentiatedGradientReduction.html#holisticai.bias.mitigation.ExponentiatedGradientReduction" title="holisticai.bias.mitigation.ExponentiatedGradientReduction"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.ExponentiatedGradientReduction</span></code></a>(...)</p></td>
<td><p>Exponentiated gradient reduction is an in-processing technique that reduces fair classification to a sequence of cost-sensitive classification problems, returning a randomized classifier with the lowest empirical error subject to fair classification constraints.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.GridSearchReduction.html#holisticai.bias.mitigation.GridSearchReduction" title="holisticai.bias.mitigation.GridSearchReduction"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.GridSearchReduction</span></code></a>(...)</p></td>
<td><p>Grid search technique can be used for fair classification or fair regression.</p></td>
</tr>
</tbody>
</table>
</section>
<section id="post-processing">
<span id="postprocessing"></span><h2>Post-processing<a class="headerlink" href="#post-processing" title="Permalink to this heading"></a></h2>
<table class="autosummary longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.CalibratedEqualizedOdds.html#holisticai.bias.mitigation.CalibratedEqualizedOdds" title="holisticai.bias.mitigation.CalibratedEqualizedOdds"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.CalibratedEqualizedOdds</span></code></a>(...)</p></td>
<td><p>Calibrated equalized odds postprocessing optimizes over calibrated classifier score outputs to find probabilities with which to change output labels with an equalized odds objective.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.EqualizedOdds.html#holisticai.bias.mitigation.EqualizedOdds" title="holisticai.bias.mitigation.EqualizedOdds"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.EqualizedOdds</span></code></a>(...)</p></td>
<td><p>Equalized odds postprocessing use linear programming to find the probability with which change favorable labels (y=1) to unfavorable labels (y=0) in the output estimator to optimize equalized odds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="generated/holisticai.bias.mitigation.RejectOptionClassification.html#holisticai.bias.mitigation.RejectOptionClassification" title="holisticai.bias.mitigation.RejectOptionClassification"><code class="xref py py-obj docutils literal notranslate"><span class="pre">holisticai.bias.mitigation.RejectOptionClassification</span></code></a>(...)</p></td>
<td><p>Reject option classification gives favorable outcomes (y=1) to unpriviliged groups and unfavorable outcomes (y=0)to priviliged groups in a confidence band around the decision boundary with the highest uncertainty.</p></td>
</tr>
</tbody>
</table>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="generated/holisticai.bias.metrics.recommender_rmse_ratio.html" class="btn btn-neutral float-left" title="holisticai.bias.metrics.recommender_rmse_ratio" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="generated/holisticai.bias.mitigation.Reweighing.html" class="btn btn-neutral float-right" title="holisticai.bias.mitigation.Reweighing" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>© Copyright 2022, Holistic AI.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>