Todos los productos
Search
Centro de documentos

Platform For AI:Entrenamiento de clasificación binaria PS-SMART

Última actualización: Sep 04, 2026

Entrene modelos de clasificación binaria mediante el algoritmo PS-SMART para conjuntos de datos a gran escala con miles de millones de muestras y funciones.

Limitaciones

Solo es compatible con el motor de computación MaxCompute.

Requisitos previos

  • La columna objetivo debe contener valores numéricos: 0 para muestras negativas y 1 para muestras positivas. Convierta los tipos STRING antes del entrenamiento. Por ejemplo, convierta Good/Bad a 1/0.

  • Para datos en formato clave-valor (KV), los ID de función deben ser enteros positivos y los valores de función deben ser números reales. Utilice el componente de serialización para convertir los ID de función de tipo STRING. Aplique ingeniería de funciones (como la discretización) para los valores de cadena categóricos.

  • El entrenamiento con cientos de miles de funciones consume muchos recursos y es lento. Para mejorar el rendimiento, utilice algoritmos similares a GBDT que entrenan directamente sobre funciones continuas. Aplique codificación One-Hot a las funciones categóricas y filtre las funciones de baja frecuencia. Evite discretizar funciones numéricas continuas.

  • El algoritmo PS-SMART introduce aleatoriedad mediante el muestreo de datos (data_sample_ratio), el muestreo de funciones (fea_sample_ratio), la aproximación de histogramas y el orden de fusión de bocetos. Las estructuras de árbol pueden diferir entre los trabajadores distribuidos, aunque el rendimiento del modelo se mantiene similar. Espere resultados inconsistentes entre ejecuciones con los mismos datos y parámetros.

  • Aumente el number of computing cores para acelerar el entrenamiento. Este comienza una vez que todos los servidores obtienen los recursos necesarios. Solicitar más recursos durante periodos de alto uso del clúster puede aumentar el tiempo de espera.

Configuración

Configure el componente PS-SMART Binary Classification mediante uno de los siguientes métodos.

Configurar mediante la interfaz de usuario

Configure los parámetros del componente en la página de flujo de trabajo de Designer.

Pestaña

Parámetro

Descripción

Fields Setting

Use Sparse Format

El formato disperso utiliza espacios para separar pares KV y dos puntos (:) para separar la key del value. Ejemplo: 1:0.3 3:0.9.

Feature Columns

Columnas de funciones de la tabla de entrada para el entrenamiento. Para formato denso, seleccione solo columnas numéricas (BIGINT o DOUBLE). Para formato KV disperso con key y value numéricos, seleccione solo columnas STRING.

Label Column

Columna de etiqueta de la tabla de entrada. Admite tipos STRING y numéricos. El contenido debe consistir en valores numéricos (0 y 1 para clasificación binaria).

Weight Column

Columna utilizada para ponderar las filas de muestras. Admite tipos numéricos.

Parameter Settings

Evaluation Metric Type

Tipos de métrica de evaluación:

  • Negative loglikelihood for logistic regression

  • Binary classification error

  • Area under curve for classification

Number of Trees

Número de árboles. Debe ser un entero positivo. El tiempo de entrenamiento aumenta con la cantidad de árboles.

Maximum Tree Depth

Profundidad máxima del árbol. Valor predeterminado: 5 (máximo 16 nodos hoja). Debe ser un entero positivo.

Data Sampling Ratio

Proporción de datos de muestra al construir cada árbol. Acelera el entrenamiento.

Feature Sampling Ratio

Proporción de funciones de muestra al construir cada árbol. Acelera el entrenamiento.

L1 Penalty Coefficient

Controla el tamaño de los nodos hoja. Los valores más grandes crean una distribución más uniforme de los nodos hoja. Auméntelo para reducir el sobreajuste.

L2 Penalty Coefficient

Controla el tamaño de los nodos hoja. Los valores más grandes crean una distribución más uniforme de los nodos hoja. Auméntelo para reducir el sobreajuste.

Learning Rate

Rango de valores: (0.1).

Approximate Sketch Precision

Umbral de cuantil para la división al construir el boceto. Los valores más pequeños crean más cubos. Valor predeterminado: 0.03. No requiere configuración manual.

