¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Hola,
Después de crear una fórmula de predicción (por ejemplo, desde una red neuronal) y crear una columna, puedo hacer clic derecho en esa columna y hacer clic en "fórmula" y ver la fórmula creada. Entonces puedo "hacer clic y arrastrar" la ecuación en un archivo de texto como una ecuación de una línea.
Mi pregunta: ¿Es posible escribir este proceso? Quiero guardar esa fórmula sin tener que hacer el proceso anterior cada vez. (Ya tengo un script que ejecutará la red neuronal, etc. sólo nada que pueda salvar esa fórmula de una sola línea).
¡Gracias por tu tiempo!
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Gracias, Mark. Realmente aprecio tu tiempo. Descubrí que pude imprimir (pero no en un archivo separado) la fórmula completa (usando el comando Show ()) haciendo algo como esto:
result = Column ("Predicted x") >> Get Formula
Mostrar resultado);
Una vez que vi que la ecuación impresa coincidía con lo que quería (con el comando Show ()), intenté convertirla en una cadena para usar el comando "Guardar archivo de texto". Sin embargo, al convertir la fórmula en una cadena, se obtuvo esta salida:
"."
Probé esto intentando convertir algo simple como "tan (a + b)" en una cadena, pero dentro del comando char (), intenta resolver "tan (a + b)". No estoy seguro si eso es lo que está pasando con lo anterior.
Pero veo que su solución propuesta incluye un poco más de sintaxis que no estaba incluida, por lo que le daré una oportunidad ahora.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Este script no es una solución general, pero muestra cómo podría hacerlo:
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
nn = dt << Neural(
Y( :weight ),
X( :age, :sex, :height ),
Informative Missing( 0 ),
Validation Method( "Holdback", 0.3333 ),
Fit( NTanH( 3 ) )
);
nn << Save Formulas;
formula string = Char( :H1_1 << Get Formula ) || "\!n";
formula string ||= Char( :H1_2 << Get Formula ) || "\!n";
formula string ||= Char( :H1_3 << Get Formula ) || "\!n";
formula string ||= Char( :Predicted weight << Get Formula );
Save Text File( "My NN Formula.txt", formula string );
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Interesante, así que tal vez si pueda dividir la fórmula con "Guardar fórmula" en lugar de seleccionar "Guardar fórmulas de perfil", entonces podré juntar toda la fórmula.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Gracias, Mark, ¿no hay una sintaxis actual para "agarrar" una fórmula de la red neuronal en un script? Como mencioné anteriormente, lo que he estado haciendo es abrir el editor de fórmulas (para ver la fórmula de la red neuronal), luego haga clic y arrastre la fórmula a un archivo de texto. Parece que tiene que haber una manera de sacar esa ecuación. ¡Gracias por echar un vistazo!
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Neural guarda el modelo ajustado como una serie de columnas con fórmulas para cada nodo oculto y para la acumulación de los nodos ocultos para cada respuesta. No es el mismo resultado que cuando se ajusta un modelo lineal.
Por cierto, obtuve la expresión de fórmula con este mensaje cuando se envió a la columna de fórmula de predicción. Requeriría la sustitución con las fórmulas de los nodos ocultos individuales (H1 ... Hn) para expandirlo completamente.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Hola Jim,
Así que eso funciona para la mayoría de las ecuaciones, pero si estoy tratando de hacer eso para una fórmula generada a partir de una Red neuronal , el "Get Formula" devuelve esto para la ecuación / fórmula:
Neural []
¿Sabe si hay otra forma de llamar u obtener la fórmula utilizada para un cálculo? Es una ecuación larga, por lo que se pregunta si hay un límite de caracteres para "Obtener fórmula".
Gracias,
Juan
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Usted es correcto y el ajuste que realizó debe hacer que funcione sin problemas.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?Gracias de nuevo por la respuesta, sin embargo, ¿no funciona el "Guardar archivo de texto" solo para cadenas? (donde incluyó la 'x'). Así que creo que tendré que intentar algo como x = char (col << obtener fórmula). Voy a ver si eso funciona. Si tienes alguna otra idea, ¡no dudes en hacérmelo saber! Gracias.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?¡Muchas gracias! Le voy a dar una oportunidad.
Re: ¿Es posible extraer la fórmula de predicción como una fórmula de una línea en el script?x = col << obtener fórmula;
guardar archivo de texto ("ruta al archivo", x);
ver:
Ayuda ==> Índice de secuencias de comandos ==> Tabla de datos ==> Secuencias de comandos de columnas