Veröffentlicht am :
Modellverwaltung CREATION_INTERNE

Herunterladen eines ASTORE-Modells in das lokale Dateisystem

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das ASTORE-Verfahren von SAS© Viya wird für die Verwaltung von Machine-Learning-Modellen verwendet. Die DOWNLOAD-Anweisung ermöglicht die Übertragung eines ASTORE-Modells, das in einer In-Memory-CAS-Tabelle gespeichert ist, in das lokale Dateisystem (Festplatte, Netzwerkfreigabe, die für den CAS-Server zugänglich ist). Diese Funktion ist unerlässlich für die Archivierung, das Offline-Deployment oder den Transfer von Modellen zwischen Umgebungen. Das heruntergeladene Modell ist in der Regel eine komprimierte Binärdatei, die später über die UPLOAD-Anweisung von PROC ASTORE in eine CAS-Sitzung neu geladen werden kann.
Datenanalyse

Type : CREATION_INTERNE


Die Beispiele verwenden generierte Daten (Datalines) oder SASHELP, um einfache Modelle zu Demonstrationszwecken zu erstellen und diese Modelle dann herunterzuladen. Es sind keine nicht bereitgestellten externen Dateien erforderlich.

1 Codeblock
PROC ASTORE / DATA STEP Data
Erklärung :
Dieses Beispiel demonstriert den einfachsten Download eines ASTORE-Modells. Es beginnt mit der Erstellung eines grundlegenden logistischen Modells aus dem SASHELP.IRIS-Datensatz, das als 'my_model' in der Caslib 'casuser' gespeichert wird. Anschließend wird die PROC ASTORE mit der DOWNLOAD-Anweisung aufgerufen, um das ASTORE-Modell ('rstore=casuser.my_model') und den Speicherort der Zieldatei im lokalen Dateisystem ('save_file=/tmp/my_model.astore') anzugeben.
Kopiert!
1/* Création d'un modèle simple pour démonstration */
2DATA casuser.iris_data;
3 SET sashelp.iris;
4RUN;
5 
6PROC LOGISTIC DATA=casuser.iris_data outmodel=casuser.my_model;
7 model Species = SepalLength SepalWidth PetalLength PetalWidth;
8RUN;
9 
10/* Téléchargement du modèle ASTORE vers le système de fichiers local */
11PROC ASTORE;
12 download rstore=casuser.my_model;
13 save_file='/tmp/my_model.astore';
14RUN;
2 Codeblock
PROC ASTORE / DATA STEP Data
Erklärung :
Dieses Beispiel erweitert das Konzept, indem es zeigt, wie die Caslib, in der das ASTORE-Modell gespeichert ist, explizit angegeben wird. Ein GLMSELECT-Modell wird erstellt und gespeichert. Die DOWNLOAD-Anweisung verwendet die Option 'caslib=', um sicherzustellen, dass das Modell vor dem Download korrekt identifiziert wird. Die Datei wird dann unter '/tmp/auto_model.astore' gespeichert.
Kopiert!
1/* Création d'un autre modèle pour démonstration */
2DATA casuser.cars_data;
3 SET sashelp.cars;
4 where Make in ('Audi', 'BMW', 'Mercedes-Benz');
5RUN;
6 
7PROC GLMSELECT DATA=casuser.cars_data outmodel=casuser.auto_model;
8 model Cylinders = Make Type Origin DriveTrain Weight Horsepower MSRP;
9 selection method=stepwise;
10RUN;
11 
12/* Téléchargement du modèle ASTORE avec des options explicites */
13PROC ASTORE;
14 download rstore=casuser.auto_model caslib=casuser;
15 save_file='/tmp/auto_model.astore';
16RUN;
3 Codeblock
PROC ASTORE / DATA STEP / %LET Data
Erklärung :
Dieses fortgeschrittene Beispiel zeigt die Verwendung von Makrovariablen für den Zielpfad und enthält eine rudimentäre Überprüfung der Pfadzugänglichkeit vor dem Download. Ein HPLOGISTIC-Modell wird erstellt. Der Pfad wird durch die Makrovariable `download_path` definiert. Ein DATA _NULL_-Block versucht, eine temporäre Datei am angegebenen Speicherort zu erstellen und zu löschen, um zu überprüfen, ob das Verzeichnis existiert und zugänglich ist. Der Download erfolgt nur, wenn die Überprüfung positiv ist, was einen grundlegenden Fehlermechanismus bietet.
Kopiert!
1/* Création d'un troisième modèle pour démonstration */
2DATA casuser.heart_data;
3 SET sashelp.heart;
4 where STATUS='Alive';
5RUN;
6 
7PROC HPLOGISTIC DATA=casuser.heart_data outmodel=casuser.heart_model;
8 model Cholesterol = Smoking_Status_N BP_Status_N Weight_Status_N;
9RUN;
10 
11/* Définir le chemin de téléchargement via une macro-variable */
12%let download_path = /tmp/models/heart_model.astore;
13 
14/* Vérifier l'existence du répertoire de destination et télécharger */
15filename _tmp_dir temp;
16DATA _null_;
17 rc = fcreate("&download_path", 'f');
18 IF rc = 0 THEN DO;
19 call symputx('dir_exists', '1');
20 rc = fdelete("&download_path");
21 END;
22 ELSE call symputx('dir_exists', '0');
23RUN;
24 
25%IF &dir_exists. = 1 %THEN %DO;
26 PROC ASTORE;
27 download rstore=casuser.heart_model caslib=casuser;
28 save_file="&download_path";
29 RUN;
30 %put Modèle 'heart_model' téléchargé avec succès vers &download_path.;
31%END;
32%ELSE %DO;
33 %put ERREUR: Le chemin de téléchargement '&download_path' est invalide ou le répertoire n'existe pas/n'est pas accessible.;
34%END;
4 Codeblock
PROC ASTORE / PROC CAS / DATA STEP Data
Erklärung :
Dieses Beispiel demonstriert einen vollständigen Workflow: Erstellung eines Modells, Download in das lokale Dateisystem und anschließendes erneutes Laden des Modells in eine simulierte 'neue' CAS-Sitzung zur Durchführung des Scorings. Ein lineares Regressionsmodell wird trainiert und heruntergeladen. Anschließend wird das Modell unter einem neuen Namen ('reloaded_model') hochgeladen (UPLOAD), als wäre eine neue CAS-Sitzung initiiert worden. Schließlich wird dieses neu geladene Modell verwendet, um neue Daten zu bewerten, was beweist, dass der Download und das erneute Laden erfolgreich waren. Dies veranschaulicht die Portabilität von ASTORE-Modellen.
Kopiert!
1/* 1. Création et entraînement d'un modèle simple */
2DATA casuser.sample_data;
3 INPUT x y;
4 DATALINES;
51 10
62 12
73 14
84 16
95 18
10;
11RUN;
12 
13PROC REG DATA=casuser.sample_data outmodel=casuser.my_linear_model;
14 model y = x;
15RUN;
16 
17/* 2. Téléchargement du modèle ASTORE */
18PROC ASTORE;
19 download rstore=casuser.my_linear_model;
20 save_file='/tmp/my_linear_model.astore';
21RUN;
22 
23/* 3. Déconnexion et reconnexion à une nouvelle session CAS (simulée) */
24/* Dans un environnement réel, cela impliquerait de fermer la session courante et d'en ouvrir une nouvelle */
25/* Pour cet exemple, nous allons simplement simuler en chargeant le modèle dans la même session */
26/* et en utilisant une nouvelle 'nom_session_virtuelle' */
27 
28/* 4. Chargement du modèle depuis le système de fichiers local vers une nouvelle 'session' CAS */
29PROC ASTORE;
30 upload rstore=casuser.reloaded_model;
31 restore_file='/tmp/my_linear_model.astore';
32RUN;
33 
34/* 5. Utilisation du modèle rechargé pour le scoring */
35DATA casuser.new_data;
36 INPUT x;
37 DATALINES;
386
397
40;
41RUN;
42 
43PROC ASTORE;
44 score rstore=casuser.reloaded_model DATA=casuser.new_data out=casuser.scored_data;
45RUN;
46 
47PROC PRINT DATA=casuser.scored_data;
48RUN;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : Copyright © SAS Institute Inc. All Rights Reserved