decisionTree

gbtreeCode

Descripción

Genera código de puntuación de paso DATA (DATA step) a partir de un modelo de árbol de aumento de gradiente (gradient boosting tree). Esta acción permite exportar la lógica del modelo para su uso en entornos SAS tradicionales u otros entornos de ejecución.

decisionTree.gbtreeCode <result=results> <status=rc> / code={casOut={ caslib="string", compress=TRUE | FALSE, indexVars={"variable-name-1" <, "variable-name-2", ...>}, label="string", lifetime=64-bit-integer, maxMemSize=64-bit-integer, memoryFormat="DVR" | "INHERIT" | "STANDARD", name="table-name", promote=TRUE | FALSE, replace=TRUE | FALSE, replication=integer, tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE", threadBlockSize=64-bit-integer, timeStamp="string", where={"string-1" <, "string-2", ...>} }, comment=TRUE | FALSE, fmtWdth=integer, indentSize=integer, labelId=integer, lineSize=integer, noTrim=TRUE | FALSE, tabForm=TRUE | FALSE}, encodeName=TRUE | FALSE, modelTable={caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{ format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer }, {...}}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>}, importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}, name="table-name", singlePass=TRUE | FALSE, vars={{ format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer }, {...}}, where="where-expression", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}, name="table-name", vars={{ format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer }, {...}}, where="where-expression" } };
Parámetros
ParámetroDescripción
modelTableEspecifica la tabla CAS que contiene el modelo analítico (modelo de árbol de aumento de gradiente) que se va a procesar.
codeSolicita que la acción produzca código de puntuación SAS. Se utiliza el subparámetro 'casOut' para especificar la tabla de salida donde se guardará este código.
encodeNameEspecifica si se deben codificar los nombres de las variables, como las probabilidades predichas de un objetivo binario o nominal. Si se establece en TRUE, las probabilidades predichas se nombran con el prefijo 'P_' en lugar del predeterminado '_DT_P_'.
Preparación del Modelo

Antes de generar el código, necesitamos entrenar un modelo de árbol de aumento de gradiente. Este paso carga datos de ejemplo y crea el modelo 'gradboost_model'.

¡Copiado!
1PROC CAS;
2 SESSION casauto;
3 /* Cargar datos de ejemplo */
4 TABLE.loadTable / path='hmeq.csv' casout={name='hmeq', replace=true} importOptions={fileType='CSV'};
5
6 /* Entrenar modelo de Gradient Boosting */
7 decisionTree.gbtreeTrain /
8 TABLE={name='hmeq'}
9 target='BAD'
10 inputs={'LOAN', 'MORTDUE', 'VALUE', 'REASON', 'JOB'}
11 casOut={name='gradboost_model', replace=true};
12RUN;

Ejemplos

Genera el código SAS DATA step a partir del modelo 'gradboost_model' y lo guarda en la tabla 'score_code'.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1PROC CAS;
2 decisionTree.gbtreeCode /
3 modelTable={name='gradboost_model'}
4 code={casOut={name='score_code', replace=true}};
5RUN;
Resultado :
Se crea una tabla CAS llamada 'score_code' que contiene el texto del código SAS necesario para puntuar nuevas observaciones utilizando el modelo entrenado.

Genera código de puntuación con nombres de variables codificados (prefijo 'P_') y sin incluir comentarios en el código generado, guardando el resultado en 'clean_score_code'.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1PROC CAS;
2 decisionTree.gbtreeCode /
3 modelTable={name='gradboost_model'}
4 encodeName=true
5 code={
6 casOut={name='clean_score_code', replace=true},
7 comment=false
8 };
9RUN;
Resultado :
La tabla 'clean_score_code' contendrá el código de puntuación SAS. Las variables de probabilidad usarán el formato corto (P_) y el código no incluirá bloques de comentarios explicativos, haciéndolo más compacto.

FAQ

¿Qué es la acción gbtreeCode?
¿Cuáles son los parámetros de entrada y salida de la acción gbtreeCode?
¿Cuáles son los parámetros principales de la acción gbtreeCode?
¿Qué significa el parámetro encodeName en gbtreeCode?
¿Qué información se puede especificar para el parámetro modelTable?