dataSciencePilot

featureMachine

Beschreibung

Die Aktion featureMachine ist eine automatisierte Engine zur Transformation und Generierung von Merkmalen (Features). Sie führt eine explorative Datenanalyse durch, screent Variablen, transformiert und generiert neue Merkmale und wählt die relevantesten für die Modellierung aus. Dies automatisiert wesentliche Schritte des Feature Engineerings in Data-Science-Workflows.

Einstellungen
ParameterBeschreibung
table Gibt den Namen der Eingabetabelle, die Caslib und andere allgemeine Parameter an.
target Gibt die Zielvariable für die Analyse an.
featureOut Gibt die CAS-Tabelle an, in der die Pipelines für Merkmalstransformation und -generierung gespeichert werden.
transformationOut Gibt die CAS-Tabelle an, in der die Transformations-Pipelines gespeichert werden (ähnlich wie featureOut, oft für spezifische Zwischenergebnisse).
saveState Gibt die CAS-Tabelle an, in der das Modell zur Merkmalstransformation und -generierung als Analytic Store (ASTORE) gespeichert wird.
casout Gibt die CAS-Tabelle an, in der die Analyseergebnisse gespeichert werden.
explorationPolicy Spezifiziert die Richtlinie für die automatische Analyse und Gruppierung von Variablen (AVAPT), einschließlich Einstellungen für Kardinalität, Entropie, Ausreißer und Fehlwerte.
screenPolicy Spezifiziert die Richtlinie zum Aussortieren von Variablen (z. B. konstante Variablen, seltene Ebenen, Informationslecks).
transformationPolicy Spezifiziert den Raum für Merkmalstransformation und -generierung, z. B. ob Interaktionen, Polynome oder Transformationen für Schiefe und Kurtosis berücksichtigt werden sollen.
rankPolicy Spezifiziert die Richtlinie zur Bewertung (Ranking) von Merkmalen, einschließlich der verwendeten Statistiken für Intervall- und Nominalvariablen.
copyVars Gibt die Namen der Variablen an, die unverändert in die Ausgabetabelle kopiert werden sollen.
misraGries Wenn auf True gesetzt, wird der Misra-Gries-Algorithmus zur Schätzung der Häufigkeitsverteilung verwendet, falls das Limit für eindeutige Werte überschritten wird.
distinctCountLimit Gibt das Limit für die Zählung eindeutiger Werte an.
ecdfTolerance Gibt den Toleranzwert für die empirische kumulative Verteilungsfunktion an.
event Gibt die Ereignisebene der Zielvariable an, die modelliert werden soll (für binäre Klassifikation).
seed Gibt den Startwert für die Zufallszahlengenerierung an.
Erstellung von synthetischen Daten für Data Science

Erzeugt einen Datensatz mit numerischen und kategorialen Variablen sowie einer binären Zielvariable für die Feature-Generierung.

Kopiert!
1 
2DATA mycas.sim_data;
3call streaminit(123);
4DO i = 1 to 1000;
5x1 = rand('Normal', 10, 2);
6x2 = rand('Uniform');
7c1 = ifc(rand('Uniform') > 0.6, 'A', 'B');
8IF (x1 + 10*x2 > 15) THEN target = 1;
9ELSE target = 0;
10OUTPUT;
11END;
12 
13RUN;
14 

Beispiele

Führt die featureMachine-Aktion auf dem Datensatz aus, um Merkmale zu generieren und das Transformationsmodell zu speichern.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1 
2PROC CAS;
3dataSciencePilot.featureMachine / TABLE={name='sim_data'} target='target' featureOut={name='features_out'} transformationOut={name='trans_out'} saveState={name='astore_model'};
4 
5RUN;
6 
Ergebnis :
Erzeugt Ausgabetabellen mit den generierten Merkmalen und speichert das Transformationsmodell in einem Analytic Store.

