Prédiction à l'aide du modèle Prévision moyenne (Didacticiel intermédiaire sur l'exploration de données)

Dans une tâche antérieure de cette leçon, vous avez utilisé le Générateur de requêtes de prédiction pour créer une requête qui génère les prédictions par défaut pour le modèle Prévision. Dans cette tâche, vous apprendrez à créer une requête de prédiction qui applique le modèle de ventes internationales à l'une des régions.

Utilisation de données de remplacement dans une prédiction de série chronologique

Dans SQL Server 2008, la fonction PredictTimeSeries (DMX) possède deux nouveaux paramètres, EXTEND_MODEL_CASES et REPLACE_MODEL_CASES, qui vous permettent de personnaliser des prédictions de série chronologique.

  • EXTEND_MODEL_CASES vous permet d'ajouter des données à un modèle existant et de faire des prédictions sur la base des nouvelles données.

  • REPLACE_MODEL_CASES vous permet de remplacer la série de données utilisée pour créer le modèle et d'utiliser des données issues d'une autre série.

Dans ce scénario, vous utiliserez REPLACE_MODEL_CASES. Toutefois, vous devez d'abord configurer une vue de source de données qui contient uniquement les données de remplacement. Les données de remplacement sont les données utilisées pour chaque série individuelle. Après avoir créé la vue de source de données de remplacement, vous pouvez créer une requête de prédiction qui applique le modèle général aux données de remplacement.

Pour créer la vue de source de données qui contient les données de remplacement

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur Vues des sources de données, puis sélectionnez Nouvelle vue de source de données.

  2. Dans l'Assistant Vue de source de données, faites les sélections suivantes :

    Source de données : Adventure Works DW2008R2

    Sélectionner des tables et des vues : ne sélectionnez pas de tables

    Nom : T1000 Pacific Region

  3. Cliquez sur Terminer.

  4. Cliquez avec le bouton droit sur l'aire de conception vide pour 1000 Pacific Region.dsv, puis sélectionnez Nouvelle requête nommée.

    La boîte de dialogue Créer une requête nommée s'affiche. Retapez le nom, puis ajoutez la description suivante :

    Nom : T1000 Pacific Region

    Description : Filtre vTimeSeries par région et modèle

  5. Dans le volet de texte, tapez la requête suivante :

    SELECT ReportingDate, ModelRegion, Quantity, Amount
    FROM dbo.vTimeSeries
    WHERE (ModelRegion = N'T1000 Pacific')
    

    Notes

    Vous pouvez générer également la requête en utilisant le Générateur de requêtes, mais il est plus rapide de taper le texte de la requête. Toutefois, après avoir tapé le texte de la requête, vous pouvez cliquer sur un autre volet pour voir comment le texte de la requête est analysé et la requête construite à partir des tables de prise en charge. Vous pouvez également copier le texte de la requête et l'enregistrer dans un fichier texte afin de le réutiliser pour une autre série de données.

  6. Cliquez sur OK..

  7. Dans l'aire de conception Vue de source de données, cliquez avec le bouton droit sur T1000 Pacific, puis sélectionnez Explorer les données pour vérifier que les données sont filtrées correctement.

Maintenant, vous allez générer une requête de prédiction de série chronologique normale, mais vous ajouterez le paramètre REPLACE_MODEL_CASES pour spécifier que les séries de données sur lesquelles la prédiction est basée doivent être remplacées par les nouvelles données que vous fournissez. Vous devez aussi spécifier le mappage entre le modèle d'exploration de données et la table d'entrée.

