neuralNet annScore

Standardfall: Vorhersage der Kundenreaktion auf eine Marketingkampagne

Scénario de test & Cas d'usage

Geschäftskontext

Ein Einzelhandelsunternehmen möchte vorhersagen, welche Kunden wahrscheinlich auf eine neue Marketingkampagne reagieren werden. Es verfügt über ein vortrainiertes neuronales Netzwerkmodell, das auf Kundendemografie und bisheriger Kaufhistorie basiert. Ziel ist es, die Kunden mit der höchsten Kaufwahrscheinlichkeit zu identifizieren, um das Marketingbudget zu optimieren.
Über das Set : neuralNet

Training klassischer künstlicher neuronaler Netze.

Entdecken Sie alle Aktionen von neuralNet
Datenaufbereitung

Erstellt zwei Tabellen: 'kunden_training' zum Trainieren des Modells mit historischen Daten und 'kunden_scoring' für die neuen Kunden, die bewertet werden sollen. Die Zieltabelle enthält demografische Daten und eine binäre Zielvariable 'hat_gekauft'.

Kopiert!
1DATA casuser.kunden_training;
2 DO i = 1 to 2000;
3 alter = 20 + floor(rand('UNIFORM')*50);
4 einkommen = 30000 + floor(rand('UNIFORM')*70000);
5 kaufhistorie = floor(rand('UNIFORM')*20);
6 IF (alter > 40 and einkommen > 60000 and kaufhistorie > 10) THEN hat_gekauft = 1;
7 ELSE IF (rand('UNIFORM') < 0.2) THEN hat_gekauft = 1;
8 ELSE hat_gekauft = 0;
9 OUTPUT;
10 END;
11RUN;
12 
13DATA casuser.kunden_scoring;
14 DO kunden_id = 1 to 500;
15 alter = 18 + floor(rand('UNIFORM')*60);
16 einkommen = 25000 + floor(rand('UNIFORM')*80000);
17 kaufhistorie = floor(rand('UNIFORM')*15);
18 OUTPUT;
19 END;
20RUN;

Étapes de réalisation

1
Trainieren des neuronalen Netzwerkmodells mit den historischen Kundendaten.
Kopiert!
1PROC CAS;
2 neuralNet.annTrain /
3 TABLE={name='kunden_training'},
4 target='hat_gekauft',
5 inputs={'alter', 'einkommen', 'kaufhistorie'},
6 arch='MLP',
7 hiddens={7},
8 modelOut={name='kampagnen_modell', replace=true};
9RUN;
10QUIT;
2
Bewerten der neuen Kundendaten mit dem trainierten Modell. Die Kunden-ID wird in die Ausgabetabelle kopiert und die Bewertungswahrscheinlichkeiten werden für eine spätere Analyse generiert.
Kopiert!
1PROC CAS;
2 neuralNet.annScore /
3 TABLE={name='kunden_scoring'},
4 modelTable={name='kampagnen_modell'},
5 copyVars={'kunden_id', 'alter', 'einkommen'},
6 assess=true,
7 casOut={name='kunden_prognose', replace=true};
8RUN;
9QUIT;

Erwartetes Ergebnis


Eine neue CAS-Tabelle 'kunden_prognose' wird erstellt. Sie enthält die 'kunden_id' und die Eingabevariablen aus der ursprünglichen Scoring-Tabelle sowie neue Spalten: '_NN_PredName_' mit der vorhergesagten Klasse (0 oder 1) und die Wahrscheinlichkeitsspalten (z.B. 'P_hat_gekauft1'), die vom 'assess=true'-Parameter generiert wurden. Das Marketingteam kann diese Tabelle nun verwenden, um Kunden nach der vorhergesagten Wahrscheinlichkeit zu ordnen und gezielt anzusprechen.