0 / 0
Retourner à la version anglaise de la documentation
Baisse de la métrique d'évaluation de la cohérence des données
Dernière mise à jour : 12 févr. 2025
Baisse de la métrique d'évaluation de la cohérence des données

La baisse de la mesure de cohérence des données compare les transactions en cours d'exécution avec les modèles de transactions dans les données d'apprentissage afin d'identifier les incohérences.

Détails de l'indicateur

La baisse de la cohérence des données est une mesure d'évaluation de la dérive qui peut aider à déterminer la qualité de la prédiction des résultats de votre modèle au fil du temps.

Portée

La baisse de la mesure de cohérence des données n'évalue que les modèles d'apprentissage automatique.

  • Types d'actifs d'IA : Modèles d'apprentissage automatique
  • Type de problème d'apprentissage automatique :
    • Classification binaire
    • Classification multiclasse

Scores et valeurs

La baisse du score de cohérence des données indique si les transactions sont incohérentes en violant les modèles de données d'apprentissage.

Plage de valeurs : 0.0-1.0

Processus d'évaluation

Chaque transaction est analysée pour détecter les incohérences de données en comparant les transactions d'exécution avec les modèles des transactions dans les données d'apprentissage. Si une transaction enfreint un ou plusieurs des modèles de données de formation, elle est identifiée comme incohérente. Pour calculer la baisse de cohérence des données, le nombre total de transactions est divisé par le nombre de transactions identifiées comme incohérentes. Par exemple, si 10 transactions sont identifiées comme incohérentes sur un ensemble de 100 transactions, alors la baisse de cohérence des données est de 10 %.

Pour identifier les incohérences de données, un schéma est généré lorsque vous configurez la détection de dérive en créant un fichier de règles de dérive ( constraints.json ) pour spécifier les règles que vos données d'entrée doivent respecter. Le schéma est utilisé pour évaluer la dérive de vos données en identifiant les valeurs aberrantes qui ne correspondent pas aux contraintes spécifiées. Le schéma est spécifié sous la forme d'un objet JSON avec des tableaux columns et constraints qui décrivent les données d'apprentissage comme indiqué dans l'exemple suivant :

