

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Algoritmo de aprendizaje lineal
<a name="linear-learner"></a>

*Los modelos lineales* son algoritmos de aprendizaje supervisados que se utilizan para resolver problemas de clasificación o de regresión. Para la entrada, se dan los ejemplos etiquetados de modelo (*x*, *y*). *x* es un vector de gran dimensión e *y* es una etiqueta numérica. Para problemas de clasificación binaria, la etiqueta debe ser 0 o 1. Para problemas de clasificación multiclase, las etiquetas deben ir desde 0 hasta `num_classes` - 1. Para los problemas de regresión, *y* es un número real. El algoritmo aprende una función lineal o una función de umbral lineal para problemas de clasificación, y mapea un vector *x* a una aproximación de la etiqueta *y*. 

El algoritmo de aprendizaje lineal Amazon SageMaker AI proporciona una solución para los problemas de clasificación y regresión. Con el algoritmo de SageMaker IA, puede explorar simultáneamente diferentes objetivos de entrenamiento y elegir la mejor solución de un conjunto de validación. También puede explorar una gran cantidad de modelos y elegir el mejor. El mejor modelo optimiza uno de los siguientes:
+ Objetivos continuos, como, por ejemplo, un error cuadrático medio, una pérdida de entropía cruzada o un error absoluto.
+ Objetivos discretos adecuados para clasificación, como, por ejemplo, medida F1, precisión, exhaustividad o exactitud. 

En comparación con los métodos que ofrecen una solución solo para objetivos continuos, el algoritmo de aprendizaje lineal de la SageMaker IA proporciona un aumento significativo de la velocidad en comparación con las técnicas ingenuas de optimización de hiperparámetros. También es más práctico. 

El algoritmo de aprendizaje lineal requiere una matriz de datos, con filas que representan las observaciones y columnas que representan las dimensiones de las características. También requiere una columna adicional que contiene las etiquetas que coinciden con los puntos de datos. Como mínimo, el aprendizaje lineal de Amazon SageMaker AI requiere que especifique las ubicaciones de los datos de entrada y salida y el tipo de objetivo (clasificación o regresión) como argumentos. La dimensión de características es también obligatoria. Para obtener más información, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html). Puede especificar parámetros adicionales en el mapa de cadenas `HyperParameters` del cuerpo de la solicitud. Estos parámetros controlan el procedimiento de optimización o detalles específicos de la función objetivo que se capacita. Por ejemplo, el número de fechas de inicio, regularización y tipo de pérdida. 

