Skip to content

Commit fc05cb4

Browse files
authored
Merge pull request #245 from NGO-Algorithm-Audit/feature/may-9th
Feature/may 9th
2 parents 5907497 + e3a20ff commit fc05cb4

File tree

15 files changed

+102
-118
lines changed

15 files changed

+102
-118
lines changed

assets/scss/_common.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
[id] {
2+
scroll-margin-top: 80px;
3+
}
4+
15
body {
26
background-color: $body-color;
37
overflow-x: hidden;

assets/scss/_custom.scss

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,17 @@
3333
font-style: normal;
3434
}
3535

36+
.highlight-potential-sm {
37+
border: rgba(255, 255, 255, 0) 0.3rem solid;
38+
border-radius: 0.75rem;
39+
padding: 0.25rem 0.5rem !important;
40+
color: #005aa7;
41+
font-style: normal;
42+
}
43+
.highlight-red-sm {
44+
background-color: rgba(255, 203, 189, 0.5);
45+
}
46+
3647
.yellow-button {
3748
margin-left: 20px;
3849
background-color: #005aa7;

assets/scss/templates/_main.scss

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -448,7 +448,7 @@ a.post-title {
448448
padding-left: 20px;
449449
position: relative;
450450

451-
&:not(.ms-slider__word)::before {
451+
&:not(.ms-slider__word):not(.quick_navigation_li)::before {
452452
position: absolute;
453453
content: '';
454454
height: 8px;
@@ -698,7 +698,7 @@ vertical-align: top;
698698
padding-top: 5px;
699699
}
700700

701-
.content ul li:not(.ms-slider__word):before{
701+
.content ul li:not(.ms-slider__word):not(.quick_navigation_li):before{
702702
height: 0px;
703703
width: 0px;
704704
}

content/english/algoprudence/submit-a-case.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ subtitle: >
88
image: /images/svg-illustrations/case_repository.svg
99
form1:
1010
title: Case information
11-
content: ''
11+
content: ""
1212
button_text: Submit
13-
backend_link: 'https://formspree.io/f/xzbnrlan'
13+
backend_link: "https://formspree.io/f/xzbnrlan"
1414
id: submit-a-case
1515
questions:
1616
- label: |
@@ -61,9 +61,9 @@ form1:
6161
type: checkbox
6262
form2:
6363
title: Case information
64-
content: ''
65-
button_text: 'Submit '
66-
backend_link: 'https://formspree.io/f/xleqlakw'
64+
content: ""
65+
button_text: "Submit "
66+
backend_link: "https://formspree.io/f/xleqlakw"
6767
id: case-for-repository
6868
questions:
6969
- label: Name organisation
@@ -88,7 +88,7 @@ form2:
8888
file_upload_text: Choose file
8989
file_type: .pdf
9090
type: file
91-
placeholder: ''
91+
placeholder: ""
9292
- label: >
9393
Terms and conditions <br> <span style="font-size:12px;
9494
color=#777;">Submitted data will only be processed for the purpose
@@ -103,7 +103,7 @@ reports_preview:
103103
button_text: Case repository
104104
button_link: /algoprudence
105105
feature_item:
106-
- name: 'Risk Profiling Social Welfare Re-examination '
106+
- name: "Risk Profiling Social Welfare Re-examination "
107107
image: /images/algoprudence/AA202302/AA202302A_cover_EN.png
108108
link: >-
109109
/algoprudence/cases/aa202302_risk-profiling-for-social-welfare-reexamination/
@@ -122,11 +122,11 @@ quick_navigation:
122122
title: Content overview
123123
links:
124124
- title: Submit a case
125-
url: '#case-for-review'
125+
url: "#case-for-review_tab_btn"
126126
- title: Next steps
127-
url: '#next-steps'
127+
url: "#next-steps"
128128
- title: Recent cases
129-
url: '#case-repository'
129+
url: "#case-repository"
130130
---
131131

132132
{{< tab_header width="6" tab1_id="case-for-review" default_tab="case-for-review" tab1_title="Submit a case for normative review" tab2_id="case-repository" tab2_title="Add a case to algoprudence repository" >}}
@@ -155,4 +155,4 @@ Your submission is reviewed by Team Algoprudence. The team assesses whether de c
155155

156156
{{< container_close >}}
157157

158-
{{< reports_preview id="case-repository">}}
158+
{{< reports_preview id="case-repository">}}

content/english/technical-tools/BDT.md

Lines changed: 27 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Unsupervised bias detection tool
33
subtitle: >
44
Local-first tool using statistical analysis to identify groups that may be subject to unfair treatment by algorithms or AI. The tool informs
55
the qualitative doctrine of law and ethics which disparities need to be
6-
scrutinised manually by domain experts.
6+
scrutinised manually by domain experts.
77
image: /images/svg-illustrations/illustration_cases.svg
88
reports_preview:
99
title: Example output bias detection tool
@@ -56,40 +56,41 @@ quick_navigation:
5656
title: Content overview
5757
links:
5858
- title: Introduction
59-
url: '#info'
59+
url: "#info"
6060
- title: Web app
61-
url: '#web-app'
61+
url: "#web-app"
6262
- title: Source code
63-
url: '#source-code'
63+
url: "#source-code"
6464
- title: Anomaly detection algorithm
65-
url: '#HBAC'
65+
url: "#HBAC"
6666
- title: Scientific paper and audit report
67-
url: '#scientific-paper'
67+
url: "#scientific-paper"
6868
- title: Local-first computing
69-
url: '#local-first'
69+
url: "#local-first"
7070
- title: Supported by
71-
url: '#supported-by'
71+
url: "#supported-by"
7272
- title: Awards and acknowledgements
73-
url: '#awards-acknowledgements'
73+
url: "#awards-acknowledgements"
7474
- title: Summary
75-
url: '#summary'
75+
url: "#summary"
7676
- title: Team
77-
url: '#team'
77+
url: "#team"
7878
type: bias-detection-tool
7979
---
8080

81-
8281
<!-- Introduction -->
8382

8483
{{< container_open title="Introduction – Unsupervised bias detection tool" icon="fas fa-search" id="info" >}}
8584

8685
<br>
8786

8887
#### What is the tool about?
89-
The tool identifies groups where an algorithm or AI system shows variations in performance. This type of monitoring is referred to as *anomaly detection*. To identify anomalous patterns, the tool uses <a href="https://en.wikipedia.org/wiki/Cluster_analysis" target="_blank">clustering</a>. Clustering is a form of _unsupervised learning_. This means detecting disparate treatment (bias) does not require any data on protected attributes of users, such as gender, nationality, or ethnicity. The metric used to measure bias can be manually selected and is referred to as the `bias metric`.
88+
89+
The tool identifies groups where an algorithm or AI system shows variations in performance. This type of monitoring is referred to as _anomaly detection_. To identify anomalous patterns, the tool uses <a href="https://en.wikipedia.org/wiki/Cluster_analysis" target="_blank">clustering</a>. Clustering is a form of _unsupervised learning_. This means detecting disparate treatment (bias) does not require any data on protected attributes of users, such as gender, nationality, or ethnicity. The metric used to measure bias can be manually selected and is referred to as the `bias metric`.
9090

9191
#### What data can be processed?
92-
The tool processes all data in table format. The type of data (numerical, categorical, time, etc.) is automatically detected. One column must be selected as the `bias metric` – which should be a numerical value. The user must specify whether a high or low value of the `bias metric` is considered better. For example: for an error rate, a low value is better, while for accuracy, a high value is better.
92+
93+
The tool processes all data in table format. The type of data (numerical, categorical, time, etc.) is automatically detected. One column must be selected as the `bias metric` – which should be a numerical value. The user must specify whether a high or low value of the `bias metric` is considered better. For example: for an error rate, a low value is better, while for accuracy, a high value is better.
9394

9495
The tool contains a demo data for which output is generated. Hit the 'Try it out' button.
9596

@@ -113,6 +114,7 @@ The tool contains a demo data for which output is generated. Hit the 'Try it out
113114
<br>
114115

115116
#### What does the tool return?
117+
116118
The tool identifies deviating clusters. A summary of the results is made available in a bias analysis report that can be downloaded as a pdf. All identified clusters can be downloaded in a .json file. The tool specifically focuses on the most negatively deviating cluster and provides a description of this cluster. These results serve as a starting point for further investigation by domain experts, who can assess whether the observed disparities are indeed undesirable. The tool also visualizes the outcomes.
117119

118120
#### Overview of process
@@ -122,39 +124,32 @@ The tool identifies deviating clusters. A summary of the results is made availab
122124
</div>
123125

124126
#### How is my data processed?
125-
The tool is privacy-friendly because the data is processed entirely within the browser. The data does not leave your computer or the environment of your organization. The tool utilizes the computing power of your own computer to analyze the data. This type of browser-based software is referred to as *local-first*. The tool does not upload data to third parties, such as cloud providers. Instructions on how to host the tool and local-first architecture can be hosted locally within your own organization can be found on <a href="https://github.com/NGO-Algorithm-Audit/local-first-web-tool" target="_blank">Github</a>.
127+
128+
The tool is privacy-friendly because the data is processed entirely within the browser. The data does not leave your computer or the environment of your organization. The tool utilizes the computing power of your own computer to analyze the data. This type of browser-based software is referred to as _local-first_. The tool does not upload data to third parties, such as cloud providers. Instructions on how to host the tool and local-first architecture can be hosted locally within your own organization can be found on <a href="https://github.com/NGO-Algorithm-Audit/local-first-web-tool" target="_blank">Github</a>.
126129

127130
Try the tool below ⬇️
128131

129132
{{< container_close >}}
130133

131-
132-
133134
<!-- Web app -->
134135

135-
{{< iframe title="Web app – Unsupervised bias detection tool" icon="fas fa-cloud" id="web-app" src="https://local-first-bias-detection.s3.eu-central-1.amazonaws.com/bias-detection.html?lang=en" height="770px" >}}
136-
137-
136+
{{< iframe title="Web app – Unsupervised bias detection tool" icon="fas fa-cloud" id="web-app" src="https://local-first-bias-detection.s3.eu-central-1.amazonaws.com/bias-detection.html?lang=en" height="770px" >}}
138137

139138
<!-- Promo bar -->
140139

141140
{{< promo_bar content="Do you appreciate the work of Algorithm Audit? ⭐️ us on" id="promo" >}}
142141

143-
144-
145142
<!-- Source code -->
146143

147144
{{< container_open title="Source code" id="source-code" icon="fas fa-toolbox" >}}
148145

149-
- The source code of the anolamy detection-algorithm is available on <a href="https://github.com/NGO-Algorithm-Audit/unsupervised-bias-detection" target="_blank">Github</a> and as a <a href="https://pypi.org/project/unsupervised-bias-detection/" target="_blank">pip package</a>: `pip install unsupervised-bias-detection`.
150-
[![!pypi](https://img.shields.io/pypi/v/unsupervised-bias-detection?logo=pypi\&color=blue)](https://pypi.org/project/unsupervised-bias-detection/)
146+
- The source code of the anolamy detection-algorithm is available on <a href="https://github.com/NGO-Algorithm-Audit/unsupervised-bias-detection" target="_blank">Github</a> and as a <a href="https://pypi.org/project/unsupervised-bias-detection/" target="_blank">pip package</a>: `pip install unsupervised-bias-detection`.
147+
[![!pypi](https://img.shields.io/pypi/v/unsupervised-bias-detection?logo=pypi&color=blue)](https://pypi.org/project/unsupervised-bias-detection/)
151148

152149
- The architecture to run web apps local-first is also available on <a href="https://github.com/NGO-Algorithm-Audit/local-first-web-tool" target="_blank">Github</a>.
153150

154151
{{< container_close >}}
155152

156-
157-
158153
<!-- Anolamy detection algorithm -->
159154

160155
{{< container_open title="Anolamy detection algorithm – Hierarchical Bias-Aware Clustering (HBAC)" icon="fas fa-code-branch" id="HBAC" >}}
@@ -163,8 +158,6 @@ The tool uses the _Hierarchical Bias-Aware Clustering_ (HBAC) algorithm. HBAC pr
163158

164159
{{< container_close >}}
165160

166-
167-
168161
<!-- Scientific paper and audit report -->
169162

170163
{{< container_open icon="far fa-file" title="Scientific paper and audit report" id="scientific-paper" >}}
@@ -175,15 +168,14 @@ The unsupervised bias detection tool has been applied in practice to audit a Dut
175168

176169
{{< container_close >}}
177170

178-
179-
180171
<!-- Local-first architecture -->
181172

182173
{{< container_open title="Local-first architecture" icon="fas fa-map-pin" id="local-first" >}}
183174

184175
<br>
185176

186177
#### What is local-first computing?
178+
187179
Local-first computing is the opposite of cloud computing: the data is not uploaded to third-parties, such as a cloud providers, and is processed by your own computer. The data attached to the tool therefore doesn't leave your computer or the environment of your organization. The tool is privacy-friendly because the data can be processed within the mandate of your organisation and doesn't need to be shared with new parties. The unsupervised bias detection tool can also be hosted locally within your organization. Instructions, including the source code or the web app, can be found on <a href="https://github.com/NGO-Algorithm-Audit/local-first-web-tool" target="_blank">Github</a>.
188180

189181
#### Overview of local-first architecture
@@ -194,19 +186,18 @@ Local-first computing is the opposite of cloud computing: the data is not upload
194186

195187
{{< container_close >}}
196188

197-
198-
199189
<!-- Supported by -->
200190

201191
{{< container_open title="Supported by" icon="fas fa-toolbox" id="supported-by">}}
202192

203193
This tool is developed with support of public and philanthropic organisations.
204194

205-
{{< accordions_area_open>}}
195+
{{< accordions_area_open id="supported-by-accordion">}}
206196

207197
{{< accordion_item_open title="Innovation grant Dutch Ministry of the Interior" image="/images/supported_by/BZK.jpg" tag1="2024-25" >}}
208198

209199
##### Description
200+
210201
In partnership with the Dutch Executive Agency for Education and the Dutch Ministry of the Interior, Algorithm Audit has been developing and testing this tool from July 2024 to July 2025, supported by an <a href="https://www.digitaleoverheid.nl/overzicht-van-alle-onderwerpen/innovatie/innovatiebudget/toekenning-innovatiebudget-2024/" target="_blank">Innovation grant</a> from the annual competition hosted by the Dutch Ministry of the Interior. Project progress was shared at a community gathering on 13-02-2025.
211202

212203
![](/images/events/20250213_Demodag2025.jpg)
@@ -225,19 +216,18 @@ In 2024, the SIDN Fund <a href="https://www.sidnfonds.nl/projecten/open-source-a
225216

226217
{{< container_close >}}
227218

228-
229-
230219
<!-- Awards and acknowledgements -->
231220

232221
{{< container_open title="Awards and acknowledgements" icon="fas fa-medal" id="awards-acknowledgements">}}
233222

234223
This tool has received awards and is acknowledged by various <a href="https://github.com/NGO-Algorithm-Audit/unsupervised-bias-detection?tab=readme-ov-file#contributing-members" target="_blank">stakeholders</a>, including civil society organisations, industry representatives and academics.
235224

236-
{{< accordions_area_open>}}
225+
{{< accordions_area_open id="awards-accordion" >}}
237226

238227
{{< accordion_item_open title="Finalist Stanford’s AI Audit Challenge 2023" image="/images/supported_by/HAI.png" tag1="06-2023" >}}
239228

240229
##### Description
230+
241231
Under the name Joint Fairness Assessment Method (JFAM) the unsupervised bias detection tool has been selected as a finalist in <a href="https://hai.stanford.edu/ai-audit-challenge-2023-finalists" target="_blank">Stanford’s AI Audit Competition 2023</a>.
242232

243233
{{< accordion_item_close >}}
@@ -254,8 +244,6 @@ The unsupervised bias detection tool is part of OECD's <a href="https://oecd.ai/
254244

255245
{{< container_close >}}
256246

257-
258-
259247
<!-- Summary -->
260248

261249
{{< container_open title="Summary" icon="fas fa-dot-circle" id="summary">}}
@@ -271,8 +259,6 @@ Key take-aways about unsupervised bias detection tool:
271259

272260
{{< container_close >}}
273261

274-
275-
276262
<!-- Team -->
277263

278-
{{< team id="team" >}}
264+
{{< team id="team" >}}

content/nederlands/algoprudence/submit-a-case.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ image: /images/svg-illustrations/case_repository.svg
99
form1:
1010
title: Informatie over de case
1111
button_text: Verstuur
12-
backend_link: 'https://formspree.io/f/xzbnrlan'
12+
backend_link: "https://formspree.io/f/xzbnrlan"
1313
id: submit-a-case
1414
questions:
1515
- label: |
@@ -58,9 +58,9 @@ form1:
5858
type: checkbox
5959
form2:
6060
title: Informatie over het oordeel
61-
content: ''
61+
content: ""
6262
button_text: Verstuur
63-
backend_link: 'https://formspree.io/f/xleqlakw'
63+
backend_link: "https://formspree.io/f/xleqlakw"
6464
id: case-for-repository
6565
questions:
6666
- label: Naam organisatie
@@ -115,11 +115,11 @@ quick_navigation:
115115
title: Inhoudsopgave
116116
links:
117117
- title: Dien een case in
118-
url: '#case-for-review'
118+
url: "#case-for-review_tab_btn"
119119
- title: Vervolgstappen
120-
url: '#next-steps'
120+
url: "#next-steps"
121121
- title: Recente cases
122-
url: '#case-repository'
122+
url: "#case-repository"
123123
---
124124

125125
{{< tab_header width="6" tab1_id="case-for-review" default_tab="case-for-review" tab1_title="Dien een case in voor beoordeling" tab2_id="case-repository" tab2_title="Voeg oordeel toe aan algoprudentie uitspraken" >}}

layouts/partials/head.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454

5555
<!-- page header script -->
5656
<script src="/js/main.js"></script>
57+
<script src="/js/quicknavigation.js"></script>
5758
<!-- /page header script -->
5859

5960
<!-- accordion -->

layouts/partials/header.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@
2626
{{ range site.Menus.main }}
2727
{{ if .HasChildren }}
2828
<li class="nav-item dropdown">
29-
<a class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown">
29+
<a class="nav-link dropdown-toggle d-none d-xl-block" href="{{ .URL | relURL }}" role="button">
30+
{{ .Name }}
31+
</a>
32+
<a class="nav-link dropdown-toggle d-block d-xl-none" href="{{ .URL | relURL }}" role="button" data-toggle="dropdown" >
3033
{{ .Name }}
3134
</a>
3235
<div class="dropdown-menu shadow-lg" style="padding: 1rem 0.25rem;">

0 commit comments

Comments
 (0)