Scénario de test & Cas d'usage
Klassifikation mit Bayes-Netzen.
Entdecken Sie alle Aktionen von bayesianNetClassifierErstellung einer Kundentabelle mit demografischen Informationen, Kaufhistorie und einer Zielvariable, die die Kaufentscheidung angibt.
| 1 | DATA work.kunden_marketing; |
| 2 | call streaminit(123); |
| 3 | DO kunde_id = 1 to 5000; |
| 4 | alter = 18 + floor(rand('Uniform') * 50); |
| 5 | einkommen = 30000 + rand('Normal', 60000, 15000); |
| 6 | IF rand('Uniform') < 0.5 THEN geschlecht = 'M'; ELSE geschlecht = 'W'; |
| 7 | region = byte(65 + floor(rand('Uniform')*4)); /* A, B, C, D */ |
| 8 | letzte_kauf_monate = 1 + floor(rand('Uniform') * 24); |
| 9 | kauf_wahrscheinlichkeit = 1 / (1 + exp(-( -2 + (alter/10) - (einkommen/20000) + (letzte_kauf_monate/12) ))); |
| 10 | IF rand('Uniform') < kauf_wahrscheinlichkeit THEN kauf = 1; ELSE kauf = 0; |
| 11 | OUTPUT; |
| 12 | END; |
| 13 | RUN; |
| 1 | |
| 2 | PROC CASUTIL; |
| 3 | load |
| 4 | DATA=work.kunden_marketing outcaslib='casuser' casout='KUNDEN_MARKETING' replace; |
| 5 | RUN; |
| 6 |
| 1 | PROC CAS; |
| 2 | bayesianNetClassifier.bnet / |
| 3 | TABLE={caslib='casuser', name='KUNDEN_MARKETING'}, |
| 4 | target='kauf', |
| 5 | inputs={'alter', 'einkommen', 'geschlecht', 'region', 'letzte_kauf_monate'}, |
| 6 | nominals={'geschlecht', 'region', 'kauf'}, |
| 7 | structures={'TAN'}, |
| 8 | outNetwork={caslib='casuser', name='bnet_marketing_netzwerk', replace=true}, |
| 9 | saveState={caslib='casuser', name='bnet_marketing_modell', replace=true}; |
| 10 | RUN; |
| 1 | PROC CASUTIL; |
| 2 | contents casdata='bnet_marketing_netzwerk' incaslib='casuser'; |
| 3 | contents casdata='bnet_marketing_modell' incaslib='casuser'; |
| 4 | RUN; |
Die Aktion wird erfolgreich ausgeführt. Eine Netzwerktabelle ('bnet_marketing_netzwerk') und eine Zustandstabelle ('bnet_marketing_modell') werden in der 'casuser'-Bibliothek erstellt. Die Zustandstabelle enthält das trainierte Modell, das bereit ist, mit einer Scoring-Aktion verwendet zu werden.