Hallo alle,
Ich programmiere in einer App mit jsl (und ja, ich weiß, dass ich dafür ein Dashboard erstellen kann
) und ich verwende Surrogate. Bisher funktioniert es so, dass ich verschiedene Arten von Surrogaten (z. B. schrittweise, NN, Polynome usw.) manuell ausprobiere und je nach R2 und anderen verfügbaren Metriken entscheide ich, welche für jede abhängige Variable meiner Analyse ausgewählt wird . Meine Frage ist: Gibt es eine weniger manuelle Möglichkeit für JMP, Surrogate automatisch zu erstellen, verschiedene Typen auszuprobieren und diejenigen mit der genauesten Anpassung beizubehalten, anstatt dass ich fortfahre und die verschiedenen Typen manuell erstelle und auswähle?
Vielen Dank,
Eva
Hallo eva
Bitte schauen Sie sich folgendes Beispiel an:
dt = Open( "$SAMPLE_DATA/Boston Housing.jmp" );
neural_fits = Neural(
Y( :chas ),
X( :crim, :indus, :nox, :rooms, :age, :distance, :radial ),
);
// =========== You need to modify the above for your specific problem
min_neurons = 5;
max_neurons = 10;
r2_list = {};
For( i=min_neurons, i<=max_neurons, i++,
neural_fits << Fit( NTanH( i ) )
);
For( i=1, i<=(max_neurons-min_neurons+1), i++,
r2_list = Insert( r2_list, ( neural_fits << ( Fit[i] << Get RSquare Validation ) )[1] )
);
best_r2_fit = Loc Max( Matrix( r2_list ) );
For( i=(max_neurons-min_neurons+1), i>=1, i--, // must be backwards because the fit numbers shift as you remove them
If( i != best_r2_fit,
neural_fits << ( Fit[i] << Remove Fit )
)
);Dieses Skript erstellt 6 verschiedene neuronale Modelle und trifft basierend auf der Validierung R2 eine Entscheidung, um eines auszuwählen. Fügen Sie hier und da einige "show" -Anweisungen ein, um zu sehen, was los ist.
Wenn Sie dies auf andere Methoden ausweiten, müssen Sie deren spezifische Befehle finden, um R2-Informationen zu extrahieren (oder mit welcher Metrik Sie arbeiten möchten). Dies ist spezifisch für die neuronale Plattform. Sie können eine kompliziertere Logik zusammenstellen, wenn Sie die Anzahl der anderen Aktivierungsfunktionen variieren oder auf das Boosten usw. eingehen möchten.
Hoffe das hilft und lass es mich wissen, wenn du weitere Fragen hast.