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
tableGibt den Namen der Eingabetabelle, die Caslib und andere allgemeine Parameter an.
targetGibt die Zielvariable für die Analyse an.
featureOutGibt die CAS-Tabelle an, in der die Pipelines für Merkmalstransformation und -generierung gespeichert werden.
transformationOutGibt die CAS-Tabelle an, in der die Transformations-Pipelines gespeichert werden (ähnlich wie featureOut, oft für spezifische Zwischenergebnisse).
saveStateGibt die CAS-Tabelle an, in der das Modell zur Merkmalstransformation und -generierung als Analytic Store (ASTORE) gespeichert wird.
casoutGibt die CAS-Tabelle an, in der die Analyseergebnisse gespeichert werden.
explorationPolicySpezifiziert die Richtlinie für die automatische Analyse und Gruppierung von Variablen (AVAPT), einschließlich Einstellungen für Kardinalität, Entropie, Ausreißer und Fehlwerte.
screenPolicySpezifiziert die Richtlinie zum Aussortieren von Variablen (z. B. konstante Variablen, seltene Ebenen, Informationslecks).
transformationPolicySpezifiziert den Raum für Merkmalstransformation und -generierung, z. B. ob Interaktionen, Polynome oder Transformationen für Schiefe und Kurtosis berücksichtigt werden sollen.
rankPolicySpezifiziert die Richtlinie zur Bewertung (Ranking) von Merkmalen, einschließlich der verwendeten Statistiken für Intervall- und Nominalvariablen.
copyVarsGibt die Namen der Variablen an, die unverändert in die Ausgabetabelle kopiert werden sollen.
misraGriesWenn auf True gesetzt, wird der Misra-Gries-Algorithmus zur Schätzung der Häufigkeitsverteilung verwendet, falls das Limit für eindeutige Werte überschritten wird.
distinctCountLimitGibt das Limit für die Zählung eindeutiger Werte an.
ecdfToleranceGibt den Toleranzwert für die empirische kumulative Verteilungsfunktion an.
eventGibt die Ereignisebene der Zielvariable an, die modelliert werden soll (für binäre Klassifikation).
seedGibt 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?