
Un conjunto completo de métricas de equidad para conjuntos de datos y modelos de aprendizaje automático, explicaciones para estas métricas y algoritmos para mitigar el sesgo en conjuntos de datos y modelos.
El kit de herramientas AI Fairness 360 es una biblioteca extensible de código abierto que contiene técnicas desarrolladas por la comunidad investigadora para ayudar a detectar y mitigar el sesgo en los modelos de aprendizaje automático a lo largo del ciclo de vida de las aplicaciones de IA. El paquete AI Fairness 360 está disponible tanto en Python como en R.
El paquete AI Fairness 360 incluye:
La experiencia interactiva de AI Fairness 360 ofrece una introducción sencilla a los conceptos y capacidades. Los tutoriales y otros notebooks ofrecen una introducción más profunda, orientada a científicos de datos. También está disponible la API completa.
Al ser un conjunto integral de capacidades, puede resultar confuso saber qué métricas y algoritmos son los más adecuados para cada caso de uso. Para ayudarte, hemos creado un material de orientación que puede consultarse.
Hemos desarrollado el paquete pensando en la extensibilidad. Esta biblioteca aún está en desarrollo. Animamos a la contribución de sus métricas, explicadores y algoritmos de mitigación de sesgo.
¡Ponte en contacto con nosotros en Slack (invitación aquí)!
install.packages("aif360")
Para más detalles sobre la configuración en R, consulta las instrucciones aquí.
Configuraciones de Python compatibles:
| OS | Versión de Python |
|---|---|
| macOS | 3.10 – 3.13 |
| Ubuntu | 3.10 – 3.13 |
| Windows | 3.10 – 3.13 |
AIF360 requiere versiones específicas de muchos paquetes de Python que pueden entrar en conflicto con otros proyectos de tu sistema. Se recomienda encarecidamente un gestor de entornos virtuales para garantizar que las dependencias puedan instalarse de forma segura. Si tienes problemas para instalar AIF360, prueba esto primero.
Se recomienda Conda para todas las configuraciones, aunque Virtualenv es generalmente intercambiable para nuestros propósitos. Miniconda es suficiente (consulta la diferencia entre Anaconda y Miniconda si tienes curiosidad) si aún no tienes conda instalado.
Luego, para crear un nuevo entorno de Python 3.11, ejecuta:
conda create --name aif360 python=3.11
conda activate aif360
El shell ahora debería verse como (aif360) $. Para desactivar el entorno, ejecuta:
(aif360)$ conda deactivate
El prompt volverá a $ .
pipPara instalar la última versión estable desde PyPI, ejecuta:
pip install aif360
Nota: Algunos algoritmos requieren dependencias adicionales (aunque las métricas funcionarán todas sin configuración adicional). Para instalar con ciertas dependencias de algoritmos incluidas, ejecuta, por ejemplo:
pip install 'aif360[LFR,OptimPreproc]'
o, para una funcionalidad completa, ejecuta:
pip install 'aif360[all]'
Las opciones para las funcionalidades adicionales disponibles son: OptimPreproc, LFR, AdversarialDebiasing, DisparateImpactRemover, LIME, ART, Reductions, FairAdapt, inFairness, LawSchoolGPA, notebooks, tests, docs, all
Si encuentras algún error, prueba los pasos de Solución de problemas.
Clona la última versión de este repositorio:
git clone https://github.com/Trusted-AI/AIF360
Si deseas ejecutar los ejemplos, descarga los conjuntos de datos ahora y colócalos en sus respectivas carpetas como se describe en aif360/data/README.md.
Luego, navega al directorio raíz del proyecto y ejecuta:
pip install --editable '.[all]'
Para ejecutar los notebooks de ejemplo, completa los pasos de instalación manual anteriores.
Luego, si no usaste la opción [all], instala los requisitos adicionales
de la siguiente manera:
pip install -e '.[notebooks]'
Finalmente, si aún no lo has hecho, descarga los conjuntos de datos como se describe en aif360/data/README.md.
Si encuentras algún error durante el proceso de instalación, busca tu problema aquí y prueba las soluciones.
Consulta la página Instalar TensorFlow con pip para obtener instrucciones detalladas.
Nota: requerimos 'tensorflow >= 1.13.1'.
Una vez que tensorflow esté instalado, intenta volver a ejecutar:
pip install 'aif360[AdversarialDebiasing]'
TensorFlow solo es necesario para usar la clase
aif360.algorithms.inprocessing.AdversarialDebiasing.
En MacOS, es posible que primero debas instalar las Herramientas de línea de comandos de Xcode si nunca lo has hecho:
xcode-select --install
En Windows, es posible que necesites descargar las Herramientas de compilación de Microsoft C++ para Visual Studio 2019. Consulta la página de Instalación de CVXPY para obtener instrucciones actualizadas.
Luego, intenta reinstalar mediante:
pip install 'aif360[OptimPreproc]'
CVXPY solo es necesario para usar la clase
aif360.algorithms.preprocessing.OptimPreproc.
El directorio examples contiene una colección diversa de notebooks de jupyter
que utilizan AI Fairness 360 de diversas maneras. Tanto los tutoriales como las demostraciones
ilustran código funcional que utiliza AIF360. Los tutoriales ofrecen una discusión adicional que guía
al usuario a través de los distintos pasos del notebook. Consulta los detalles sobre
tutoriales y demostraciones aquí
Una descripción técnica de AI Fairness 360 está disponible en este artículo. A continuación se muestra la entrada bibtex para este artículo.
@misc{aif360-oct-2018,
title = "{AI Fairness} 360: An Extensible Toolkit for Detecting, Understanding, and Mitigating Unwanted Algorithmic Bias",
author = {Rachel K. E. Bellamy and Kuntal Dey and Michael Hind and
Samuel C. Hoffman and Stephanie Houde and Kalapriya Kannan and
Pranay Lohia and Jacquelyn Martino and Sameep Mehta and
Aleksandra Mojsilovic and Seema Nagar and Karthikeyan Natesan Ramamurthy and
John Richards and Diptikalyan Saha and Prasanna Sattigeri and
Moninder Singh and Kush R. Varshney and Yunfeng Zhang},
month = oct,
year = {2018},
url = {https://arxiv.org/abs/1810.01943}
}
El fork de desarrollo para Rich Subgroup Fairness (inprocessing/gerryfair_classifier.py) está aquí. Las contribuciones son bienvenidas y una lista de posibles contribuciones de los autores se puede encontrar aquí.