JSL - Wiederholungen innerhalb einer PlattformfunktionNames Default To Here( 1 );
// Create an Example data table
dt = currentdatatable();
// Get the names of the columns in the data table
colNames = dt << get column group( "WLS" );
nIters = 2;
Neural(
Y( :Type ),
X(eval(colNames)),
Validation Method( "KFold", 5 ),
Set Random Seed( 2 ),
for( k=1, k <= nIters, k++, Fit( NTanH ( 2 ) ) ),
);
Ich versuche, mehr als ein neuronales Modell mithilfe des beigefügten Skripts anzupassen. Wenn ich anstelle der For-Schleife mehrmals Fit( NTanH(2)) schreibe, funktioniert es einwandfrei, aber mit einer For-Schleife bekomme ich es nicht zum Laufen. Irgendwelche Vorschläge? Danke!
Automatisierung und SkriptingDatenexploration und -visualisierungBetreff: JSL - Wiederholungen innerhalb einer PlattformfunktionSie könnten Fit(NTanH()) außerhalb von Neural() verschieben. Unten ist ein Beispiel aus dem Skriptindex:

Modifizierte Version aus dem Skriptindex mit for-Schleife:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Boston Housing.jmp");
obj = Neural(
Y(:mvalue),
X(:crim, :indus, :chas, :nox, :rooms, :age, :distance, :radial),
Set Random Seed(2)
);
For(i = 1, i <= 2, i++,
obj << Fit(NTanH(4));
);

Betreff: JSL - Wiederholungen innerhalb einer PlattformfunktionHallo Jarmo, das war eine Option, die ich nicht ausprobiert habe, und es ist eine Lösung für mein Problem. Funktioniert gut. Danke schön!
Betreff: JSL - Wiederholungen innerhalb einer PlattformfunktionHallo Jarmo, Unten ist ein funktionierendes Skript:
Names Default To Here( 1 );
delete symbols();
dt = current data table();
colNames = dt << get column group("WLs");
exclColnames = dt << get excluded columns();
For( i = 1, i <= N Items( exclColnames ), i++,
Remove From( colNames, As List( Loc( colNames, exclColnames[i] ) ) )
);
rpt = New Window( "Neural of Type", dt <<
Neural(
Y( :Type ),
X( eval ( colNames ) ),
Informative Missing( 0 ),
Validation Method( "KFold", 5 ),
Set Random Seed( 2 ),
Fit( NTanH( 2 ) ),
Fit( NTanH( 2 ) ),
Fit( NTanH( 2 ) )
)
);
Wait( 0 );
rpt["Neural", Outline Box( 1 ), "Validation", "Type", Table Box( 1 )] <<
Make Combined Data Table;
rpt << Close Window;Allerdings möchte ich das Fit(NTanH(2)) flexibe machen. Die Art und Weise, wie Sie demonstriert haben, funktioniert hier nicht, ich habe versucht, es mit dem nächsten Skript zu lösen (wobei ich den ersten Teil weggelassen habe):
obj =Neural(
Y( :Type ),
X( eval ( colNames ) ),
Informative Missing( 0 ),
Validation Method( "KFold", 5 ),
Set Random Seed( 2 ),
);
for(i=1, i<=3, i++, obj << Fit( NTanH(2)));
rpt = current window();<BR />
Wait( 0 );
rpt["Neural", Outline Box( 1 ), "Validation", "Type", Table Box( 1 )] <<
Make Combined Data Table;
rpt << Close Window;
Aber jetzt bekomme ich die Fehlermeldung: "Cannot subscript Display Box in access or reviews of 'rpt[ /*###*/"Neural",Outline Box(1),"Validation","Type",Table Box(1 )]' , rpt[/*###*/"Neural", Outline Box( 1 ), "Validation", "Type", Table Box( 1 )]". Ich verstehe nicht, warum ich diese Meldung bekomme, weil das erste Skript gut läuft.
Haben Sie eine Lösung für dieses Problem und können Sie erklären, warum ich dieses Problem habe, um JSL ein bisschen besser zu verstehen. Danke!
Betreff: JSL - Wiederholungen innerhalb einer PlattformfunktionDanke, Jarmo, das war, wo ich gesucht habe. Einfache Linie, aber für jemanden, der neu bei JSL ist, schwer zu verstehen!
Betreff: JSL - Wiederholungen innerhalb einer PlattformfunktionDer Code findet keine korrekten Referenzen, es könnte sein, dass sich rpt = Current Window(); to rpt = Current Report() ist genug, aber ich würde dringend empfehlen, die Referenz zu verwenden, die Sie haben (können) (in meinem Beispiel obj)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Boston Housing.jmp");
obj = Neural(
Y(:mvalue),
X(:crim, :indus, :chas, :nox, :rooms, :age, :distance, :radial),
Set Random Seed(2),
<< Fit(NTanH(4)),
<< Fit(NTanH(4)),
<< Fit(NTanH(4))
);
For(i = 1, i <= 2, i++,
obj << Fit(NTanH(4));
);
Report(obj)[Outline Box("Neural")][Outline Box("Training")][Table Box(1)] << Make Combined Data Table;