Minimum Split Loss Change

Cambio mínimo de pérdida necesario para dividir un nodo. Los valores más grandes resultan en divisiones más conservadoras.

Number of Features

Número de funciones o ID máximo de función. Si no se configura, el sistema inicia una tarea SQL para calcularlo automáticamente al estimar el uso de recursos.

Global Bias Term

Valor de predicción inicial para todas las muestras.

Random Number Generator Seed

Semilla de números aleatorios. Debe ser un entero.

Feature Importance Type

Tipos de importancia de función:

  • Number of times the feature is used as a split feature in the model

  • Information gain brought by the feature in the model (predeterminado)

  • Number of samples covered by the feature at the split node in the model

Execution Tuning

Number of Computing Cores

El sistema asigna los núcleos automáticamente.

Memory Size per Core

Memoria por núcleo en MB. Por lo general, no requiere configuración manual. El sistema asigna la memoria automáticamente.

Configurar mediante comandos PAI

Utilice comandos de Platform for AI (PAI) para configurar los parámetros del componente. Use el componente de script SQL para invocar los comandos PAI. Para obtener más información, consulte SQL Script.

# Train.
PAI -name ps_smart
    -project algo_public
    -DinputTableName="smart_binary_input"
    -DmodelName="xlab_m_pai_ps_smart_bi_545859_v0"
    -DoutputTableName="pai_temp_24515_545859_2"
    -DoutputImportanceTableName="pai_temp_24515_545859_3"
    -DlabelColName="label"
    -DfeatureColNames="f0,f1,f2,f3,f4,f5"
    -DenableSparse="false"
    -Dobjective="binary:logistic"
    -Dmetric="error"
    -DfeatureImportanceType="gain"
    -DtreeCount="5"
    -DmaxDepth="5"
    -Dshrinkage="0.3"
    -Dl2="1.0"
    -Dl1="0"
    -Dlifecycle="3"
    -DsketchEps="0.03"
    -DsampleRatio="1.0"
    -DfeatureRatio="1.0"
    -DbaseScore="0.5"
    -DminSplitLoss="0";

# Predict.
PAI -name prediction
    -project algo_public
    -DinputTableName="smart_binary_input"
    -DmodelName="xlab_m_pai_ps_smart_bi_545859_v0"
    -DoutputTableName="pai_temp_24515_545860_1"
    -DfeatureColNames="f0,f1,f2,f3,f4,f5"
    -DappendColNames="label,qid,f0,f1,f2,f3,f4,f5"
    -DenableSparse="false"
    -Dlifecycle="28";

Módulo

Parámetro

Obligatorio

Descripción

Valor predeterminado

Parámetros de datos

featureColNames

Sí

Columnas de funciones de la tabla de entrada para el entrenamiento. Para formato denso, seleccione solo columnas numéricas (BIGINT o DOUBLE). Para formato KV disperso con key y value numéricos, seleccione solo columnas STRING.

Ninguna

labelColName

Sí

Columna de etiqueta de la tabla de entrada. Admite tipos STRING y numéricos. Para almacenamiento interno, solo se admiten tipos numéricos (ejemplo: 0 y 1 para clasificación binaria).

Ninguna

weightCol

No

Columna utilizada para ponderar cada fila de muestra. Admite tipos numéricos.

Ninguna

enableSparse

No

Especifica si el formato es disperso. Valores válidos: {true,false}. El formato disperso utiliza espacios para separar pares KV y dos puntos (:) para separar la key del value. Ejemplo: 1:0.3 3:0.9.

false

inputTableName

Sí

Nombre de la tabla de entrada.

Ninguna

modelName

Sí

Nombre del modelo de salida.

Ninguna

outputImportanceTableName

No

Nombre de la tabla de salida para la importancia de funciones.

Ninguna

inputTablePartitions

No

El formato es ds=1/pt=1.

Ninguna

outputTableName

No

Tabla de salida en MaxCompute. La tabla está en formato binario y no se puede leer. Recupérela únicamente mediante el componente SMART prediction.

Ninguna

lifecycle

No

Ciclo de vida de la tabla de salida en días.

3

