Configuration de Nœud d'Extension SAS EM (Clustering Spectral)

ATTENTION : Ce contenu est DÉSACTIVÉ. Il est invisible pour les visiteurs.
Niveau de difficulté
Débutant
Publié le :
Simon

Le Conseil de l'Expert

Simon
Expert SAS et fondateur.

Le développement d'un nœud d'extension (Extension Node) est la méthode royale pour intégrer des algorithmes personnalisés, comme le Clustering Spectral, au sein de l'interface visuelle de SAS Enterprise Miner. La macro %create agit comme le manifeste de votre composant : elle définit l'interface utilisateur et la structure des données. L'utilisation de %EM_PROPERTY permet d'exposer les hyperparamètres (Sigma, Laplacian, Neighborhood) directement dans le panneau des propriétés, rendant l'algorithme ajustable par des non-programmeurs. Parallèlement, %EM_REGISTER est crucial pour la communication inter-nœuds ; il garantit que les tables de résultats (vecteurs propres, statistiques d'itération) sont correctement enregistrées dans le projet et peuvent être exploitées par les nœuds suivants du diagramme.

Ce script contient la définition de la macro '%create', utilisée spécifiquement dans le développement de nœuds d'extension pour SAS© Enterprise Miner. Elle initialise les propriétés de l'algorithme (paramètres de clustering spectral comme le Laplacien, le voisinage, Sigma) et enregistre les clés pour les tables de données d'entrée et de sortie (import_data, vectors, statistiques, etc.) que le nœud manipulera.
Analyse des données

Type : EXTERNE


Les données sont gérées par le framework Enterprise Miner. Le code enregistre des clés (ex: 'import_data') qui feront le lien avec les tables fournies par le flux de processus.

1 Bloc de code
MACRO
Explication :
Définition de la macro de création du nœud. Elle utilise %EM_PROPERTY pour fixer les paramètres par défaut de l'algorithme (ex: nombre de clusters à 2, itérations max à 10) et %EM_REGISTER pour déclarer les tables d'entrée/sortie attendues.
Copié !
1%macro create;
2 %EM_PROPERTY(NAME=ClusterNum, VALUE=2);
3 %EM_PROPERTY(NAME=Neighborhood, VALUE=complete);
4 %EM_PROPERTY(NAME=Laplacian, VALUE=normalizedRW);
5 %EM_PROPERTY(NAME=NeighFun, VALUE=gaussian);
6 %EM_PROPERTY(NAME=Sigma, VALUE=1.0);
7 %EM_PROPERTY(NAME=K, VALUE=5);
8 %EM_PROPERTY(NAME=MaxIter, VALUE=10);
9 %EM_PROPERTY(NAME=Distance, VALUE=EUCLIDEAN);
10 %EM_PROPERTY(NAME=Seed, VALUE=12346);
11 %EM_PROPERTY(NAME=Impute, VALUE=none);
12 %EM_PROPERTY(NAME=Standard, VALUE=N);
13 %EM_PROPERTY(NAME=ClusRole, VALUE=SEGMENT, ACTION=SCORE);
14
15 
16 %EM_REGISTER(key=import_data, type=DATA);
17 %EM_REGISTER(key=vectors, type=DATA);
18 %EM_REGISTER(key=indvectors, type=DATA);
19 %EM_REGISTER(key=OUTSTAT, type=DATA);
20 %EM_REGISTER(key=graph_table, type=DATA);
21 %EM_REGISTER(key=MODELINFO, TYPE=DATA);
22 %EM_REGISTER(key=CLUSTERSUM, type=DATA);
23 %EM_REGISTER(key=ITERSTAT, type=DATA);
24 %EM_REGISTER(key=OVERALLVARSTAT, TYPE=DATA);
25 %EM_REGISTER(key=CLUSTERBASEDVARSTAT, type=DATA);
26 
27%mend create;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.