Pour générer la requête de prédiction et fournir des données de remplacement

  1. Si le modèle n'est pas déjà ouvert, double-cliquez sur la structure AllRegions, et dans le Concepteur d'exploration de données, cliquez sur l'onglet Prédiction de modèle d'exploration de données.

  2. Dans le volet Modèle d'exploration de données, le modèle AllRegions doit déjà être sélectionné. S'il ne l'est pas, cliquez sur Sélectionner le modèle, puis sélectionnez le modèle, AllRegions.

  3. Dans le volet Sélectionner une ou plusieurs tables d'entrée, cliquez sur Sélectionner la table de cas.

  4. Dans la boîte de dialogue Sélectionner une table, remplacez la source de données par T1000 Pacific Region, puis cliquez sur OK.

    La vue de source de données que vous avez créée apparaît sous la forme d'une table avec des colonnes. Certaines colonnes peuvent déjà être mappées aux colonnes de modèle d'exploration de données.

  5. Cliquez avec le bouton droit sur la ligne de jointure entre le modèle d'exploration de données et les données d'entrée, puis sélectionnez Modifier les connexions.

  6. Dans la boîte de dialogue Modifier le mappage, vérifiez que la colonne ReportingDate dans le modèle d'exploration de données est mappée à la colonne ReportingDate dans les données d'entrée.

  7. Dans la boîte de dialogue Modifier le mappage, dans la ligne pour AvgQty, cliquez sous Colonne de table, puis sélectionnez T1000 Pacific.Quantity. Cliquez sur OK.

    Cette étape mappe la colonne de quantité agrégée dans le modèle général à la colonne de quantité dans la série de données de remplacement.

  8. Dans la grille, cliquez sur la première ligne vide au-dessous de Source, puis sélectionnez AllRegions. Dans la colonne Champ, sélectionnez Region et dans la colonne Alias, tapez Model Used.

    Cette étape ajoute aux résultats une colonne à laquelle vous pouvez vous référer pour les prédictions provenant du modèle général.

  9. Cliquez sur une nouvelle ligne vide, et sous Source, sélectionnez Expression personnalisée. Dans la colonne Alias, tapez ModelRegion. Dans la colonne Critères/Argument, tapez 'T1000 Pacific'.

    Cette étape ajoute aux résultats un intitulé qui vous permet d'identifier la série concernée par les prédictions.

  10. Cliquez sur une ligne vide et, sous Source, sélectionnez Fonction de prédiction. Dans la colonne Champ, sélectionnez PredictTimeSeries. Dans la colonne Alias, tapez Predicted Values.

  11. Faites glisser le champ AvgQty du volet Modèle d'exploration de données vers la colonne Critères/Argument au moyen d'une opération de glisser-déplacer.

  12. Dans la colonne Critères/Argument, après le nom de champ, tapez le texte suivant : ,5, REPLACE_MODEL_CASES

    Le texte complet de la zone de texte Critères/Argument doit être comme suit : [AllRegions].[AvgQty],5,REPLACE_MODEL_CASES

  13. Cliquez sur Résultats.

Affichage des résultats

La requête de prédiction retourne des résultats semblables au tableau suivant :

Model Used

ModelRegion

Predicted Quantity

All Regions

T-1000 Pacific

$TIMEAvg Qty
25/07/2008 12:00:0068
25/08/2008 12:00:0052
25/09/2008 12:00:0048
25/10/2008 12:00:0056
25/11/2008 12:00:0044

Pour appliquer le modèle général à une autre série de données, telle que le modèle de produit T1000 dans la région North America, vous devez créer une requête différente pour chaque série. Toutefois, au lieu de recommencer tout le processus, vous pouvez modifier l'instruction DMX que vous avez créée et filtrer les entrées différemment. Par exemple, l'instruction DMX suivante représente la requête que vous venez de créer :

SELECT
  ([All Regions].[Region]) as [Model Used],
  ( 'T-1000 Pacific') as [ModelRegion],
  (PredictTimeSeries([All Regions].[Avg Qty],5, REPLACE_MODEL_CASES)) as [Predicted Quantity]
FROM
  [All Regions]
PREDICTION JOIN
  OPENQUERY([Adventure Works DW2008R2],
    'SELECT
      [ReportingDate]
    FROM
      (SELECT        ReportingDate, ModelRegion, Quantity, Amount
FROM            dbo.vTimeSeries
WHERE        (ModelRegion = N''T1000 Pacific'')) as [T1000 Pacific]
    ') AS t
ON
  [All Regions].[Reporting Date] = t.[ReportingDate] AND
   [All Regions].[Avg Qty] = t.[Quantity]

Pour appliquer ceci à un autre modèle, vous pouvez modifier l'instruction de requête pour remplacer la condition de filtre et les intitulés qui s'appliquent à chaque résultat. Par exemple, si vous modifiez les conditions de filtre et les intitulés de colonne en remplaçant « Pacific » par « North America », vous recevrez des prédictions pour le produit T1000 en Amérique du Nord, selon le modèle général.

Model Used

ModelRegion

Predicted Quantity

All Regions

T-1000 North America

$TIMEAvg Qty
25/07/2008 12:00:00103
25/08/2008 12:00:0084
25/09/2008 12:00:0079
25/10/2008 12:00:0085
25/11/2008 12:00:0068