Parámetros del algoritmo

objective

Sí

Tipo de función objetivo. Para entrenamiento de clasificación binaria, seleccione binary:logistic.

Ninguna

metric

No

Tipo de métrica de evaluación para el conjunto de datos de entrenamiento. La salida se escribe en el archivo stdout en la sección Coordinator de Logview. Tipos compatibles:

  • logloss: Corresponde a negative loglikelihood for logistic regression en la interfaz de usuario.

  • error: Corresponde a binary classification error en la interfaz de usuario.

  • auc: Corresponde a Area under curve for classification en la interfaz de usuario.

Ninguna

treeCount

No

Número de árboles. El tiempo de entrenamiento es proporcional a la cantidad de árboles.

1

maxDepth

No

Profundidad máxima del árbol. Debe ser un entero positivo de 1 a 20.

5

sampleRatio

No

Proporción de muestreo de datos. Rango de valores: (0.1]. El valor 1.0 significa que no hay muestreo.

1.0

featureRatio

No

Proporción de muestreo de funciones. Rango de valores: (0.1]. El valor 1.0 significa que no hay muestreo.

1.0

l1

No

Coeficiente de penalización L1. Los valores más grandes crean una distribución más uniforme de los nodos hoja. Auméntelo para reducir el sobreajuste.

0

l2

No

Coeficiente de penalización L2. Los valores más grandes crean una distribución más uniforme de los nodos hoja. Auméntelo para reducir el sobreajuste.

1.0

shrinkage

No

Tasa de aprendizaje. Rango de valores: (0.1).

0.3

sketchEps

No

Umbral de cuantil para la división al construir el boceto. Número de cubos: O(1.0/sketchEps). Los valores más pequeños crean más cubos. Por lo general, no requiere configuración manual. Rango de valores: (0.1).

0.03

minSplitLoss

No

Cambio mínimo de pérdida necesario para dividir un nodo. Los valores más grandes resultan en divisiones más conservadoras.

0

featureNum

No

Número de funciones o ID máximo de función. Si no se configura al estimar el uso de recursos, el sistema inicia una tarea SQL para calcularlo automáticamente.

Ninguna

baseScore

No

Valor de predicción inicial para todas las muestras.

0.5

randSeed

No

Semilla de números aleatorios. Debe ser un entero.

Ninguna

featureImportanceType

No

Tipo de importancia de función a calcular. Tipos compatibles:

  • weight: Número de veces que la función se usa como función de división en el modelo.

  • gain: Ganancia de información aportada por la función en el modelo.

  • cover: Número de muestras cubiertas por la función en los nodos de división del modelo.

gain

Parámetros de ajuste

coreNum

No

Número de núcleos. Los valores más grandes aumentan la velocidad del algoritmo.

Asignado por el sistema

memSizePerCore

No

Memoria por núcleo en MB.

Asignado por el sistema