Führt featureMachine mit spezifischen Richtlinien für Transformation, Screening und Exploration aus, um Interaktionen und Polynome zu berücksichtigen und Konstanten auszuschließen.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1 
2PROC CAS;
3dataSciencePilot.featureMachine / TABLE={name='sim_data'} target='target' featureOut={name='features_detailed'} transformationOut={name='trans_detailed'} saveState={name='astore_detailed'} transformationPolicy={interaction=true, polynomial=true, missing=true} screenPolicy={constant=true, missingPercentThreshold=50} explorationPolicy={cardinality={mediumHighCutoff=50}};
4 
5RUN;
6 
Ergebnis :
Generiert erweiterte Merkmale einschließlich Interaktionen und Polynomen, filtert konstante Variablen und speichert die Ergebnisse.

FAQ

Was ist die featureMachine Aktion?
Was ist der Zweck des 'casout'-Parameters?
Was ist der Zweck des 'caslib'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'indexVars'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'lifetime'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'memoryFormat'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'name'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'promote'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'replace'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'tableRedistUpPolicy'-Parameters innerhalb von 'casout'?
Was ist der Zweck des 'copyVars'-Parameters?
Was ist der Zweck des 'distinctCountLimit'-Parameters?
Was ist der Zweck des 'ecdfTolerance'-Parameters?
Was ist der Zweck des 'event'-Parameters?
Was ist der Zweck des 'explorationPolicy'-Parameters?
Was ist der Zweck des 'cardinality'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'lowMediumCutoff'-Parameters innerhalb von 'cardinality'?
Was ist der Zweck des 'mediumHighCutoff'-Parameters innerhalb von 'cardinality'?
Was ist der Zweck des 'minNObsPerTargetLevel'-Parameters innerhalb von 'cardinality'?
Was ist der Zweck des 'cv'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'lowMoment'-Parameters innerhalb von 'cv'?
Was ist der Zweck des 'lowRobust'-Parameters innerhalb von 'cv'?
Was ist der Zweck des 'dateTimeVariables'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'dateVariables'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'entropy'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'giniLowMediumCutoff'-Parameters innerhalb von 'entropy'?
Was ist der Zweck des 'giniMediumHighCutoff'-Parameters innerhalb von 'entropy'?
Was ist der Zweck des 'shannonLowMediumCutoff'-Parameters innerhalb von 'entropy'?
Was ist der Zweck des 'shannonMediumHighCutoff'-Parameters innerhalb von 'entropy'?
Was ist der Zweck des 'iqv'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'highTopBottom'-Parameters innerhalb von 'iqv'?
Was ist der Zweck des 'highTopTwo'-Parameters innerhalb von 'iqv'?
Was ist der Zweck des 'highVariationRatio'-Parameters innerhalb von 'iqv'?
Was ist der Zweck des 'kurtosis'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'momentLowMediumCutoff'-Parameters innerhalb von 'kurtosis'?
Was ist der Zweck des 'momentMediumHighCutoff'-Parameters innerhalb von 'kurtosis'?
Was ist der Zweck des 'robustLowMediumCutoff'-Parameters innerhalb von 'kurtosis'?
Was ist der Zweck des 'robustMediumHighCutoff'-Parameters innerhalb von 'kurtosis'?
Was ist der Zweck des 'missing'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'lowMediumCutoff'-Parameters innerhalb von 'missing'?
Was ist der Zweck des 'mediumHighCutoff'-Parameters innerhalb von 'missing'?
Was ist der Zweck des 'nominal'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'cardinalityRatio'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'cardinalityThreshold'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'includeNegative'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'includeNonIntegral'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'intervals'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'nominals'-Parameters innerhalb von 'nominal'?
Was ist der Zweck des 'outlier'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'momentLowMediumCutoff'-Parameters innerhalb von 'outlier'?
Was ist der Zweck des 'momentMediumHighCutoff'-Parameters innerhalb von 'outlier'?
Was ist der Zweck des 'robustLowMediumCutoff'-Parameters innerhalb von 'outlier'?
Was ist der Zweck des 'robustMediumHighCutoff'-Parameters innerhalb von 'outlier'?
Was ist der Zweck des 'skewness'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'momentLowMediumCutoff'-Parameters innerhalb von 'skewness'?
Was ist der Zweck des 'momentMediumHighCutoff'-Parameters innerhalb von 'skewness'?
Was ist der Zweck des 'robustLowMediumCutoff'-Parameters innerhalb von 'skewness'?
Was ist der Zweck des 'robustMediumHighCutoff'-Parameters innerhalb von 'skewness'?
Was ist der Zweck des 'timeVariables'-Parameters innerhalb von 'explorationPolicy'?
Was ist der Zweck des 'featureOut'-Parameters?
Was ist der Zweck des 'freq'-Parameters?
Was ist der Zweck des 'inputs'-Parameters?
Was ist der Zweck des 'misraGries'-Parameters?
Was ist der Zweck des 'rankPolicy'-Parameters?
Was ist der Zweck des 'intervalStat'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'AVGQUANKURT'-Werts für 'intervalStat'?
Was ist der Zweck des 'AVGQUANSKEW'-Werts für 'intervalStat'?
Was ist der Zweck des 'CLASSICALKURT'-Werts für 'intervalStat'?
Was ist der Zweck des 'CLASSICALSKEW'-Werts für 'intervalStat'?
Was ist der Zweck des 'ENTROPY'-Werts für 'intervalStat'?
Was ist der Zweck des 'MI'-Werts für 'intervalStat'?
Was ist der Zweck des 'NORMMI'-Werts für 'intervalStat'?
Was ist der Zweck des 'PEARSON'-Werts für 'intervalStat'?
Was ist der Zweck des 'SU'-Werts für 'intervalStat'?
Was ist der Zweck des 'nominalStat'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'CHISQ'-Werts für 'nominalStat'?
Was ist der Zweck des 'CRAMERSV'-Werts für 'nominalStat'?
Was ist der Zweck des 'FTEST'-Werts für 'nominalStat'?
Was ist der Zweck des 'G2'-Werts für 'nominalStat'?
Was ist der Zweck des 'IV'-Werts für 'nominalStat'?
Was ist der Zweck des 'rankMissingIndicators'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'separateRank'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'topKInteractions'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'topKSave'-Parameters innerhalb von 'rankPolicy'?
Was ist der Zweck des 'saveState'-Parameters?
Was ist der Zweck des 'screenPolicy'-Parameters?
Was ist der Zweck des 'constant'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'groupRareLevels'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'leakagePercentThreshold'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'lowCv'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'lowMutualInformation'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'missingIndicatorPercent'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'missingPercentThreshold'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'redundant'-Parameters innerhalb von 'screenPolicy'?
Was ist der Zweck des 'seed'-Parameters?
Was ist der Zweck des 'table'-Parameters?
Was ist der Zweck des 'caslib'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'computedOnDemand'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'computedVars'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'format'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'formattedLength'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'label'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'name'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'nfd'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'nfl'-Parameters innerhalb von 'computedVars'?
Was ist der Zweck des 'computedVarsProgram'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'dataSourceOptions'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'importOptions'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'singlePass'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'vars'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'where'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'whereTable'-Parameters innerhalb von 'table'?
Was ist der Zweck des 'casLib'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'dataSourceOptions'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'importOptions'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'name'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'vars'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'where'-Parameters innerhalb von 'whereTable'?
Was ist der Zweck des 'target'-Parameters?
Was ist der Zweck des 'transformationOut'-Parameters?
Was ist der Zweck des 'transformationPolicy'-Parameters?
Was ist der Zweck des 'cardinality'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'entropy'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'interaction'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'iqv'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'kurtosis'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'missing'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'outlier'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'polynomial'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'skewness'-Parameters innerhalb von 'transformationPolicy'?
Was ist der Zweck des 'weight'-Parameters?