Hola a todos,
Estoy codificando en una aplicación usando jsl (y sí, sé que puedo crear un panel para hacer eso
) y estoy usando sustitutos. Hasta ahora, la forma en que funciona es que pruebo manualmente diferentes tipos de sustitutos (por ejemplo, paso a paso, NN, polinomios, etc.) y de acuerdo con mi R2 y otras métricas disponibles, decido cuál elegir para cada variable dependiente de mi análisis . Mi pregunta es: ¿existe una forma menos manual para que JMP cree sustitutos automáticamente, pruebe diferentes tipos y mantenga los que se ajusten con mayor precisión en lugar de seguir adelante y crear los diferentes tipos manualmente y elegir?
Gracias,
Eva
Hola eva
Por favor, eche un vistazo al siguiente ejemplo:
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 )
)
);Este script crea 6 modelos Neural diferentes y toma una decisión basada en la validación R2 para elegir uno. Inserte algunas declaraciones "show" aquí y allá para ver qué está pasando.
Cuando extienda esto a otros métodos, tendrá que encontrar sus comandos específicos para extraer información de R2 (o cualquier métrica con la que quiera trabajar). Esto es específico de la plataforma neural. Puede armar una lógica más complicada si desea variar el número de otros tipos de funciones de activación o ir a impulsar, etc.
Espero que esto ayude y hágame saber si tiene más preguntas.