mlTools crossValidate

Performance-Test: Parallele Validierung für Predictive Maintenance (Random Forest)

Scénario de test & Cas d'usage

Geschäftskontext

Ein Fertigungsunternehmen analysiert Sensordaten von Tausenden von Maschinen, um Ausfälle vorherzusagen. Aufgrund des hohen Datenvolumens und der Komplexität des 'Forest'-Modells (Random Forest) ist die Rechenzeit kritisch. Der Test soll verifizieren, ob die parallele Ausführung der Folds die Validierungszeit signifikant reduziert.
Datenaufbereitung

Erstellung eines großen Datensatzes 'maschinen_sensoren' mit Sensordaten.

Kopiert!
1 
2DATA casuser.maschinen_sensoren;
3call streaminit(999);
4DO maschine_id = 1 to 5000;
5temperatur = rand('Normal', 80, 5);
6vibration = rand('Gamma', 2, 2);
7druck = rand('Uniform', 10, 50);
8betriebsstunden = rand('Exponential', 1000);
9IF temperatur > 90 and vibration > 5 THEN defekt = 1;
10ELSE defekt = 0;
11OUTPUT;
12END;
13 
14RUN;
15 

Étapes de réalisation

1
Ausführung einer 10-fachen Kreuzvalidierung im Parallel-Modus mit Gradient Boosting.
Kopiert!
1 
2PROC CAS;
3mlTools.crossValidate / TABLE={name='maschinen_sensoren'}, modelType='FOREST', kFolds=10, parallelFolds=TRUE, nSubsessionWorkers=2, trainOptions={ target='defekt', inputs={'temperatur', 'vibration', 'druck', 'betriebsstunden'}, nTrees=50 };
4 
5RUN;
6 

Erwartetes Ergebnis


Die Aktion nutzt mehrere Worker-Sessions parallel, um die 10 Folds zu berechnen. Das Protokoll zeigt den Start von Sub-Sessions an, und die Gesamtlaufzeit ist im Vergleich zur seriellen Ausführung reduziert. Ein validiertes Forest-Modell wird ausgegeben.