publishModel
Description
Publie 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). dans une table de modèles au sein de CAS . Cette action est indispensable pour le déploiement de modèles analytiques, vous permettant de centraliser, stocker et gérer vos modèles de scoringProcessus d'application d'un modèle prédictif à de nouvelles données pour calculer une probabilité ou un score, permettant ainsi d'automatiser la prise de décision en temps réel sur SAS Viya.. Parce qu'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). bien rangé est 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). heureux !
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| codeTable | Spécifie la table d'entrée contenant le programme du modèle et d'autres composants du modèle à publier. |
| formatItemStore | Spécifie le magasin d'éléments de format (format item store) à publier. |
| formatXML | Spécifie la chaîne XML définissant les formats à publier. |
| keepList | Lorsqu'il est défini sur vrai (true), une instruction 'keep' est ajoutée au programme du modèle DS2 généré à partir d'un magasin analytique. |
| modelName | Spécifie le nom du modèle. Ce paramètre obligatoire correspond à la colonne ModelName de la table de modèles cible. |
| modelNotes | Permet de spécifier une valeur ou un commentaire qui sera écrit dans la colonne Notes de la table de modèles. |
| modelOptions | Spécifie des options supplémentaires s'appliquant au modèle, notamment 'replace' (vrai par défaut) pour écraser un modèle existant. |
| modelTable | Spécifie les paramètres de la table de modèles cible (name, caslib, persist, promote, replace). |
| modelType | Indique le type de programme du modèle. Les valeurs acceptées sont 'DATASTEP' ou 'DS2' (valeur par défaut). |
| modelUuid | Spécifie l'identifiant unique à écrire dans la colonne ModelUUID de la table de modèles. |
| program | Spécifie sous forme de chaîne de caractères le programme du modèle à publier. |
| publishGlobal | Indique si le modèle doit être publié dans une table de modèles de portée globale. |
| stores | Spécifie la liste des magasins analytiques (analytic stores) qui doivent être publiés. |
| storeTables | Spécifie les tables contenant les magasins analytiques à publier. |
| varXML | Spécifie le XML contenant les métadonnées des variables, utilisé lors de la traduction du code DATA step en code DS2. |
Préparation des données
Création d'une table de code de modèle basique
Avant de publier un modèle depuis une table, il faut que cette table existe. Voici comment générer une table simple dans la caslib 'casuser' avec l'action table.readlist, contenant un petit code DS2 factice.
| 1 | PROC CAS; |
| 2 | TABLE.readlist / |
| 3 | caslib="casuser" |
| 4 | name="ma_table_de_code" |
| 5 | replace=true |
| 6 | list={ |
| 7 | {ModelName="Modele_Multiplicateur", Code="package myModel / overwrite; method score(double x, in_out double p); p = x * 2; end; endpackage;"} |
| 8 | }; |
| 9 | RUN; |
| 10 | QUIT; |
Exemples d'utilisation
Publication directe avec le paramètre 'program'
Cet exemple illustre comment publier rapidement un modèle en insérant directement le code source dans le paramètre 'program' de l'action, sans passer par une table de code intermédiaire.
| 1 | PROC CAS; |
| 2 | modelPublishing.publishModel / modelName="Modele_Direct" modelTable={name="mes_modeles", caslib="casuser", replace=true} program="package myModel / overwrite; method score(double var_in, in_out double var_out); var_out = var_in + 10; end; endpackage;" modelType="DS2"; |
| 3 | RUN; |
| 4 | QUIT; |
Résultat Attendu :
Publication depuis une table de code avec persistance et promotion
Un cas d'usage plus robuste : publier un modèle dont le code est stocké dans une table (comme celle générée dans l'étape 'Création de données'). Le modèle sera inséré dans une table cible 'table_modeles_globale'. Nous activons le remplacement, la promotion en mémoire globale (pour que les autres utilisateurs la voient) et ajoutons des notes documentaires.
| 1 | PROC CAS; |
| 2 | modelPublishing.publishModel / modelName="Modele_Multiplicateur" modelNotes="Version 1.0 - Mis en production" modelTable={name="table_modeles_globale", caslib="public", replace=true, promote=true} codeTable={name="ma_table_de_code", caslib="casuser"} modelType="DS2" modelOptions={replace=true}; |
| 3 | RUN; |
| 4 | QUIT; |