Basado en el teorema de Bayes, Naive Bayes es un algoritmo de clasificación probabilística que asume que todas las características de los datos de entrada son independientes. El componente Naive Bayes en Machine Learning Designer (anteriormente Studio) resuelve una amplia variedad de problemas de clasificación. Este tema describe cómo configurar el componente Naive Bayes.
Limitaciones
El motor de computación compatible es MaxCompute.
Configuración del componente
Configure los parámetros del componente Naive Bayes mediante uno de los siguientes métodos.
Método 1: Designer
Configure los parámetros del componente en la página de pipeline de Visualized Modeling (Designer).
|
Pestaña |
Parámetro |
Descripción |
|
Fields Setting |
Feature column |
De forma predeterminada, se utilizan como columnas de características todas las columnas excepto la de etiqueta. Los tipos de datos compatibles son DOUBLE, STRING y BIGINT. |
|
Excluded columns |
Columnas que se excluirán del entrenamiento. Este parámetro no se puede utilizar junto con Feature column. |
|
|
Forced conversion column |
Las reglas de análisis de datos son las siguientes:
Nota
Para analizar una columna BIGINT como tipo CATEGORICAL, use el parámetro forceCategorical. |
|
|
Label column |
Especifica la columna de etiqueta en la tabla de entrada. Solo puede seleccionar una columna que no sea de características. Los tipos de datos compatibles son STRING, DOUBLE y BIGINT. |
|
|
Input is in sparse format |
Seleccione esta opción si los datos de entrada son dispersos y están representados en formato clave-valor (KV). |
|
|
Key-value pair delimiter for sparse input |
Delimitador que separa los pares clave-valor. El valor predeterminado es una coma (,). |
|
|
Key and value delimiter for sparse input |
Delimitador que separa una clave de su valor. El valor predeterminado son dos puntos (:). |
|
|
Whether to generate PMML |
Seleccione esta casilla para generar un modelo Predictive Model Markup Language (PMML). Si no se ha configurado una ruta de almacenamiento de datos para el pipeline, haga clic en Create Now para establecer una ruta. |
|
|
Tuning |
Number of cores |
El sistema lo asigna automáticamente. |
|
Memory per core (MB) |
El sistema lo asigna automáticamente. |
Método 2: Comandos de PAI
Use el componente SQL Script para ejecutar comandos de PAI y configurar los parámetros del componente. Para obtener más información, consulte SQL Script.
PAI -name NaiveBayes -project algo_public
-DinputTablePartitions="pt=20150501"
-DmodelName="xlab_m_NaiveBayes_23772"
-DlabelColName="poutcome"
-DfeatureColNames="age,previous,cons_conf_idx,euribor3m"
-DinputTableName="bank_data_partition";
|
Parámetro |
Obligatorio |
Descripción |
Predeterminado |
|
inputTableName |
Sí |
Nombre de la tabla de entrada. |
Ninguna |
|
inputTablePartitions |
No |
Particiones de la tabla de entrada que se usarán para el entrenamiento. |
Todas las particiones |
|
modelName |
Sí |
Nombre del modelo de salida. |
Ninguna |
|
labelColName |
Sí |
Nombre de la columna de etiqueta en la tabla de entrada. |
Ninguna |
|
featureColNames |
No |
Nombres de las columnas de características en la tabla de entrada que se usan para el entrenamiento. |
Todas las columnas excepto la columna de etiqueta. |
|
excludedColNames |
No |
Especifica las columnas que se excluirán como características. Este parámetro no se puede utilizar junto con featureColNames. |
Vacío |
|
forceCategorical |
No |
Las reglas de análisis de datos son las siguientes:
Nota
Para analizar una columna BIGINT como tipo CATEGORICAL, use el parámetro forceCategorical. |
BIGINT se trata como un tipo continuo. |
|
coreNum |
No |
Número de núcleos que se usarán para la computación. |
Asignado por el sistema |
|
memSizePerCore |
No |
Tamaño de memoria por núcleo en MB. Valores válidos: de 1 a 65536. |
Asignado por el sistema |
Ejemplo
-
Prepare los datos de entrenamiento y los datos de prueba.
Use el cliente de MaxCompute para crear las tablas
train_dataytest_datapara almacenar los datos de entrenamiento y de prueba, respectivamente. Ambas tablas deben tener los siguientes nombres de columna y tipos de datos:id bigint, y bigint, f0 double, f1 double, f2 double, f3 double, f4 double, f5 double, f6 double, f7 double. Para obtener instrucciones sobre la instalación y configuración del cliente de MaxCompute, consulte MaxCompute client (odpscmd). Para obtener instrucciones sobre cómo crear una tabla, consulte Create tables.-
Importe los siguientes datos de entrenamiento y de prueba en las tablas
train_dataytest_data, respectivamente. Para obtener instrucciones sobre cómo importar datos, consulte Import data.-
Datos de entrenamiento
id
y
f0
f1
f2
f3
f4
f5
f6
f7
1
-1
-0.294118
0.487437
0.180328
-0.292929
-1
0.00149028
-0.53117
-0.0333333
2
+1
-0.882353
-0.145729
0.0819672
-0.414141
-1
-0.207153
-0.766866
-0.666667
3
-1
-0.0588235
0.839196
0.0491803
-1
-1
-0.305514
-0.492741
-0.633333
4
+1
-0.882353
-0.105528
0.0819672
-0.535354
-0.777778
-0.162444
-0.923997
-1
5
-1
-1
0.376884
-0.344262
-0.292929
-0.602837
0.28465
0.887276
-0.6
6
+1
-0.411765
0.165829
0.213115
-1
-1
-0.23696
-0.894962
-0.7
7
-1
-0.647059
-0.21608
-0.180328
-0.353535
-0.791962
-0.0760059
-0.854825
-0.833333
8
+1
0.176471
0.155779
-1
-1
-1
0.052161
-0.952178
-0.733333
9
-1
-0.764706
0.979899
0.147541
-0.0909091
0.283688
-0.0909091
-0.931682
0.0666667
10
-1
-0.0588235
0.256281
0.57377
-1
-1
-1
-0.868488
0.1
-
Datos de prueba
id
y
f0
f1
f2
f3
f4
f5
f6
f7
1
+1
-0.882353
0.0854271
0.442623
-0.616162
-1
-0.19225
-0.725021
-0.9
2
+1
-0.294118
-0.0351759
-1
-1
-1
-0.293592
-0.904355
-0.766667
3
+1
-0.882353
0.246231
0.213115
-0.272727
-1
-0.171386
-0.981213
-0.7
4
-1
-0.176471
0.507538
0.278689
-0.414141
-0.702128
0.0491804
-0.475662
0.1
5
-1
-0.529412
0.839196
-1
-1
-1
-0.153502
-0.885568
-0.5
6
+1
-0.882353
0.246231
-0.0163934
-0.353535
-1
0.0670641
-0.627669
-1
7
-1
-0.882353
0.819095
0.278689
-0.151515
-0.307329
0.19225
0.00768574
-0.966667
8
+1
-0.882353
-0.0753769
0.0163934
-0.494949
-0.903073
-0.418778
-0.654996
-0.866667
9
+1
-1
0.527638
0.344262
-0.212121
-0.356974
0.23696
-0.836038
-0.8
10
+1
-0.882353
0.115578
0.0163934
-0.737374
-0.56974
-0.28465
-0.948762
-0.933333
-
-
Construya y ejecute el pipeline siguiendo estos pasos. Para obtener más información, consulte algorithm modeling.

