Veröffentlicht am :

Training eines Gradient-Boosting-Modells zur Gehaltsvorhersage

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript initialisiert eine CAS-Sitzung, lädt den Datensatz 'sashelp.baseball' in den CAS-Speicher unter der CASLIB 'casuser' und lädt dann das Action-Set 'decisionTree'. Anschließend wird die Aktion 'gbtreeTrain' verwendet, um ein Gradient-Boosting-Modell zu erstellen. Das Modell ist mit verschiedenen Optionen wie der POISSON-Verteilung, frühzeitigem Stoppen basierend auf 'LOGLOSS' und der Variablenbedeutung konfiguriert. Das trainierte Modell wird als CAS-Tabelle 'GRADBOOST3' gespeichert.
Datenanalyse

Type : SASHELP


Die Quelldaten stammen aus dem integrierten SAS-Datensatz 'sashelp.baseball', der dann in den CAS-Speicher unter der CASLIB 'casuser' geladen und verarbeitet wird.

1 Codeblock
DATA STEP Data
Erklärung :
Dieser Codeblock initialisiert eine CAS-Sitzung und stellt alle CASLIBs zur Verfügung. Anschließend wird ein DATA STEP verwendet, um den Datensatz 'sashelp.baseball' in den CAS-Speicher unter der CASLIB 'casuser' zu laden, wodurch eine Arbeitskopie der Tabelle 'baseball' im CAS-Speicher erstellt wird.
Kopiert!
1cas;
2caslib _all_ assign;
3 
4DATA casuser.baseball;
5 SET sashelp.baseball;
6RUN;
2 Codeblock
PROC CAS
Erklärung :
Dieser Block verwendet PROC CAS, um das Action-Set 'decisionTree' zu laden. Dieses Action-Set stellt die erforderlichen Aktionen zum Erstellen und Trainieren von Entscheidungsbaummodellen bereit, einschließlich der Gradient-Boosting-Aktion, die später verwendet wird.
Kopiert!
1PROC CAS;
2LOADACTIONSET 'decisionTree';
3QUIT;
3 Codeblock
PROC CAS Data
Erklärung :
Dieser Block konfiguriert die Standard-CASLIB auf 'casuser' und verwendet dann die Aktion 'gbtreeTrain' aus dem Action-Set 'decisionTree' über PROC CAS. Diese Aktion trainiert ein Gradient-Boosting-Modell auf der Tabelle 'baseball' (casuser.baseball) und zielt auf die Variable 'logSalary' ab. Es wird eine Liste numerischer und nominaler Eingabevariablen angegeben, eine POISSON-Verteilung verwendet und Optionen für frühzeitiges Stoppen (basierend auf LOGLOSS), Namenskodierung, gierige Auswahl, Umgang mit fehlenden Werten, Lasso-Regularisierung, Blattgröße, Lernrate und Berechnung der Variablenbedeutung enthalten. Das trainierte Modell wird in einer neuen CAS-Tabelle namens 'GRADBOOST3' gespeichert.
Kopiert!
1options caslib=casuser;
2 
3PROC CAS;
4decisionTree.gbtreeTrain /
5 TABLE={name="baseball"}
6 target="logSalary"
7 casOut={name="GRADBOOST3", replace=true}
8inputs={"nAtBat",
9 "nHits",
10 "nHome",
11 "nRuns",
12 "nRBI",
13 "nBB",
14 "YrMajor",
15 "CrAtBat",
16 "CrHits",
17 "CrHome",
18 "CrRuns",
19 "CrRbi",
20 "CrBB",
21 "nOuts",
22 "nAssts",
23 "nError",
24 "Division",
25 "League",
26 "Position"}
27nominals={"Division","League","Position"}
28distribution="POISSON"
29earlyStop={metric="LOGLOSS"}
30encodeName=TRUE
31greedy=TRUE
32includeMissing=TRUE
33lasso=1
34leafSize=5
35learningRate=.1
36m=5
37varImp=TRUE
38;
39QUIT;
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 © 2021, SAS Institute Inc., Cary, NC, USA. All Rights Reserved. SPDX-License-Identifier: Apache-2.0