Algoritmos de regresión regression-algorithms
Este documento proporciona una visión general de varios algoritmos de regresión, centrándose en su configuración, parámetros clave y uso práctico en modelos estadísticos avanzados. Los algoritmos de regresión se utilizan para modelar la relación entre variables dependientes e independientes, prediciendo resultados continuos basados en los datos observados. Cada sección incluye descripciones de parámetros y código de ejemplo para ayudarle a implementar y optimizar estos algoritmos para tareas como regresión lineal, de bosque aleatorio y de supervivencia.
Decision Tree regresión decision-tree-regression
El aprendizaje de Decision Tree es un método de aprendizaje supervisado que se utiliza en estadísticas, minería de datos y aprendizaje automático. En este enfoque, se utiliza un árbol de decisión de clasificación o regresión como modelo predictivo para extraer conclusiones sobre un conjunto de observaciones.
Parámetros
En la tabla siguiente se describen los parámetros clave para configurar y optimizar el rendimiento de los modelos del árbol de decisión.
MAX_BINSCACHE_NODE_IDSfalse, el algoritmo pasa árboles a los ejecutores para que coincidan con las instancias con los nodos. Si true, el algoritmo almacena en caché los ID de nodo de cada instancia, lo que puede acelerar la formación de árboles más profundos. Los usuarios pueden configurar la frecuencia con la que se debe comprobar o deshabilitar la caché estableciendo CHECKPOINT_INTERVAL.true o falseCHECKPOINT_INTERVAL10, la caché se comprobará cada 10 iteraciones. Esto solo es aplicable si CACHE_NODE_IDS está establecido en true y el directorio de puntos de comprobación está configurado en org.apache.spark.SparkContext.IMPURITYentropy y gini.ginientropy, giniMAX_DEPTH0 significa 1 nodo hoja, mientras que una profundidad de 1 significa 1 nodo interno y 2 nodos hoja. La profundidad debe estar dentro del intervalo [0, 30].MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBPREDICTION_COLSEEDWEIGHT_COL1.0.Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'decision_tree_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Factorization Machines regresión factorization-machines-regression
Factorization Machines es un algoritmo de aprendizaje de regresión que admite el descenso de degradado normal y el solucionador AdamW. El algoritmo se basa en el documento de S. Rendle (2010), "Factorization Machines".
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de la regresión Factorization Machines.
TOL1E-6FACTOR_SIZEFIT_INTERCEPTtruetrue, falseFIT_LINEARtruetrue, falseINIT_STDMAX_ITERMINI_BATCH_FRACTION(0, 1].(0, 1]REG_PARAMSEEDSOLVERgd (descenso de degradado), adamWSTEP_SIZEPREDICTION_COLEjemplo
CREATE MODEL modelname OPTIONS(
type = 'factorization_machines_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Generalized Linear regresión generalized-linear-regression
A diferencia de la regresión lineal, que supone que el resultado sigue una distribución normal (gaussiana), los modelos Generalized Linear (GLM) permiten que el resultado siga diferentes tipos de distribuciones, como Poisson o binomial, según la naturaleza de los datos.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de la regresión Generalized Linear.
MAX_ITERirls).REG_PARAMTOL1E-6AGGREGATION_DEPTHtreeAggregate.FAMILYgaussian, binomial, poisson, gamma y tweedie.gaussian, binomial, poisson, gamma, tweedieFIT_INTERCEPTtruetrue, falseLINKidentity, log, inverse, logit, probit, cloglog y sqrt.identity, log, inverse, logit, probit, cloglog, sqrtLINK_POWER1 - variancePower, que se ajusta al paquete R statmod. Las potencias específicas de los vínculos de 0, 1, -1 y 0,5 corresponden a los vínculos Log, Identity, Inverse y Sqrt, respectivamente.SOLVERirls (mínimos cuadrados ponderados de forma iterativa).irlsVARIANCE_POWER[1, inf). Los poderes de varianza de 0, 1 y 2 corresponden a las familias Gaussiana, Poisson y Gamma, respectivamente.[1, inf)LINK_PREDICTION_COLOFFSET_COLWEIGHT_COL1.0. En la familia Binomial, los pesos corresponden al número de ensayos y los pesos no enteros se redondean en el cálculo de AIC.Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'generalized_linear_reg'
) AS
SELECT col1, col2, col3 FROM training-dataset
Gradient Boosted Tree regresión gradient-boosted-tree-regression
Los árboles impulsados por gradiente (TGB) son un método efectivo de clasificación y regresión que combina las predicciones de múltiples árboles de decisión para mejorar la precisión predictiva y el rendimiento del modelo.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de la regresión Gradient Boosted Tree.
MAX_BINSCACHE_NODE_IDSfalse, el algoritmo pasa árboles a los ejecutores para que coincidan con las instancias con los nodos. Si true, el algoritmo almacena en caché los ID de nodo de cada instancia. El almacenamiento en caché puede acelerar el entrenamiento de árboles más profundos.falsetrue, falseCHECKPOINT_INTERVAL10 significa que la caché se comprueba cada 10 iteraciones.MAX_DEPTH0 significa 1 nodo hoja y la profundidad 1 significa 1 nodo interno con 2 nodos hoja.MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBPREDICTION_COLVALIDATION_INDICATOR_COLfalse para aprendizaje y true para validación.LEAF_COLFEATURE_SUBSET_STRATEGYauto, all, onethird, sqrt, log2 o una fracción entre 0 y 1,0SEEDWEIGHT_COL1.0.LOSS_TYPEsquared (L2) y absolute (L1). Nota: Los valores no distinguen entre mayúsculas y minúsculas.STEP_SIZE(0, 1], utilizado para reducir la contribución de cada estimador.(0, 1]MAX_ITERSUBSAMPLING_RATE(0, 1].(0, 1]Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'gradient_boosted_tree_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Isotonic regresión isotonic-regression
Isotonic Regression es un algoritmo utilizado para ajustar distancias de forma iterativa preservando al mismo tiempo el orden relativo de las disimilitudes en los datos.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de Isotonic Regression.
ISOTONICtrue o antitónica (disminuyendo) al false.truetrue, falseWEIGHT_COL1.0.PREDICTION_COLFEATURE_INDEXfeaturesCol es una columna vectorial. Si no se establece, el valor predeterminado es 0. De lo contrario, no tiene ningún efecto.Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'isotonic_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Linear regresión linear-regression
Linear Regression es un algoritmo de aprendizaje automático supervisado que ajusta una ecuación lineal a los datos para modelar la relación entre una variable dependiente y características independientes.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de Linear Regression.
MAX_ITERREGPARAMELASTICNETPARAMEjemplo
CREATE MODEL modelname OPTIONS(
type = 'linear_reg'
) AS
SELECT col1, col2, col3 FROM training-dataset
Random Forest Regression random-forest-regression
Random Forest Regression es un algoritmo ensamblado que crea varios árboles de decisión durante el entrenamiento y devuelve la predicción promedio de esos árboles para tareas de regresión, lo que ayuda a evitar el sobreajuste.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de Random Forest Regression.
MAX_BINSCACHE_NODE_IDSfalse, el algoritmo pasa árboles a los ejecutores para que coincidan con las instancias con los nodos. Si true, el algoritmo almacena en caché los ID de nodo de cada instancia, lo que acelera la formación de árboles más profundos.falsetrue, falseCHECKPOINT_INTERVAL10 significa que la caché se comprueba cada 10 iteraciones.IMPURITYentropy, giniMAX_DEPTH0 significa 1 nodo hoja y la profundidad 1 significa 1 nodo interno y 2 nodos hoja.MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBBOOTSTRAPtrue, falseNUM_TREES1, no se usa el bootstrapping. Si es mayor que 1, se aplica el bootstrapping.SUBSAMPLING_RATE(0, 1].LEAF_COLPREDICTION_COLSEEDWEIGHT_COL1.0.Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'random_forest_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Survival Regression survival-regression
Survival Regression se usa para ajustar un modelo paramétrico de regresión de supervivencia, conocido como el modelo Accelerated Failure Time (AFT), basado en Weibull distribution. Puede apilar instancias en bloques para obtener un rendimiento mejorado.
Parámetros
La tabla siguiente describe los parámetros clave para configurar y optimizar el rendimiento de Survival Regression.
MAX_ITERTOL1E-6AGGREGATION_DEPTHtreeAggregate. Si las cotas de la función o el número de particiones son grandes, este parámetro se puede definir en un valor mayor.FIT_INTERCEPTtrue, falsePREDICTION_COLCENSOR_COL1 indica que el evento se produjo (sin censura), mientras que 0 significa que el evento está censurado.MAX_BLOCK_SIZE_IN_MB0 permite el ajuste automático.Ejemplo
CREATE MODEL modelname OPTIONS(
type = 'survival_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Pasos siguientes
Después de leer este documento, ahora sabe cómo configurar y utilizar varios algoritmos de regresión. A continuación, consulte los documentos sobre clasificación y agrupación en clúster para obtener más información sobre otros tipos de modelos estadísticos avanzados.