from la lista de componentes en Designer, arrastre los siguientes componentes al lienzo: dos componentes Read Table, un componente Naive Bayes, un componente Prediction y un componente Multiclass Classification Evaluation.
Conecte los nodos para construir el pipeline.
-
Configure los parámetros de los componentes.
Haga clic en el componente Read Table-1 del lienzo. En el panel derecho, en la pestaña select table, establezca table name como train_data.
Haga clic en el componente Read Table-2 del lienzo. En el panel derecho, en la pestaña select table, establezca table name como test_data.
-
Haga clic en el componente Naive Bayes-1 del lienzo. En el panel derecho, configure los parámetros como se indica a continuación. Deje los demás parámetros con sus valores predeterminados.
Pestaña
Parámetro
Descripción
field settings
feature column
Seleccione las columnas f0, f1, f2, f3, f4, f5, f6 y f7.
label column
Seleccione la columna y.
Haga clic en el componente Prediction-1 del lienzo. En el panel derecho, en la pestaña field settings, establezca reserved columns como id e y. Deje los demás parámetros con sus valores predeterminados.
Haga clic en el componente Multiclass Classification Evaluation-1 del lienzo. En el panel derecho, en la pestaña field settings, establezca original classification result column como y. Deje los demás parámetros con sus valores predeterminados.
Una vez configurados los componentes, haga clic en el botón Run
para ejecutar el pipeline.
Después de que se ejecute el pipeline, haga clic con el botón derecho en el componente Prediction-1 y seleccione en el menú contextual. La tabla de resultados de predicción contiene las columnas id, y (etiqueta original), prediction_result (etiqueta de predicción, con un valor de 1 o -1), prediction_score (puntuación de predicción) y prediction_detail (detalles de probabilidad de clase en formato JSON). Para las 10 muestras de prueba, las puntuaciones de predicción son cercanas a 1, lo que indica una alta confianza del modelo y un buen rendimiento.
Referencias
Después de ejecutar el componente Naive Bayes para generar un modelo PMML, puede desplegar el modelo como un servicio en línea. Para obtener más información, consulte Deploy a model as an online service.
Para obtener más información sobre Machine Learning Designer, consulte Overview of Machine Learning Designer.
Machine Learning Designer incluye varios componentes de algoritmos predefinidos. Seleccione el que mejor se adapte a su caso de uso. Para obtener más información, consulte Component reference: Overview of all components.