fairAITools

mitigateBias

Description

Atténue les biais lors de l'entraînement des modèles prédictifs.

fairAITools.mitigateBias result=<results> status=<rc> / biasMetric="string", bound=double, copyVarsCASLVariable="string", cutoff=double, event="string", frequency={<casvardesc>}, iterationCASLVariable="string", learningRate=double, logLevel=64-bit-integer, maxIters=64-bit-integer, nBins=64-bit-integer, predictedVariables={{<casvardesc-1>} <, {<casvardesc-2>}, ...>}, predictedVariablesResultKey="string", response={<casvardesc>}, responseLevels={"string-1" <, "string-2", ...>}, responseLevelsResultKey="string", rocStep=double, scoredCASLVariable="string", seed=double, selectionDepth=64-bit-integer, sensitiveVariable={<casvardesc>}, table={<castable>}, tableCASLVariable="string", tableModList={{<fairaitools_mitigateBias_tableModList-1>} <, {<fairaitools_mitigateBias_tableModList-2>}, ...>}, tableSaveList={{<fairaitools_mitigateBias_tableSaveList-1>} <, {<fairaitools_mitigateBias_tableSaveList-2>}, ...>}, tolerance=double, trainProgram="string", tuneBound=TRUE | FALSE, vars={<key-1>=<any-list-or-data-type-1> <, <key-2>=<any-list-or-data-type-2>, ...>}, weight={<casvardesc>}, weightCASLVariable="string";
Paramètres
ParamètreDescription
biasMetricSpécifie le type de mesure de biais. Vous pouvez spécifier quatre types : 'DEMOGRAPHICPARITY', 'EQUALIZEDODDS', 'EQUALOPPORTUNITY' ou 'PREDICTIVEPARITY'.
boundSpécifie la valeur de la borne pour l'algorithme de réduction du gradient exponentié.
copyVarsCASLVariableSpécifie le nom de la variable CASL passée au programme d'entraînement (spécifié par le paramètre trainProgram) qui contient la liste copyVars pour la création de la table de score.
cutoffSpécifie le seuil pour la matrice de confusion.
eventSpécifie la valeur formatée de la variable de réponse (cible) qui représente l'événement d'intérêt.
frequencySpécifie la variable qui contient les valeurs de fréquence.
iterationCASLVariableSpécifie le nom de la variable CASL passée au programme d'entraînement (spécifié par le paramètre trainProgram) qui contient la valeur de l'itération actuelle de la réduction du gradient exponentié.
learningRateSpécifie la taille du pas à utiliser pour la mise à jour de l'algorithme de réduction du gradient exponentié.
logLevelSpécifie le niveau d'information de journalisation à afficher. Des niveaux plus élevés affichent plus d'informations.
maxItersSpécifie le nombre maximal d'itérations pour exécuter l'algorithme de réduction du gradient exponentié.
nBinsSpécifie le nombre de bins à utiliser dans les calculs de lift.
predictedVariablesSpécifie la liste des variables qui contiennent les prédictions du modèle. L'ordre des variables doit correspondre à l'ordre que vous spécifiez dans le paramètre responseLevels. Alternativement, vous pouvez passer la liste des variables en retour du programme d'entraînement (spécifié par le paramètre trainProgram) en utilisant le paramètre predictedVariablesResultKey.
predictedVariablesResultKeySpécifie la clé de résultats retournée par le programme d'entraînement (spécifié par le paramètre trainProgram) qui spécifie les noms des variables prédites.
responseSpécifie la variable de réponse (cible) pour l'apprentissage supervisé.
responseLevelsSpécifie la liste des valeurs formatées de la variable de réponse (cible). L'ordre des variables doit correspondre à l'ordre que vous spécifiez dans le paramètre predictedVariables. Si le paramètre event est omis, la première valeur formatée est considérée comme l'événement.
responseLevelsResultKeySpécifie la clé de résultats retournée par le programme d'entraînement (spécifié par le paramètre trainProgram) qui spécifie les niveaux de la variable de réponse (cible).
rocStepSpécifie la taille du pas à utiliser pour les calculs de la courbe ROC (Receiver Operating Characteristic).
scoredCASLVariableSpécifie le nom de la variable CASL passée au programme d'entraînement (spécifié par le paramètre trainProgram) qui contient la spécification de sortie pour la table de score.
seedSpécifie la graine pour le générateur de nombres aléatoires. Par défaut, le flux de nombres aléatoires est basé sur l'heure de l'horloge de l'ordinateur. Une valeur de graine nulle ou négative entraîne également des flux de nombres aléatoires basés sur l'heure de l'horloge de l'ordinateur. Si vous souhaitez une séquence de nombres aléatoires reproductible entre les exécutions, spécifiez une valeur supérieure à 0.
selectionDepthSpécifie la profondeur à utiliser dans les calculs de lift.
sensitiveVariableSpécifie la variable sensible à utiliser dans les calculs de biais.
tableSpécifie la table de données d'entrée.
tableCASLVariableSpécifie le nom de la variable CASL passée au programme d'entraînement (spécifié par le paramètre trainProgram) qui contient les informations de la table de données d'entrée modifiée. Les étapes d'entraînement que vous atténuez doivent utiliser cette table.
tableModListSpécifie une liste de tables à modifier et à passer au programme d'entraînement (spécifié par le paramètre trainProgram). La table que vous spécifiez dans le paramètre table est ajoutée à cette liste.
tableSaveListSpécifie une liste de tables à sauvegarder après l'exécution du programme d'entraînement (spécifié par le paramètre trainProgram). Les tables ne sont sauvegardées que si la mesure de biais que vous spécifiez dans le paramètre biasMetric s'améliore à cette itération.
toleranceSpécifie la tolérance de violation de la contrainte de parité. Si vous définissez ce paramètre sur 0, l'action s'entraîne pour le nombre maximal d'itérations, que vous spécifiez dans le paramètre maxIters.
trainProgramSpécifie le code d'entraînement CASL pour entraîner un modèle. Ce code est utilisé en conjonction avec les valeurs que vous spécifiez dans les paramètres copyVarsCASLVariable, scoredCASLVariable, tableCASLVariable et weightCASLVariable.
tuneBoundLorsque défini sur True, spécifie que la valeur de la borne doit être ajustée.
varsSpécifie des variables supplémentaires à passer au programme d'entraînement (spécifié par le paramètre trainProgram).
weightSpécifie la variable qui contient les valeurs de poids. Les poids produits par l'algorithme de réduction du gradient exponentié sont multipliés par ces valeurs pendant l'entraînement.
weightCASLVariableSpécifie le nom de la variable CASL passée au programme d'entraînement (spécifié par le paramètre trainProgram) qui contient le nom de la variable de poids.
Préparation des Données Voir la fiche de ce code dataprep
Création de Données d'Exemple

Cette section montre comment créer des données d'exemple. Comme la documentation n'en fournit pas, ceci est un exemple générique.

Copié !
1/* Code SAS pour la création de données non fourni dans la documentation originale. */

Exemples

FAQ

Quel est l'objectif principal de l'action `mitigateBias` ?
Comment l'action `mitigateBias` fonctionne-t-elle ?
Quel est le rôle du paramètre `trainProgram` ?
À quoi sert le paramètre `sensitiveVariable` ?
Quelles sont les métriques de biais (`biasMetric`) que l'on peut chercher à atténuer ?
Comment le paramètre `tolerance` affecte-t-il le processus d'atténuation ?