esm
Description
L'action esm du jeu d'actions uniTimeSeries est le couteau suisse de la prévision par lissage exponentiel dans SAS Viya. Elle permet de modéliser des séries temporellesSuite d'observations collectées à intervalles réguliers. L'analyse vise à identifier des tendances, des cycles ou une saisonnalité pour modéliser et prédire les comportements futurs. univariées en tenant compte de la tendance et de la saisonnalité. Que vous soyez face à une croissance linéaire ou à des cycles saisonniers complexes (comme la vente de glaces en été, miam !), cette action peut soit appliquer un modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). spécifique (Simple, Double, Winters, etc.), soit choisir automatiquement le 'meilleur' modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). (BEST) en se basant sur des critères de performance comme l'erreur quadratique moyenne (RMSE). Elle gère aussi l'accumulation des données et les valeurs manquantes avant de lancer les calculs.
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| forecast | Paramètre obligatoire spécifiant la liste des variables à prévoir et leurs options respectives (méthode, horizon de prévision 'lead', transformation des données, etc.). |
| interval | Indique l'intervalle de temps des données (ex: 'MONTH', 'DAY', 'YEAR'). C'est crucial pour que SAS comprenne le rythme de vos données. |
| table | La table CAS source contenant vos séries temporelles. |
| timeId | La variable qui sert d'index temporel (date ou datetime). |
| casOut | Table de sortie contenant les séries accumulées et les prévisions finales. |
| outFor | Table détaillée contenant les valeurs réelles, prédites, les erreurs et les intervalles de confiance. |
| outStat | Table contenant les statistiques de qualité d'ajustement du modèle (Fit Statistics). |
| method | Sous-paramètre de forecast définissant le modèle : SIMPLE, DOUBLE, LINEAR, WINTERS, ADDWINTERS, ou BEST pour une sélection automatique. |
Préparation des données
Création de données de ventes mensuelles
Génération d'un jeu de données fictif simulant des ventes sur 3 ans avec une légère tendance à la hausse pour tester les prévisions.
| 1 | DATA casuser.sales_data; |
| 2 | DO date = '01JAN2022'd to '01DEC2024'd; |
| 3 | date = intnx('month', date, 0); |
| 4 | sales = 100 + (date/1000) + rannor(123)*10; |
| 5 | OUTPUT; |
| 6 | END; |
| 7 | FORMAT date monyy7.; |
| 8 | RUN; |
Exemples d'utilisation
Prévision automatique simple
Prévision des ventes pour les 6 prochains mois en laissant SAS choisir le meilleur modèle automatiquement.
| 1 | PROC CAS; uniTimeSeries.esm / TABLE={name="sales_data"}, timeId={name="date"}, interval="MONTH", forecast={{name="sales", lead=6, method="BEST"}}, casOut={name="forecast_simple", replace=true}; RUN; |
Résultat Attendu :
Analyse complète avec modèle de Winters
Utilisation de la méthode de Winters (saisonnalité) avec transformation Log pour stabiliser la variance, et génération de toutes les tables de statistiques.
| 1 | PROC CAS; uniTimeSeries.esm / TABLE={name="sales_data"}, timeId={name="date"}, interval="MONTH", forecast={{name="sales", lead=12, method="WINTERS", transform="LOG", accumulate="SUM"}}, casOut={name="esm_out", replace=true}, outFor={name="esm_for", replace=true}, outStat={name="esm_stat", replace=true}, outEst={name="esm_est", replace=true}; RUN; |