?>
Die Aktion bartGauss im Aktionssatz Bayesian Additive Regression Trees (bart) passt Modelle für Bayes'sche additive Regressionsbäume (BART) an normalverteilte Antwortdaten an. BART ist eine nichtparametrische Regressionsmethode, die einen Ensemble-Ansatz verwendet, bei dem das Modell eine Summe vieler schwacher Lerner (Regressionsbäume) ist. Diese Methode ist besonders effektiv bei der Erfassung komplexer nichtlinearer Beziehungen zwischen Prädiktoren und der Antwortvariablen und bietet gleichzeitig eine Quantifizierung der Unsicherheit durch ihren Bayes'schen Rahmen.
| Parameter | Beschreibung |
|---|---|
| alpha | Gibt das Signifikanzniveau an, das für die Erstellung von gleichwahrscheinlichen Kredibilitätsintervallen für prädiktive Margen verwendet wird. |
| attributes | Ändert die Attribute der in der Aktion verwendeten Variablen. |
| class | Benennt die Klassifikationsvariablen, die als erklärende Variablen in der Analyse verwendet werden sollen. |
| differences | Spezifiziert Differenzen von prädiktiven Margen. |
| display | Gibt eine Liste von Ergebnistabellen an, die zur Anzeige an den Client gesendet werden sollen. |
| distributeChains | Spezifiziert einen verteilten Modus, der das MCMC-Sampling in einer Grid-Umgebung aufteilt. Dieser Modus verteilt die Trainingsdaten auf die Worker, sodass die angegebene Anzahl von Workern eine vollständige Kopie der Trainingsdaten hat und eine separate Kette ausführt. |
| freq | Benennt die numerische Variable, die die Häufigkeit des Vorkommens für jede Beobachtung enthält. |
| inputs | Spezifiziert die Eingabevariablen, die in der Analyse verwendet werden sollen. |
| leafSigmaK | Gibt den Wert an, der zur Bestimmung der A-priori-Varianz für den Blattparameter verwendet wird. |
| margins | Spezifiziert eine prädiktive Marge. |
| maxTrainTime | Gibt eine Obergrenze (in Sekunden) für die Zeit des MCMC-Samplings an. |
| minLeafSize | Gibt die minimale Anzahl von Beobachtungen an, die jedes Kind eines Splits in den Trainingsdaten enthalten muss, damit der Split berücksichtigt wird. |
| missing | Gibt an, wie fehlende Werte in Prädiktorvariablen behandelt werden sollen. |
| model | Benennt die abhängige Variable und die erklärenden Effekte. |
| nBI | Gibt die Anzahl der Burn-in-Iterationen an, die durchgeführt werden, bevor die Aktion beginnt, Stichproben für die Vorhersage zu speichern. |
| nBins | Gibt die Anzahl der Bins an, die für das Binning kontinuierlicher Eingabevariablen verwendet werden. |
| nClassLevelsPrint | Begrenzt die Anzeige von Klassenstufen. Der Wert 0 unterdrückt alle Stufen. |
| nMC | Gibt die Anzahl der MCMC-Iterationen an, ausschließlich der Burn-in-Iterationen. Dies ist die MCMC-Stichprobengröße, wenn die Ausdünnungsrate 1 ist. |
| nMCDist | Gibt die Anzahl der MCMC-Iterationen für jede Kette an, ausschließlich der Burn-in-Iterationen, wenn mehrere Ketten verwendet werden. |
| nominals | Spezifiziert die nominalen Eingabevariablen, die in der Analyse verwendet werden sollen. |
| nThin | Gibt die Ausdünnungsrate der Simulation an. |
| nTree | Gibt die Anzahl der Bäume in einer Stichprobe des Sum-of-Trees-Ensembles an. |
| obsLeafMapInMem | Wenn auf True gesetzt, speichert eine Zuordnung jeder Beobachtung zu Endknoten im Speicher, wenn das Modell trainiert wird. |
| orderSplit | Gibt die minimale Kardinalität an, für die eine kategoriale Eingabe Aufteilungsregeln gemäß der Ebenenreihenfolge verwendet. |
| output | Erstellt eine Tabelle auf dem Server, die beobachtungsweise Statistiken enthält, die nach der Modellanpassung berechnet werden. |
| outputMargins | Gibt die Ausgabetabelle für die prädiktiven Margen an. |
| outputTables | Listet die Namen der Ergebnistabellen auf, die als CAS-Tabellen auf dem Server gespeichert werden sollen. |
| partByFrac | Gibt den Anteil der Daten an, der für das Testen verwendet werden soll. |
| partByVar | Benennt die Variable und ihre Werte, die zur Partitionierung der Daten in Trainings- und Testrollen verwendet werden. |
| quantileBin | Wenn auf True gesetzt, gibt an, dass Bin-Grenzen an Quantilen numerischer Eingaben anstelle von Bins gleicher Breite festgelegt werden. |
| sampleSummary | Erstellt eine Tabelle auf dem Server, die eine Zusammenfassung der Sum-of-Trees-Ensemble-Stichproben enthält. |
| seed | Gibt einen Seed zum Starten des Pseudozufallszahlengenerators an. |
| sigmaDF | Gibt die Freiheitsgrade der skalierten inversen Chi-Quadrat-Prior-Verteilung für den Varianzparameter an. |
| sigmaLambda | Gibt den Skalenparameter der skalierten inversen Chi-Quadrat-Prior-Verteilung für den Varianzparameter an. |
| sigmaQuantile | Gibt das Quantilniveau an, das zur Bestimmung des Skalenparameters der inversen Chi-Quadrat-Prior-Verteilung für den Varianzparameter verwendet wird. |
| store | Speichert das Modell in einem binären Tabellenobjekt, das Sie zum Scoren verwenden können. |
| table | Gibt die Eingabedatentabelle an. |
| target | Spezifiziert die Zielvariable. |
| trainInMem | Wenn auf True gesetzt, speichert Daten im Speicher, wenn das Modell trainiert wird. |
| treePrior | Spezifiziert die Regularisierungs-Prior-Verteilung für das Sum-of-Trees-Ensemble. |
| varAutoCorr | Gibt die Autokorrelations-Lags für den Varianzparameter an. |
| varEst | Gibt den Anfangswert für die Varianz an. Standardmäßig wird der Anfangswert der Varianz durch eine Kleinstquadrateregression der Antwortvariablen auf die Prädiktorvariablen bestimmt. |
Erstellen wir einen Beispieldatensatz 'BeispielTabelle', um die Funktionalität der bartGauss-Aktion zu demonstrieren. Diese Tabelle enthält eine Zielvariable 'y' und mehrere Prädiktorvariablen (x1, x2, x3).
data casuser.BeispielTabelle;
do i = 1 to 100;
x1 = rand('UNIFORM');
x2 = rand('UNIFORM');
x3 = rand('INTEGER', 1, 5);
y = 10 + 5*x1 - 3*x2 + rand('NORMAL', 0, 2);
output;
end;
run;Dies ist ein grundlegendes Beispiel, das zeigt, wie die bartGauss-Aktion mit den minimal erforderlichen Parametern ausgeführt wird: der Zieltabelle und dem Modell (Ziel- und Prädiktorvariablen).
| 1 | PROC CAS; |
| 2 | bart.bartGauss / |
| 3 | TABLE={name='BeispielTabelle'}, |
| 4 | model={depVars={{name='y'}}, effects={{vars={'x1', 'x2', 'x3'}}}} |
| 5 | ; |
| 6 | RUN; |
| 7 | QUIT; |
Dieses Beispiel zeigt eine komplexere Verwendung der bartGauss-Aktion. Es umfasst die Angabe der Anzahl der Bäume (nTree), der Burn-in-Iterationen (nBI) und der MCMC-Iterationen (nMC). Außerdem wird ein Ausgabedatensatz für die Vorhersagen erstellt und das Modell für späteres Scoring gespeichert.
| 1 | PROC CAS; |
| 2 | bart.bartGauss / |
| 3 | TABLE={name='BeispielTabelle'}, |
| 4 | model={depVars={{name='y'}}, effects={{vars={'x1', 'x2', 'x3'}}}}, |
| 5 | nTree=100, |
| 6 | nBI=500, |
| 7 | nMC=2000, |
| 8 | seed=12345, |
| 9 | OUTPUT={casout={name='bart_vorhersagen', replace=true}, pred='vorhergesagter_y'}, |
| 10 | store={name='bart_modell', replace=true} |
| 11 | ; |
| 12 | RUN; |
| 13 | QUIT; |