Una vez que se identifica una fuente de sesgo en los datos de entrenamiento, podemos tomar medidas proactivas para mitigar sus efectos. Existen dos estrategias principales que suelen emplear los ingenieros de aprendizaje automático (AA) para corregir el sesgo:
- Aumentar los datos de entrenamiento
- Ajustar la función de pérdida del modelo
Aumento de los datos de entrenamiento
Si una auditoría de los datos de entrenamiento reveló problemas con datos faltantes, incorrectos o sesgados, a menudo, la forma más directa de abordar el problema es recopilar datos adicionales.
Sin embargo, si bien aumentar los datos de entrenamiento puede ser ideal, la desventaja de este enfoque es que también puede ser inviable, ya sea por falta de datos disponibles o por restricciones de recursos que impiden la recopilación de datos. Por ejemplo, recopilar más datos puede ser demasiado costoso o requerir mucho tiempo, o no ser viable debido a restricciones legales o de privacidad.
Cómo ajustar la función de optimización del modelo
En los casos en que no sea viable recopilar datos de entrenamiento adicionales, otro enfoque para mitigar el sesgo es ajustar la forma en que se calcula la pérdida durante el entrenamiento del modelo. Por lo general, usamos una función de optimización como la pérdida de registro para penalizar las predicciones incorrectas del modelo. Sin embargo, la pérdida de registro no tiene en cuenta la membresía del subgrupo. Por lo tanto, en lugar de usar la pérdida de registro, podemos elegir una función de optimización diseñada para penalizar los errores de una manera que tenga en cuenta la equidad y que contrarreste los desequilibrios que identificamos en nuestros datos de entrenamiento.
La biblioteca de Model Remediation de TensorFlow proporciona utilidades para aplicar dos técnicas diferentes de mitigación de sesgos durante el entrenamiento del modelo:
MinDiff: Su objetivo es equilibrar los errores de dos segmentos de datos diferentes (estudiantes hombres o mujeres en comparación con estudiantes no binarios) agregando una penalización por las diferencias en las distribuciones de predicciones de los dos grupos.
Sincronización contrafáctica de logit: La sincronización contrafáctica de logit (CLP) tiene como objetivo garantizar que cambiar un atributo sensible de un ejemplo determinado no altere la predicción del modelo para ese ejemplo. Por ejemplo, si un conjunto de datos de entrenamiento contiene dos ejemplos cuyos valores de atributos son idénticos, excepto que uno tiene un valor
gender
demale
y el otro tiene un valorgender
denonbinary
, la CLP agregará una penalización si las predicciones de estos dos ejemplos son diferentes.
Las técnicas que elijas para ajustar la función de optimización dependen de los casos de uso del modelo. En la siguiente sección, analizaremos con mayor detalle cómo abordar la tarea de evaluar un modelo en cuanto a su equidad considerando estos casos de uso.