{
      "columns": [
        {
            "name": "CheckingStatus",
            "dtype": "categorical",
            "count": 5000,
            "sparse": false,
            "skip_learning": false
        },
      "constraints": [
        {
            "name": "categorical_distribution_constraint",
            "id": "f0476d40-d7df-4095-9be5-82564511432c",
            "kind": "single_column",
            "columns": [
                "CheckingStatus"
            ],
            "content": {
                "frequency_distribution": {
                    "0_to_200": 1304,
                    "greater_200": 305,
                    "less_0": 1398,
                    "no_checking": 1993
                }
            }
        }

Les valeurs sont spécifiées pour les clés name, dtype, count, sparse et skip_learning pour décrire une colonne.

Les clés « name » et « dtype » décrivent l'étiquette et le type de données d'une colonne. Les valeurs suivantes spécifiées avec la clé d' dtype, décrivent le type de données :

  • categorical
  • numeric_discrete
  • numeric_continuous

Le type de données spécifié détermine si d'autres propriétés statistiques sont décrites avec des clés, telles que min, max et mean. Par exemple, lorsque le type de données « numeric_discrete » ou « numeric_continuous » est spécifié, les propriétés sont décrites comme indiqué dans l'exemple suivant :

{
            "name": "LoanDuration",
            "dtype": "numeric_discrete",
            "count": 5000,
            "sparse": false,
            "skip_learning": false,
            "min": 4,
            "max": 53,
            "mean": 21.28820697954272,
            "std": 10.999096037050032,
            "percentiles": [
                13.0,
                21.0,
                29.0
            ],
            "count_actual": 4986
        }

La clé d' count s spécifie le nombre de lignes d'une colonne. Les valeurs booléennes sont spécifiées pour décrire les clés d' sparse s et d' skip_learning s d'une colonne. La clé « sparse » indique si une colonne est clairsemée et la clé « skip_learning » indique si une colonne ignore l'apprentissage de l'une des règles décrites dans le schéma. Une colonne est clairsemée si les percentiles d' 25th s et d' 75th s ont la même valeur.

La clé « name » spécifie le type de contrainte. Les valeurs suivantes sont spécifiées pour décrire le type de contrainte :

  • categorical_distribution_constraint
  • numeric_range_constraint
  • numeric_distribution_constraint
  • catnum_range_constraint
  • catnum_distribution_constraint
  • catcat_distribution_constraint

La clé d' id s identifie les contraintes avec un identifiant unique universel (UUID). La clé « kind » indique si la contrainte est de type « single_column » ou « two-column ».

La clé « columns » spécifie un tableau de noms de colonnes. Lorsqu'une contrainte d' single_column ité avec la clé d' kind ité est spécifiée, le tableau contient une valeur qui est en corrélation avec la colonne que vous souhaitez décrire. Lorsqu'une contrainte d' two-column ité avec la clé d' kind ité est spécifiée, le tableau contient des valeurs qui sont en corrélation avec les colonnes qui contiennent des données associées.

La clé « content » spécifie les attributs qui décrivent les caractéristiques statistiques de vos données. Le type de contrainte spécifié avec la clé « name » détermine l'attribut spécifié dans la clé « content », comme indiqué dans le tableau suivant :

Attribut Contraintes
fréquence_distribution catégorique_contrainte_distribution
plages numeric_range_constraint, catnum_range_constraint
distribution numeric_distribution_constraint, catnum_distribution_constraint
rare_combinations catcat_distribution_constraint
source_column catcat_distribution_constraint, catnum_range_constraint, catnum_distribution_constraint
target_column catcat_distribution_constraint, catnum_range_constraint, catnum_distribution_constraint

Les sections suivantes fournissent des exemples de la manière dont chaque type de contrainte est spécifié :

Contraintes de distribution catégorique

        {
            "name": "categorical_distribution_constraint",
            "id": "f0476d40-d7df-4095-9be5-82564511432c",
            "kind": "single_column",
            "columns": [
                "CheckingStatus"
            ],
            "content": {
                "frequency_distribution": {
                    "0_to_200": 1304,
                    "greater_200": 305,
                    "less_0": 1398,
                    "no_checking": 1993
                }
            }
        }

Dans les données de formation, la colonne « CheckingStatus » contient quatre valeurs spécifiées avec l'attribut « frequency_distribution ». L'attribut « frequency_distribution » spécifie les décomptes de fréquence avec des valeurs pour les catégories, telles que « 0_to_200 ». Si des enregistrements sont trouvés dans les données de charge utile qui spécifient des valeurs différentes des valeurs d'attributs d' frequency_distribution, les enregistrements sont identifiés comme étant des dérives.

Contrainte de plage numérique

   {
            "name": "numeric_range_constraint",
            "id": "79f3a1f5-30a1-4c7f-91a0-1613013ee802",
            "kind": "single_column",
            "columns": [
                "LoanAmount"
            ],
            "content": {
                "ranges": [
                    {
                        "min": 250,
                        "max": 11676,
                        "count": 5000
                    }
                ]
            }
        }

La colonne « LoanAmount » contient les valeurs minimales et maximales spécifiées avec l'attribut « ranges » pour définir une plage pour les données d'apprentissage. L'attribut « ranges » spécifie les régions à haute densité de la colonne. Les plages qui apparaissent rarement dans les données de formation ne sont pas incluses. Si des enregistrements sont trouvés dans les données de charge utile qui ne correspondent pas à la plage et à un tampon prédéfini, les enregistrements sont identifiés comme étant des dérives.

Contrainte de distribution numérique

{
            "name": "numeric_distribution_constraint",
            "id": "3a97494b-0cd7-483e-a1c6-adb7755c1cb0",
            "kind": "single_column",
            "columns": [
                "LoanAmount"
            ],
            "content": {
                "distribution": {
                        "name": "norm",
                        "parameters": {
                            "loc": 3799.62,
                            "scale": 1920.0640064678398
                        },
                        "p-value": 0.22617155797563282
                }
            }
        }

La colonne « LoanAmount » contient les valeurs spécifiées avec l'attribut « distribution » pour définir une distribution normale pour les données d'apprentissage. Si des enregistrements sont trouvés dans les données de charge utile qui ne correspondent pas à la distribution normale, ils sont identifiés comme étant des dérives. Les distributions qui sont ajustées à l'intérieur sont des distributions uniformes, exponentielles ou normales. Si les enregistrements qui correspondent à ces distributions ne sont pas trouvés, cette contrainte n'est pas apprise.

Catégorique - contrainte de distribution catégorique

    {
            "name": "catcat_distribution_constraint",
            "id": "99468600-1924-44d9-852c-1727c9c414ee",
            "kind": "two_column",
            "columns": [
                "CheckingStatus",
                "CreditHistory"
            ],
            "content": {
                "source_column": "CheckingStatus",
                "target_column": "CreditHistory",
                "rare_combinations": [
                    {
                        "source_value": "no_checking",
                        "target_values": [
                            "no_credits"
                        ]
                    }
                ]
            }
        }

Pour les colonnes « CheckingStatus » et « CreditHistory », les attributs « rare_combinations » spécifient une combinaison de valeurs qui apparaissent rarement dans les données d'apprentissage. Si des enregistrements contenant la combinaison sont trouvés dans les données de la charge utile, ils sont identifiés comme des dérives.

Contraintes catégoriques - contraintes de plage numérique

        {
            "name": "catnum_range_constraint",
            "id": "f252033c-1635-4974-8976-3f7904d0c37d",
            "kind": "two_column",
            "columns": [
                "CheckingStatus",
                "LoanAmount"
            ],
            "content": {
                "source_column": "CheckingStatus",
                "target_column": "LoanAmount",
                "ranges": {
                    "no_checking": [
                        {
                            "min": 250,
                            "max": 11676,
                            "count": 1993
                        }
                    ],
                    "less_0": [
                        {
                            "min": 250,
                            "max": 7200,
                            "count": 1398
                        }
                    ],
                    "0_to_200": [
                        {
                            "min": 250,
                            "max": 9076,
                            "count": 1304
                        }
                    ],
                    "greater_200": [
                        {
                            "min": 250,
                            "max": 9772,
                            "count": 305
                        }
                    ]
                }
            }
        }

L'attribut « ranges » spécifie les valeurs minimales et maximales des colonnes « CheckingStatus » et « LoanAmount » qui définissent une plage pour les données de formation. Si des enregistrements sont trouvés dans les données de la charge utile qui ne contiennent pas de valeurs de colonne LoanAmount et CheckingStatus qui correspondent à la plage et à un tampon prédéfini, les enregistrements sont identifiés comme étant des dérives.

Contraintes de distribution catégorielle-numérique

        {
            "name": "catnum_distribution_constraint",
            "id": "3a97494b-0cd7-483e-a1c6-adb7755c1cb0",
            "kind": "two_column",
            "columns": [
                "CheckingStatus",
                "LoanAmount"
            ],
            "content": {
                "source_column": "CheckingStatus",
                "target_column": "LoanAmount",
                "distribution": {
                    "greater_200": {
                        "name": "norm",
                        "parameters": {
                            "loc": 3799.62,
                            "scale": 1920.0640064678398
                        },
                        "p-value": 0.22617155797563282
                    }
                }
            }
        }

Les colonnes « LoanAmount » et « CheckingStatus » contiennent des valeurs spécifiées avec l'attribut « distribution » pour définir une distribution normale pour les données d'apprentissage. Si des enregistrements sont trouvés dans les données de charge utile qui ne contiennent pas de valeurs de colonne LoanAmount et CheckingStatus qui correspondent à la distribution normale, les enregistrements sont identifiés comme étant des dérives.

Etapes suivantes

Pour atténuer la dérive après sa détection, vous devez créer une nouvelle version du modèle qui corrige le problème. Les points de données mis en évidence comme causes de la dérive constituent un bon point de départ. Introduisez les nouvelles données dans le modèle prédictif après avoir manuellement étiqueté les transactions déviées et utilisez-les pour réentraîner le modèle.

Remarque :Les actions que vous entreprenez pour améliorer ou valider les performances ne sont pas prescrites et dépendent de votre cas d'utilisation du modèle et des objectifs que vous souhaitez atteindre. L'efficacité de chaque approche peut varier en fonction de votre mise en œuvre et de vos exigences.

Sujet parent : Indicateurs d'évaluation