Rapport de validation croisée (Analysis Services - Exploration de données)

La validation croisée vous permet de partitionner une structure d'exploration de données en sections croisées et d'effectuer l'apprentissage et le test des modèles de manière itérative sur chaque section croisée de données. Vous spécifiez plusieurs partitions pour la division des données. Chaque partition est utilisée à son tour comme données de test, tandis que les autres données sont utilisées pour l'apprentissage d'un nouveau modèle. Analysis Services génère ensuite un jeu de mesures de précision standard pour chaque modèle. En comparant les mesures des modèles générés pour chaque section croisée, vous pouvez vous faire une bonne idée de la fiabilité du modèle d'exploration de données pour le jeu de données complet.

Notes

La validation croisée ne peut pas être utilisée avec un modèle qui contient une colonne KEY TIME ou KEY SEQUENCE.

Cette section explique les informations présentées dans le rapport Validation croisée, situé sous l'onglet Graphique d'analyse de précision de l'exploration de données du Concepteur d'exploration de données. Pour plus d'informations sur la création d'un rapport, consultez Onglet Validation croisée (vue Graphique d'analyse de précision de l'exploration de données).

Création d'un rapport de validation croisée

Pour effectuer une validation croisée des modèles d'exploration de données associés à une structure d'exploration de données, vous utilisez soit l'onglet Validation croisée de la vue Graphique d'analyse de précision de l'exploration de données dans le Concepteur d'exploration de données, soit les procédures stockées de validation croisée, pour configurer les options suivantes :

  • Spécifiez le nombre de replis.

  • Spécifiez le nombre maximal de cas à utiliser pour la validation croisée. Ce nombre est divisé par le nombre de replis.

  • Spécifiez la colonne prédictible. Spécifiez, de manière facultative, un état prévisible.

Notes

Si votre structure d'exploration de données contient des modèles de clustering, spécifiez #Cluster au lieu de sélectionner une colonne prédictible. Le rapport retourne uniquement des résultats pour les modèles de clustering.

  • Définissez, de manière facultative, les paramètres qui contrôlent la façon dont la précision de prédiction est évaluée.

Choix d'un jeu de données pour la validation croisée

Lorsque vous utilisez l'onglet Validation croisée de la vue Graphique d'analyse de précision de l'exploration de données, il existe deux façons de contrôler le volume et le type des données utilisées pendant la validation croisée : vous pouvez spécifier le nombre de replis et vous pouvez limiter le nombre de cas. Par défaut, la validation croisée dans Business Intelligence Development Studio utilise les cas d'apprentissage pour chaque modèle. Si un filtre est associé au modèle, le filtre est appliqué.

La valeur Nombre de replis spécifie le nombre de sections croisées du jeu de données à créer. Chaque repli est utilisé en tant que jeu de données de test et les données dans autres replis sont utilisées pour l'apprentissage d'un nouveau modèle. Par conséquent, si vous avez utilisé la valeur minimale 2, une moitié du jeu de données est utilisée pour le test et l'autre moitié pour l'apprentissage.

Si la structure d'exploration de données n'est pas stockée dans une instance d'Analysis Services, mais est créée comme structure temporaire ou de session, le nombre maximal de replis que vous pouvez utiliser est égal à 10. Si la structure d'exploration de données est stockée dans une instance d'Analysis Services, vous ne pouvez pas créer plus de replis qu'il n'y a de cas. Si le nombre de cas est inférieur au nombre que vous définissez pour le paramètre Nombre de replis, le nombre moindre est utilisé. 

Notes

Lorsque vous augmentez le nombre de replis, le temps nécessaire pour effectuer la validation croisée s'accroît en conséquence, car un modèle doit être généré et testé pour chaque repli. Vous risquez d'être confronté à des problèmes de performances si le nombre de replis est trop élevé.

La valeur Nombre maximal de cas spécifie le nombre total de cas, tous replis confondus, pouvant être utilisés pour la validation croisée. Par conséquent, le nombre de cas dans un repli donné est égal à la valeur Nombre maximal de cas divisée par la valeur Nombre de replis. La valeur par défaut est 0, ce qui signifie que tous les cas de la structure d'exploration de données sont utilisés.

Si vous effectuez une validation croisée à l'aide de l'une des procédures stockées, vous fournissez des valeurs pour les propriétés FoldCount et MaxCases comme paramètres à la procédure stockée.

Notes

Si vous utilisez les procédures stockées de validation croisée, vous pouvez également configurer le paramètre DataSet pour définir le jeu de données utilisé pour le test. Pour le jeu de données, les options possibles sont notamment le jeu d'apprentissage uniquement, le jeu de test et d'apprentissage, ainsi que des combinaisons de jeu d'apprentissage et de test avec des filtres de modèle d'exploration de données. Pour plus d'informations, consultez SystemGetCrossValidationResults (Analysis Services - Exploration de données).

Choix des modèles et colonnes à valider

