deepNeural

dnnExportModel

##ai ##set_deepneural

Description

L'action dnnExportModel permet d'exporter 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). de réseau de neuronesUn réseau de neurones est un modèle d'IA bio-inspiré composé de couches de nœuds interconnectés, capable d'apprendre des relations complexes dans les données pour prédire ou classifier avec précision. profond entièrement connecté () sous la forme d'un fichier analytique prêt au déploiement (souvent appelé 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.). Imaginez cela comme la mise en boîte du cerveau artificiel que vous venez d'entraîner, afin de pouvoir l'emporter et l'utiliser ailleurs pour faire des prédictions. Très pratique pour passer de la phase d'expérimentation à la production !

Syntaxe Officielle
proc cas;
deepNeural.dnnExportModel /
casout={caslib="chaine", name="nom_table", promote=True|False, replace=True|False, ...}
initWeights={caslib="chaine", name="nom_table", ...}
modelTable={caslib="chaine", name="nom_table", ...}
nThreads=entier;
quit;

Paramètres Clés

Nom du paramètre Description
casout (Requis) Spécifie la table de sortie qui contiendra le modèle exporté (généralement au format ASTORE). Vous pouvez y définir le nom, la caslib, et si la table doit être promue (promote=True) pour être partagée.
initWeights (Requis) Spécifie la table en mémoire contenant les poids du modèle (les précieuses connexions synaptiques apprises lors de l'entraînement avec dnnTrain).
modelTable (Requis) Spécifie la table en mémoire qui définit l'architecture et la structure de votre réseau de neurones.
nThreads Spécifie le nombre de threads (processus parallèles) à utiliser pour accélérer l'opération.

Préparation des données

Préparation des tables du modèle

Pour exporter un modèle, il faut d'abord l'avoir défini et entraîné. Ce code illustre le chargement de tables fictives représentant un modèle existant pour pouvoir tester l'action d'exportation.

1PROC CAS;
2 /* Chargement hypothétique des tables d'architecture et de poids depuis des fichiers existants */
3 TABLE.loadTable / path="mon_modele_arch.sashdat", casout={name="mon_modele", replace=True};
4 TABLE.loadTable / path="mes_poids_entraines.sashdat", casout={name="mes_poids", replace=True};
5QUIT;

Exemples d'utilisation

Exportation basique d'un modèle DNN

Voici comment sauvegarder votre modèle durement entraîné dans un format prêt à l'emploi au sein de la session courante.

1PROC CAS;
2 deepNeural.dnnExportModel /
3 modelTable={name="mon_modele"}
4 initWeights={name="mes_poids"}
5 casout={name="dnn_astore_model", replace=True};
6QUIT;
Résultat Attendu :
Une table CAS nommée 'dnn_astore_model' est créée dans la bibliothèque active. Elle contient le code binaire du modèle prêt à être utilisé pour scorer de nouvelles données.
Exportation avancée avec promotion et optimisation de la mémoire

Un exemple pour les pros : on exporte le modèle, on le promeut en mémoire globale (promote=True) dans une bibliothèque publique pour qu'il soit accessible à tous les utilisateurs, et on assigne explicitement plusieurs threads.

1PROC CAS;
2 deepNeural.dnnExportModel /
3 modelTable={name="mon_modele", caslib="casuser"}
4 initWeights={name="mes_poids", caslib="casuser"}
5 nThreads=8
6 casout={name="dnn_astore_prod", caslib="public", promote=True, replace=True, memoryFormat="STANDARD"};
7QUIT;
Résultat Attendu :
Le modèle est exporté, formaté de manière standardisée, et promu dans la caslib 'public'. Il est maintenant prêt pour la gloire et l'inférence en temps réel par d'autres applications et utilisateurs !