?>
La acción annCode genera código de puntuación del DATA step de SAS a partir de un modelo de red neuronal artificial entrenado previamente con la acción annTrain. Este código puede ser utilizado para puntuar nuevos datos en entornos SAS tradicionales, permitiendo la implementación del modelo fuera del entorno de CAS.
| Parámetro | Descripción |
|---|---|
| code | Solicita que la acción produzca código de puntuación SAS. Este parámetro agrupa opciones para personalizar el código generado. |
| listNode | Especifica los nodos que se incluirán en la tabla de salida puntuada. Útil para la auto-codificación y la reducción de dimensiones. |
| modelId | Especifica un nombre de variable para la ID del modelo que se incluirá en el código de puntuación del DATA step generado. |
| modelTable | Especifica la tabla que contiene el modelo de red neuronal artificial que se utilizará para generar el código de puntuación. |
Este bloque de código carga datos en CAS, los prepara imputando valores faltantes y luego entrena un modelo de red neuronal. El modelo entrenado se guarda en una tabla CAS, que es un requisito previo para usar la acción `annCode`.
1 PROC CAS; 2 loadactionset 'dataStep'; 3 dataStep.runCode / code='data mycas.hmeq; set sampsio.hmeq; run;'; 4 5 loadactionset 'dataPreprocess'; 6 impute.impute / 7 TABLE={name='hmeq'}, 8 method='MEAN', 9 inputs={{name='DEBTINC'}, {name='NINQ'}}, 10 copyAllVars=true, 11 casOut={name='hmeq_imputed', replace=true}; 12 13 loadactionset 'neuralNet'; 14 annTrain / 15 TABLE={name='hmeq_imputed'}, 16 inputs={'LOAN', 'MORTDUE', 'VALUE', 'YOJ', 'DEROG', 'DELINQ', 'CLAGE', 'NINQ', 'CLNO', 'DEBTINC'}, 17 target='BAD', 18 nominals={'BAD', 'REASON', 'JOB'}, 19 modelTable={name='nn_model'}; 20 QUIT;
Este ejemplo toma la tabla de modelo generada en el paso de creación de datos y utiliza `annCode` para generar el código de puntuación del DATA step. El código se guarda en una tabla CAS especificada en el parámetro `casOut`.
| 1 | PROC CAS; |
| 2 | loadactionset 'neuralNet'; |
| 3 | annCode / |
| 4 | modelTable={name='nn_model'}, |
| 5 | code={casOut={name='nn_score_code', replace=true}}; |
| 6 | RUN; |
| 7 | QUIT; |
Este ejemplo demuestra cómo personalizar la salida del código de puntuación. Se utiliza el parámetro `code` para añadir comentarios al código (`comment=true`), establecer un tamaño de línea específico (`lineSize=100`) y proporcionar un nombre de modelo personalizado (`modelId`).
| 1 | PROC CAS; |
| 2 | loadactionset 'neuralNet'; |
| 3 | annCode / |
| 4 | modelTable={name='nn_model'}, |
| 5 | modelId='MiModeloHMEQ', |
| 6 | code={ |
| 7 | casOut={name='nn_score_code_detailed', replace=true, caslib='CASUSER'}, |
| 8 | comment=true, |
| 9 | lineSize=100 |
| 10 | }; |
| 11 | RUN; |
| 12 | QUIT; |