Lorsque vous utilisez l'onglet Validation croisée du Concepteur d'exploration de données, vous devez en premier lieu sélectionner la colonne prédictible dans une liste. Une structure d'exploration de données peut généralement prendre en charge de nombreux modèles d'exploration de données, qui n'utilisent pas tous la même colonne prédictible. Lorsque vous exécutez la validation croisée, seuls les modèles qui utilisent la même colonne prédictible peuvent être inclus dans le rapport.

Pour choisir un attribut prédictible, cliquez sur Attribut cible et sélectionnez la colonne dans la liste. Si l'attribut cible est une colonne imbriquée, ou une colonne dans une table imbriquée, vous devez taper le nom de la colonne imbriquée sous la forme <Nom de la table imbriquée>(key).<Colonne imbriquée>. Si la seule colonne utilisée de la table imbriquée est la colonne clé, vous pouvez utiliser la forme <Nom de la table imbriquée>(key).

Remarque   Si vous utilisez les procédures stockées, vous pouvez contrôler davantage les modèles testés. Pour plus d'informations, consultez SystemGetCrossValidationResults (Analysis Services - Exploration de données).

Une fois que vous avez sélectionné l'attribut prédictible, Analysis Services teste automatiquement tous les modèles qui utilisent le même attribut prédictible.

Si l'attribut cible contient des valeurs discrètes, une fois que vous avez sélectionné la colonne prédictible, vous pouvez taper facultativement un état cible, si vous souhaitez prédire une valeur spécifique.

La sélection de l'état cible affecte les mesures retournées. Si vous spécifiez un attribut cible (c'est-à-dire un nom de colonne) et ne choisissez pas de valeur spécifique que le modèle doit prédire, le modèle sera évalué par défaut sur sa prédiction de l'état le plus probable.

Si vous effectuez la validation croisée d'un modèle de clustering, il n'existe aucune colonne prédictible. Vous sélectionnez à la place #Cluster dans la liste d'attributs prédictibles de la zone de liste Attribut cible. Une fois que vous avez sélectionné Cluster, les autres options qui ne sont pas en rapport avec les modèles de clustering, comme État cible, sont désactivées. Analysis Services testera tous les modèles de clustering associés à la structure d'exploration de données.

Définition du seuil de précision

Vous pouvez contrôler le standard pour mesurer la précision de prédiction en définissant une valeur pour le paramètre Seuil cible. Le seuil représente une sorte de barre de précision. À chaque prédiction est assignée une probabilité d'exactitude de la valeur prédite. Par conséquent, si vous définissez pour Seuil cible une valeur plus proche de 1, la probabilité d'une prédiction donnée doit être relativement élevée pour être comptabilisée en tant que prédiction correcte. Inversement, si vous définissez pour Seuil cible une valeur plus proche de 0, même les prédictions ayant des valeurs de probabilité inférieures sont comptabilisées en tant que prédictions correctes.

Aucune valeur de seuil particulière n'est recommandée, car la probabilité de toute prédiction dépend des données et du type de prédiction que vous faites. Vous devez examiner des prédictions à différents niveaux de probabilité pour déterminer une barre de précision appropriée pour vos données. Cette étape est importante, car la valeur que vous définissez pour Seuil cible a une répercussion importante sur la précision mesurée du modèle.

Par exemple, supposons que votre structure contienne trois modèles qui prédisent l'état cible avec les probabilités 0,05, 0,15 et 0,8. Si vous définissez la valeur 0,5 pour le seuil, une seule prédiction est comptabilisée comme correcte. Si vous définissez la valeur 0,10 pour Seuil cible, deux prédictions sont comptabilisées comme correctes.

Lorsque Seuil cible a la valeur null, qui est la valeur par défaut, l'état le plus probable est utilisé comme cible. Dans l'exemple que nous venons de citer, les trois modèles ont des prédictions correctes. Par conséquent, lorsque vous comparez des modèles, vous devez prendre en compte le seuil utilisé pour chaque instance de validation croisée. Vous pouvez également évaluer les probabilités moyennes pour tous les cas d'un modèle donné en utilisant les mesures de vraisemblance moyenne et d'erreur quadratique moyenne fournies dans le rapport de validation croisée.

Limites lors de l'utilisation de l'onglet Validation croisée

Si vous effectuez une validation croisée à l'aide du rapport de validation croisée de Business Intelligence Development Studio, les modèles que vous pouvez tester et les paramètres que vous pouvez définir sont soumis à certaines limites.

  • Par défaut, tous les modèles associés à la structure d'exploration de données sélectionnée font l'objet d'une validation croisée. Vous ne pouvez pas spécifier le modèle ou une liste de modèles.

  • La validation croisée n'est pas prise en charge pour les modèles basés sur l'algorithme MTS (Microsoft Time Series) ou l'algorithme MSC (Microsoft Sequence Clustering).

  • Le rapport ne peut pas être créé si votre structure d'exploration de données ne contient aucun modèle pouvant être testé par validation croisée.

  • Si la structure d'exploration de données contient des modèles de clustering et des modèles qui n'en sont pas et que vous ne choisissez pas l'option #Cluster, les résultats des deux types de modèles sont affichés dans le même rapport, bien qu'il se peut que les paramètres d'attribut, d'état et de seuil ne soient pas appropriés aux modèles de clustering.

  • Les valeurs de certains paramètres sont limitées. Par exemple, un avertissement s'affiche si le nombre de replis est supérieur à 10, car la génération d'autant de modèles peut engendrer un affichage lent du rapport.