Si utiliza [Managed Spot Training](https://docs.aws.amazon.com/sagemaker/latest/dg/model-managed-spot-training.html), el algoritmo de aprendizaje lineal admite el uso de [puntos de control para tomar una instantánea del estado del modelo](https://docs.aws.amazon.com/sagemaker/latest/dg/model-checkpoints.html).

**Topics**
+ [Interfaz de entrada/salida para el algoritmo de aprendizaje lineal](#ll-input_output)
+ [Recomendación de instancia EC2 para el algoritmo de aprendizaje lineal](#ll-instances)
+ [Cuaderno de muestra de aprendizaje lineal](#ll-sample-notebooks)
+ [Cómo funciona el aprendizaje lineal](ll_how-it-works.md)
+ [Hiperparámetros de aprendizaje lineal](ll_hyperparameters.md)
+ [Ajustar un modelo de aprendizaje lineal](linear-learner-tuning.md)
+ [Formatos de respuesta de aprendizaje lineal](LL-in-formats.md)

## Interfaz de entrada/salida para el algoritmo de aprendizaje lineal
<a name="ll-input_output"></a>

El algoritmo de aprendizaje lineal de Amazon SageMaker AI admite tres canales de datos: formación, validación (opcional) y prueba (opcional). Si proporciona datos de validación, el `S3DataDistributionType` debe ser `FullyReplicated`. El algoritmo registra pérdida de validación en cada fecha de inicio y utiliza una muestra de los datos de validación para calibrar y seleccionar el mejor modelo. Si no proporciona datos de validación, el algoritmo utiliza una muestra de los datos de capacitación para calibrar y seleccionar el modelo. Si proporciona datos de prueba, los registros de algoritmos incluyen la puntuación de prueba para el modelo final.

**Para la capacitación**, el algoritmo de aprendizaje lineal admite tanto los formatos `recordIO-wrapped protobuf` como `CSV`. Para el tipo de entrada `application/x-recordio-protobuf`, solo se admiten los tensores Float32. Para el tipo de entrada `text/csv`, se presupone que la primera columna es la etiqueta, que es la variable de destino para la predicción. Puede usar el modo de archivo o el modo de canalización para capacitar modelos de aprendizaje lineal con datos con formato `recordIO-wrapped-protobuf` o `CSV`.

**Para la inferencia**, el algoritmo de aprendizaje lineal admite los formatos `application/json`, `application/x-recordio-protobuf` y `text/csv`. Al realizar predicciones sobre nuevos datos, el formato de la respuesta depende del tipo de modelo. **Para la regresión** (`predictor_type='regressor'`), la `score` es la predicción producida por el modelo. **Para la clasificación** (`predictor_type='binary_classifier'` o `predictor_type='multiclass_classifier'`), el modelo devuelve una `score` y también una `predicted_label`. La `predicted_label` es la clase prevista por el modelo y la `score` mide la fuerza de esa predicción. 
+ **Para la clasificación binaria**, `predicted_label` es `0` o `1`, y `score` es un único número de punto flotante que indica en qué medida el algoritmo cree que la etiqueta debe ser 1.
+ **Para la clasificación multiclase**, la `predicted_class` será un número entero de `0` a `num_classes-1`, y la `score` será una lista de un número de punto flotante por clase. 

Para interpretar la `score` en problemas de clasificación, tiene que tener en cuenta la función de pérdida utilizada. Si el valor del hiperparámetro `loss` es `logistic` para la clasificación binaria o `softmax_loss` para la clasificación multiclase, entonces la `score` se puede interpretar como la probabilidad de la clase correspondiente. Estos son los valores de pérdida utilizados por el de aprendizaje lineal cuando el valor `loss` es el valor predeterminado `auto`. Pero si la pérdida se establece en `hinge_loss`, entonces la puntuación no puede interpretarse como una probabilidad. Esto se debe a que la pérdida de bisagra corresponde a un Support Vector Classifier, que no produce cálculos de probabilidad.

Para obtener más información acerca de los formatos de archivo de entrada y salida, consulte [Formatos de respuesta de aprendizaje lineal](LL-in-formats.md). Para obtener más información acerca de los formatos de inferencia, consulte [Cuaderno de muestra de aprendizaje lineal](#ll-sample-notebooks).

## Recomendación de instancia EC2 para el algoritmo de aprendizaje lineal
<a name="ll-instances"></a>

El algoritmo de aprendizaje lineal admite instancias de CPU y GPU para el entrenamiento y la inferencia. En el caso de la GPU, el algoritmo de aprendizaje lineal admite las familias de GPU P2, P3, G4dn y G5.

Durante las pruebas, no hemos encontrado pruebas sustanciales de que las instancias multi-GPU sean más rápidas que las instancias con GPU única. Los resultados pueden variar, en función de su caso de uso específico.

## Cuaderno de muestra de aprendizaje lineal
<a name="ll-sample-notebooks"></a>

 En la siguiente tabla se describen varios ejemplos de cuadernos que abordan diferentes casos de uso del algoritmo de aprendizaje lineal de Amazon SageMaker AI.


| **Título del cuaderno** | **Descripción** | 
| --- | --- | 
|  [An Introduction with the MNIST dataset](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/linear_learner_mnist/linear_learner_mnist.html)  |   Usando el conjunto de datos MNIST, entrenamos un clasificador binario para predecir un solo dígito.  | 
|  [How to Build a Multiclass Classifier?](https://sagemaker-examples.readthedocs.io/en/latest/scientific_details_of_algorithms/linear_learner_multiclass_classification/linear_learner_multiclass_classification.html)  |   Con el conjunto de datos Covertype del UCI, demostramos cómo entrenar un clasificador multiclase.   | 
|  [How to Build a Machine Learning (ML) Pipeline for Inference? ](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-python-sdk/scikit_learn_inference_pipeline/Inference%20Pipeline%20with%20Scikit-learn%20and%20Linear%20Learner.html)  |   Con un contenedor Scikit-learn, demostramos cómo crear una canalización de aprendizaje automático. end-to-end   | 

 Para obtener instrucciones sobre cómo crear instancias de Jupyter Notebook y acceder a ellas, que puedes usar para ejecutar el ejemplo en IA, consulta. SageMaker [Instancias de Amazon SageMaker Notebook](nbi.md) Tras crear una instancia de bloc de notas y abrirla, selecciona la pestaña **Ejemplos de SageMaker IA** para ver una lista de todos los ejemplos de SageMaker IA. Los blocs de notas de modelado de ejemplos que utilizan los algoritmos de aprendizaje lineal se encuentran en la sección de **introducción a algoritmos de Amazon**. Para abrir un cuaderno, elija su pestaña **Usar** y elija **Crear copia**. 

# Cómo funciona el aprendizaje lineal
<a name="ll_how-it-works"></a>

Existen tres pasos en la implementación del algoritmo de aprendizaje lineal: preprocesamiento, capacitación y validación. 

## Paso 1: Preprocesar
<a name="step1-preprocessing"></a>

La normalización, o el escalado de características, es un importante paso de preprocesamiento de algunas funciones de pérdida que garantizan que el modelo que se entrena en un conjunto de datos no esté dominado por el peso de una única característica. El algoritmo Linear Learner de Amazon SageMaker AI tiene una opción de normalización para facilitar este paso de preprocesamiento. Si se activa la normalización, el algoritmo primero se aplica a una pequeña muestra de datos para obtener el valor medio y la desviación estándar de cada característica y la etiqueta. Cada una de las características del conjunto de datos total se convierte para obtener la media de cero y se escala para que tenga la desviación estándar de la unidad.

**nota**  
Para obtener unos mejores resultados, asegúrese de que los datos estén desordenados antes de la capacitación. Si la capacitación se realiza con datos ordenados, se podría producir un error. 

Puede configurar si desea que el algoritmo de aprendizaje lineal normalice las etiquetas y los datos de la característica mediante los hiperparámetros `normalize_data` y `normalize_label`, respectivamente. De forma predeterminada, la normalización está habilitada en características y etiquetas para la regresión. Únicamente se pueden normalizar las características para la clasificación binaria; este es el comportamiento predeterminado. 

## Paso 2: Capacitación
<a name="step2-training"></a>

Con el algoritmo de aprendizaje lineal, usted capacita con una implementación distribuida de descenso de gradiente estocástico (SGD). Puede controlar el proceso de optimización eligiendo el algoritmo de optimización. Por ejemplo, puede optar por utilizar Adam AdaGrad, un gradiente de descenso estocástico u otros algoritmos de optimización. También debe especificar sus hiperparámetros, como, por ejemplo, impulso, tasa de aprendizaje y la tasa de aprendizaje programada. Si no está seguro de qué algoritmo o valor de hiperparámetro utilizar, debe elegir un valor predeterminado que funcione para la mayoría de conjuntos de datos. 

Durante la capacitación, usted optimiza al mismo tiempo varios modelos, cada uno de ellos con objetivos ligeramente diferentes. Por ejemplo, puede variar la regularización L1 o L2 y probar diferentes ajustes de optimizador. 

## Paso 3: Validación y ajuste del umbral
<a name="step3-validation"></a>

Cuando se entrenan varios modelos en paralelo, los modelos se evalúan con respecto a un conjunto de validación para seleccionar los modelos óptimos una vez que se complete la capacitación. Para la regresión, el modelo óptimo es el que consigue la mejor pérdida en el conjunto de validación. Para la clasificación, se utiliza una muestra del conjunto de validación para calibrar el umbral de clasificación. El modelo óptimo seleccionado es el que obtiene los mejores criterios de selección de clasificación binaria en el conjunto de validación. Algunos ejemplos de dichos criterios son la medida F1, la precisión y la pérdida de entropía cruzada. 

**nota**  
Si no se proporciona un conjunto de validación para el algoritmo, no es posible evaluar y seleccionar el modelo óptimo. Para aprovechar la selección del modelo y la capacitación paralela, asegúrese de proporcionar un conjunto de validación para el algoritmo. 

# Hiperparámetros de aprendizaje lineal
<a name="ll_hyperparameters"></a>

La siguiente tabla contiene los hiperparámetros del algoritmo de aprendizaje lineal. Estos son los parámetros que establecen los usuarios para facilitar la estimación de los parámetros del modelo a partir de los datos. Los hiperparámetros necesarios que deben establecerse se enumerarán en primer lugar, en orden alfabético. Los hiperparámetros opcionales que se pueden establecer aparecen a continuación en la lista, también en orden alfabético. Cuando un hiperparámetro se establece en`auto`, Amazon SageMaker AI calculará y establecerá automáticamente el valor de ese hiperparámetro. 


| Nombre del parámetro | Description (Descripción) | 
| --- | --- | 
| num\$1classes |  El número de clases para la respuesta variable. El algoritmo presupone que las clases se etiquetan `0`, ..., `num_classes - 1`. **Obligatorio** cuando `predictor_type` es `multiclass_classifier`. De lo contrario, el algoritmo hace caso omiso de él. Valores válidos: Enteros comprendidos entre 3 y 1 000 000.  | 
| predictor\$1type |  Especifica el tipo de variable de destino como una clasificación binaria, clasificación de varias clases, o regresión. **Obligatorio** Valores válidos: `binary_classifier`, `multiclass_classifier` o `regressor`  | 
| accuracy\$1top\$1k |  A la hora de calcular la métrica de precisión de top-k para la clasificación de varias clases, el valor de *k*. Si el modelo asigna una de las puntuaciones top-k a la verdadera etiqueta, el ejemplo será puntuado como correcto. **Opcional** Valores válidos: enteros positivos Valor predeterminado: 3   | 
| balance\$1multiclass\$1weights |  Especifica si se debe usar ponderaciones de clase, que proporcionan a cada clase igual importancia en la función de pérdida. Solo se usa cuando el `predictor_type` es `multiclass_classifier`. **Opcional** Valores válidos: `true`, `false` Valor predeterminado: `false`  | 
| beta\$11 |  Tasa de decremento exponencial para las estimaciones del primer momento. Se aplica solo cuando el valor de `optimizer` es `adam`. **Opcional** Valores válidos: `auto` o de valor de punto flotante comprendido entre 0 y 1,0 Valor predeterminado: `auto`  | 
| beta\$12 |  Tasa de decremento exponencial para las estimaciones de segundo momento. Se aplica solo cuando el valor de `optimizer` es `adam`. **Opcional** Valores válidos: `auto` o entero de punto flotante comprendido entre 0 y 1,0  Valor predeterminado: `auto`  | 
| bias\$1lr\$1mult |  Permite una tasa de aprendizaje diferente para el plazo de sesgo. La tasa de aprendizaje real para el sesgo es `learning_rate` \$1 `bias_lr_mult`. **Opcional** Valores válidos: `auto` o entero positivo de punto flotante Valor predeterminado: `auto`  | 
| bias\$1wd\$1mult |  Permite una regularización diferente para el plazo de sesgo. La ponderación de regularización de L2 real para el sesgo es `wd` \$1 `bias_wd_mult`. De forma predeterminada, no hay ninguna regularización en el plazo de sesgo. **Opcional** Valores válidos: `auto` o entero no negativo de punto flotante Valor predeterminado: `auto`  | 
| binary\$1classifier\$1model\$1selection\$1criteria |  Cuando `predictor_type` se establece en `binary_classifier`, los criterios de evaluación del modelo para el conjunto de datos de validación (o para el conjunto de datos de capacitación si no proporciona un conjunto de datos de validación). Los criterios incluyen: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/ll_hyperparameters.html) **Opcional** Valores válidos: `accuracy`, `f_beta`, `precision_at_target_recall`, `recall_at_target_precision`, o `loss_function` Valor predeterminado: `accuracy`  | 
| early\$1stopping\$1patience | El número de fechas de inicio para esperar antes de finalizar la capacitación si no se realiza ninguna mejora en la métrica relevante. Si ha proporcionado un valor para binary\$1classifier\$1model\$1selection\$1criteria. la métrica es dicho valor. De lo contrario, la métrica es la misma que el valor especificado para el hiperparámetro loss. La métrica se evalúa en los datos de validación. Si no ha proporcionado datos de validación, la métrica siempre la misma que el valor especificado para el hiperparámetro `loss` y se evalúa en los datos de capacitación. Para deshabilitar la parada precoz, establezca `early_stopping_patience` en un valor mayor que el valor especificado para `epochs`.**Opcional**Valores válidos: número entero positivoValor predeterminado: 3 | 
| early\$1stopping\$1tolerance |  Tolerancia relativa para medir una mejora en la pérdida. Si la proporción de la mejora en la pérdida dividida por la mejor pérdida anterior es inferior a este valor, la detención precoz considera que la mejora es cero. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 0.001  | 
| epochs |  Número máximo de iteraciones en los datos de capacitación. **Opcional** Valores válidos: número entero positivo Valor predeterminado: 15  | 
| f\$1beta |  El valor de beta que se ha de emplear al calcular las métricas de puntuación F para la clasificación binaria o de varias clases. También se utiliza si el valor definido para `binary_classifier_model_selection_criteria` es `f_beta`. **Opcional** Valores válidos: enteros positivos de punto flotante Valor predeterminado: 1.0   | 
| feature\$1dim |  El número de características en los datos de entrada.  **Opcional** Valores válidos: `auto` o entero positivo Valores predeterminados: `auto`  | 
| huber\$1delta |  El parámetro de pérdida de Huber. Durante la evaluación métrica y de capacitación, compute la pérdida L2 de errores inferiores a delata y de pérdida L1 de errores superiores a delta. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 1.0   | 
| init\$1bias |  Ponderación inicial para el plazo de sesgo. **Opcional** Valores válidos: Entero de punto flotante Valor predeterminado: 0  | 
| init\$1method |  Establece la función de distribución inicial que se utiliza para ponderaciones de modelo. Las funciones incluyen: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/ll_hyperparameters.html) **Opcional** Valores válidos: `uniform` o `normal` Valor predeterminado: `uniform`  | 
| init\$1scale |  Escala una distribución uniforme para ponderaciones de modelo. Se aplica solo cuando se establece el hiperparámetro `init_method` en `uniform`. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 0.07  | 
| init\$1sigma |  La desviación estándar inicial para la distribución normal. Se aplica solo cuando se establece el hiperparámetro `init_method` en `normal`. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 0,01  | 
| l1 |  El parámetro de regularización de L1. Si no desea utilizar la regularización de L1, establezca el valor en 0. **Opcional** Valores válidos: `auto` o número flotante no negativo Valor predeterminado: `auto`  | 
| learning\$1rate |  El tamaño del paso usado por el optimizador para actualizaciones de parámetros. **Opcional** Valores válidos: `auto` o entero positivo de punto flotante Valor predeterminado: `auto`, cuyo valor depende del optimizador elegido.  | 
| loss |  Especifica la función de pérdida.  Las funciones de pérdida disponibles y sus valores predeterminados dependen del valor de `predictor_type`: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/ll_hyperparameters.html) Valores válidos: `auto`, `logistic`, `squared_loss`, `absolute_loss`, `hinge_loss`, `eps_insensitive_squared_loss`, `eps_insensitive_absolute_loss`, `quantile_loss` o `huber_loss`  **Opcional** Valor predeterminado: `auto`  | 
| loss\$1insensitivity |  El parámetro para el tipo de pérdida epsilon-insensible. Durante la evaluación métrica y de capacitación, cualquier error inferior a este valor se considera cero. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 0,01   | 
| lr\$1scheduler\$1factor |  Para cada hiperparámetro `lr_scheduler_step`, la tasa de aprendizaje disminuye en esta cantidad. Se aplica solo cuando se establece el hiperparámetro `use_lr_scheduler` en `true`. **Opcional** Valores válidos: `auto` o positivo de punto flotante comprendido entre 0 y 1 Valor predeterminado: `auto`  | 
| lr\$1scheduler\$1minimum\$1lr |  La tasa de aprendizaje nunca disminuye a un valor inferior al valor establecido para `lr_scheduler_minimum_lr`. Se aplica solo cuando se establece el hiperparámetro `use_lr_scheduler` en `true`. **Opcional** Valores válidos: `auto` o entero positivo de punto flotante Valores predeterminados: `auto`  | 
| lr\$1scheduler\$1step |  El número de pasos entre disminuciones de la tasa de aprendizaje. Se aplica solo cuando se establece el hiperparámetro `use_lr_scheduler` en `true`. **Opcional** Valores válidos: `auto` o entero positivo Valor predeterminado: `auto`  | 
| margin |  El margen para la función `hinge_loss`. **Opcional** Valores válidos: Entero positivo de punto flotante Valor predeterminado: 1.0  | 
| mini\$1batch\$1size |  El número de observaciones por minilote para el iterador de datos. **Opcional** Valores válidos: número entero positivo Valor predeterminado: 1000  | 
| momentum |  El impulso del optimizador `sgd`. **Opcional** Valores válidos: `auto` o un entero de punto flotante comprendido entre 0 y 1,0 Valor predeterminado: `auto`  | 
| normalize\$1data |  Normaliza los datos de la característica antes de la capacitación. La normalización de los datos convierte los datos de cada característica para que tengan una media de cero y los escala para que tenga la desviación estándar de la unidad. **Opcional** Valores válidos: `auto`, `true` o `false` Valor predeterminado: `true`  | 
| normalize\$1label |  Normaliza la etiqueta. La normalización de las etiquetas cambia la etiqueta para que tenga una media de cero y la escala para que tenga la desviación estándar de la unidad. El valor `auto` predeterminado normaliza la etiqueta para problemas de regresión, pero no para problemas de clasificación. Si establece el hiperparámetro `normalize_label` en `true` para problemas de clasificación, el algoritmo hace caso omiso de él. **Opcional** Valores válidos: `auto`, `true` o `false` Valor predeterminado: `auto`  | 
| num\$1calibration\$1samples |  Número de observaciones del conjunto de datos de validación para usar en la calibración de modelo (cuando se encuentra el mejor umbral). **Opcional** Valores válidos: `auto` o entero positivo Valor predeterminado: `auto`  | 
| num\$1models |  Número de modelos para capacitación en paralelo. Para el valor predeterminado, `auto`, el algoritmo decide el número de modelos en paralelo a capacitar. Se realiza la capacitación de un modelo según el parámetro de capacitación determinado (regularización, optimizador y pérdida) y el resto mediante parámetros cerrados. **Opcional** Valores válidos: `auto` o entero positivo Valores predeterminados: `auto`  | 
| num\$1point\$1for\$1scaler |  El número de puntos de datos a usar para calcular la normalización o para establecer plazos sin sesgo. **Opcional** Valores válidos: número entero positivo Valor predeterminado: 10,000  | 
| optimizer |  El algoritmo de optimización que se va a utilizar. **Opcional** Valores válidos: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/ll_hyperparameters.html) Valor predeterminado: `auto`. El ajuste predeterminado de `auto` es `adam`.  | 
| positive\$1example\$1weight\$1mult |  La ponderación asignada a ejemplos positivos cuando se capacita un clasificador binario. La ponderación de los ejemplos negativos se fija en 1. Si desea que el algoritmo elija una ponderación de manera que los errores en los ejemplos de clasificación negativos *frente a* positivos tenga el mismo impacto en la pérdida de capacitación, especifique `balanced`. Si desea que el algoritmo elija la ponderación que optimice el rendimiento, especifique `auto`. **Opcional** Valores válidos: `balanced`, `auto` o un entero positivo de punto flotante Valor predeterminado: 1.0  | 
| quantile |  El cuantil para pérdida de cuantil. Para el cuantil q, el modelo intenta producir predicciones de modo que el valor de `true_label` sea mayor que la predicción con probabilidad q. **Opcional** Valores válidos: entero de punto flotante comprendido entre 0 y 1 Valor predeterminado: 0,5  | 
| target\$1precision |  La precisión de destino. Si `binary_classifier_model_selection_criteria` tiene el valor `recall_at_target_precision`, entonces se mantiene precisión en este valor al mismo tiempo que se optimiza rellamada. **Opcional** Valores válidos: Entero de punto flotante comprendido entre 0 y 1,0 Valor predeterminado: 0.8  | 
| target\$1recall |  La rellamada de destino. Si `binary_classifier_model_selection_criteria` tiene el valor `precision_at_target_recall`, entonces se mantiene rellamada en este valor al mismo tiempo que se optimiza precisión. **Opcional** Valores válidos: Entero de punto flotante comprendido entre 0 y 1,0 Valor predeterminado: 0.8  | 
| unbias\$1data |  Establece las características sin sesgo antes de la capacitación de modo que la media sea 0. De forma predeterminada, los datos no están sesgados si el hiperparámetro `use_bias` se establece en `true`. **Opcional** Valores válidos: `auto`, `true` o `false` Valor predeterminado: `auto`  | 
| unbias\$1label |  Establece las etiquetas sin sesgo antes de la capacitación de modo que la media sea 0. Se aplica a la regresión solo si el `use_bias` hiperparámetro se establece en `true`. **Opcional** Valores válidos: `auto`, `true` o `false` Valor predeterminado: `auto`  | 
| use\$1bias |  Especifica si el modelo debe incluir un término de sesgo, que es el término interceptar en la ecuación lineal. **Opcional** Valores válidos: `true` o `false` Valor predeterminado: `true`  | 
| use\$1lr\$1scheduler |  Cuándo usar un programador para la tasa de aprendizaje. Si desea utilizar un programador, especifique `true`.  **Opcional** Valores válidos: `true` o `false` Valor predeterminado: `true`  | 
| wd |  El parámetro de degradación de ponderación, que también se conoce como parámetro de regularización de L2. Si no desea utilizar la regularización de L2, establezca el valor en 0. **Opcional** Valores válidos: `auto` o entero no negativo de punto flotante Valor predeterminado: `auto`  | 

# Ajustar un modelo de aprendizaje lineal
<a name="linear-learner-tuning"></a>

El *ajuste de modelo automático*, también conocido como ajuste de hiperparámetros, encuentra la mejor versión de un modelo ejecutando muchas tareas que probar una serie de hiperparámetros en su conjunto de datos. Usted elige los hiperparámetros que pueden ajustarse, un rango de valores para cada uno de ellos y una métrica objetiva. Puede elegir la métrica objetiva de las métricas que el algoritmo computa. El ajuste de modelo automático busca los hiperparámetros elegidos para encontrar la combinación de valores que obtienen el modelo que optimiza la métrica objetiva. 

El algoritmo de aprendizaje lineal también dispone de un mecanismo interno para ajustar hiperparámetros independiente del ajuste de modelo automático que se describe aquí. De forma predeterminada, el algoritmo de aprendizaje lineal ajusta hiperparámetros capacitando varios modelos en paralelo. Cuando se utiliza ajuste de modelos automático, el mecanismo de ajuste de aprendizaje lineal interno está desactivado de forma automática. Esto establece el número de modelos paralelos, `num_models`, a 1. El algoritmo no tiene en cuenta los valores que establezca para `num_models`.

Para obtener más información acerca del ajuste de modelos, consulte [Ajuste automático de modelos con IA SageMaker](automatic-model-tuning.md).

## Métricas computadas por el algoritmo de aprendizaje lineal
<a name="linear-learner-metrics"></a>

El algoritmo de aprendizaje lineal informa de la las métricas en la siguiente tabla, que se calcula durante la capacitación. Elija uno de ellos como métrica objetivo. Para evitar sobreajustes, se recomienda ajustar el modelo en una métrica de validación en lugar de una capacitación métrica.


| Nombre de métrica | Description (Descripción) | Dirección de optimización | 
| --- | --- | --- | 
| test:absolute\$1loss |  La pérdida absoluta del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para regresión.  |  Minimizar  | 
| test:binary\$1classification\$1accuracy |  La precisión del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| test:binary\$1f\$1beta |  La puntuación F-beta del modelo final en el conjunto de datos de prueba. De forma predeterminada, se trata de la puntuación F1, que es la media armónica de la precisión y la recuperación. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| test:dcg |  La ganancia acumulada descontada del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:macro\$1f\$1beta |  La puntuación F-beta del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:macro\$1precision |  La precisión del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:macro\$1recall |  La puntuación de exhaustividad del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:mse |  El error cuadrático medio del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para regresión.  |  Minimizar  | 
| test:multiclass\$1accuracy |  La precisión del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:multiclass\$1top\$1k\$1accuracy |  La precisión entre las k etiquetas principales pronosticadas en el conjunto de datos de prueba. Si elige esta métrica como objetivo, le recomendamos establecer el valor de k mediante el hiperparámetro `accuracy_top_k`. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| test:objective\$1loss |  El valor medio del función de pérdida objetivo en el conjunto de datos de prueba después de que el modelo sea capacitado. De forma predeterminada, la pérdida es la pérdida logística para clasificación binaria y pérdida cuadrática para regresión. Para establecer la pérdida a otros tipos, utilice el `loss` hiperparámetro.  |  Minimizar  | 
| test:precision |  La precisión del modelo final en el conjunto de datos de prueba. Si elige esta métrica como objetivo, recomendamos configurar una rellamada objetivo estableciendo el `binary_classifier_model_selection` hiperparámetro en `precision_at_target_recall` y definir el valor para el `target_recall` hiperparámetro. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| test:recall |  La rellamada del modelo final en el conjunto de datos de prueba. Si elige esta métrica como objetivo, recomendamos configurar una precisión objetivo estableciendo el hiperparámetro `binary_classifier_model_selection` en `recall_at_target_precision` y definiendo el valor para el hiperparámetro `target_precision`. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| test:roc\$1auc\$1score |  El área bajo la curva característica operativa receptora (curva ROC) del modelo final en el conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| validation:absolute\$1loss |  La pérdida absoluta del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para regresión.  |  Minimizar  | 
| validation:binary\$1classification\$1accuracy |  La precisión del modelo final en la validación del conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| validation:binary\$1f\$1beta |  La puntuación F-beta del modelo final en la validación del conjunto de datos. De forma predeterminada, la puntuación F-beta es la puntuación F1, que es la media armónica de las métricas `validation:recall` y `validation:precision`. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| validation:dcg |  La ganancia acumulada descontada del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:macro\$1f\$1beta |  La puntuación F-beta del modelo final en la validación del conjunto de datos. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:macro\$1precision |  La puntuación de precisión del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:macro\$1recall |  La puntuación de exhaustividad del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:mse |  El error cuadrático medio del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para regresión.  |  Minimizar  | 
| validation:multiclass\$1accuracy |  La precisión del modelo final en la validación del conjunto de datos de prueba. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:multiclass\$1top\$1k\$1accuracy |  La precisión entre las k etiquetas principales pronosticadas en el conjunto de datos de validación. Si elige esta métrica como objetivo, le recomendamos establecer el valor de k mediante el hiperparámetro `accuracy_top_k`. Esta métrica objetivo solo es válida para la clasificación multiclase.  |  Maximizar  | 
| validation:objective\$1loss |  El valor medio de la función de pérdida objetivo en el conjunto de datos de validación de cada fecha de inicio. De forma predeterminada, la pérdida es la pérdida logística para clasificación binaria y pérdida cuadrática para regresión. Para establecer la pérdida a otros tipos, utilice el `loss` hiperparámetro.  |  Minimizar  | 
| validation:precision |  La precisión del modelo final en el conjunto de datos de validación. Si elige esta métrica como objetivo, recomendamos configurar una rellamada objetivo estableciendo el `binary_classifier_model_selection` hiperparámetro en `precision_at_target_recall` y definir el valor para el `target_recall` hiperparámetro. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| validation:recall |  La precisión del modelo final en el conjunto de datos de validación. Si elige esta métrica como objetivo, recomendamos configurar una precisión objetivo estableciendo el hiperparámetro `binary_classifier_model_selection` en `recall_at_target_precision` y definiendo el valor para el hiperparámetro `target_precision`. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 
| validation:rmse |  La raíz del error cuadrático medio del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para regresión.  |  Minimizar  | 
| validation:roc\$1auc\$1score |  El área bajo la curva característica operativa receptora (curva ROC) del modelo final en el conjunto de datos de validación. Esta métrica objetivo solo es válida para la clasificación binaria.  |  Maximizar  | 

## Ajuste de hiperparámetros de aprendizaje lineal
<a name="linear-learner-tunable-hyperparameters"></a>

Puede ajustar un modelo de aprendizaje lineal con los siguientes hiperparámetros.


| Nombre del parámetro | Tipo de parámetro | Intervalos recomendados | 
| --- | --- | --- | 
| wd |  `ContinuousParameterRanges`  |  `MinValue: ``1e-7`, `MaxValue`: `1`  | 
| l1 |  `ContinuousParameterRanges`  |  `MinValue`: `1e-7`, `MaxValue`: `1`  | 
| learning\$1rate |  `ContinuousParameterRanges`  |  `MinValue`: `1e-5`, `MaxValue`: `1`  | 
| mini\$1batch\$1size |  `IntegerParameterRanges`  |  `MinValue`: `100`, `MaxValue`: `5000`  | 
| use\$1bias |  `CategoricalParameterRanges`  |  `[True, False]`  | 
| positive\$1example\$1weight\$1mult |  `ContinuousParameterRanges`  |  `MinValue`: 1e-5, `MaxValue`: `1e5`  | 

# Formatos de respuesta de aprendizaje lineal
<a name="LL-in-formats"></a>

## Formato de respuesta JSON
<a name="LL-json"></a>

Todos los algoritmos integrados de Amazon SageMaker AI siguen el formato de inferencia de entrada común descrito en [Formatos de datos comunes: inferencia](https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-inference.html). Los siguientes son los formatos de salida disponibles para el algoritmo de aprendizaje lineal de SageMaker IA.

**Clasificación binaria**

```
let response =   {
    "predictions":    [
        {
            "score": 0.4,
            "predicted_label": 0
        } 
    ]
}
```

**Clasificación multiclase**

```
let response =   {
    "predictions":    [
        {
            "score": [0.1, 0.2, 0.4, 0.3],
            "predicted_label": 2
        } 
    ]
}
```

**Regresión**

```
let response =   {
    "predictions":    [
        {
            "score": 0.4
        } 
    ]
}
```

## Formatos de respuesta JSONLINES
<a name="LL-jsonlines"></a>

**Clasificación binaria**

```
{"score": 0.4, "predicted_label": 0}
```

**Clasificación multiclase**

```
{"score": [0.1, 0.2, 0.4, 0.3], "predicted_label": 2}
```

**Regresión**

```
{"score": 0.4}
```

## Formatos de respuesta RECORDIO
<a name="LL-recordio"></a>

**Clasificación binaria**

```
[
    Record = {
        features = {},
        label = {
            'score': {
                keys: [],
                values: [0.4]  # float32
            },
            'predicted_label': {
                keys: [],
                values: [0.0]  # float32
            }
        }
    }
]
```

**Clasificación multiclase**

```
[
    Record = {
    "features": [],
    "label":    {
            "score":  {
                    "values":   [0.1, 0.2, 0.3, 0.4]   
            },
            "predicted_label":  {
                    "values":   [3]
            }
       },
    "uid":  "abc123",
    "metadata": "{created_at: '2017-06-03'}"
   }
]
```

**Regresión**

```
[
    Record = {
        features = {},
        label = {
            'score': {
                keys: [],
                values: [0.4]  # float32
            }   
        }
    }
]
```