dataSciencePilot

featureMachine

##set_datasciencepilot

Description

L'action featureMachineAction automatisée de SAS Viya (proc CAS) qui génère, transforme et sélectionne intelligemment les variables les plus prédictives pour améliorer rapidement la qualité des modèles analytiques. est le couteau suisse automatisé pour la préparation de vos données (Feature EngineeringProcessus de transformation, création ou sélection de variables brutes en indicateurs prédictifs pertinents pour optimiser la performance et la précision des modèles de machine learning.). Elle analyse vos variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. et décide intelligemment lesquelles transformer, lesquelles supprimer (parce qu'elles sont inutiles ou trop bavardes) et lesquelles combiner pour créer de nouvelles pépites d'information . En gros, c'est comme avoir un petit data scientistExpert exploitant SAS Viya pour extraire des connaissances via le Machine Learning et les statistiques, afin de résoudre des problèmes métier complexes à partir de données massives. stagiaire qui ne dort jamais et qui prépare votre café... euh, vos données.

Syntaxe Officielle
proc cas;
dataSciencePilot.featureMachine /
table={name="nom_table", caslib="nom_caslib"},
target="variable_cible",
featureOut={name="table_features", replace=True},
transformationOut={name="table_transfo", replace=True},
saveState={name="modele_astore", replace=True},
explorationPolicy={...},
transformationPolicy={...},
rankPolicy={...};
run;

Paramètres Clés

Nom du paramètre Description
table Désigne la table CAS contenant vos données brutes à raffiner .
target La variable cible (votre objectif) que l'algorithme doit garder en ligne de mire pour optimiser les transformations .
featureOut Le nom de la table de sortie qui contiendra les définitions des caractéristiques générées .
transformationOut Table de sortie stockant les pipelines de transformation (très utile pour la reproductibilité) .
saveState Permet de sauvegarder tout le moteur de transformation sous forme d'un Analytic Store (astore) pour l'appliquer plus tard sur de nouvelles données .
explorationPolicy Définit les critères d'analyse (ex: seuils de cardinalité, gestion des valeurs manquantes) .
transformationPolicy Spécifie l'espace des transformations autorisées (ex: autoriser les interactions ou les polynômes) .
rankPolicy Définit comment classer et filtrer les meilleures features générées .

Préparation des données

Création d'un jeu de données pour le Feature Engineering

On crée une petite table 'mes_donnees' avec des variables numériques, catégorielles et quelques valeurs manquantes pour faire travailler la machine.

1DATA casuser.mes_donnees;
2 INPUT id age revenu $ dette cible;
3 DATALINES;
41 25 bas 100 0
52 . moyen 500 1
63 45 haut . 0
74 30 bas 200 1
85 50 . 800 0
96 22 moyen 150 1
107 35 haut 400 0
118 . bas 50 1
12;
13RUN;

Exemples d'utilisation

Feature Engineering automatique minimaliste

Une exécution simple pour voir ce que l'action propose par défaut sur notre table.

1PROC CAS;
2 dataSciencePilot.featureMachine /
3 TABLE="mes_donnees",
4 target="cible",
5 featureOut="ma_liste_features",
6 transformationOut="mon_pipeline";
7RUN;
8QUIT;
Résultat Attendu :
Génération de deux tables CAS : 'ma_liste_features' (les variables créées) et 'mon_pipeline' (les étapes techniques).
Feature Engineering agressif avec interactions et sauvegarde du modèle

Ici, on active la détection d'interactions entre variables et on sauvegarde le résultat pour un déploiement futur via un astore.

1PROC CAS;
2 dataSciencePilot.featureMachine /
3 TABLE="mes_donnees",
4 target="cible",
5 featureOut={name="features_finales", replace=True},
6 transformationOut={name="transfo_finales", replace=True},
7 saveState={name="modele_fe", replace=True},
8 transformationPolicy={interaction=True, polynomial=True, missing=True},
9 rankPolicy={topKSave=2, intervalStat="MI"};
10RUN;
11QUIT;
Résultat Attendu :
L'action va explorer les produits de variables (interactions) et les carrés/cubes (polynômes), puis ne garder que les 2 meilleures transformations par variable originale basées sur l'Information Mutuelle (MI).