Si vous souhaitez spécifier des paramètres avancés, vous devez utiliser les procédures stockées de validation croisée. Pour plus d'informations, consultez Procédures stockées d'exploration de données (Analysis Services - Exploration de données).

Résultats de la validation croisée

Après avoir spécifié les paramètres et cliqué sur Actualiser, les résultats de la validation croisée s'affichent dans la grille de résultats. Cette section décrit le contenu de chaque colonne de la grille de résultats.

Outre certaines informations de base sur le nombre de replis dans les données et le volume de données dans chaque repli, Analysis Services affiche un ensemble de mesures à propos de chaque modèle, classées par type. Le tableau suivant répertorie les tests et mesures, et explique la signification des mesures.

Type de test

Mesures et descriptions

Clustering

Probabilité de casIndication de la probabilité qu'a un cas d'appartenir à un cluster spécifique.

Classification

Vrai positifNombre de cas qui remplissent ces conditions :
  • Le cas contient la valeur cible.

  • Le modèle a prédit que le cas contient la valeur cible.

Faux positifNombre de cas qui remplissent ces conditions :
  • La valeur réelle est égale à la valeur cible.

  • Le modèle a prédit que le cas contient la valeur cible.

Vrai négatifNombre de cas qui remplissent ces conditions :
  • Le cas ne contient pas la valeur cible.

  • Le modèle a prédit que le cas ne contient pas la valeur cible.

Faux négatifNombre de cas qui remplissent ces conditions :
  • La valeur réelle n'est pas égale à la valeur cible.

  • Le modèle a prédit que le cas ne contient pas la valeur cible.

Classification

Succès/ÉchecNombre de cas qui remplissent ces conditions :
  • Succès si l'état prédit avec la probabilité la plus élevée est identique à l'état d'entrée et la probabilité est supérieure à la valeur de Seuil d'état.

  • Sinon, Échec.

Vraisemblance

FinesseRapport entre la probabilité de prédiction réelle et la probabilité marginale dans les scénarios de test. Cette mesure indique le degré d'amélioration de la probabilité lorsque le modèle est utilisé.
Erreur quadratique moyenneRacine carré de l'erreur moyenne pour tous les cas de la partition, divisée par le nombre de cas de la partition, à l'exception des lignes dont des valeurs sont manquantes.
Score du journalLogarithme de la probabilité réelle de chaque cas, additionnée, puis divisée par le nombre de lignes du jeu de données, à l'exclusion des lignes dont la valeur est manquante. Étant donné que la probabilité est représentée comme une fraction décimale, les scores du journal sont toujours des nombres négatifs. Un score proche de 0 indique une prédiction plus fiable.

Estimation

Erreur quadratique moyenneMoyenne d'erreur de la valeur prédite par rapport à la valeur réelle, exprimée sous la forme de la racine carrée de la somme moyenne des erreurs quadratiques.
Erreur d'absolue moyenneMoyenne d'erreur de la valeur prédite par rapport à la valeur réelle, exprimée sous la forme de la moyenne de la somme absolue des erreurs.
Score du journalScore de vraisemblance du journal pour la prédiction : logarithme de la probabilité réelle de chaque cas, additionnée, puis divisée par le nombre de lignes du jeu de données, à l'exclusion des lignes dont la valeur est manquante. Étant donné que la probabilité est représentée comme une fraction décimale, les scores du journal sont toujours des nombres négatifs. Un score proche de 0 indique une prédiction plus fiable. Alors que les scores bruts peuvent avoir des distributions très irrégulières ou asymétriques, un score de journal est semblable à un pourcentage.

Agrégats

Les mesures d'agrégat fournissent une indication de la variation des résultats pour chaque partition.

MoyenneMoyenne des valeurs de partition pour une mesure donnée.
Écart typeMoyenne de l'écart de la moyenne pour une mesure spécifique, sur toutes les partitions d'un modèle.

Notes

Ces mesures de précision sont calculées pour chaque attribut cible, et pour chaque attribut vous pouvez spécifier ou omettre la valeur cible. Il est possible que certains enregistrement n'aient aucune valeur pour l'attribut cible ; ce cas spécial est appelé un cas de valeur manquante. Les lignes avec des valeurs manquantes ne sont pas calculées lors de la mesure de précision pour un attribut cible spécifique. De plus, puisque les scores sont calculés individuellement pour chaque attribut, si des valeurs sont présentes pour l'attribut cible mais manquantes pour les autres attributs, cela n'affecte pas le score de l'attribut cible.