aStore

describe

##set_astore

Description

L'action `describe` de l'ensemble `aStoreFichier binaire compact contenant la logique d'un modèle entraîné (analytique de score). Il permet de déployer et d'exécuter des modèles complexes de manière portable et ultra-rapide dans SAS Viya.` permet d'explorer et de décrire les caractéristiques internes d'un magasin analytique (analytic storeFormat binaire (ASTORE) sauvegardant l'état d'un modèle de Machine Learning entraîné dans SAS Viya pour permettre son déploiement et son exécution rapide sur de nouvelles données. ou astoreFichier binaire compact contenant la logique d'un modèle entraîné (analytique de score). Il permet de déployer et d'exécuter des modèles complexes de manière portable et ultra-rapide dans SAS Viya.) généré par 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). d'apprentissage automatique dans SAS Viya. C'est un peu comme ouvrir le capot d'une voiture de sport pour analyser son moteur, mais sans risque de se salir les mains ! Elle fournit des métadonnéesInformations décrivant les données, les utilisateurs et les ressources dans SAS Viya. Elles assurent la traçabilité, la sécurité et la gouvernance au sein de l'architecture distribuée. cruciales, détaille les variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. d'entrée requises et les variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. de sortie générées par le 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). .

Syntaxe Officielle
proc cas;
aStore.describe /
rstore={name="nom_table_astore", caslib="nom_caslib"}
table={name="nom_table_entree", caslib="nom_caslib"}
copyVars={"var1", "var2"} /* ou "ALL", "ALL_CHARACTER", "ALL_NUMERIC" */
epcode=FALSE
onnx="nom_objet_binaire"
options={{name="nom_option", value="valeur_option"}};
quit;

Paramètres Clés

Nom du paramètre Description
rstore Spécifie la table binaire CAS qui contient le modèle (le magasin analytique) à analyser. Ce paramètre est obligatoire et prend en charge des sous-paramètres comme `name`, `caslib` ou encore `whereTable` pour filtrer.
table Spécifie une table d'entrée facultative associée à l'astore, souvent utilisée pour analyser le comportement du modèle sur un jeu de données spécifique.
copyVars Permet de spécifier une liste de variables à copier de la table d'entrée vers la table de sortie. Peut prendre des raccourcis pratiques comme 'ALL', 'ALL_CHARACTER' ou 'ALL_NUMERIC'.
epcode Si défini sur TRUE, l'action génère le code DS2 de base (Exported Program). Ce code est très précieux car il peut être récupéré et personnalisé manuellement pour intégrer des étapes de prétraitement ou de post-traitement spécifiques .
onnx Fournit un modèle ONNX (Open Neural Network Exchange) sous la forme d'un objet binaire volumineux pour l'analyser.
options Spécifie une liste d'options d'exécution spécifiques à l'astore sous la forme de paires nom-valeur (ex: `name="my_opt", value=12.5`).

Préparation des données

Création d'un aStore pour l'exploration

Avant de pouvoir décrire un astore, nous devons en créer un. Ce code charge le fameux jeu de données Iris et entraîne une forêt aléatoire (random forest) simple. Le modèle résultant est sauvegardé sous forme d'astore.

1PROC CAS;
2 SESSION casauto;
3 /* Chargement des données d'exemple */
4 TABLE.loadTable / path="iris.sashdat", caslib="samples", casOut={name="iris", caslib="casuser", replace=TRUE};
5 /* Entraînement d'un modèle et sauvegarde de l'astore */
6 decisionTree.forestTrain / TABLE={name="iris", caslib="casuser"}, target="Species", inputs={"SepalLength", "SepalWidth", "PetalLength", "PetalWidth"}, saveState={name="iris_astore", caslib="casuser", replace=TRUE};
7QUIT;

Exemples d'utilisation

Description basique d'un modèle astore

Cet exemple montre comment interroger simplement le magasin analytique que nous venons de créer pour comprendre ce qu'il contient.

1PROC CAS;
2 aStore.describe / rstore={name="iris_astore", caslib="casuser"};
3QUIT;
Résultat Attendu :
Le journal SAS affichera plusieurs tables récapitulatives : 'Key Information' (ID du modèle, outil utilisé), 'Input Variables' (les caractéristiques des fleurs attendues par le modèle), et 'Output Variables' (les variables de prédiction générées, comme les probabilités pour chaque espèce).
Description avancée avec extraction du code de scoring DS2

Ici, nous utilisons l'option `epcode=TRUE` pour demander à l'action de révéler la magie interne du modèle. L'action générera la coquille de code DS2 que le moteur CAS utilise pour scorer les nouvelles données. C'est parfait pour auditer ou adapter le pipeline de scoring !

1PROC CAS;
2 aStore.describe RESULT=res_astore / rstore={name="iris_astore", caslib="casuser"}, epcode=TRUE;
3 PRINT res_astore.epcode;
4QUIT;
Résultat Attendu :
En plus des métadonnées habituelles de l'astore, le bloc d'impression (print) restituera le squelette de code DS2 comprenant les méthodes `init()`, `run()` et `term()`, montrant les déclarations de paquets astore et la liaison des variables.