Scénario de test & Cas d'usage
Apprentissage actif pour optimiser l'étiquetage des données.
Découvrir toutes les actions de activeLearnGénération d'une table de référence de 100 capteurs et d'une table de lectures contenant 1 million de mesures simulées.
| 1 | DATA mycas.specs_capteurs; |
| 2 | DO id_capteur = 1 to 100; |
| 3 | IF mod(id_capteur, 2) = 0 THEN type_capteur = 'Temperature'; |
| 4 | ELSE type_capteur = 'Pression'; |
| 5 | seuil_max = 100 + ranuni(1)*10; |
| 6 | OUTPUT; |
| 7 | END; |
| 8 | RUN; |
| 9 | |
| 10 | DATA mycas.lectures_iot (drop=i); |
| 11 | call streaminit(123); |
| 12 | DO i = 1 to 1000000; |
| 13 | id_capteur = rand('integer', 1, 100); |
| 14 | valeur = 95 + rand('uniform')*15; |
| 15 | OUTPUT; |
| 16 | END; |
| 17 | RUN; |
| 1 | /* Les données sont déjà dans la caslib 'mycas' et donc disponibles pour CAS */ |
| 1 | PROC CAS; |
| 2 | ACTION activeLearn.alJoin / |
| 3 | TABLE={name='lectures_iot'} |
| 4 | annotatedTable={name='specs_capteurs'} |
| 5 | id='id_capteur' |
| 6 | joinType='INNER' |
| 7 | casOut={name='lectures_enrichies_vol', replace=true}; |
| 8 | RUN; |
| 9 | QUIT; |
L'action doit se terminer avec succès dans un délai raisonnable pour un volume de 1 million de lignes. La table résultante `lectures_enrichies_vol` doit contenir 1 million de lignes, chacune ayant les colonnes `id_capteur`, `valeur`, `type_capteur`, et `seuil_max`. Ce scénario valide que l'action est capable de traiter des jointures sur de grands jeux de données de manière efficace en environnement distribué CAS.