Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
SQL Server 2019 et versions antérieures d’Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
Important
L’exploration de données a été déconseillée dans SQL Server 2017 Analysis Services et a maintenant été abandonnée dans SQL Server 2022 Analysis Services. La documentation n’est pas mise à jour pour les fonctionnalités déconseillées et abandonnées. Pour en savoir plus, consultez la compatibilité descendante des Analysis Services.
L’algorithme Règles d’association Microsoft est une implémentation simple de l’algorithme Apriori connu.
L’algorithme Microsoft Decision Trees et l’algorithme Règles d’association Microsoft peuvent être utilisés pour analyser des associations, mais les règles trouvées par chaque algorithme peuvent différer. Dans un modèle d’arbre de décision, les fractionnements qui mènent à des règles spécifiques sont basés sur le gain d’informations, tandis que dans un modèle d’association, les règles sont entièrement basées sur la confiance. Par conséquent, dans un modèle d’association, une règle forte ou une règle qui a une grande confiance, peut ne pas nécessairement être intéressante, car elle ne fournit pas de nouvelles informations.
Implémentation de l’algorithme d’association Microsoft
L’algorithme Apriori n’analyse pas les modèles, mais génère et compte ensuite les ensembles d’éléments candidats. Un élément peut représenter un événement, un produit ou la valeur d’un attribut, selon le type de données en cours d’analyse.
Dans le type le plus courant de variables booléennes du modèle d’association, représentant une valeur Oui/Non ou Missing/Existing, sont affectées à chaque attribut, tel qu’un nom de produit ou d’événement. Une analyse du panier de marché est un exemple de modèle de règles d’association qui utilise des variables booléennes pour représenter la présence ou l’absence de produits particuliers dans le panier d’achat d’un client.
Pour chaque ensemble d’éléments, l’algorithme crée ensuite des scores qui représentent la prise en charge et la confiance. Ces scores peuvent être utilisés pour classer et dériver des règles intéressantes des ensembles d’éléments.
Les modèles d’association peuvent également être créés pour les attributs numériques. Si les attributs sont continus, les nombres peuvent être discrétisés ou regroupés dans des compartiments. Les valeurs discrétisées peuvent ensuite être gérées en tant que paires booléennes ou en tant que paires attribut-valeur.
Prise en charge, probabilité et importance
Support, aussi appelée fréquence, signifie le nombre de cas qui contiennent l'élément cible ou une combinaison des éléments. Seuls les éléments qui ont au moins la quantité spécifiée de prise en charge peuvent être inclus dans le modèle.
Un ensemble d’éléments fréquent fait référence à une collection d’éléments où la combinaison d’éléments a également la prise en charge au-dessus du seuil défini par le paramètre MINIMUM_SUPPORT. Par exemple, si l’ensemble d’éléments est {A,B,C} et que la valeur MINIMUM_SUPPORT est 10, chaque élément individuel A, B et C doit être trouvé dans au moins 10 cas à inclure dans le modèle, et la combinaison d’éléments {A,B,C} doit également être trouvée dans au moins 10 cas.
Note Vous pouvez également contrôler le nombre d’ensembles d’éléments dans un modèle d’exploration de données en spécifiant la longueur maximale d’un ensemble d’éléments, où la longueur signifie le nombre d’éléments.
Par défaut, la prise en charge d’un élément ou d’un ensemble d’éléments particulier représente le nombre de cas qui contiennent cet élément ou élément. Toutefois, vous pouvez également exprimer MINIMUM_SUPPORT sous la forme d’un pourcentage des cas totaux dans le jeu de données, en tapant le nombre comme valeur décimale inférieure à 1. Par exemple, si vous spécifiez une valeur MINIMUM_SUPPORT 0,03, cela signifie qu’au moins 3% des cas totaux dans le jeu de données doivent contenir cet élément ou ensemble d’éléments pour l’inclusion dans le modèle. Vous devez expérimenter votre modèle pour déterminer si l’utilisation d’un nombre ou d’un pourcentage est plus logique.
En revanche, le seuil des règles n’est pas exprimé sous la forme d’un nombre ou d’un pourcentage, mais comme une probabilité, parfois appelée confiance. Par exemple, si le jeu d’éléments {A,B,C} se produit dans 50 cas, mais que le jeu d’éléments {A,B,D} se produit également dans 50 cas, et que l’ensemble d’éléments {A,B} dans un autre 50 cas, il est évident que {A,B} n’est pas un prédicteur fort de {C}. Par conséquent, pour pondérationr un résultat particulier par rapport à tous les résultats connus, SQL Server Analysis Services calcule la probabilité de la règle individuelle (par exemple, Si {A,B} Puis {C}) en divisant la prise en charge du jeu d’éléments {A,B,C} par la prise en charge de tous les ensembles d’éléments associés.
Vous pouvez restreindre le nombre de règles produites par un modèle en définissant une valeur pour MINIMUM_PROBABILITY.
Pour chaque règle créée, SQL Server Analysis Services génère un score qui indique son importance, également appelée lift. L’importance de l’ascenseur est calculée différemment pour les ensembles d’éléments et les règles.
L’importance d’un jeu d’éléments est calculée comme la probabilité du jeu d’éléments divisé par la probabilité composée des éléments individuels dans le jeu d’éléments. Par exemple, si un ensemble d’éléments contient {A,B}, SQL Server Analysis Services compte d’abord tous les cas qui contiennent cette combinaison A et B, et divise cela par le nombre total de cas, puis normalise la probabilité.
L'importance d'une règle est calculée à partir de la vraisemblance logarithmique du côté droit de la règle, étant donné le côté gauche de la règle. Par exemple, dans la règle If {A} Then {B}, SQL Server Analysis Services calcule le ratio des cas avec A et B sur les cas avec B, mais sans A, puis normalise ce ratio à l’aide d’une échelle logarithmique.
Sélection de caractéristiques
L’algorithme Règles d’association Microsoft n’effectue aucune sorte de sélection automatique des fonctionnalités. Au lieu de cela, l’algorithme fournit des paramètres qui contrôlent les données utilisées par l’algorithme. Cela peut inclure des limites sur la taille de chaque ensemble d’éléments ou la définition de la prise en charge maximale et minimale requise pour ajouter un ensemble d’éléments au modèle.
Pour filtrer les éléments et les événements trop courants et donc inintéressants, diminuez la valeur de MAXIMUM_SUPPORT pour supprimer des ensembles d’éléments très fréquents du modèle.
Pour filtrer les éléments et les ensembles d’éléments rares, augmentez la valeur de MINIMUM_SUPPORT.
Pour filtrer les règles, augmentez la valeur de MINIMUM_PROBABILITY.
Personnalisation de l’algorithme de règles d’association Microsoft
L’algorithme Règles d’association Microsoft prend en charge plusieurs paramètres qui affectent le comportement, les performances et la précision du modèle d’exploration de données résultant.
Définition des paramètres d’algorithme
Vous pouvez modifier les paramètres d’un modèle d’exploration de données à tout moment à l’aide du Concepteur d’exploration de données dans SQL Server Data Tools. Vous pouvez également modifier des paramètres par programmation à l’aide de la AlgorithmParameters collection dans AMO ou à l’aide de l’élément MiningModels (ASSL) dans XMLA. Le tableau suivant décrit chaque paramètre.
Note
Vous ne pouvez pas modifier les paramètres d’un modèle existant à l’aide d’une instruction DMX ; vous devez spécifier les paramètres dans DMX CREATE MODEL ou ALTER STRUCTURE... AJOUTEZ UN MODÈLE lorsque vous créez le modèle.
MAXIMUM_ITEMSET_COUNT
Spécifie le nombre maximal d’ensembles d’éléments à produire. Si aucun nombre n’est spécifié, la valeur par défaut est utilisée.
La valeur par défaut est 200000.
Note
Les ensembles d’éléments sont classés par prise en charge. Parmi les itemsets qui ont le même support, l'ordre est arbitraire.
MAXIMUM_ITEMSET_SIZE
Spécifie le nombre maximal d’éléments autorisés dans un ensemble d’éléments. La définition de cette valeur sur 0 spécifie qu’il n’existe aucune limite à la taille du jeu d’éléments.
La valeur par défaut est 3.
Note
La diminution de cette valeur peut potentiellement réduire le temps nécessaire à la création du modèle, car le traitement du modèle s’arrête lorsque la limite est atteinte.
MAXIMUM_SUPPORT
Spécifie le nombre maximal de cas qu’un ensemble d’éléments a pour prise en charge. Ce paramètre peut être utilisé pour éliminer les éléments qui apparaissent fréquemment et peuvent donc avoir peu de signification.
Si cette valeur est inférieure à 1, la valeur représente un pourcentage du nombre total de cas. Les valeurs supérieures à 1 représentent le nombre absolu de cas qui peuvent contenir l’ensemble d’éléments.
La valeur par défaut est 1.
MINIMUM_ITEMSET_SIZE
Spécifie le nombre minimal d’éléments autorisés dans un ensemble d’éléments. Si vous augmentez ce nombre, le modèle peut contenir moins d’ensembles d’éléments. Cela peut être utile si vous souhaitez ignorer les ensembles d’éléments à élément unique, par exemple.
La valeur par défaut est 1.
Note
Vous ne pouvez pas réduire le temps de traitement du modèle en augmentant la valeur minimale, car SQL Server Analysis Services doit calculer les probabilités pour les éléments uniques dans le cadre du traitement. Toutefois, en définissant cette valeur plus élevée, vous pouvez filtrer les ensembles d’éléments plus petits.
MINIMUM_PROBABILITY
Spécifie la probabilité minimale qu’une règle soit vraie.
Par exemple, si vous définissez cette valeur sur 0,5, cela signifie qu’aucune règle avec moins de cinquante pour cent de probabilité peut être générée.
La valeur par défaut est 0.4.
MINIMUM_SUPPORT
Spécifie le nombre minimal de cas qui doivent contenir l’ensemble d’éléments avant que l’algorithme génère une règle.
Si vous définissez cette valeur sur moins de 1, le nombre minimal de cas est calculé en pourcentage du nombre total de cas.
Si vous définissez cette valeur sur un nombre entier supérieur à 1, spécifie le nombre minimal de cas calculé en tant que nombre de cas qui doivent contenir l’ensemble d’éléments. L’algorithme peut augmenter automatiquement la valeur de ce paramètre si la mémoire est limitée.
La valeur par défaut est 0.03. Cela signifie que pour être inclus dans le modèle, un ensemble d’éléments doit être trouvé dans au moins 3% de cas.
OPTIMIZED_PREDICTION_COUNT
Définit le nombre d’éléments à mettre en cache pour optimiser la prédiction.
La valeur par défaut est 0. Lorsque la valeur par défaut est utilisée, l’algorithme génère autant de prédictions que demandés dans la requête.
Si vous spécifiez une valeur différente de zéro pour OPTIMIZED_PREDICTION_COUNT, les requêtes de prédiction peuvent retourner au maximum le nombre d’éléments spécifié, même si vous demandez des prédictions supplémentaires. Toutefois, la définition d’une valeur peut améliorer les performances de prédiction.
Par exemple, si la valeur est définie sur 3, l’algorithme met en cache seulement 3 éléments pour la prédiction. Vous ne pouvez pas voir d’autres prédictions susceptibles d’être tout aussi probables pour les 3 éléments retournés.
Indicateurs de modélisation
Les indicateurs de modélisation suivants sont pris en charge pour une utilisation avec l’algorithme Règles d’association Microsoft.
Non nul
Indique que la colonne ne peut pas contenir de valeur Null. Une erreur se produit si SQL Server Analysis Services rencontre une valeur Null pendant l’entraînement du modèle.
S’applique à la colonne de structure minière.
MODEL_EXISTENCE_ONLY
Signifie que la colonne sera traitée comme ayant deux états possibles : Manquant et Existant. Une valeur Null est manquante.
S’applique à la colonne du modèle d'exploration de données.
Spécifications
Un modèle d’association doit contenir une colonne clé, des colonnes d’entrée et une colonne prédictible unique.
Colonnes d’entrée et de prévision
L’algorithme Règles d’association Microsoft prend en charge les colonnes d’entrée spécifiques et les colonnes prévisibles répertoriées dans le tableau suivant. Pour plus d’informations sur la signification des types de contenu dans un modèle d’exploration de données, consultez Content Types (Exploration de données).
| Colonne | Types de contenu |
|---|---|
| Attribut d’entrée | Cyclique, discret, discrétisé, clé, table, ordonné |
| Attribut prédictible | Cyclique, discret, discrétisé, table, ordonné |
Note
Les types de contenu cycliques et ordonnés sont pris en charge, mais l’algorithme les traite comme des valeurs discrètes et n’effectue pas de traitement spécial.
Voir aussi
Algorithme d’association Microsoft
Exemples de requêtes de modèle d’association
Contenu du modèle d’exploration de données pour les modèles d’association (Analysis Services - Exploration de données)