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.
Lorsque vous créez une requête sur un modèle d’exploration de données, vous pouvez créer une requête de contenu, qui fournit des détails sur les modèles découverts dans l’analyse, ou vous pouvez créer une requête de prédiction, qui utilise les modèles du modèle pour effectuer des prédictions pour les nouvelles données. Vous pouvez également récupérer des métadonnées sur le modèle à l’aide d’une requête sur l’ensemble de lignes de schéma d’exploration de données. Cette section explique comment créer ces requêtes pour les modèles basés sur l’algorithme Microsoft Naive Bayes.
Requêtes de contenu
Obtention des métadonnées de modèle à l’aide de DMX
Récupération d’un résumé des données d’apprentissage
Recherche d’informations supplémentaires sur les attributs
Utilisation de procédures stockées système
Requêtes de prédiction
Prédiction des résultats à l’aide d’une requête singleton
Obtention de prédictions avec des valeurs de probabilité et de prise en charge
Recherche d’informations sur un modèle Naive Bayes
Le contenu du modèle d’un modèle Naive Bayes fournit des informations agrégées sur la distribution des valeurs dans les données d’apprentissage. Vous pouvez également récupérer des informations sur les métadonnées du modèle en créant des requêtes sur les ensembles de lignes de schéma d’exploration de données.
Exemple de requête 1 : obtention de métadonnées de modèle à l’aide de DMX
En interrogeant l’ensemble de lignes du schéma d’exploration de données, vous pouvez trouver des métadonnées pour le modèle. Cela peut inclure lorsque le modèle a été créé, lorsque le modèle a été traité pour la dernière fois, le nom de la structure d’exploration de données sur laquelle le modèle est basé et le nom des colonnes utilisées comme attribut prédictible. Vous pouvez également retourner les paramètres utilisés lors de la création du modèle.
SELECT MODEL_CATALOG, MODEL_NAME, DATE_CREATED, LAST_PROCESSED,
SERVICE_NAME, PREDICTION_ENTITY, FILTER
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_NaiveBayes_Filtered'
Exemples de résultats :
| CATALOGUE DE MODÈLES | AdventureWorks |
| MODEL_NAME | TM_NaiveBayes_Filtered |
| Date de création | 3/1/2008 19:15 |
| DERNIER_TRAITÉ | 3/2/2008 20:00 |
| SERVICE_NAME | Microsoft_Naive_Bayes |
| PREDICTION_ENTITY | Bike Buyer, Revenu annuel |
| FILTRE | [Region] = 'Europe' OR [Region] = 'North America' |
Le modèle utilisé pour cet exemple est basé sur le modèle Naive Bayes que vous créez dans le didacticiel d’exploration de données de base, mais a été modifié en ajoutant un deuxième attribut prédictible et en appliquant un filtre aux données d’apprentissage.
Exemple de requête 2 : récupération d’un résumé des données d’entraînement
Dans un modèle Naive Bayes, le nœud de statistiques marginales stocke des informations agrégées sur la distribution des valeurs dans les données d’apprentissage. Ce résumé est pratique et vous évite d'avoir à créer des requêtes SQL sur les données d'entraînement pour trouver les mêmes informations.
L’exemple suivant utilise une requête de contenu DMX pour récupérer les données du nœud (NODE_TYPE = 24). Étant donné que les statistiques sont stockées dans une table imbriquée, le mot clé FLATTENED est utilisé pour faciliter l’affichage des résultats.
SELECT FLATTENED MODEL_NAME,
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, [SUPPORT], [PROBABILITY], VALUETYPE FROM NODE_DISTRIBUTION) AS t
FROM TM_NaiveBayes.CONTENT
WHERE NODE_TYPE = 26
Remarque
Vous devez placer les noms des colonnes, SUPPORT et PROBABILITY, entre crochets pour les distinguer des mots-clés réservés des Expressions Multidimensionnelles (MDX) ayant les mêmes noms.
Résultats partiels :
| MODEL_NAME | t.ATTRIBUTE_NAME | t.ATTRIBUTE_VALUE | t.SUPPORT | t.PROBABILITÉ | t.VALUETYPE |
|---|---|---|---|---|---|
| TM_NaiveBayes | Acheteur de vélo | Manquant | 0 | 0 | 1 |
| TM_NaiveBayes | Acheteur de vélo | 0 | 8869 | 0.507263784 | 4 |
| TM_NaiveBayes | Acheteur de vélo | 1 | 8615 | 0.492736216 | 4 |
| TM_NaiveBayes | Sexe | Manquant | 0 | 0 | 1 |
| TM_NaiveBayes | Sexe | F | 8656 | 0.495081217 | 4 |
| TM_NaiveBayes | Sexe | M | 8828 | 0.504918783 | 4 |
Par exemple, ces résultats vous indiquent le nombre de cas d’entraînement pour chaque valeur discrète (VALUETYPE = 4), ainsi que la probabilité calculée, ajustées pour les valeurs manquantes (VALUETYPE = 1).
Pour obtenir une définition des valeurs fournies dans la table NODE_DISTRIBUTION dans un modèle Naive Bayes, consultez Contenu du modèle d’exploration de données pour les modèles Naive Bayes (Analysis Services - Exploration de données). Pour plus d’informations sur la façon dont les calculs de prise en charge et de probabilité sont affectés par des valeurs manquantes, consultez Valeurs manquantes (Analysis Services - Exploration de données).
Exemple de requête 3 : Recherche d’informations supplémentaires sur les attributs
Étant donné qu’un modèle Naive Bayes contient souvent des informations complexes sur les relations entre différents attributs, le moyen le plus simple d’afficher ces relations consiste à utiliser microsoft Naive Bayes Viewer. Toutefois, vous pouvez créer des requêtes DMX pour retourner les données.
L’exemple suivant montre comment retourner des informations à partir du modèle sur un attribut particulier. Region
SELECT NODE_TYPE, NODE_CAPTION,
NODE_PROBABILITY, NODE_SUPPORT, MSOLAP_NODE_SCORE
FROM TM_NaiveBayes.CONTENT
WHERE ATTRIBUTE_NAME = 'Region'
Cette requête retourne deux types de nœuds : le nœud qui représente l’attribut d’entrée (NODE_TYPE = 10) et les nœuds pour chaque valeur de l’attribut (NODE_TYPE = 11). La légende du nœud est utilisée pour identifier le nœud, plutôt que le nom du nœud, car la légende affiche à la fois le nom de l’attribut et la valeur d’attribut.
| NODE_TYPE | NODE_CAPTION | PROBABILITÉ_NŒUD | NODE_SUPPORT | MSOLAP_NODE_SCORE | TYPE_DE_NŒUD |
|---|---|---|---|---|---|
| 10 | Acheteur de vélos -> Région | 1 | 17484 | 84.51555875 | 10 |
| 11 | Achat de vélo -> Région = Manquante | 0 | 0 | 0 | 11 |
| 11 | Acheteur de vélos -> Région = Amérique du Nord | 0.508236102 | 8886 | 0 | 11 |
| 11 | Acheteur de vélos -> Région = Pacifique | 0.193891558 | 3390 | 0 | 11 |
| 11 | Acheteur de vélos -> Région = Europe | 0.29787234 | 5208 | 0 | 11 |
Certaines des colonnes stockées dans les nœuds sont les mêmes que celles que vous pouvez obtenir à partir des nœuds de statistiques marginales, telles que le score de probabilité de nœud et les valeurs de prise en charge du nœud. Toutefois, le MSOLAP_NODE_SCORE est une valeur spéciale fournie uniquement pour les nœuds d’attribut d’entrée et indique l’importance relative de cet attribut dans le modèle. Vous pouvez voir les mêmes informations dans le volet Réseau de dépendances de la visionneuse ; toutefois, la visionneuse ne fournit pas de scores.
La requête suivante retourne les scores d’importance de tous les attributs du modèle :
SELECT NODE_CAPTION, MSOLAP_NODE_SCORE
FROM TM_NaiveBayes.CONTENT
WHERE NODE_TYPE = 10
ORDER BY MSOLAP_NODE_SCORE DESC
Exemples de résultats :
| NODE_CAPTION | MSOLAP_NODE_SCORE |
|---|---|
| Acheteur de Vélos -> Total Enfants | 181.3654836 |
| Bike Buyer -> Distance de trajet | 179.8419482 |
| Bike Buyer -> Programme d'éducation en anglais | 156.9841928 |
| Acheteur de Vélos -> Nombre d'Enfants à Domicile | 111,8122599 |
| Acheteur de vélos -> Région | 84.51555875 |
| Bike Buyer -> État conjugal | 23.13297354 |
| Bike Buyer -> Occupation anglaise | 2.832069191 |
En parcourant le contenu du modèle dans la visionneuse de l’arborescence de contenu générique Microsoft, vous obtiendrez une meilleure idée des statistiques susceptibles d’être intéressantes. Quelques exemples simples ont été présentés ici ; plus souvent, vous devrez peut-être exécuter plusieurs requêtes ou stocker les résultats et les traiter sur le client.
Exemple de requête 4 : utilisation de procédures stockées système
Outre l’écriture de vos propres requêtes de contenu, vous pouvez utiliser certaines procédures stockées système Analysis Services pour explorer les résultats. Pour utiliser une procédure stockée système, préfixez le nom de la procédure stockée avec le mot clé CALL :
CALL GetPredictableAttributes ('TM_NaiveBayes')
Résultats partiels :
| Nom_d’Attribut | NODE_UNIQUE_NAME |
|---|---|
| Acheteur de vélo | 100000001 |
Remarque
Ces procédures stockées système sont destinées à la communication interne entre le serveur Analysis Services et le client et ne doivent être utilisées que pour des raisons pratiques lors du développement et du test de modèles d’exploration de données. Lorsque vous créez des requêtes pour un système de production, vous devez toujours écrire vos propres requêtes à l’aide de DMX.
Pour plus d’informations sur les procédures stockées système Analysis Services, consultez Procédures stockées d’exploration de données (Analysis Services - Exploration de données).
Utilisation d’un modèle Naive Bayes pour effectuer des prédictions
L’algorithme Microsoft Naive Bayes est généralement utilisé moins pour la prédiction que pour l’exploration des relations entre les attributs d’entrée et prévisibles. Toutefois, le modèle prend en charge l’utilisation de fonctions de prédiction pour la prédiction et l’association.
Exemple de requête 5 : Prédiction des résultats à l’aide d’une requête Singleton
La requête suivante utilise une requête singleton pour fournir une nouvelle valeur et prédire, en fonction du modèle, si un client avec ces caractéristiques est susceptible d’acheter un vélo. Le moyen le plus simple de créer une requête singleton sur un modèle de régression consiste à utiliser la boîte de dialogue Entrée de requête Singleton . Par exemple, vous pouvez générer la requête DMX suivante en sélectionnant le TM_NaiveBayes modèle, en choisissant Singleton Query et en sélectionnant des valeurs dans les listes déroulantes pour [Commute Distance] et Gender.
SELECT
Predict([TM_NaiveBayes].[Bike Buyer])
FROM
[TM_NaiveBayes]
NATURAL PREDICTION JOIN
(SELECT '5-10 Miles' AS [Commute Distance],
'F' AS [Gender]) AS t
Résultats de l'exemple :
| L'Expression |
|---|
| 0 |
La fonction de prédiction retourne la valeur la plus probable, dans ce cas, 0, ce qui signifie que ce type de client est peu susceptible d’acheter un vélo.
Exemple de requête 6 : obtention de prédictions avec des valeurs de probabilité et de support
En plus de prédire un résultat, vous souhaitez souvent savoir à quel point la prédiction est forte. La requête suivante utilise la même requête singleton que l’exemple précédent, mais ajoute la fonction de prédiction, PredictHistogram (DMX) pour retourner une table imbriquée qui contient des statistiques à la prise en charge de la prédiction.
SELECT
Predict([TM_NaiveBayes].[Bike Buyer]),
PredictHistogram([TM_NaiveBayes].[Bike Buyer])
FROM
[TM_NaiveBayes]
NATURAL PREDICTION JOIN
(SELECT '5-10 Miles' AS [Commute Distance],
'F' AS [Gender]) AS t
Résultats de l'exemple :
| Acheteur de vélo | $SOUTIEN | $PROBABILITY | $PROBABILITÉAJUSTÉE | $VARIANCE | $STDEV |
|---|---|---|---|---|---|
| 0 | 10161.5714 | 0.581192599 | 0.010530981 | 0 | 0 |
| 1 | 7321.428768 | 0.418750215 | 0.008945684 | 0 | 0 |
| 0.999828444 | 5.72E-05 | 5.72E-05 | 0 | 0 |
La ligne finale du tableau indique les ajustements pour prendre en charge et la probabilité de la valeur manquante. Les valeurs de variance et d’écart type sont toujours 0, car les modèles Naive Bayes ne peuvent pas modéliser des valeurs continues.
Exemple de requête 7 : Prédiction d’associations
L’algorithme Microsoft Naive Bayes peut être utilisé pour l’analyse d’association, si la structure d’exploration de données contient une table imbriquée avec l’attribut prédictible comme clé. Par exemple, vous pouvez créer un modèle Naive Bayes à l’aide de la structure d’exploration de données créée dans la leçon 3 : Création d’un scénario de panier de marché (didacticiel sur l’exploration de données intermédiaire) du didacticiel d’exploration de données. Le modèle utilisé dans cet exemple a été modifié pour ajouter des informations sur le revenu et la région client dans la table de cas.
L’exemple de requête suivant montre une requête singleton qui prédit les produits liés aux achats du produit. 'Road Tire Tube' Vous pouvez utiliser ces informations pour recommander des produits à un type spécifique de client.
SELECT PredictAssociation([Association].[v Assoc Seq Line Items])
FROM [Association_NB]
NATURAL PREDICTION JOIN
(SELECT 'High' AS [Income Group],
'Europe' AS [Region],
(SELECT 'Road Tire Tube' AS [Model])
AS [v Assoc Seq Line Items])
AS t
Résultats partiels :
| Modèle |
|---|
| Shorts de montagne féminins |
| Bouteille d'eau |
| Touring-3000 |
| Tournée-2000 |
| Touring-1000 |
Liste des fonctions
Tous les algorithmes Microsoft prennent en charge un ensemble commun de fonctions. Toutefois, l’algorithme Microsoft Naive Bayes prend en charge les fonctions supplémentaires répertoriées dans le tableau suivant.
| Fonction de prédiction | Utilisation |
| IsDescendant (DMX) | Détermine si un nœud est un enfant d’un autre nœud dans le modèle. |
| Prédire (DMX) | Retourne une valeur prédite ou un jeu de valeurs pour une colonne spécifiée. |
| PredictAdjustedProbability (DMX) | Retourne la probabilité pondérée. |
| PredictAssociation (DMX) | Prédit l’appartenance à un jeu de données associatif. |
| PredictNodeId (DMX) | Retourne la Node_ID pour chaque cas. |
| PredictProbability (DMX) | Retourne la probabilité de la valeur prédite. |
| PredictSupport (DMX) | Retourne la valeur de prise en charge pour un état spécifié. |
Pour afficher la syntaxe des fonctions spécifiques, consultez la référence de fonction DMX (Data Mining Extensions).
Voir aussi
Informations techniques de référence sur l’algorithme Microsoft Naive Bayes
Algorithme Microsoft Naive Bayes
Contenu du modèle d’exploration de données pour les modèles Naive Bayes (Analysis Services - Exploration de données)