Ejemplo

  1. Utilice ODPS SQL node para ejecutar una sentencia SQL que genere datos de entrenamiento. Este ejemplo utiliza datos en formato denso.

    drop table if exists smart_binary_input;
    create table smart_binary_input lifecycle 3 as
    select
    *
    from
    (
    select 0.72 as f0, 0.42 as f1, 0.55 as f2, -0.09 as f3, 1.79 as f4, -1.2 as f5, 0 as label
    union all
    select 1.23 as f0, -0.33 as f1, -1.55 as f2, 0.92 as f3, -0.04 as f4, -0.1 as f5, 1 as label
    union all
    select -0.2 as f0, -0.55 as f1, -1.28 as f2, 0.48 as f3, -1.7 as f4, 1.13 as f5, 1 as label
    union all
    select 1.24 as f0, -0.68 as f1, 1.82 as f2, 1.57 as f3, 1.18 as f4, 0.2 as f5, 0 as label
    union all
    select -0.85 as f0, 0.19 as f1, -0.06 as f2, -0.55 as f3, 0.31 as f4, 0.08 as f5, 1 as label
    union all
    select 0.58 as f0, -1.39 as f1, 0.05 as f2, 2.18 as f3, -0.02 as f4, 1.71 as f5, 0 as label
    union all
    select -0.48 as f0, 0.79 as f1, 2.52 as f2, -1.19 as f3, 0.9 as f4, -1.04 as f5, 1 as label
    union all
    select 1.02 as f0, -0.88 as f1, 0.82 as f2, 1.82 as f3, 1.55 as f4, 0.53 as f5, 0 as label
    union all
    select 1.19 as f0, -1.18 as f1, -1.1 as f2, 2.26 as f3, 1.22 as f4, 0.92 as f5, 0 as label
    union all
    select -2.78 as f0, 2.33 as f1, 1.18 as f2, -4.5 as f3, -1.31 as f4, -1.8 as f5, 1 as label
    ) tmp;

    Datos de entrenamiento generados:

    image

  2. Construya el flujo de trabajo y ejecute los componentes. Para obtener más información, consulte Algorithm modeling.

    image

    1. Busque y arrastre los componentes Read Table, PS-SMART Binary Classification Training, Prediction y Write Table desde la lista de componentes en el lado izquierdo del lienzo de Designer hacia el lienzo.

    2. Conecte los componentes para construir el flujo de trabajo con relaciones ascendentes y descendentes.

    3. Configure los parámetros de los componentes.

      • En el lienzo, haga clic en el componente Read Table-1. En la pestaña Select Table del panel derecho, establezca Table Name como smart_binary_input.

      • En el lienzo, haga clic en el componente PS-SMART Binary Classification Training-1. En el panel derecho, configure los parámetros como se describe a continuación. Utilice los valores predeterminados para los demás parámetros.

        Pestaña

        Parámetro

        Descripción

        Fields Setting

        Feature Columns

        Seleccione las columnas f0, f1, f2, f3, f4 y f5.

        Label Column

        Seleccione la columna label.

        Parameter Settings

        Evaluation Metric Type

        Seleccione Area under curve for classification.

        Number of Trees

        Introduzca 5.

      • En el lienzo, haga clic en el componente Prediction-1. En la pestaña Fields Setting del panel derecho, establezca Reserved Columns como Select All. Utilice los valores predeterminados para los demás parámetros.

      • En el lienzo, haga clic en el componente Write Table-1. En la pestaña Select Table del panel derecho, establezca Output Table Name como smart_binary_output.

    4. Después de configurar los parámetros, haga clic en el botón Run image para ejecutar el flujo de trabajo.

  3. Haga clic con el botón derecho en el componente Prediction-1 y elija View Data > Prediction Result para consultar el resultado de la predicción.

    image

    En la columna prediction_detail, 1 representa muestras positivas y 0 representa muestras negativas.

  4. Haga clic con el botón derecho en el componente PS-SMART Binary Classification Training-1 y elija View Data > Output Feature Importance Table para consultar la tabla de importancia de funciones.

    image

    Parámetros:

    • id: Número ordinal de la función de entrada. En este ejemplo, las funciones de entrada son f0, f1, f2, f3, f4 y f5. El valor 0 en la columna id representa la columna de función f0. El valor 4 representa la columna de función f4. Para datos de entrada en formato clave-valor (KV), la columna id representa la key.

    • value: Tipo de importancia de función. Valor predeterminado: gain, que es la suma de la ganancia de información que la función aporta al modelo.

    • La tabla de importancia de funciones contiene solo tres funciones. Solo estas tres funciones se utilizan en el proceso de división del árbol. Las demás funciones tienen una importancia de 0.

Despliegue del modelo

Para desplegar el modelo generado por el componente PS-SMART como un servicio en línea, agregue el componente General-purpose Model Export en posición descendente respecto al componente PS-SMART. Configure los parámetros del componente de la misma manera que para otros componentes de la serie PS. Para obtener más información, consulte General-purpose Model Export.

Una vez ejecutado correctamente, despliegue el servicio de modelo en la página PAI-EAS Model Online Service. Para obtener más información, consulte Deploy a service in the console.

Información relacionada

  • Para obtener más información sobre los componentes de Designer, consulte Designer overview.

  • Designer proporciona una variedad de componentes algorítmicos. Seleccione los componentes adecuados para el procesamiento de datos según su escenario. Para obtener más información, consulte Component reference: All components.