Interrogation d'un modèle de régression linéaire (Analysis Services - Exploration de données)
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 (ou séquences) découverts au cours de l'analyse, ou créer une requête de prédiction, qui utilise les séquences du modèle pour effectuer des prédictions pour les nouvelles données. Par exemple, une requête de contenu peut fournir des détails supplémentaires sur la formule de régression, tandis qu'une requête de prédiction peut vous indiquer si un nouveau point de données est adapté au modèle. Vous pouvez également extraire les métadonnées relatives au modèle en utilisant une requête.
Cette section explique comment créer ces requêtes pour les modèles basés sur l'algorithme MLR (Microsoft Linear Regression).
Notes
La régression linéaire étant basée sur un cas spécial de l'algorithme MDT (Microsoft Decision Trees), les similarités sont nombreuses, et certains modèles d'arbre de décision qui utilisent des attributs prédictibles continus peuvent contenir des formules de régression. Pour plus d'informations, consultez Références techniques relatives à l'algorithme MDT (Microsoft Decision Trees).
Requêtes de contenu
Utilisation d'un ensemble de lignes de schéma d'exploration de données pour déterminer les paramètres utilisés pour un modèle
Utilisation de DMX pour retourner la formule de régression du modèle
Retour du coefficient du modèle uniquement
Requêtes de prédiction
Prédiction du revenu à l'aide d'une requête singleton
Utilisation des fonctions de prédiction avec un modèle de régression
Recherche d'informations sur le modèle de régression linéaire
La structure d'un modèle de régression linéaire est extrêmement simple : le modèle d'exploration de données représente les données sous la forme d'un nœud unique qui définit la formule de régression. Pour plus d'informations, consultez Contenu du modèle d'exploration de données pour les modèles de régression logistique (Analysis Services - Exploration de données).
Retour en haut
Exemple de requête 1 : utilisation de l'ensemble de lignes de schéma d'exploration de données pour déterminer les paramètres utilisés pour un modèle
En interrogeant l'ensemble de lignes de schéma d'exploration de données, vous pouvez obtenir les métadonnées relatives au modèle. Celles-ci peuvent inclure la date de création du modèle, celle de son dernier traitement, le nom de la structure d'exploration de données sur laquelle le modèle est basé, ainsi que le nom de la colonne désignée comme attribut prédictible. Vous pouvez également retourner les paramètres qui ont été utilisés lorsque le modèle a été créé pour la première fois.
SELECT MINING_PARAMETERS
FROM $system.DMSCHEMA_MINING_MODELS
WHERE MODEL_NAME = 'TM_PredictIncome'
Exemples de résultats :
MINING_PARAMETERS |
---|
COMPLEXITY_PENALTY=0.9, MAXIMUM_INPUT_ATTRIBUTES=255, MAXIMUM_OUTPUT_ATTRIBUTES=255, MINIMUM_SUPPORT=10, SCORE_METHOD=4, SPLIT_METHOD=3, FORCE_REGRESSOR= |
Notes
Le paramètre FORCE_REGRESSOR = indique que la valeur actuelle du paramètre FORCE_REGRESSOR est Null.
Retour en haut
Exemple de requête 2 : récupération de la formule de régression du modèle
La requête suivante retourne le contenu du modèle d'exploration de données pour un modèle de régression linéaire qui a été construit en utilisant la même source de données de publipostage ciblé que celle utilisée dans le Didacticiel sur l'exploration de données de base. Ce modèle prédit le revenu des clients en fonction de leur âge.
La requête retourne le contenu du nœud qui contient la formule de régression. Chaque variable et chaque coefficient est stocké dans une ligne distincte de la table imbriquée NODE_DISTRIBUTION. Pour consulter la formule de régression complète, dans la Visionneuse d'arborescences Microsoft, cliquez sur le nœud (Tout), puis ouvrez Légende d'exploration de données.
SELECT FLATTENED NODE_DISTRIBUTION as t
FROM LR_PredictIncome.CONTENT
Notes
Si vous référencez des colonnes individuelles de la table imbriquée en utilisant une requête telle que SELECT <column name> from NODE_DISTRIBUTION, certaines colonnes telles que SUPPORT ou PROBABILITY doivent être placées entre crochets afin de les distinguer des mots clés réservés qui portent le même nom.
Résultats attendus :
t.ATTRIBUTE_NAME |
t.ATTRIBUTE_VALUE |
t.SUPPORT |
t.PROBABILITY |
t.VARIANCE |
t.VALUETYPE |
---|---|---|---|---|---|
Yearly Income |
Missing |
0 |
0.000457142857142857 |
0 |
1 |
Yearly Income |
57220.8876687257 |
17484 |
0.999542857142857 |
1041275619.52776 |
3 |
Age |
471.687717702463 |
0 |
0 |
126.969442359327 |
7 |
Age |
234.680904692439 |
0 |
0 |
0 |
8 |
Age |
45.4269617936399 |
0 |
0 |
126.969442359327 |
9 |
|
35793.5477381267 |
0 |
0 |
1012968919.28372 |
11 |
En comparaison, dans Légende d'exploration de données, la formule de régression apparaît comme suit :
Yearly Income = 57,220.919 + 471.688 * (Age - 45.427)
Vous pouvez constater que dans Légende d'exploration de données, certains numéros sont arrondis ; toutefois, la table NODE_DISTRIBUTION et Légende d'exploration de données contiennent essentiellement les mêmes valeurs.
Les valeurs indiquées dans la colonne VALUETYPE précisent le type des informations contenues dans chaque ligne, ce qui est utile si vous traitez les résultats par programme. Le tableau suivant affiche les types de valeur qui sont générés pour une formule de régression linéaire.
VALUETYPE |
---|
1 (Manquante) |
3 (Continue) |
7 (Coefficient) |
8 (Gain du score) |
9 (Statistiques) |
7 (Coefficient) |
8 (Gain du score) |
9 (Statistiques) |
11 (Ordonnée à l'origine) |
Pour plus d'informations sur la signification de chaque type de valeur pour les modèles de régression, consultez Contenu du modèle d'exploration de données pour les modèles de régression linéaire (Analysis Services - Exploration de données).
Retour en haut
Exemple de requête 3 : retour du coefficient du modèle uniquement
En utilisant l'énumération VALUETYPE, vous pouvez retourner uniquement le coefficient de l'équation de régression, tel qu'indiqué dans la requête suivante :
SELECT FLATTENED MODEL_NAME,
(SELECT ATTRIBUTE_VALUE, VALUETYPE
FROM NODE_DISTRIBUTION
WHERE VALUETYPE = 11)
AS t
FROM LR_PredictIncome.CONTENT
Cette requête retourne deux lignes : une provenant du contenu du modèle d'exploration de données et celle provenant de la table imbriquée qui contient le coefficient. La colonne ATTRIBUTE_NAME n'est pas incluse ici parce qu'elle est toujours vide pour le coefficient.
MODEL_NAME |
t.ATTRIBUTE_VALUE |
t.VALUETYPE |
---|---|---|
LR_PredictIncome |
|
|
LR_PredictIncome |
35793.5477381267 |
11 |
Retour en haut
Réalisation de prédictions depuis un modèle de régression linéaire
Vous pouvez créer des requêtes de prédiction sur des modèles de régression linéaire en utilisant l'onglet Prévision de modèle d'exploration de données du Concepteur d'exploration de données. Le générateur de requêtes de prédiction est disponible à la fois dans SQL Server Management Studio et Business Intelligence Development Studio.
Notes
Vous pouvez également créer des requêtes sur les modèles de régression en utilisant les compléments d'exploration de données pour Excel SQL Server 2005 ou les compléments d'exploration de données pour Excel SQL Server 2008. Même si les compléments d'exploration de données pour Excel ne créent pas de modèles de régression, vous pouvez parcourir et interroger un modèle d'exploration de données stocké sur une instance Analysis Services.
Retour en haut
Exemple de requête 4 : prédiction du revenu à l'aide d'une requête singleton
La méthode la plus facile pour créer une requête unique sur un modèle de régression consiste à utiliser la boîte de dialogue Entrée de requête singleton. Par exemple, pour créer la requête DMX suivante, sélectionnez le modèle de régression approprié, choisissez Requête singleton, puis tapez 20 comme valeur pour Age.
SELECT [LR_PredictIncome].[Yearly Income]
From [LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Exemples de résultats :
Yearly Income |
---|
45227.302092176 |
Retour en haut
Exemple de requête 5 : utilisation des fonctions de prédiction avec un modèle de régression
Vous pouvez utiliser de nombreuses fonctions de prédiction standard avec les modèles de régression linéaire. L'exemple suivant montre comment ajouter des statistiques descriptives aux résultats de requête de prédiction. D'après ces résultats, vous pouvez constater que l'écart de la moyenne est très important pour ce modèle.
SELECT
([LR_PredictIncome].[Yearly Income]) as [PredIncome],
(PredictStdev([LR_PredictIncome].[Yearly Income])) as [StDev1]
From
[LR_PredictIncome]
NATURAL PREDICTION JOIN
(SELECT 20 AS [Age]) AS t
Exemples de résultats :
Yearly Income |
StDev1 |
---|---|
45227.302092176 |
31827.1726561396 |
Retour en haut
Liste des fonctions de prédiction
Tous les algorithmes Microsoft prennent en charge un ensemble commun de fonctions. Toutefois, l'algorithme MLR (Microsoft Linear Regression) prend en charge les fonctions supplémentaires répertoriées dans le tableau suivant.
|
Pour obtenir la liste des fonctions communes à tous les algorithmes Microsoft, consultez Algorithmes d'exploration de données (Analysis Services – exploration de données). Pour plus d'informations sur l'utilisation de ces fonctions, consultez Fonctions DMX (Data Mining Extensions).
Voir aussi