

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.

# SageMaker Piloto automático
<a name="autopilot-automate-model-development"></a>

**importante**  
A partir del 30 de noviembre de 2023, la interfaz de usuario de Autopilot migrará a [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) como parte de la experiencia actualizada de [Amazon SageMaker Studio](studio-updated.md). SageMaker Canvas proporciona a los analistas y científicos de datos ciudadanos funciones sin necesidad de programar para tareas como la preparación de datos, la ingeniería de funciones, la selección de algoritmos, el entrenamiento y el ajuste, la inferencia y mucho más. Los usuarios pueden aprovechar las visualizaciones integradas y el análisis hipotético para explorar sus datos y diferentes escenarios, con predicciones automatizadas que les permiten poner en producción sus modelos con facilidad. Canvas admite una variedad de casos de uso, como la visión artificial, la previsión de la demanda, la búsqueda inteligente y la IA generativa.  
 Los usuarios de [Amazon SageMaker Studio Classic](studio.md), la experiencia anterior de [Studio](studio-updated.md), pueden seguir utilizando la interfaz de usuario del piloto automático en Studio Classic. Los usuarios con experiencia en codificación pueden seguir utilizando todas las [referencias de la API ](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html) en cualquier SDK admitido para la implementación técnica.  
Si ha utilizado el piloto automático en Studio Classic hasta ahora y quiere migrar a SageMaker Canvas, puede que tenga que conceder permisos adicionales a su perfil de usuario o función de IAM para poder crear y utilizar la SageMaker aplicación Canvas. Para obtener más información, consulte [(Opcional) Migre del piloto automático de Studio Classic a Canvas SageMaker](studio-updated-migrate-ui.md#studio-updated-migrate-autopilot).  
[Todas las instrucciones relacionadas con la interfaz de usuario de esta guía se refieren a las funciones independientes de Autopilot antes de migrar a Amazon Canvas. SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) Los usuarios que sigan estas instrucciones deben usar [Studio Classic](studio.md).

Amazon SageMaker Autopilot es un conjunto de funciones que simplifica y acelera varias etapas del flujo de trabajo de aprendizaje automático al automatizar el proceso de creación e implementación de modelos de aprendizaje automático (AutoML). En la siguiente página se explica la información clave sobre Amazon SageMaker Autopilot.

Piloto automático realiza las siguientes tareas clave que puede utilizar en modo piloto automático o con distintos grados de orientación humana:
+ **Análisis y preprocesamiento de datos:** Piloto automático identifica el tipo de problema específico, gestiona los valores que faltan, normaliza los datos, selecciona las características y prepara en general los datos para el entrenamiento del modelo.
+ **Selección del modelo:** Piloto automático explora una variedad de algoritmos y utiliza una técnica de remuestreo con validación cruzada para generar métricas que evalúen la calidad predictiva de los algoritmos en función de métricas objetivas predefinidas.
+ **Optimización de hiperparámetros:** Piloto automático automatiza la búsqueda de configuraciones de hiperparámetros óptimas.
+ **Evaluación y entrenamiento de modelos:** Piloto automático automatiza el proceso de entrenamiento y evaluación de varios modelos candidatos. Divide los datos en conjuntos de entrenamiento y validación, entrena a los candidatos a modelo seleccionados utilizando los datos de entrenamiento y evalúa el rendimiento sobre los datos no observados del conjunto de validación. Por último, clasifica los candidatos a modelo optimizados en función de su rendimiento e identifica el modelo con mejor rendimiento.
+ **Implementación del modelo:** cuando Piloto automático ya ha identificado el modelo con mejor rendimiento, ofrece la opción de implementar el modelo automáticamente generando los artefactos del modelo y el punto de conexión que revelan una API. Las aplicaciones externas pueden enviar datos al punto de conexión y recibir las predicciones o inferencias correspondientes.

El piloto automático permite crear modelos de aprendizaje automático en conjuntos de datos grandes de hasta cientos de. GBs

En el siguiente diagrama se describen las tareas de este proceso de AutoML administrado por Piloto automático.

![\[Descripción general del proceso de Amazon SageMaker Autopilot AutoML.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/Autopilot-process-graphic-1.png)


En función de su nivel de comodidad con el proceso de machine learning y de su experiencia en programación, puede utilizar Piloto automático de diferentes maneras:
+ **Con la interfaz de usuario de Studio Classic**, los usuarios pueden elegir entre una experiencia sin código o contar con cierto nivel de intervención humana.
**nota**  
A través de la interfaz de usuario de Studio Classic, solo están disponibles los experimentos creados a partir de datos tabulares para tipos de problemas como la regresión o la clasificación.
+ **Con la API de AutoML**, los usuarios con experiencia en codificación pueden utilizar las disponibles SDKs para crear trabajos de AutoML. Este método proporciona una mayor flexibilidad y opciones de personalización y está disponible para todos los tipos de problemas.

Actualmente, Autopilot es compatible con los siguientes tipos de problemas:

**nota**  
Para los problemas de regresión o clasificación relacionados con datos tabulares, los usuarios pueden elegir entre dos opciones: utilizar la interfaz de usuario de Studio Classic o la [referencia de las API](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).  
Las tareas como la clasificación de textos e imágenes, la previsión de series temporales y el afinamiento de modelos de lenguaje grandes están disponibles exclusivamente en la versión 2 de la [API de REST de AutoML](autopilot-reference.md). Si su idioma preferido es Python, puede consultar directamente el [MLV2 objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del SDK de Amazon SageMaker Python. [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)  
Los usuarios que prefieran la comodidad de una interfaz de usuario pueden usar [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acceder a modelos previamente entrenados y modelos básicos de IA generativa, o crear modelos personalizados adaptados a textos específicos, clasificación de imágenes, necesidades de previsión o IA generativa.
+ **Clasificación por regresión, binaria y multiclase**, con datos tabulares formateados como archivos CSV o Parquet en los que cada columna contiene una característica con un tipo de datos específico y cada fila contiene una observación. Algunos tipos de datos de columna aceptados son series numéricas, categóricas, de texto y temporales compuestas por cadenas de números separados por comas.
  + Para crear un trabajo de piloto automático como experimento piloto utilizando la referencia de la SageMaker API, consulte. [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md)
  + Para crear un trabajo de Piloto automático como experimento piloto mediante la interfaz de usuario de Studio Classic, consulte [Creación de un experimento de Piloto automático de regresión o clasificación para datos tabulares usando la interfaz de usuario de Studio Classic](autopilot-automate-model-development-create-experiment-ui.md).
  + Si es administrador y desea preconfigurar los parámetros predeterminados de infraestructura, red o seguridad de los experimentos de Piloto automático en la interfaz de usuario de Studio Classic, consulte [Configurar los parámetros predeterminados de un experimento de Piloto automático (para administradores)](autopilot-set-default-parameters-create-experiment.md). 
+ **Clasificación de texto** con datos formateados como archivos CSV o Parquet, en los que una columna contiene las frases que se van a clasificar y otra columna debe incluir la etiqueta de clase correspondiente. Consulte [Creación de un trabajo de AutoML de clasificación de texto mediante la API](autopilot-create-experiment-text-classification.md).
+ **Clasificación de imágenes** con formatos de imagen como PNG, JPEG o una combinación de ambos. Consulte [Creación de un trabajo de clasificación de imágenes mediante la API de AutoML](autopilot-create-experiment-image-classification.md).
+ **Previsión de series temporales con** datos de serie temporal formateados como archivos CSV o Parquet. Consulte [Creación de un trabajo de AutoML para la previsión de serie temporal con la API](autopilot-create-experiment-timeseries-forecasting.md).
+ Ajuste preciso de modelos de lenguaje de gran tamaño (LLMs) para la **generación de texto** con datos formateados como archivos CSV o Parquet. Consulte. [Creación de un trabajo de AutoML para afinar modelos de generación de texto mediante la API](autopilot-create-experiment-finetune-llms.md)

Además, Piloto automático ayuda a los usuarios a entender cómo hacen predicciones los modelos mediante la generación automática de informes que muestran la importancia de cada característica individual. Esto proporciona transparencia e información sobre los factores que influyen en las predicciones, algo que pueden utilizar los equipos de riesgo y cumplimiento y los reguladores externos. Piloto automático también proporciona un informe de rendimiento del modelo, que incluye un resumen de las métricas de evaluación, una matriz de confusión, diversas visualizaciones, como las curvas características del funcionamiento del receptor y las curvas de recuperación de precisión, etc. El contenido específico de cada informe varía según el tipo de problema del experimento con Piloto automático.

Los informes de explicabilidad y rendimiento del mejo candidato a modelo en un experimento de Piloto automático están disponibles para los tipos de problemas de clasificación de texto, imagen y datos tabulares.

En los casos de uso de datos tabulares, como la regresión o la clasificación, Piloto automático ofrece visibilidad adicional sobre cómo se clasificaron los datos y cómo se seleccionaron, entrenaron y ajustaron los candidatos; esto se logra generando cuadernos que contienen el código utilizado para explorar los datos y encontrar el modelo con el mejor rendimiento. Estos cuadernos proporcionan un entorno interactivo y exploratorio que le ayuda a conocer el impacto de las distintas entradas, o las ventajas y desventajas que se obtienen en los experimentos. Puede seguir experimentando con el modelo candidato de mayor rendimiento mediante sus propias modificaciones en los cuadernos de exploración de datos y de definición de candidatos proporcionados por Autopilot. 

Con Amazon SageMaker AI, solo pagas por lo que usas. Usted paga por los recursos informáticos y de almacenamiento subyacentes de la SageMaker IA u otros AWS servicios, en función del uso que haga. Para obtener más información sobre el coste del uso de la SageMaker IA, consulta los [ SageMakerprecios de Amazon](https://aws.amazon.com/sagemaker/pricing).

**Topics**
+ [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md)
+ [Creación de un trabajo de clasificación de imágenes mediante la API de AutoML](autopilot-create-experiment-image-classification.md)
+ [Creación de un trabajo de AutoML de clasificación de texto mediante la API](autopilot-create-experiment-text-classification.md)
+ [Creación de un trabajo de AutoML para la previsión de serie temporal con la API](autopilot-create-experiment-timeseries-forecasting.md)
+ [Creación de un trabajo de AutoML para afinar modelos de generación de texto mediante la API](autopilot-create-experiment-finetune-llms.md)
+ [Creación de un experimento de Piloto automático de regresión o clasificación para datos tabulares usando la interfaz de usuario de Studio Classic](autopilot-automate-model-development-create-experiment-ui.md)
+ [Cuadernos de ejemplo de Piloto automático de Amazon SageMaker](autopilot-example-notebooks.md)
+ [Vídeos: Uso de Piloto automático para automatizar y explorar el proceso de machine learning](autopilot-videos.md)
+ [Cuotas de Piloto automático](autopilot-quotas.md)
+ [Guía de referencia de las API de Piloto automático](autopilot-reference.md)

# Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML
<a name="autopilot-automate-model-development-create-experiment"></a>

Puede crear un trabajo de regresión o clasificación de Piloto automático para datos tabulares mediante programación llamando a la acción de API [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) en cualquier idioma compatible con Piloto automático o la AWS CLI. Lo que sigue es una colección de parámetros de solicitud de entrada obligatorios y opcionales para la acción de API `CreateAutoMLJobV2`. Puede encontrar la información alternativa de la versión anterior de esta acción, `CreateAutoMLJob`. No obstante, recomendamos usar `CreateAutoMLJobV2`. 

Para obtener información sobre cómo se traduce esta acción de API en una función en el lenguaje que usted prefiera, consulte la sección [Véase también](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` en AWS SDK para Python (Boto3).

**nota**  
[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) y [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) son versiones nuevas [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)y [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)ofrecen compatibilidad con versiones anteriores.  
Recomendamos utilizar `CreateAutoMLJobV2`. `CreateAutoMLJobV2` puede gestionar tipos de problemas tabulares idénticos a los de su versión anterior (`CreateAutoMLJob`), así como tipos de problemas no tabulares, como la clasificación de imágenes o textos o la previsión de series temporales.

Como mínimo, todos los experimentos con datos tabulares requieren la especificación del nombre del experimento, la ubicación de los datos de entrada y salida y la especificación de los datos de destino que se van a predecir. Si lo prefiere, también puede especificar el tipo de problema que desea resolver (regresión, clasificación, clasificación multiclase), elegir su estrategia de modelado (*conjuntos apilados* u *optimización de hiperparámetros*), seleccionar la lista de algoritmos utilizados por el trabajo de Piloto automático para entrenar los datos, etc. 

 Tras la ejecución del experimento, puede comparar las pruebas y ahondar en los detalles de los pasos de preprocesamiento, los algoritmos y los rangos de hiperparámetros de cada modelo. También tiene la opción de descargar sus informes de [explicabilidad](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-explainability.html) y [rendimiento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-insights.html). Utilice los [cuadernos](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-notebook-output.html ) proporcionados para ver los resultados de la exploración automática de datos o las definiciones de los modelos candidatos.

Para obtener instrucciones sobre cómo migrar un `CreateAutoMLJob` a `CreateAutoMLJobV2`, vaya a [Migre a V2 CreateAuto MLJob CreateAuto MLJob](#autopilot-create-experiment-api-migrate-v1-v2).

## Parámetros necesarios
<a name="autopilot-create-experiment-api-required-params"></a>

------
#### [ CreateAutoMLJobV2 ]

Al llamar a `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para crear un experimento de Piloto automático para datos tabulares, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar el nombre del trabajo.
+ Al menos un `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` en `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar el origen de datos.
+ Una métrica `[AutoMLJobObjective](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobObjective)` y el tipo de problema de aprendizaje supervisado que haya elegido (clasificación binaria, clasificación multiclase, regresión) en `AutoMLProblemTypeConfig` o ninguno. En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`. Defina el problema de aprendizaje supervisado en el atributo `ProblemType` de `TabularJobConfig`.
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos.

------
#### [ CreateAutoMLJob ]

Al llamar a `[CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)` para crear un experimento de AutoML, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobName)` para especificar el nombre del trabajo.
+ Al menos un `[AutoMLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)` en `[InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)` para especificar el origen de datos.
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos.

------

Todos los demás parámetros son opcionales.

## Parámetros opcionales
<a name="autopilot-create-experiment-api-optional-params"></a>

En las siguientes secciones, se proporcionan detalles sobre algunos parámetros opcionales que puede transferir a su acción de API `CreateAutoMLJobV2` cuando utilice datos tabulares. Puede encontrar la información alternativa de la versión anterior de esta acción, `CreateAutoMLJob`. No obstante, recomendamos usar `CreateAutoMLJobV2`.

### Cómo configurar el modo de entrenamiento de un trabajo de AutoML
<a name="autopilot-set-training-mode"></a>

En el caso de los datos tabulares, el conjunto de algoritmos que se ejecutan en sus datos para entrenar a los candidatos a modelo depende de su estrategia de modelado (`ENSEMBLING` o `HYPERPARAMETER_TUNING`). A continuación, se detalla cómo configurar este modo de entrenamiento.

Si lo deja en blanco (o `null`), el `Mode` se inferirá en función del tamaño del conjunto de datos.

Para obtener información sobre los métodos de entrenamiento para la *optimización de hiperparámetros* y los *conjuntos apilados* de Piloto automático, consulte [Modos de entrenamiento y compatibilidad con algoritmos](autopilot-model-support-validation.md).

------
#### [ CreateAutoMLJobV2 ]

En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Puede configurar el [método de entrenamiento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html) de un trabajo de AutoML V2 con el parámetro `[TabularJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)`.

------
#### [ CreateAutoMLJob ]

Puede configurar el [método de entrenamiento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html) de un trabajo de AutoML con el parámetro `[AutoMLJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-Mode)`.

------

### Cómo seleccionar características y algoritmos para entrenar un trabajo de AutoML
<a name="autopilot-feature-selection"></a>

#### Selección de características
<a name="autopilot-automl-job-feature-selection-api"></a>

Piloto automático proporciona pasos automáticos de preprocesamiento de datos, como la selección y extracción de características. Sin embargo, puede proporcionar manualmente las características que se utilizarán en el entrenamiento con el atributo `FeatureSpecificatioS3Uri`.

Las características seleccionadas deben estar incluidas en un archivo JSON con el siguiente formato:

```
{ "FeatureAttributeNames":["col1", "col2", ...] }
```

Los valores enumerados en `["col1", "col2", ...]` distinguen entre mayúsculas y minúsculas. Deben ser una lista de cadenas que contengan valores únicos que sean subconjuntos de los nombres de columna de los datos de entrada.

**nota**  
La lista de columnas proporcionada como características no puede incluir la columna de destino.

------
#### [ CreateAutoMLJobV2 ]

En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Puede establecer la URL de las características seleccionadas con el parámetro `[TabularJobConfig.FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)`.

------
#### [ CreateAutoMLJob ]

Puedes configurar el `FeatureSpecificatioS3Uri` atributo [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html) en la [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)API con el siguiente formato:

```
{
    "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-FeatureSpecificationS3Uri)":"string"
            },
       }
  }
```

------

#### Selección de algoritmos
<a name="autopilot-automl-job-algorithms-selection-api"></a>

De forma predeterminada, el trabajo de Piloto automático ejecuta una lista predefinida de algoritmos en su conjunto de datos para entrenar a los candidatos a modelos. La lista de algoritmos depende del modo de entrenamiento (`ENSEMBLING` o `HYPERPARAMETER_TUNING`) utilizado por el trabajo.

Puede proporcionar un subconjunto de la selección de algoritmos predeterminada.

------
#### [ CreateAutoMLJobV2 ]

En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Puede especificar una matriz de seleccionados `AutoMLAlgorithms` en el `AlgorithmsConfig` atributo de [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html).

Lo que sigue es un ejemplo de atributo `AlgorithmsConfig` que enumera exactamente tres algoritmos (“xgboost”, “fastai” y “catboost”) en su campo `AutoMLAlgorithms` para el modo de entrenamiento de ensamblaje.

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": {
          "[Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": "ENSEMBLING",
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["xgboost", "fastai", "catboost"]}
            ]
         },
       },
     },
  }
```

------
#### [ CreateAutoMLJob ]

Puede especificar una matriz de seleccionados `AutoMLAlgorithms` en el `AlgorithmsConfig` atributo de [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html).

Lo que sigue es un ejemplo de atributo `AlgorithmsConfig` que enumera exactamente tres algoritmos (“xgboost”, “fastai” y “catboost”) en su campo `AutoMLAlgorithms` para el modo de entrenamiento de ensamblaje.

```
{
   "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms)":["xgboost", "fastai", "catboost"]}
            ]
         },
     "Mode": "ENSEMBLING" 
  }
```

------

Para ver la lista de algoritmos disponibles por `Mode` de entrenamiento, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms). Para obtener información sobre cada algoritmo, consulte [Modos de entrenamiento y compatibilidad con algoritmos](autopilot-model-support-validation.md).

### Cómo especificar los conjuntos de datos de entrenamiento y validación de un trabajo de AutoML
<a name="autopilot-data-sources-training-or-validation"></a>

Puede proporcionar su propio conjunto de datos de validación y una tasa de división de datos personalizada, o puede dejar que Piloto automático divida el conjunto de datos automáticamente.

------
#### [ CreateAutoMLJobV2 ]

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte el parámetro obligatorio [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tiene una`ChannelType`, que se puede configurar en `training` `validation` valores que especifican cómo se utilizarán los datos al crear un modelo de aprendizaje automático. Debe proporcionar al menos un origen de datos y un máximo de dos: uno para los datos de entrenamiento y otro para los datos de validación.

La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos.
+ Si solo tiene **un origen de datos**, el `ChannelType` se establece en `training` de forma predeterminada y debe tener este valor.
  + Si el valor `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) no está establecido, el 20 % (0,2) de los datos de este origen se utiliza para la validación de forma predeterminada. 
  + Si la `ValidationFraction` se establece en un valor entre 0 y 1, el conjunto de datos se divide en función del valor especificado, donde el valor especifica la fracción del conjunto de datos utilizada para la validación.
+ Si tiene **dos orígenes de datos**, el `ChannelType` de uno de los objetos de `AutoMLJobChannel` debe establecerse en `training`, el valor predeterminado. El `ChannelType` del otro origen de datos debe estar establecido en `validation`. Los dos orígenes de datos deben tener el mismo formato, CSV o Parquet, y el mismo esquema. En este caso, no debe establecer el valor de `ValidationFraction`, ya que todos los datos de cada origen se utilizan para el entrenamiento o la validación. Si se configura este valor, se producirá un error.

------
#### [ CreateAutoMLJob ]

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)objeto (consulte el parámetro necesario [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)) tiene un`ChannelType`, que se puede configurar en `validation` valores que especifican cómo se van a utilizar los datos al crear un modelo de aprendizaje automático. `training` Debe proporcionar al menos un origen de datos y un máximo de dos: uno para los datos de entrenamiento y otro para los datos de validación.

La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos.
+ Si solo tiene **un origen de datos**, el `ChannelType` se establece en `training` de forma predeterminada y debe tener este valor.
  + Si el valor `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) no está establecido, el 20 % (0,2) de los datos de este origen se utiliza para la validación de forma predeterminada. 
  + Si la `ValidationFraction` se establece en un valor entre 0 y 1, el conjunto de datos se divide en función del valor especificado, donde el valor especifica la fracción del conjunto de datos utilizada para la validación.
+ Si tiene **dos orígenes de datos**, el `ChannelType` de uno de los objetos de `AutoMLChannel` debe establecerse en `training`, el valor predeterminado. El `ChannelType` del otro origen de datos debe estar establecido en `validation`. Los dos orígenes de datos deben tener el mismo formato, CSV o Parquet, y el mismo esquema. En este caso, no debe establecer el valor de `ValidationFraction`, ya que todos los datos de cada origen se utilizan para el entrenamiento o la validación. Si se configura este valor, se producirá un error.

------

Para obtener información sobre la validación dividida y cruzada en Piloto automático, consulte [Validación cruzada en Piloto automático](autopilot-metrics-validation.md#autopilot-cross-validation).

### Cómo configurar el tipo de problema de un trabajo de AutoML
<a name="autopilot-set-problem-type-api"></a>

------
#### [ CreateAutoMLJobV2 ]

En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Puede especificar con más detalle el tipo de problema de aprendizaje supervisado (clasificación binaria, clasificación multiclase, regresión) disponible para los candidatos a modelo de su trabajo de AutoML V2 con el parámetro `[TabularJobConfig.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)`.

------
#### [ CreateAutoMLJob ]

Puede establecer el [tipo de problema](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-datasets-problem-types.html#autopilot-problem-types) de un trabajo de AutoML con el parámetro `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)`. Esto limita el tipo de preprocesamiento y algoritmos que Piloto automático intenta. Cuando finalice el trabajo, si había establecido el `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)`, el `[ResolvedAttribute.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html)` coincidirá con el `ProblemType` que ha establecido. Si lo deja en blanco (o `null`), el `ProblemType` se inferirá automáticamente. 

------

**nota**  
En algunos casos, Piloto automático no puede inferir el `ProblemType` con un nivel suficiente de confianza; en esos casos, debe proporcionar el valor para que el trabajo se complete correctamente.

### Cómo añadir ponderaciones de muestra a un trabajo de AutoML
<a name="autopilot-add-sample-weights-api"></a>

Puede añadir una columna de ponderaciones de muestra a su conjunto de datos tabular y, a continuación, pasarla a su trabajo de AutoML para solicitar que las filas del conjunto de datos se ponderen durante el entrenamiento y la evaluación.

El soporte para ponderaciones de muestra solo está disponible en el [modo de ensamblaje](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode). Las ponderaciones deben ser numéricas y no negativas. Se excluyen los puntos de datos con un valor de ponderación no válido o nulo. Para obtener más información sobre las métricas disponibles, consulte [Métricas ponderadas en Piloto automático](autopilot-metrics-validation.md#autopilot-weighted-metrics).

------
#### [ CreateAutoMLJobV2 ]

En el caso de los datos tabulares, debe elegir `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como el tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Para establecer los pesos de las muestras al crear un experimento (consulte la sección [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)), puede introducir el nombre de la columna de pesos de las muestras en el `SampleWeightAttributeName` atributo del `TabularJobConfig` objeto. Esto garantiza que la métrica objetivo utilice las ponderaciones para el entrenamiento, la evaluación y la selección de los modelos candidatos.

------
#### [ CreateAutoMLJob ]

Para establecer los pesos de las muestras al crear un experimento (consulte [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)), puede introducir el nombre de la columna de pesos de las muestras en el `SampleWeightAttributeName` atributo del MLChannel objeto [Auto](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html). Esto garantiza que la métrica objetivo utilice las ponderaciones para el entrenamiento, la evaluación y la selección de los modelos candidatos.

------

### Configuración de AutoML para iniciar un trabajo remoto en EMR sin servidor para conjuntos de datos grandes
<a name="autopilot-set-emr-serverless-api-tabular"></a>

Puede configurar su trabajo de AutoML V2 para iniciar automáticamente un trabajo remoto en Amazon EMR sin servidor cuando se necesiten recursos de computación adicionales para procesar conjuntos de datos de gran tamaño. Al realizar una transición sin problemas a EMR sin servidor cuando es necesario, el trabajo de AutoML puede gestionar conjuntos de datos que, de otro modo, superarían los recursos aprovisionados inicialmente, sin ninguna intervención manual por su parte. EMR sin servidor está disponible para los tipos de problemas tabulares y de series temporales. Recomendamos configurar esta opción para conjuntos de datos tabulares de más de 5 GB.

Para permitir que el trabajo de AutoML V2 pase automáticamente a EMR sin servidor para conjuntos de datos grandes, debe proporcionar un objeto `EmrServerlessComputeConfig`, que incluya un campo `ExecutionRoleARN`, para el `AutoMLComputeConfig` de la solicitud de entrada del trabajo AutoML V2.

`ExecutionRoleARN` es el ARN del rol de IAM que otorga al trabajo de AutoML V2 los permisos necesarios para ejecutar los trabajos de EMR sin servidor.

Este rol debe tener la siguiente relación de confianza:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

Y conceder los permisos para:
+ Crear, enumerar y actualizar aplicaciones de EMR sin servidor.
+ Iniciar, enumere, obtener o cancelar las ejecuciones de trabajos en una aplicación EMR sin servidor.
+ Etiquetar los recursos EMR sin servidor.
+ Pasar un rol de IAM al servicio de EMR sin servidor para su ejecución.

  Al conceder el permiso `iam:PassRole`, el trabajo de AutoML V2 puede asumir temporalmente el rol `EMRServerlessRuntimeRole-*` y pasarlo al servicio de EMR sin servidor. Estas son las funciones de IAM que utilizan los entornos de ejecución de trabajos sin servidor de EMR para acceder a AWS otros servicios y recursos necesarios durante el tiempo de ejecución, como Amazon S3 para el acceso a los datos, el registro CloudWatch , AWS Glue el acceso al catálogo de datos u otros servicios en función de sus requisitos de carga de trabajo.

  Consulte [Roles en tiempo de ejecución de trabajo para Amazon EMR sin servidor](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html) para obtener más información sobre los permisos de este rol.

La política de IAM definida en el documento JSON proporcionado concede esos permisos:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "EMRServerlessCreateApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:CreateApplication",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListApplications",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessApplicationOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:UpdateApplication",
                "emr-serverless:GetApplication"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessStartJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:StartJobRun",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListJobRuns",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessJobRunOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetJobRun",
                "emr-serverless:CancelJobRun"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*/jobruns/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessTagResourceOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:TagResource",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "IAMPassOperationForEMRServerless",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/EMRServerlessRuntimeRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
         }
    ]
}
```

------

## Migre a V2 CreateAuto MLJob CreateAuto MLJob
<a name="autopilot-create-experiment-api-migrate-v1-v2"></a>

Recomendamos a los usuarios de `CreateAutoMLJob` que migren a `CreateAutoMLJobV2`.

En esta sección, se explican las diferencias entre los parámetros de entrada [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#API_CreateAutoMLJob_RequestSyntax)y la [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax), destacando los cambios en la posición, el nombre o la estructura de los objetos y los atributos de la solicitud de entrada entre las dos versiones.
+ **Atributos de solicitud que no han cambiado de una versión a otra.**

  ```
  {
     "AutoMLJobName": "string",
     "AutoMLJobObjective": { 
        "MetricName": "string"
     },
     "ModelDeployConfig": { 
        "AutoGenerateEndpointName": boolean,
        "EndpointName": "string"
     },
     "OutputDataConfig": { 
        "KmsKeyId": "string",
        "S3OutputPath": "string"
     },
     "RoleArn": "string",
     "Tags": [ 
        { 
           "Key": "string",
           "Value": "string"
        }
     ]
  }
  ```
+ **Atributos de solicitud que han cambiado de posición y estructura entre versiones.**

  Los atributos `DataSplitConfig`, `Security Config`, `CompletionCriteria`, `Mode`, `FeatureSpecificationS3Uri`, `SampleWeightAttributeName` y `TargetAttributeName` han cambiado de posición.

------
#### [ CreateAutoMLJob ]

  ```
  { 
      "AutoMLJobConfig": { 
          "Mode": "string",
          "CompletionCriteria": { 
              "MaxAutoMLJobRuntimeInSeconds": number,
              "MaxCandidates": number,
              "MaxRuntimePerTrainingJobInSeconds": number
          },
          "DataSplitConfig": { 
              "ValidationFraction": number
          },
          "SecurityConfig": { 
              "EnableInterContainerTrafficEncryption": boolean,
              "VolumeKmsKeyId": "string",
              "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
              }
          },
          "CandidateGenerationConfig": { 
              "FeatureSpecificationS3Uri": "string"
          }
      },
      "GenerateCandidateDefinitionsOnly": boolean,
      "ProblemType": "string"
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {       
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "Mode": "string",
              "ProblemType": "string",
              "GenerateCandidateDefinitionsOnly": boolean,
              "CompletionCriteria": { 
                  "MaxAutoMLJobRuntimeInSeconds": number,
                  "MaxCandidates": number,
                  "MaxRuntimePerTrainingJobInSeconds": number
              },
              "FeatureSpecificationS3Uri": "string",
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      },
      "DataSplitConfig": { 
          "ValidationFraction": number
      },
      "SecurityConfig": { 
          "EnableInterContainerTrafficEncryption": boolean,
          "VolumeKmsKeyId": "string",
          "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
          }
      }
  }
  ```

------
+ **Los siguientes atributos han cambiado de posición y estructura entre versiones.**

  El siguiente JSON ilustra cómo funciona [Auto MLJob Config. CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)del tipo [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html) se movió a [Auto MLProblemTypeConfig. TabularJobConfig. CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)de tipo [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)en V2.

------
#### [ CreateAutoMLJob ]

  ```
  {
     "AutoMLJobConfig": { 
        "CandidateGenerationConfig": { 
           "AlgorithmsConfig": [ 
              { 
                 "AutoMLAlgorithms": [ "string" ]
              }
           ],
           "FeatureSpecificationS3Uri": "string"
        }
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "CandidateGenerationConfig": { 
                  "AlgorithmsConfig": [ 
                      { 
                      "AutoMLAlgorithms": [ "string" ]
                      }
                  ],
              },
          }
      },
  }
  ```

------
+ **Atributos de solicitud que han cambiado de nombre y estructura.**

  El siguiente JSON ilustra cómo [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)(Una matriz de [Auto MLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)) cambió a [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig) (Una matriz de [Auto MLJob Channel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)) en la V2. Tenga en cuenta que los atributos `SampleWeightAttributeName` y `TargetAttributeName` han salido de `InputDataConfig` y han pasado a estar en `AutoMLProblemTypeConfig`.

------
#### [ CreateAutoMLJob ]

  ```
  {    
      "InputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              },
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      ]
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {    
      "AutoMLJobInputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              }
          }
      ]
  }
  ```

------

# Conjuntos de datos y tipos de problemas de Piloto automático
<a name="autopilot-datasets-problem-types"></a>

En el caso de los datos tabulares (es decir, los datos en los que cada columna contiene una función con un tipo de datos específico y cada fila contiene una observación), Piloto automático le ofrece la opción de especificar el tipo de problema de aprendizaje supervisado disponible para los candidatos modelo del trabajo de AutoML, como la clasificación binaria o la regresión, o de detectar dicho problema automáticamente en función de los datos que proporcione. Piloto automático también admite varios formatos y tipos de datos.

**Topics**
+ [Conjuntos de datos, tipos de datos y formatos en Piloto automático](#autopilot-datasets)
+ [Tipos de problemas de Piloto automático](#autopilot-problem-types)

## Conjuntos de datos, tipos de datos y formatos en Piloto automático
<a name="autopilot-datasets"></a>

Piloto automático admite datos tabulares formateados como archivos CSV o como archivos Parquet: cada columna contiene una característica con un tipo de datos específico y cada fila contiene una observación. Las propiedades de estos dos formatos de archivo difieren considerablemente.
+ El **CSV** (comma-separated-values) es un formato de archivo basado en filas que almacena los datos en texto plano legible para las personas y es una opción popular para el intercambio de datos, ya que es compatible con una amplia gama de aplicaciones.
+ **Parquet** es un formato de archivo basado en columnas en el que los datos se almacenan y procesan de forma más eficiente que en los formatos de archivo basados en filas. Esto los convierte en una mejor opción para los problemas en macrodatos.

Los **tipos de datos** aceptados para las columnas incluyen series numéricas, categóricas, de texto y temporales compuestas por cadenas de números separados por comas. Si Piloto automático detecta que son secuencias de **series temporales**, las procesa mediante transformadores de características especializados y proporcionados por la biblioteca [tsfresh](https://tsfresh.readthedocs.io/en/latest/text/list_of_features.html). Esta biblioteca toma la serie temporal como entrada y genera una característica, como el valor absoluto más alto de la serie temporal o los estadísticos descriptivos de la autocorrelación. Estas características generadas se utilizan luego como entradas para uno de los tres tipos de problemas.

El piloto automático permite crear modelos de aprendizaje automático en conjuntos de datos grandes de hasta cientos de. GBs Para obtener más información sobre los límites de recursos predeterminados para los conjuntos de datos de entrada y cómo aumentarlos, consulte las [cuotas de Piloto Automático](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-quotas.html).

## Tipos de problemas de Piloto automático
<a name="autopilot-problem-types"></a>

En el caso de los datos tabulares, especifique también el tipo de problemas de aprendizaje supervisado disponibles para los candidatos al modelo de la siguiente manera:

### Regresión
<a name="autopilot-automate-model-development-problem-types-regression"></a>

La regresión estima los valores de una variable objetivo dependiente en función de una o más variables o atributos que están correlacionados con ella. Un ejemplo es la predicción de los precios de la vivienda mediante características como el número de baños y dormitorios, metros cuadrados de la casa y el jardín. El análisis de regresión puede crear un modelo que tome una o más de estas características como entrada y prediga el precio de la casa.

### Clasificación binaria
<a name="autopilot-automate-model-development-problem-types-binary-classification"></a>

La clasificación binaria es un tipo de aprendizaje supervisado que asigna un individuo a una de dos clases predefinidas y mutuamente excluyentes basadas en sus atributos. Se considera supervisado porque los modelos se entrenan utilizando ejemplos en los que los atributos se proporcionan con objetos etiquetados correctamente. Un ejemplo de clasificación binaria es un diagnóstico médico de si un individuo tiene una enfermedad o no en función de los resultados de las pruebas de diagnóstico.

### Clasificación multiclase
<a name="autopilot-automate-model-development-problem-types-multiclass-classification"></a>

La clasificación multiclass es un tipo de aprendizaje supervisado que asigna un individuo a una de varias clases en función de sus atributos. Se considera supervisado porque los modelos se entrenan utilizando ejemplos en los que los atributos se proporcionan con objetos etiquetados correctamente. Un ejemplo es la predicción del tema más relevante para un documento de texto. Un documento puede clasificarse como que trata de religión, política, finanzas o de varias otras clases temáticas predefinidas.

# Modos de entrenamiento y compatibilidad con algoritmos
<a name="autopilot-model-support-validation"></a>

Piloto automático admite diferentes modos de entrenamiento y algoritmos para abordar problemas de machine learning, informar sobre métricas objetivo y de calidad y utilizar la validación cruzada automáticamente, cuando sea necesario.

## Modelos de entrenamiento
<a name="autopilot-training-mode"></a>

SageMaker El piloto automático puede seleccionar automáticamente el método de entrenamiento en función del tamaño del conjunto de datos, o puedes seleccionarlo manualmente. Estas son las dos opciones.
+ **Ensamblaje**: el piloto automático utiliza la [AutoGluon](https://auto.gluon.ai/scoredebugweight/tutorials/tabular_prediction/index.html)biblioteca para entrenar varios modelos base. Para encontrar la mejor combinación para su conjunto de datos, el modo de ensamblaje ejecuta diez pruebas con diferentes ajustes de modelo y metaparámetro. A continuación, Piloto automático combina estos modelos mediante un método de conjuntos apilados para crear un modelo predictivo óptimo. Para obtener una lista de los algoritmos que Piloto automático admite en el modo de ensamblaje para datos tabulares, consulte la sección **Compatibilidad con algoritmos**.
+ **Optimización de hiperparámetros (HPO)**: Piloto automático busca la mejor versión de un modelo ajustando los hiperparámetros mediante la optimización bayesiana o la optimización de multifidelidad mientras ejecuta tareas de entrenamiento en el conjunto de datos. El modo HPO selecciona los algoritmos que son más relevantes para el conjunto de datos y selecciona el mejor rango de hiperparámetros para ajustar los modelos. Para ajustar sus modelos, el modo HPO ejecuta hasta 100 pruebas (predeterminado) para encontrar la configuración de hiperparámetros óptima dentro del rango seleccionado. Si el tamaño del conjunto de datos es inferior a 100 MB, Piloto automático utiliza la optimización bayesiana. Piloto automático elige la optimización multifidelidad si el conjunto de datos tiene más de 100 MB.

  En la optimización multifidelidad, las métricas se emiten continuamente desde los contenedores de entrenamiento. Una prueba que tiene un rendimiento deficiente con respecto a una métrica objetivo seleccionada se detiene antes de tiempo. A una prueba que funciona bien se le asignan más recursos. 

  Para obtener una lista de los algoritmos que Piloto automático admite en el modo HPO, consulte la sección **Compatibilidad con algoritmos**. 
+ **Automático**: Piloto automático elige automáticamente el modo de ensamblaje o el modo HPO en función del tamaño del conjunto de datos. Si su conjunto de datos es superior a 100 MB, Piloto automático elige HPO. De lo contrario, elige el modo de ensamblaje. Piloto automático puede no leer el tamaño del conjunto de datos en los siguientes casos.
  + Si habilita el modo nube privada virtual (VPC) para un trabajo de AutoML, pero el bucket de S3 que contiene el conjunto de datos solo permite el acceso desde VPC.
  + La entrada [S3](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html#sagemaker-Type-AutoMLS3DataSource-S3DataType) de su conjunto DataType de datos es una. `ManifestFile`
  + La entrada [S3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html#sagemaker-Type-AutoMLS3DataSource-S3Uri) contiene más de 1000 elementos.

  Si Piloto automático no puede leer el tamaño del conjunto de datos, elige de forma predeterminada el modo HPO.

**nota**  
Para obtener un tiempo de ejecución y un rendimiento óptimos, use el modo de entrenamiento de ensamblaje para conjuntos de datos de menos de 100 MB.

## Compatibilidad son algoritmos
<a name="autopilot-algorithm-support"></a>

En el **modo HPO**, Piloto automático admite los siguientes tipos de algoritmos de machine learning:
+  [Aprendiz lineal](https://docs.aws.amazon.com/sagemaker/latest/dg/linear-learner.html): un algoritmo de aprendizaje supervisado que puede resolver problemas de clasificación o regresión.
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)— Un algoritmo de aprendizaje supervisado que intenta predecir con precisión una variable objetivo mediante la combinación de un conjunto de estimaciones de un conjunto de modelos más simples y débiles.
+ Algoritmo de aprendizaje profundo: un perceptrón multicapa (MLP) y una red neuronal artificial de retroalimentación. Este algoritmo puede procesar datos que no se pueden separar linealmente.

**nota**  
No tiene que especificar un algoritmo para usarlo en el problema de machine learning. Piloto automático selecciona automáticamente el algoritmo adecuado para entrenar. 

En el **modo de ensamblaje**, Piloto automático admite los siguientes tipos de algoritmos de machine learning:
+ [LightGBM](https://docs.aws.amazon.com/sagemaker/latest/dg/lightgbm.html): un marco optimizado que utiliza algoritmos basados en árboles con potenciación por gradiente. Este algoritmo utiliza árboles que crecen en amplitud, en lugar de en profundidad, y está altamente optimizado para la velocidad.
+ [CatBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/catboost.html)— Un marco que utiliza algoritmos basados en árboles con aumento de gradiente. Optimizado para la gestión de variables categóricas.
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)— Un marco que utiliza algoritmos basados en árboles con un aumento de gradiente que aumenta en profundidad, en lugar de en amplitud. 
+ [Random Forest](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html): algoritmo basado en árboles que utiliza varios árboles de decisión en submuestras aleatorias de los datos y las reemplaza. Los árboles se dividen en nodos óptimos en cada nivel. Las decisiones de cada árbol se promedian para evitar el sobreajuste y mejorar las predicciones.
+ [Extra Trees](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.ExtraTreesClassifier.html#sklearn.ensemble.ExtraTreesClassifier): un algoritmo basado en árboles que utiliza varios árboles de decisión en todo el conjunto de datos. Los árboles se dividen aleatoriamente en cada nivel. Las decisiones de cada árbol se promedian para evitar el sobreajuste y mejorar las predicciones. Extra Trees añade un grado de asignación al azar en comparación con el algoritmo Random Forest.
+ [Linear Models](https://scikit-learn.org/stable/modules/classes.html#module-sklearn.linear_model): un marco que utiliza una ecuación lineal para modelar la relación entre dos variables en los datos observados.
+ Neural network torch: un modelo de red neuronal que se implementa con [Pytorch](https://pytorch.org/).
+ Neural network fast.ai: un modelo de red neuronal que se implementa con [fast.ai](https://www.fast.ai/).

# Métricas y validación
<a name="autopilot-metrics-validation"></a>

Esta guía muestra las métricas y las técnicas de validación que puede utilizar para medir el rendimiento del modelo de machine learning. Amazon SageMaker Autopilot produce métricas que miden la calidad predictiva de los candidatos a modelos de aprendizaje automático. Las métricas calculadas para los candidatos se especifican mediante una serie de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Métricas de Piloto automático
<a name="autopilot-metrics"></a>

La siguiente lista contiene los nombres de las métricas que están disponibles actualmente para medir el rendimiento de los modelos en Piloto automático.

**nota**  
Piloto automático admite las ponderaciones de muestra. Para obtener más información sobre las ponderaciones de muestra y las métricas objetivo disponibles, consulte [Métricas ponderadas en Piloto automático](#autopilot-weighted-metrics).

Estas son las métricas disponibles.

**`Accuracy`**  
 La relación entre el número de elementos clasificados correctamente y el número total de elementos clasificados (correcta e incorrectamente). Se utiliza tanto para la clasificación binaria como para la clasificación multiclase. La precisión mide el grado de aproximación de los valores de clase pronosticados con respecto a los valores reales. Los valores de las métricas de precisión varían entre cero (0) y uno (1). Un valor de 1 indica una precisión perfecta y un 0 indica una imprecisión perfecta.

**`AUC`**  
 La métrica del área bajo la curva (AUC) se utiliza para comparar y evaluar la clasificación binaria mediante algoritmos que devuelven probabilidades, como la regresión logística. Para mapear las probabilidades en clasificaciones, estas se comparan con un valor umbral.   
La curva relevante es la curva característica de funcionamiento del receptor. La curva traza la tasa de positivos verdaderos (TPR) de las predicciones (o exhaustividad) en comparación con la tasa de falsos positivos (FPR) en función del valor umbral, por encima del cual una predicción se considera positiva. Si se aumenta el umbral, se obtienen menos falsos positivos, pero más falsos negativos.   
El AUC es el área bajo la curva característica de funcionamiento de este receptor. Por lo tanto, el AUC proporciona una medida agregada del rendimiento del modelo en todos los umbrales de clasificación posibles. Las puntuaciones del AUC varían entre 0 y 1. Una puntuación de 1 indica una precisión perfecta y una puntuación de la mitad (0,5) indica que la predicción no es mejor que la de un clasificador aleatorio. 

**`BalancedAccuracy`**  
`BalancedAccuracy` es una métrica que mide la relación entre las predicciones precisas y todas las predicciones. Esta relación se calcula después de normalizar los positivos verdaderos (TP) y los negativos verdaderos (TN) mediante el número total de valores positivos (P) y negativos (N). Se utiliza tanto en la clasificación binaria como en la multiclase y se define de la siguiente manera: 0,5\$1 ((TP/P)\$1(TN/N)), con valores que van de 0 a 1. `BalancedAccuracy`proporciona una mejor medida de la precisión cuando el número de aspectos positivos o negativos es muy diferente entre sí en un conjunto de datos desequilibrado, por ejemplo, cuando solo el 1% del correo electrónico es spam. 

**`F1`**  
La puntuación `F1` es la media armónica de la precisión y la exhaustividad, que se define como F1 = 2 \$1 (precisión \$1 exhaustividad)/(precisión \$1 exhaustividad). Se utiliza para la clasificación binaria en clases denominadas tradicionalmente positivas y negativas. Se dice que las predicciones son verdaderas cuando coinciden con su clase real (correcta) y falsas cuando no coinciden.   
La precisión es la relación entre las predicciones positivas verdaderas y todas las predicciones positivas, e incluye los falsos positivos de un conjunto de datos. La precisión mide la calidad de la predicción cuando predice la clase positiva.   
La exhaustividad (o sensibilidad) es la relación entre las predicciones positivas verdaderas y todas las instancias positivas reales. La exhaustividad mide la precisión con la que un modelo predice los miembros reales de la clase en un conjunto de datos.   
Las puntuaciones de F1 varían entre 0 y 1. Una puntuación de 1 indica el mejor rendimiento posible y 0 indica el peor.

**`F1macro`**  
La puntuación de `F1macro` aplica la puntuación de F1 en los problemas de clasificación multiclase. Para ello, calcula la precisión y la recuperación; luego, calcula la media armónica para calcular la puntuación de F1 de cada clase. Por último, `F1macro` promedia las puntuaciones individuales para obtener la puntuación de `F1macro`. Las puntuaciones `F1macro` varían entre 0 y 1. Una puntuación de 1 indica el mejor rendimiento posible y 0 indica el peor.

**`InferenceLatency`**  
La latencia de inferencia es el tiempo aproximado que transcurre entre solicitar una predicción de modelo y recibirla desde un punto de conexión en tiempo real en el que se implementa el modelo. Esta métrica se mide en segundos y solo está disponible en el modo de ensamblaje.

**`LogLoss`**  
La pérdida logarítmica, también conocida como pérdida de entropía cruzada, es una métrica que se utiliza para evaluar la calidad de las salidas probabilísticas, en lugar de las propias salidas. Se utiliza tanto para la clasificación binaria como para la clasificación multiclase en redes neuronales. También es la función de costo de la regresión logística. La pérdida logarítmica es una métrica importante para indicar, con una alta probabilidad, el momento en el que un modelo hace predicciones incorrectas. Los valores están comprendidos entre 0 e infinito. Un valor de 0 representa un modelo que predice perfectamente los datos.

**`MAE`**  
El error absoluto medio (MAE) es una medida de la diferencia entre los valores pronosticados y reales cuando se promedian entre todos los valores. El MAE se utiliza habitualmente en el análisis de regresión para comprender el error de predicción del modelo. Si hay regresión lineal, el MAE representa la distancia promedio desde una línea pronosticada hasta el valor real. El MAE se define como la suma de los errores absolutos dividida por el número de observaciones. Los valores van desde 0 hasta el infinito, y los números más pequeños indican un mejor ajuste del modelo a los datos.

**`MSE`**  
El error cuadrático medio (MSE) es el promedio de las diferencias cuadráticas entre los valores pronosticados y reales. Se usa para la regresión. Los valores de MSE son siempre positivos. Cuanto mejor prediga los valores reales un modelo, menor será el valor de MSE.

**`Precision`**  
La precisión mide el rendimiento de un algoritmo al predecir los verdaderos positivos (TP) de entre todos los positivos que identifica. Se define como Precisión = TP/(TP\$1FP); los valores van de cero (0) a uno (1) y se utiliza en la clasificación binaria. La precisión es una métrica importante cuando el costo de un falso positivo es elevado. Por ejemplo, el costo de un falso positivo es muy elevado si el sistema de seguridad de un avión se equivoca al decir que es seguro volar. Un falso positivo (FP) refleja una predicción positiva que, en realidad, es negativa en los datos.

**`PrecisionMacro`**  
La macro de precisión calcula la precisión de los problemas de clasificación multiclase. Para ello, calcula la precisión de cada clase y promedia las puntuaciones para obtener la precisión de varias clases. Las puntuaciones de `PrecisionMacro` van de cero (0) a uno (1). Las puntuaciones más altas reflejan la capacidad del modelo para predecir positivos verdaderos (TP) a partir de todos los positivos que identifica, promediados en varias clases.

**`R2`**  
El R 2, también conocido como coeficiente de determinación, se utiliza en la regresión para cuantificar en qué medida un modelo puede explicar la varianza de una variable dependiente. Los valores oscilan entre uno (1) y menos uno (-1). Los números más altos indican una fracción más alta de la variabilidad explicada. Los valores de `R2` cercanos a cero (0) indican que el modelo puede explicar muy poco sobre la variable dependiente. Los valores negativos indican que hay un ajuste deficiente y que el rendimiento del modelo es superado por una función constante. En el caso de la regresión lineal, se trata de una línea horizontal.

**`Recall`**  
La exhaustividad mide el rendimiento de un algoritmo a la hora de predecir correctamente todos los positivos verdaderos (TP) de un conjunto de datos. Un positivo verdadero es una predicción positiva que también es un valor positivo real en los datos. La exhaustividad se define de la siguiente manera: Exhaustividad = TP/(TP\$1FN), con valores que van de 0 a 1. Las puntuaciones más altas reflejan una mejor capacidad del modelo para predecir los verdaderos positivos (TP) en los datos. Se utiliza en la clasificación binaria.   
La exhaustividad es importante en las pruebas de detección de cáncer, ya que se utiliza para encontrar todos los positivos verdaderos. Un falso negativo (FN) refleja una predicción negativa que, en realidad, es positiva en los datos. A menudo no basta con medir solo la exhaustividad, ya que, si se predice cada salida como un verdadero positivo, se obtiene una puntuación de exhaustividad perfecta.

**`RecallMacro`**  
La `RecallMacro` calcula la exhaustividad para problemas de clasificación multiclase calculando la exhaustividad para cada clase y promediando las puntuaciones a fin de obtener la exhaustividad de varias clases. Las puntuaciones de `RecallMacro` van del 0 al 1. Las puntuaciones más altas reflejan la capacidad del modelo para predecir positivos verdaderos (TP) en un conjunto de datos, mientras que un resultado positivo verdadero refleja una predicción positiva que también es un valor positivo real en los datos. A menudo, no basta con medir solo la exhaustividad, ya que, si se predice cada salida como un verdadero positivo, se obtiene una puntuación de exhaustividad perfecta.

**`RMSE`**  
La raíz del error cuadrático medio (RMSE) mide la raíz cuadrada de la diferencia cuadrática entre los valores pronosticados y los reales, y se promedia sobre todos los valores. Se utiliza en el análisis de regresión para comprender el error de predicción del modelo. Es una métrica importante para indicar la presencia de valores atípicos y errores de modelo grandes. Los valores van desde cero (0) hasta infinito, y los números más pequeños indican el modelo que se ajusta mejor a los datos. El RMSE depende de la escala y no debe usarse para comparar conjuntos de datos de diferentes tamaños.

Las métricas que se calculan automáticamente para un candidato a modelo vienen determinadas por el tipo de problema que se está abordando.

Consulta la [documentación de referencia de la SageMaker API de Amazon](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) para ver la lista de métricas disponibles compatibles con Autopilot.

## Métricas ponderadas en Piloto automático
<a name="autopilot-weighted-metrics"></a>

**nota**  
Piloto automático solo admite ponderaciones de muestra en el modo de ensamblaje y para todas las [métricas disponibles](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics), con la excepción de `Balanced Accuracy` y `InferenceLatency`. `BalanceAccuracy` viene con su propio esquema de ponderación para conjuntos de datos desequilibrados que no requieren ponderaciones de muestra. `InferenceLatency` no admite ponderaciones de muestra. Las métricas objetivo `Balanced Accuracy` y `InferenceLatency` ignoran las ponderaciones de muestra existentes al entrenar y evaluar un modelo.

Los usuarios pueden añadir una columna de ponderaciones de muestra a sus datos para garantizar que cada observación utilizada para entrenar un modelo de machine learning reciba una ponderación correspondiente a su importancia percibida para el modelo. Esto resulta especialmente útil en escenarios en los que las observaciones del conjunto de datos tienen distintos grados de importancia, o cuando un conjunto de datos contiene un número desproporcionado de muestras de una clase en comparación con otras. La asignación de una ponderación a cada observación en función de su importancia, o mayor importancia, para una clase minoritaria puede mejorar el rendimiento general del modelo o garantizar que este no esté sesgado hacia la clase mayoritaria.

Para obtener información sobre cómo pasar las ponderaciones de las muestras al crear un experimento en la interfaz de usuario de Studio Classic, consulte el *paso 7* en [Create an Autopilot experiment using Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html). 

Para obtener información sobre cómo pasar las ponderaciones de muestra mediante programación al crear un experimento de Piloto automático mediante la API, consulte *How to add sample weights to an AutoML job* en [Create an Autopilot experiment programmatically](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html).

## Validación cruzada en Piloto automático
<a name="autopilot-cross-validation"></a>

La validación cruzada se utiliza para reducir el sobreajuste y el sesgo en la selección del modelo. También se usa para evaluar el rendimiento de un modelo al predecir los valores de un conjunto de datos de validación no observable si el conjunto de datos de validación se extrae de la misma población. Este método es especialmente importante cuando se entrena con conjuntos de datos que tienen un número limitado de instancias de entrenamiento. 

Piloto automático utiliza la validación cruzada para crear modelos en la optimización de hiperparámetros (HPO) y en el modo de entrenamiento por ensamblaje. El primer paso del proceso de validación cruzada con Piloto automático consiste en dividir los datos en k particiones.

### División en k-particiones
<a name="autopilot-cross-validation-kfold"></a>

La división en k-particiones es un método que separa un conjunto de datos de entrenamiento de entrada en varios conjuntos de datos de entrenamiento y validación. El conjunto de datos se divide en `k` submuestras del mismo tamaño, denominadas particiones. Luego, los modelos se entrenan en `k-1` particiones y se prueban comparándolos con la partición número k restante, que es el conjunto de datos de validación. El proceso se repite `k` veces utilizando un conjunto de datos diferente para la validación. 

La siguiente imagen muestra la división de k particiones con k = 4 particiones. Cada partición se representa como una fila. Los recuadros de tonos oscuros representan las partes de los datos utilizadas en el entrenamiento. Los recuadros restantes, en tonos claros, indican los conjuntos de datos de validación. 

![\[La división en k particiones con 4 particiones se representa en forma de recuadros: oscuros para los datos utilizados y claros para los conjuntos de datos de validación.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-metrics-kfold-splits.png)


Piloto automático utiliza la validación cruzada de k-particiones tanto en el modo de optimización de hiperparámetros (HPO) como en el de ensamblaje.

Puede implementar modelos de piloto automático creados mediante validación cruzada como lo haría con cualquier otro modelo de piloto automático o de IA. SageMaker 

### Modo HPO
<a name="autopilot-cross-validation-hpo"></a>

La validación cruzada en k-particiones utiliza el método de división k-particiones para la validación cruzada. En el modo HPO, Piloto automático implementa automáticamente la validación cruzada de k-particiones para conjuntos de datos pequeños con 50 000 instancias de entrenamiento o menos. Realizar una validación cruzada es especialmente importante cuando se entrena con conjuntos de datos pequeños, ya que protege contra el sobreajuste y el sesgo de selección. 

El modo HPO utiliza un valor *k* de 5 en cada uno de los algoritmos candidatos que se utilizan para modelar el conjunto de datos. Varios modelos se entrenan en diferentes divisiones y los modelos se almacenan por separado. Cuando se completa el entrenamiento, las métricas de validación de cada uno de los modelos se promedian para producir una única métrica de estimación. Por último, Piloto automático combina los modelos de la prueba con la mejor métrica de validación en un modelo de ensamblaje. Piloto automático utiliza este modelo de ensamblaje para hacer predicciones.

La métrica de validación de los modelos entrenados por Piloto automático se presenta como métrica objetivo en la tabla de clasificación de modelos. Piloto automático utiliza la métrica de validación predeterminada para cada tipo de problema que gestiona, a menos que especifique lo contrario. Para ver una lista de todas las métricas que Piloto automático utiliza, consulte [Métricas de Piloto automático](#autopilot-metrics).

Por ejemplo, el [conjunto de datos Boston Housing](http://lib.stat.cmu.edu/datasets/boston) contiene solo 861 muestras. Si crea un modelo para predecir los precios de venta de viviendas utilizando este conjunto de datos sin validación cruzada, corre el riesgo de utilizar un conjunto de datos que no sea representativo del mercado inmobiliario en Boston. Si divide los datos solo una vez en subconjuntos de entrenamiento y validación, es posible que la partición de entrenamiento solo contenga datos principalmente de las afueras. Como resultado, el entrenamiento se llevaría a cabo con datos que no son representativos del resto de la ciudad. En este ejemplo, es probable que su modelo se sobreajuste a esta selección sesgada. La validación cruzada de k-particiones puede reducir el riesgo de este tipo de error al hacer un uso completo y aleatorio de los datos disponibles, tanto para el entrenamiento como para la validación.

La validación cruzada puede aumentar los tiempos de entrenamiento en un promedio del 20 %. Los tiempos de entrenamiento también pueden aumentar significativamente en el caso de conjuntos de datos complejos.

**nota**  
En el modo HPO, puedes ver las métricas de entrenamiento y validación de cada pliegue de tus registros. `/aws/sagemaker/TrainingJobs` CloudWatch Para obtener más información sobre CloudWatch los registros, consulte[CloudWatch Registros para Amazon SageMaker AI](logging-cloudwatch.md). 

### Modo de ensamblaje
<a name="autopilot-cross-validation-ensemble"></a>

**nota**  
Piloto automático admite las ponderaciones de muestra en el modo de ensamblaje. Para obtener la lista de métricas compatibles con las ponderaciones de muestra, consulte [Métricas de Piloto automático](#autopilot-metrics).

En el modo de ensamblaje, la validación cruzada se realiza independientemente del tamaño del conjunto de datos. Los clientes pueden proporcionar su propio conjunto de datos de validación y una tasa de división de datos personalizada o dejar que Piloto automático divida el conjunto de datos automáticamente con una tasa de división 80-20 %. A continuación, los datos de entrenamiento se dividen en `k` dos para realizar una validación cruzada, donde el motor `k` determina el AutoGluon valor de. Un conjunto consta de varios modelos de machine learning, cada uno de los cuales se denomina modelo base. Un único modelo base se basa en (`k`-1) pliegues y hace out-of-fold predicciones en el pliegue restante. Este proceso se repite para todos los `k` pliegues y las predicciones out-of-fold (OOF) se concatenan para formar un único conjunto de predicciones. Todos los modelos base del conjunto siguen este mismo proceso de generación de predicciones OOF.

La siguiente imagen muestra la división de k particiones, con `k` = 4 particiones. Cada partición se representa como una fila. Los recuadros de tonos oscuros representan las partes de los datos utilizadas en el entrenamiento. Los recuadros restantes, en tonos claros, indican los conjuntos de datos de validación. 

En la parte superior de la imagen, en cada partición, el primer modelo base hace predicciones sobre el conjunto de datos de validación después de entrenar a los conjuntos de datos de entrenamiento. En cada partición posterior, los conjuntos de datos cambian de rol. Un conjunto de datos que antes se utilizaba para el entrenamiento ahora se utiliza para la validación y viceversa. Al final de los `k` pliegues, todas las predicciones se concatenan para formar un único conjunto de predicciones denominado predicción (OOF). out-of-fold Este proceso se repite para todos los modelos base `n`.

![\[Validación de k-particiones: cuatro filas de recuadros representan cuatro particiones que generan una fila de predicciones OOF.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-metrics-kfold.PNG)


Luego, las predicciones OOF para cada modelo base se utilizan como características para entrenar un modelo de apilamiento. El modelo de apilamiento aprende las ponderaciones de importancia de cada modelo base. Estas ponderaciones se utilizan para combinar las predicciones OOF a fin de formar la predicción final. El rendimiento del conjunto de datos de validación determina qué modelo base o de apilamiento es el mejor, y este modelo se devuelve como modelo final.

En el modo de ensamblaje, puede proporcionar su propio conjunto de datos de validación o dejar que Piloto automático divida el conjunto de datos de entrada automáticamente (80 % entrenamiento y 20 % validación). A continuación, los datos de entrenamiento se dividen en `k` particiones para la validación cruzada, y generan una predicción OOF y un modelo base para cada partición.

Estas predicciones OOF se utilizan como características para entrenar un modelo de apilamiento, que aprende a la vez las ponderaciones de cada modelo base. Estas ponderaciones se utilizan para combinar las predicciones OOF a fin de formar la predicción final. Los conjuntos de datos de validación de cada partición se utilizan para ajustar los hiperparámetros de todos los modelos base y del modelo de apilamiento. El rendimiento del conjunto de datos de validación determina qué modelo base o de apilamiento es el mejor, y este modelo se devuelve como modelo final.

# Implementación y predicción en modelos de Piloto automático
<a name="autopilot-deploy-models"></a>

Esta guía de Amazon SageMaker Autopilot incluye los pasos para la implementación de modelos, la configuración de la inferencia en tiempo real y la ejecución de la inferencia con trabajos por lotes. 

Después de entrenar los modelos en Piloto automático, puede implementarlos para obtener predicciones de una de las dos formas siguientes:

1. Utilice [Implementación de modelos para inferencia en tiempo real](autopilot-deploy-models-realtime.md) para configurar un punto de conexión y obtener predicciones de forma interactiva. La inferencia en tiempo real es idónea para cargas de trabajo de inferencia con requisitos en tiempo real, interactivos y de baja latencia.

1. Utilice [Ejecución por lotes de trabajos de inferencia](autopilot-deploy-models-batch.md) para hacer predicciones en paralelo en lotes de observaciones de un conjunto de datos completo. La inferencia por lotes es una buena opción para conjuntos de datos grandes o si no necesita una respuesta inmediata a una solicitud de predicción del modelo.

**nota**  
Para evitar incurrir en cargos innecesarios, cuando los recursos y puntos de conexión que ha creado a partir de la implementación del modelo ya no sean necesarios, puede eliminarlos. Para obtener información sobre los precios de las instancias por región, consulta [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

# Implementación de modelos para inferencia en tiempo real
<a name="autopilot-deploy-models-realtime"></a>

La inferencia en tiempo real es idónea para cargas de trabajo de inferencia con requisitos en tiempo real, interactivos y de baja latencia. Esta sección le muestra cómo puede usar la inferencia en tiempo real para obtener predicciones de forma interactiva a partir de su modelo.

Para implementar el modelo que produjo la mejor métrica de validación en un experimento de Piloto automático, tiene varias opciones. Por ejemplo, si utiliza el piloto automático en SageMaker Studio Classic, puede implementar el modelo de forma automática o manual. También se puede utilizar SageMaker APIs para implementar manualmente un modelo de piloto automático. 

Las siguientes pestañas muestran tres opciones para implementar el modelo. En estas instrucciones, se da por sentado que ya ha creado un modelo con Piloto automático. Si no dispone de un modelo, consulte [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md). Para ver ejemplos de cada opción, abra cada pestaña.

## Implementación con la interfaz de usuario (IU) de Piloto automático
<a name="autopilot-deploy-models-realtime-ui"></a>

La interfaz de usuario de Piloto automático contiene útiles menús desplegables, botones, información sobre herramientas, etc. que le guiarán por la implementación del modelo. Puede realizar la implementación de forma automática o manual.
+ **Implementación automática**: para implementar automáticamente el mejor modelo de un experimento de Piloto automático en un punto de conexión

  1. [Crea un experimento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html) en SageMaker Studio Classic. 

  1. Cambie el valor de **Implementación automática** a **Sí**.
**nota**  
**La implementación automática fallará si la cuota de recursos predeterminada o la cuota de clientes para las instancias de puntos de conexión de una región son demasiado limitadas.** En el modo de optimización de hiperparámetros (HPO), debe tener al menos dos instancias ml.m5.2xlarge. En el modo de ensamblaje, debe tener al menos una instancia ml.m5.12xlarge. Si se produce un error relacionado con las cuotas, puede [solicitar un aumento del límite de servicio](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html) para las instancias de punto final de SageMaker IA.
+ **Implementación manual**: para implementar manualmente el mejor modelo de un experimento de Piloto automático en un punto de conexión

  1. [Crea un experimento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html) en SageMaker Studio Classic. 

  1. Cambie el valor de **Implementación automática** a **No**. 

  1. En **Nombre del modelo**, seleccione el modelo que desea implementar.

  1. Seleccione el botón naranja **Implementación y configuración avanzada**, situado a la derecha de la clasificación. Se abrirá una nueva pestaña.

  1. Configure el nombre del punto de conexión, el tipo de instancia y otros datos opcionales.

  1.  Seleccione el **Modelo de implementación** naranja para implementarlo en un punto de conexión.

  1. Compruebe el progreso del proceso de creación de terminales en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)la sección de puntos finales. Esa sección se encuentra en el menú desplegable **Inferencia** del panel de navegación. 

  1. Cuando el estado del punto final cambie de **Crear** a **InService**, como se muestra a continuación, vuelva a Studio Classic e invoque el punto final.  
![\[SageMaker Consola de IA: página de puntos finales para crear un punto final o comprobar el estado del punto final.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-check-progress.PNG)

## Implemente mediante SageMaker APIs
<a name="autopilot-deploy-models-api"></a>

También puede obtener inferencias en tiempo real implementando su modelo mediante **llamadas a API**. En esta sección se muestran los cinco pasos de este proceso mediante fragmentos de código AWS Command Line Interface (AWS CLI). 

Para ver ejemplos de código completos para ambos AWS CLI comandos y el AWS SDK para Python (boto3), abre las pestañas siguiendo estos pasos.

1. **Obtener las definiciones de candidatos**

   Obtenga las definiciones de contenedores candidatos en. [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers) Estas definiciones candidatas se utilizan para crear un modelo de SageMaker IA. 

   En el siguiente ejemplo, se utiliza la [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)API para obtener definiciones de candidatos para el mejor modelo candidato. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Enumerar los candidatos**

   En el siguiente ejemplo, se utiliza la [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para enumerar todos los candidatos. Observe el siguiente comando AWS CLI como ejemplo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Cree un modelo de SageMaker IA**

   Utilice las definiciones de contenedor de los pasos anteriores para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker create-model --model-name '<your-custom-model-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Crear la configuración de un punto de conexión** 

   En el siguiente ejemplo, se utiliza la [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para crear una configuración de punto final. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-custom-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Crear el punto de conexión** 

   En el siguiente AWS CLI ejemplo, se utiliza la [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para crear el punto final.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-custom-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Compruebe el progreso de la implementación de su punto final mediante la [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. **Invocar al punto de conexión** 

   La siguiente estructura de comandos invoca el punto de conexión para realizar inferencias en tiempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

Las siguientes pestañas contienen ejemplos de código completos para implementar un modelo con el SDK de AWS para Python (boto3) o la AWS CLI.

------
#### [ AWS SDK for Python (boto3) ]

1. **Obtenga las definiciones de candidatos** con el siguiente ejemplo de código.

   ```
   import sagemaker 
   import boto3
   
   session = sagemaker.session.Session()
   
   sagemaker_client = boto3.client('sagemaker', region_name='us-west-2')
   job_name = 'test-auto-ml-job'
   
   describe_response = sm_client.describe_auto_ml_job(AutoMLJobName=job_name)
   # extract the best candidate definition from DescribeAutoMLJob response
   best_candidate = describe_response['BestCandidate']
   # extract the InferenceContainers definition from the caandidate definition
   inference_containers = best_candidate['InferenceContainers']
   ```

1. **Cree el modelo** con el siguiente ejemplo de código.

   ```
   # Create Model
   model_name = 'test-model' 
   sagemaker_role = 'arn:aws:iam:444455556666:role/sagemaker-execution-role'
   create_model_response = sagemaker_client.create_model(
      ModelName = model_name,
      ExecutionRoleArn = sagemaker_role,
      Containers = inference_containers 
   )
   ```

1. **Cree la configuración de punto de conexión** con el siguiente ejemplo de código.

   ```
   endpoint_config_name = 'test-endpoint-config'
                                                           
   instance_type = 'ml.m5.2xlarge' 
   # for all supported instance types, see 
   # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ProductionVariant.html#sagemaker-Type-ProductionVariant-InstanceType    # Create endpoint config
   
   endpoint_config_response = sagemaker_client.create_endpoint_config(
      EndpointConfigName=endpoint_config_name, 
      ProductionVariants=[
          {
              "VariantName": "variant1",
              "ModelName": model_name, 
              "InstanceType": instance_type,
              "InitialInstanceCount": 1
          }
      ]
   )
   
   print(f"Created EndpointConfig: {endpoint_config_response['EndpointConfigArn']}")
   ```

1. **Cree el punto de conexión** e implemente el modelo con el siguiente ejemplo de código.

   ```
   # create endpoint and deploy the model
   endpoint_name = 'test-endpoint'
   create_endpoint_response = sagemaker_client.create_endpoint(
                                               EndpointName=endpoint_name, 
                                               EndpointConfigName=endpoint_config_name)
   print(create_endpoint_response)
   ```

   **Compruebe el estado de la creación del punto de conexión** mediante el siguiente ejemplo de código.

   ```
   # describe endpoint creation status
   status = sagemaker_client.describe_endpoint(EndpointName=endpoint_name)["EndpointStatus"]
   ```

1. **Invoque el punto de conexión** para realizar inferencias en tiempo real con la siguiente estructura de comandos.

   ```
   # once endpoint status is InService, you can invoke the endpoint for inferencing
   if status == "InService":
     sm_runtime = boto3.Session().client('sagemaker-runtime')
     inference_result = sm_runtime.invoke_endpoint(EndpointName='test-endpoint', ContentType='text/csv', Body='1,2,3,4,class')
   ```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenga las definiciones de candidatos** con el siguiente ejemplo de código.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Cree el modelo** con el siguiente ejemplo de código.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", amzn-s3-demo-bucket1
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", aws-region
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \ 
   --region 'us-west-2'
   ```

   Para obtener más información, consulte [creación de un modelo](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-model.html).

   El comando `create model` devolverá una respuesta con el siguiente formato.

   ```
   {
       "ModelArn": "arn:aws:sagemaker:us-west-2:1234567890:model/test-sagemaker-model"
   }
   ```

1. **Cree la configuración de punto de conexión** con el siguiente ejemplo de código.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name 'test-endpoint-config' \
   --production-variants '[{"VariantName": "variant1", 
                           "ModelName": "test-sagemaker-model",
                           "InitialInstanceCount": 1,
                           "InstanceType": "ml.m5.2xlarge"
                          }]' \
   --region us-west-2
   ```

   El comando `create endpoint` devolverá una respuesta con el siguiente formato.

   ```
   {
       "EndpointConfigArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint-config/test-endpoint-config"
   }
   ```

1. **Cree un punto de conexión** con el siguiente ejemplo de código.

   ```
   aws sagemaker create-endpoint --endpoint-name 'test-endpoint' \    
   --endpoint-config-name 'test-endpoint-config' \                 
   --region us-west-2
   ```

   El comando `create endpoint` devolverá una respuesta con el siguiente formato.

   ```
   {
       "EndpointArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint/test-endpoint"
   }
   ```

   Compruebe el progreso de la implementación del punto de conexión mediante el siguiente ejemplo de código [describe-endpoint](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/describe-endpoint.html) de la CLI.

   ```
   aws sagemaker describe-endpoint --endpoint-name 'test-endpoint' --region us-west-2
   ```

   La comprobación de progreso anterior devolverá una respuesta con el siguiente formato.

   ```
   {
       "EndpointName": "test-endpoint",
       "EndpointArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint/test-endpoint",
       "EndpointConfigName": "test-endpoint-config",
       "EndpointStatus": "Creating",
       "CreationTime": 1660251167.595,
       "LastModifiedTime": 1660251167.595
   }
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. **Invoque el punto de conexión** para realizar inferencias en tiempo real con la siguiente estructura de comandos.

   ```
   aws sagemaker-runtime invoke-endpoint --endpoint-name 'test-endpoint' \
   --region 'us-west-2' \
   --body '1,51,3.5,1.4,0.2' \
   --content-type 'text/csv' \
   '/tmp/inference_output'
   ```

   Para ver más opciones, consulte [invocar un punto de conexión](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker-runtime/invoke-endpoint.html).

------

## Implementar modelos desde diferentes cuentas
<a name="autopilot-deploy-models-realtime-across-accounts"></a>

Puede implementar un modelo de Piloto automático desde una cuenta diferente a la cuenta original en la que se generó el modelo. Para la implementación de un modelo entre cuentas, esta sección muestra cómo hacer lo siguiente:   Conceder permiso para asumir el rol a la cuenta desde la que desea realizar la implementación (la cuenta generadora).    Llama a `DescribeAutoMLJob` desde la cuenta de implementación para obtener información sobre el modelo.    Conceder derechos de acceso a los artefactos del modelo desde la cuenta generadora.    

1. **Conceder permiso a la cuenta de implementación** 

   Para asumir el rol en la cuenta generadora, debe concederle permiso a la cuenta de la implementación. Esto permite que la cuenta de implementación describa las tareas de Piloto automático en la cuenta generadora.

   En el siguiente ejemplo, se utiliza una cuenta generadora con una entidad `sagemaker-role` de confianza. En el ejemplo se muestra cómo conceder permiso a una cuenta de implementación con el identificador 111122223333 para que asuma el rol de cuenta generadora.

   ```
   "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "sagemaker.amazonaws.com"
                   ],
                   "AWS": [ "111122223333"]
               },
               "Action": "sts:AssumeRole"
           }
   ```

   La nueva cuenta con el identificador 111122223333 ahora puede asumir el rol de cuenta generadora. 

   A continuación, llame a la API `DescribeAutoMLJob` desde la cuenta de implementación para obtener una descripción del trabajo creado por la cuenta generadora. 

   En el siguiente ejemplo de código, se describe el modelo de la cuenta de implementación.

   ```
   import sagemaker 
   import boto3
   session = sagemaker.session.Session()
   
   sts_client = boto3.client('sts')
   sts_client.assume_role
   
   role = 'arn:aws:iam::111122223333:role/sagemaker-role'
   role_session_name = "role-session-name"
   _assumed_role = sts_client.assume_role(RoleArn=role, RoleSessionName=role_session_name)
   
   credentials = _assumed_role["Credentials"]
   access_key = credentials["AccessKeyId"]
   secret_key = credentials["SecretAccessKey"]
   session_token = credentials["SessionToken"]
   
   session = boto3.session.Session()
           
   sm_client = session.client('sagemaker', region_name='us-west-2', 
                              aws_access_key_id=access_key,
                               aws_secret_access_key=secret_key,
                               aws_session_token=session_token)
   
   # now you can call describe automl job created in account A 
   
   job_name = "test-job"
   response= sm_client.describe_auto_ml_job(AutoMLJobName=job_name)
   ```

1. **Otorgar permiso para que la cuenta de implementación** pueda acceder a los artefactos del modelo en la cuenta generadora.

   La cuenta de implementación solo necesita acceso a los artefactos del modelo en la cuenta generadora para la implementación. Se encuentran en el [S3 OutputPath](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html#sagemaker-Type-AutoMLOutputDataConfig-S3OutputPath) que se especificó en la llamada a la `CreateAutoMLJob` API original durante la generación del modelo.

   Para que la cuenta de implementación tenga acceso a los artefactos del modelo, elija una de las siguientes opciones:

   1. [Darle acceso](https://aws.amazon.com/premiumsupport/knowledge-center/cross-account-access-s3/) a la `ModelDataUrl` desde la cuenta generadora a la cuenta de implementación.

      Luego, otórguele a la cuenta de implementación el permiso necesario para que asuma el rol. Siga los [pasos de inferencia en tiempo real](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-deploy-models.html#autopilot-deploy-models-realtime) para la implementación. 

   1. [Copie los artefactos del modelo](https://aws.amazon.com/premiumsupport/knowledge-center/copy-s3-objects-account/) del [S3](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html#sagemaker-Type-AutoMLOutputDataConfig-S3OutputPath) original de la cuenta generadora OutputPath a la cuenta generadora.

      Para permitir el acceso a los artefactos del modelo, debe definir un modelo `best_candidate` y reasignar los contenedores del modelo a la nueva cuenta. 

      El siguiente ejemplo muestra cómo definir un modelo `best_candidate` y reasignar la `ModelDataUrl`.

      ```
      best_candidate = automl.describe_auto_ml_job()['BestCandidate']
      
      # reassigning ModelDataUrl for best_candidate containers below
      new_model_locations = ['new-container-1-ModelDataUrl', 'new-container-2-ModelDataUrl', 'new-container-3-ModelDataUrl']
      new_model_locations_index = 0
      for container in best_candidate['InferenceContainers']:
          container['ModelDataUrl'] = new_model_locations[new_model_locations_index++]
      ```

      Tras esta asignación de contenedores, siga los pasos de [Implemente mediante SageMaker APIs](#autopilot-deploy-models-api) para la implementación.

A fin de crear una carga mediante inferencias en tiempo real, consulte el cuaderno de ejemplo para [definir una carga de prueba](https://aws.amazon.com/getting-started/hands-on/machine-learning-tutorial-automatically-create-models). Para crear la carga a partir de un archivo CSV e invocar un punto de conexión, consulte la sección **Haga predicciones con su modelo** en [Cree un modelo de machine learning de inmediato](https://aws.amazon.com/getting-started/hands-on/create-machine-learning-model-automatically-sagemaker-autopilot/#autopilot-cr-room).

# Ejecución por lotes de trabajos de inferencia
<a name="autopilot-deploy-models-batch"></a>

La inferencia por lotes, también conocida como inferencia fuera de línea, genera predicciones de modelos a partir de un lote de observaciones. La inferencia por lotes es una buena opción para conjuntos de datos grandes o si no necesita una respuesta inmediata a una solicitud de predicción del modelo. Por el contrario, la inferencia en línea ([inferencia en tiempo real](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-deploy-models.html#autopilot-deploy-models-realtime)) genera predicciones en tiempo real. Puede realizar inferencias por lotes a partir de un modelo de piloto automático mediante el [SDK de SageMaker Python](https://sagemaker.readthedocs.io/en/stable/), la interfaz de usuario (UI) del piloto automático, el SDK [AWS para Python (boto3) o ()](https://aws.amazon.com/sdk-for-python/). AWS Command Line Interface [AWS CLI](https://docs.aws.amazon.com/cli/)

En las siguientes pestañas se muestran tres opciones para implementar el modelo: usar APIs la interfaz de usuario de Autopilot o implementarlo desde diferentes cuentas. APIs En estas instrucciones, se da por sentado que ya ha creado un modelo con Piloto automático. Si no dispone de un modelo, consulte [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md). Para ver ejemplos de cada opción, abra cada pestaña.

## Implementar un modelo con la interfaz de usuario de Piloto automático
<a name="autopilot-deploy-models-batch-ui"></a>

La interfaz de usuario de Piloto automático contiene útiles menús desplegables, botones, información sobre herramientas, etc. que le guiarán por la implementación del modelo.

Los siguientes pasos muestran cómo implementar un modelo de un experimento de Piloto automático para predicciones por lotes. 

1. Inicia sesión en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)y selecciona **Studio** en el panel de navegación.

1. En el panel de navegación izquierdo, seleccione **Studio**.

1. En **Introducción**, seleccione el dominio en el que quiera iniciar la aplicación de Studio. Si su perfil de usuario solo pertenece a un dominio, no verá la opción para seleccionar un dominio.

1. Seleccione el perfil de usuario para el que desee iniciar la aplicación de Studio Classic. Si no hay ningún perfil de usuario en el dominio, seleccione **Crear perfil de usuario**. Para obtener más información, consulte [Adición de perfiles de usuario](https://docs.aws.amazon.com/sagemaker/latest/dg/domain-user-profile-add.html).

1. Seleccione **Lanzar Studio**. Si el perfil de usuario pertenece a un espacio compartido, elija **Abrir espacios**. 

1. Cuando se abra la consola de SageMaker Studio Classic, pulse el botón **Iniciar SageMaker Studio**.

1. Seleccione **AutoML** en el panel de navegación izquierdo.

1. En **Nombre**, seleccione el experimento de Piloto automático correspondiente al modelo que desee implementar. Se abrirá una nueva pestaña **TRABAJO DE PILOTO AUTOMÁTICO**.

1. En la sección **Nombre del modelo**, seleccione el modelo que desee eliminar.

1. Elija **Deploy model (Implementar modelo)**. Se abrirá una nueva pestaña.

1. Seleccione **Hacer predicciones por lotes** en la parte superior de la página.

1. En **Configuración del trabajo de transformación por lotes**, introduzca el **Tipo de instancia**, el **Recuento de instancias** y otros datos opcionales.

1. En la sección **Configuración de datos de entrada**, abra el menú desplegable. 

   1. Para el **tipo de datos S3**, elija **ManifestFile**o **S3Prefix**.

   1. **Para el **tipo Split**, elija **Line**, **Recordio **TFRecord****o Ninguno.**

   1. En **Compresión**, elija **Gzip** o **Ninguno**. 

1. En **Ubicación de S3**, introduzca la ubicación del bucket de Amazon S3 de los datos de entrada y otros datos opcionales.

1. En **Configuración de datos de salida**, introduzca el bucket de S3 para los datos de salida y elija cómo [ensamblar la salida](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformOutput.html#sagemaker-Type-TransformOutput-AssembleWith) de su trabajo. 

   1. En **Configuración adicional (opcional)**, puede introducir un tipo de MIME y una **Clave de cifrado de S3**.

1. Para el **filtrado de entrada/salida y las uniones de datos (opcional)**, introduzca una JSONpath expresión para filtrar los datos de entrada, unir los datos de origen de entrada con los datos de salida e introducir una JSONpath expresión para filtrar los datos de salida. 

   1. [Para ver ejemplos de cada tipo de filtro, consulta la API. DataProcessing ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DataProcessing.html#sagemaker-Type-DataProcessing-InputFilter)

1. Para realizar predicciones por lotes en su conjunto de datos de entrada, seleccione **Crear trabajo de transformación por lotes**. Aparecerá una nueva pestaña **Trabajos de transformación por lotes**.

1. En la pestaña **Trabajos de transformación por lotes**, busque el nombre de su trabajo en la sección **Estado**. A continuación, compruebe el progreso del trabajo. 

## Implemente mediante SageMaker APIs
<a name="autopilot-deploy-models-batch-steps"></a>

Para utilizarla SageMaker APIs para la inferencia por lotes, hay tres pasos:

1. **Obtener las definiciones de candidatos** 

   Las definiciones candidatas de se [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)utilizan para crear un modelo de SageMaker IA. 

   El siguiente ejemplo muestra cómo utilizar la [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)API para obtener definiciones de candidatos para el mejor modelo candidato. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

   Usa la [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para enumerar todos los candidatos. Observe el siguiente comando AWS CLI como ejemplo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Cree un modelo de SageMaker IA**

   Para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API, utilice las definiciones de contenedor de los pasos anteriores. Observe el siguiente comando AWS CLI como ejemplo.

   ```
   aws sagemaker create-model --model-name '<your-custom-model-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Cree un trabajo de transformación de SageMaker IA** 

   En el siguiente ejemplo, se crea un trabajo de transformación de la SageMaker IA con la [CreateTransformJob](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-transform-job.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker create-transform-job --transform-job-name '<your-custom-transform-job-name>' --model-name '<your-custom-model-name-from-last-step>'\
   --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix", 
                   "S3Uri": "<your-input-data>" 
               }
           },
           "ContentType": "text/csv",
           "SplitType": "Line"
       }'\
   --transform-output '{
           "S3OutputPath": "<your-output-path>",
           "AssembleWith": "Line" 
       }'\
   --transform-resources '{
           "InstanceType": "<instance-type>", 
           "InstanceCount": 1
       }' --region '<region>'
   ```

Comprueba el progreso de tu trabajo de transformación mediante la [DescribeTransformJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTransformJob.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

```
aws sagemaker describe-transform-job --transform-job-name '<your-custom-transform-job-name>' --region <region>
```

Una vez finalizado el trabajo, el resultado previsto estará disponible en `<your-output-path>`. 

El nombre de archivo de salida tiene el siguiente formato: `<input_data_file_name>.out`. Por ejemplo, si el archivo de entrada es `text_x.csv`, el nombre de la salida será `text_x.csv.out`.

Las siguientes pestañas muestran ejemplos de código para el SDK de SageMaker Python, el AWS SDK para Python (boto3) y el. AWS CLI

------
#### [ SageMaker Python SDK ]

En el siguiente ejemplo, se utiliza el **[SDK de SageMaker Python](https://sagemaker.readthedocs.io/en/stable/overview.html)** para realizar predicciones por lotes.

```
from sagemaker import AutoML

sagemaker_session= sagemaker.session.Session()

job_name = 'test-auto-ml-job' # your autopilot job name
automl = AutoML.attach(auto_ml_job_name=job_name)
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

# call DescribeAutoMLJob API to get the best candidate definition
best_candidate = automl.describe_auto_ml_job()['BestCandidate']
best_candidate_name = best_candidate['CandidateName']

# create model
model = automl.create_model(name=best_candidate_name, 
               candidate=best_candidate)

# create transformer
transformer = model.transformer(instance_count=1, 
    instance_type='ml.m5.2xlarge',
    assemble_with='Line',
    output_path=output_path)

# do batch transform
transformer.transform(data=input_data,
                      split_type='Line',
                       content_type='text/csv',
                       wait=True)
```

------
#### [ AWS SDK for Python (boto3) ]

 El siguiente ejemplo usa el **SDK de AWS para Python (boto3)** a fin de hacer predicciones por lotes.

```
import sagemaker 
import boto3

session = sagemaker.session.Session()

sm_client = boto3.client('sagemaker', region_name='us-west-2')
role = 'arn:aws:iam::1234567890:role/sagemaker-execution-role'
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName=job_name)['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

# create model
reponse = sm_client.create_model(
    ModelName = best_candidate_name,
    ExecutionRoleArn = role,
    Containers = best_candidate_containers 
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName=f'{best_candidate_name}-transform-job',
    ModelName=model_name,
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/csv",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m5.2xlarge',
        'InstanceCount': 1,
    },
)
```

El trabajo de inferencia por lotes devuelve una respuesta con el siguiente formato.

```
{'TransformJobArn': 'arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-transform-job',
 'ResponseMetadata': {'RequestId': '659f97fc-28c4-440b-b957-a49733f7c2f2',
  'HTTPStatusCode': 200,
  'HTTPHeaders': {'x-amzn-requestid': '659f97fc-28c4-440b-b957-a49733f7c2f2',
   'content-type': 'application/x-amz-json-1.1',
   'content-length': '96',
   'date': 'Thu, 11 Aug 2022 22:23:49 GMT'},
  'RetryAttempts': 0}}
```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenga las definiciones de candidatos** con el siguiente ejemplo de código.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Cree el modelo** con el siguiente ejemplo de código.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/tuning/flicdf10v2-dpp0-xgb/test-job1E9-244-7490a1c0/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", 
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code" 
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \
   --region 'us-west-2'
   ```

1. **Cree el trabajo de transformación** con el siguiente ejemplo de código.

   ```
   aws sagemaker create-transform-job --transform-job-name 'test-tranform-job'\
    --model-name 'test-sagemaker-model'\
   --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "SplitType": "Line"
       }'\
   --transform-output '{
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line"
       }'\
   --transform-resources '{
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       }'\
   --region 'us-west-2'
   ```

1. **Cree el progreso del trabajo de transformación** con el siguiente ejemplo de código. 

   ```
   aws sagemaker describe-transform-job --transform-job-name  'test-tranform-job' --region us-west-2
   ```

   Lo que sigue es la respuesta del trabajo de transformación.

   ```
   {
       "TransformJobName": "test-tranform-job",
       "TransformJobArn": "arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-tranform-job",
       "TransformJobStatus": "InProgress",
       "ModelName": "test-model",
       "TransformInput": {
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "CompressionType": "None",
           "SplitType": "Line"
       },
       "TransformOutput": {
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line",
           "KmsKeyId": ""
       },
       "TransformResources": {
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       },
       "CreationTime": 1662495635.679,
       "TransformStartTime": 1662495847.496,
       "DataProcessing": {
           "InputFilter": "$",
           "OutputFilter": "$",
           "JoinSource": "None"
       }
   }
   ```

   Después de que `TransformJobStatus` cambie a `Completed`, puede comprobar el resultado de la inferencia en `S3OutputPath`.

------

## Implementar modelos desde diferentes cuentas
<a name="autopilot-deploy-models-batch-across-accounts"></a>

Para crear un trabajo de inferencia por lotes en una cuenta diferente a la cuenta en la que se generó el modelo, siga las instrucciones en [Implementar modelos desde diferentes cuentas](autopilot-deploy-models-realtime.md#autopilot-deploy-models-realtime-across-accounts). A continuación, puede crear modelos y transformar trabajos siguiendo los [Implemente mediante SageMaker APIs](#autopilot-deploy-models-batch-steps).

# Ver detalles del modelo
<a name="autopilot-models-details"></a>

Piloto automático genera información sobre los modelos candidatos que puede obtener. Esta información incluye lo siguiente:
+ Un gráfico de los valores SHAP agregados que indican la importancia de cada característica. Esto ayuda a explicar las predicciones de los modelos.
+ Las estadísticas resumidas de varias métricas de entrenamiento y validación, incluida la métrica objetivo.
+ Una lista de los hiperparámetros utilizados para entrenar y ajustar el modelo.

Para ver estos detalles del modelo después de ejecutar un trabajo de Piloto automático, siga estos pasos:

1. Seleccione el icono **Inicio** (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/icons/house.png)) en el panel de navegación izquierdo para ver el menú de navegación de nivel superior de **Amazon SageMaker Studio Classic**.

1. Seleccione la tarjeta **AutoML** en el área de trabajo principal. Se abrirá una nueva pestaña **Piloto automático**.

1. En la sección **Nombre**, seleccione el trabajo de Piloto automático que contenga los detalles que desee examinar. Se abrirá una nueva pestaña **Trabajo de Piloto automático**.

1. El panel **Trabajos de Piloto automático** muestra los valores de las métricas, incluida la métrica **objetivo**, de cada modelo bajo el **Nombre del modelo**. El **mejor modelo** aparece en la parte superior de la lista, bajo el **Nombre del modelo**, y también aparece resaltado en la pestaña **Modelos**.

   1. Para revisar la información sobre el modelo, seleccione el modelo que le interese y **Ver detalles del modelo**. Se abrirá una nueva pestaña **Detalles del modelo**.

1. La pestaña **Detalles del modelo** se divide en cuatro subsecciones.

   1. La parte superior de la pestaña **Explicabilidad** contiene un gráfico de los valores SHAP agregados, con la importancia de cada característica. A continuación, se muestran las métricas y los valores de hiperparámetros de este modelo. 

   1. La pestaña **Rendimiento** contiene métricas, estadísticas y una matriz de confusión. 

   1. La pestaña **Artefactos** contiene información sobre las entradas, las salidas y los resultados intermedios del modelo.

   1. La pestaña **Red** resume las opciones de aislamiento y cifrado de la red.
**nota**  
La importancia de las características y la información de la pestaña **Rendimiento** solo se genera para el **mejor modelo**.

   Para obtener más información sobre cómo los valores SHAP ayudan a explicar las predicciones en función de la importancia de las características, consulte el documento técnico [Understanding the model explainability](https://pages.awscloud.com/rs/112-TZM-766/images/Amazon.AI.Fairness.and.Explainability.Whitepaper.pdf). También hay información adicional disponible en el [Explicabilidad del modelo](clarify-model-explainability.md) tema de la Guía para desarrolladores de SageMaker IA. 

# Visualización de un informe de rendimiento sobre el modelo de Piloto automático
<a name="autopilot-model-insights"></a>

Un informe de calidad de un modelo de Amazon SageMaker AI (también denominado informe de rendimiento) proporciona información valiosa e información de calidad para el mejor candidato de modelo generado por un trabajo de AutoML. Incluye información sobre los detalles del trabajo, el tipo de problema del modelo, la función objetivo y otros datos relacionados con el tipo de problema. Esta guía muestra cómo ver las métricas de rendimiento de Amazon SageMaker Autopilot de forma gráfica o ver las métricas como datos sin procesar en un archivo JSON.

Por ejemplo, en el caso de los problemas de clasificación, el informe de calidad del modelo incluye lo siguiente:
+ Matriz de confusión
+ El área bajo la curva característica de funcionamiento del receptor (AUC).
+ Información para entender los falsos positivos y los falsos negativos
+ Compensaciones entre positivos verdaderos y falsos positivos
+ Compensación entre precisión y exhaustividad

Piloto automático también proporciona métricas de rendimiento para todos los modelos candidatos. Estas métricas se calculan con todos los datos de entrenamiento y se utilizan para estimar el rendimiento del modelo. El área de trabajo principal incluye estas métricas de forma predeterminada. El tipo de métrica viene determinado por el tipo de problema que se está abordando.

Consulta la [documentación de referencia de la SageMaker API de Amazon](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) para ver la lista de métricas disponibles compatibles con Autopilot.

Puede ordenar los modelos candidatos con la métrica correspondiente para ayudarle a seleccionar e implementar el modelo que mejor se adapte a las necesidades de su empresa. Para ver las definiciones de estas métricas, consulte el tema [Métricas de piloto automático](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics).

Para ver un informe de rendimiento de un trabajo de Piloto automático, siga estos pasos:

1. Seleccione el icono **Inicio** (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/icons/house.png)) en el panel de navegación izquierdo para ver el menú de navegación de nivel superior de **Amazon SageMaker Studio Classic**.

1. Seleccione la tarjeta **AutoML** en el área de trabajo principal. Se abrirá una nueva pestaña **Piloto automático**.

1. En la sección **Nombre**, seleccione el trabajo de Piloto automático que contenga los detalles que desee examinar. Se abrirá una nueva pestaña **Trabajo de Piloto automático**.

1. El panel **Trabajos de Piloto automático** muestra los valores de las métricas, incluida la métrica **objetivo**, de cada modelo bajo el **Nombre del modelo**. El **mejor modelo** aparece en la parte superior de la lista, bajo el **Nombre del modelo**, y aparece resaltado en la pestaña **Modelos**.

   1. Para revisar la información sobre el modelo, seleccione el modelo que le interese y **Ver detalles del modelo**. Se abrirá una nueva pestaña **Detalles del modelo**.

1. Seleccione la pestaña **Rendimiento**, entre las pestañas **Explicabilidad** y **Artefactos**.

   1. En la sección superior derecha de la pestaña, selecciona la flecha hacia abajo, en el botón **Descargar informes de rendimiento**. 

   1. La flecha hacia abajo ofrece dos opciones para ver las métricas de rendimiento en Piloto automático:

      1. Puede descargar un PDF del informe de rendimiento para ver las métricas de forma gráfica.

      1. Puede ver las métricas como datos sin procesar y descargarlos como un archivo JSON.

Para obtener instrucciones sobre cómo crear y ejecutar un trabajo de AutoML en SageMaker Studio Classic, consulte. [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md) 

El informe de rendimiento consta de dos secciones. La primera sección contiene detalles sobre el trabajo de Piloto automático generado por el modelo. La segunda sección contiene un informe de calidad del modelo.

## Detalles del trabajo en Piloto automático
<a name="autopilot-model-insights-details-and-metrics-table"></a>

Esta primera sección del informe proporciona información general sobre el trabajo de Piloto automático que ha generado el modelo. En estos detalles del trabajo, se incluye la siguiente información:
+ Nombre del candidato en Piloto automático
+ Nombre del trabajo en Piloto automático
+ Tipo de problema
+ Métrica objetiva
+ Dirección de optimización

## Informe de calidad del modelo
<a name="autopilot-model-quality-report"></a>

La información sobre la calidad del modelo se genera mediante la información sobre modelos de Piloto automático. El contenido del informe que se genera depende del tipo de problema que se aborde: regresión, clasificación binaria o clasificación multiclase. El informe especifica el número de filas que se incluyeron en el conjunto de datos de evaluación y el momento en que se realizó la evaluación.

### Tablas de métricas
<a name="autopilot-model-quality-report-metrics"></a>

La primera parte del informe de calidad del modelo contiene tablas de métricas. Son las adecuadas para el tipo de problema que abordó el modelo.

La siguiente imagen es un ejemplo de una tabla de métricas que Piloto automático genera para un problema de regresión. Muestra el nombre, el valor y la desviación estándar de la métrica.

![\[Ejemplo de informe de métricas de regresión de Amazon SageMaker Autopilot Model Insights.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-regression-metrics.png)


La siguiente imagen es un ejemplo de una tabla de métricas generada por Piloto automático para un problema de clasificación multiclase. Muestra el nombre, el valor y la desviación estándar de la métrica.

![\[Ejemplo de informe de métricas de clasificación multiclase de Amazon SageMaker Autopilot model Insights.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Información gráfica sobre el rendimiento del modelo
<a name="autopilot-model-quality-report-graphs"></a>

 La segunda parte del informe de calidad del modelo contiene información gráfica para ayudarle a evaluar el rendimiento del modelo. El contenido de esta sección depende del tipo de problema usado en la generación del modelo.

#### El área bajo la curva característica de funcionamiento del receptor
<a name="autopilot-model-insights-auc-roc"></a>

El área bajo la curva característica de funcionamiento del receptor representa la compensación entre las tasas de positivos verdaderos y falsos positivos. Es una métrica de precisión estándar del sector que se utiliza para los modelos de clasificación binaria. El AUC mide la capacidad del modelo de predecir una mayor puntuación para ejemplos positivos en comparación con ejemplos negativos. El AUC proporciona una medida agregada del rendimiento del modelo en todos los umbrales de clasificación posibles.

La métrica AUC devuelve un valor decimal comprendido entre 0 y 1. Los valores de AUC próximos a 1 indican un modelo de machine learning muy preciso. Los valores cercanos a 0,5 indican un modelo de ML que no es mejor que hacer una suposición al azar. Los valores de AUC cercanos a 0 indican que el modelo ha aprendido los patrones correctos, pero está realizando las predicciones más imprecisas posibles. Los valores cercanos a cero pueden indicar un problema con los datos. Para obtener más información sobre la métrica AUC, vaya al artículo [Curva ROC](https://en.wikipedia.org/wiki/Receiver_operating_characteristic) en Wikipedia.

Lo que sigue es un ejemplo de un gráfico de área bajo la curva característica de funcionamiento del receptor para evaluar las predicciones realizadas mediante un modelo de clasificación binaria. La línea fina discontinua representa el área bajo la curva característica de funcionamiento del receptor que obtendría un modelo que clasifique las no-better-than-random suposiciones, con una puntuación de AUC de 0,5. Las curvas de los modelos de clasificación más precisos se sitúan por encima de esta línea de base aleatoria, en la que la tasa de positivos verdaderos supera a la tasa de falsos positivos. El área situada debajo de la curva característica de funcionamiento del receptor, que representa el rendimiento del modelo de clasificación binaria, es la línea continua más gruesa. 

![\[Ejemplo de curva característica de funcionamiento del área del SageMaker piloto automático de Amazon debajo del receptor.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-receiver-operating-characteristic-curve.png)


Los componentes del gráfico de **tasa de falsos positivos** (FPR) y **tasa de positivos reales** (TPR) se definen de la siguiente manera.
+ Predicciones correctas
  + **Positivo real** (TP): el valor pronosticado es 1 y el valor real es 1.
  + **Negativo real** (TN): el valor pronosticado es 0 y el valor real es 0.
+ Predicciones erróneas
  + **Positivo falso** (FP): el valor pronosticado es 1, pero el valor real es 0.
  + **Falso negativo** (FN): el valor pronosticado es 0, pero el valor real es 1.

La **tasa de falsos positivos** (FPR) mide la fracción de negativos verdaderos (TN) que se predijeron falsamente como positivos (FP), sobre la suma de FP y TN. El rango va de 0 a 1. Un valor bajo indica una mayor exactitud predictiva. 
+ FPR = FP/(FP\$1TN)

La **tasa de positivos reales** (TPR) mide la fracción de positivos reales que se predijeron correctamente como positivos (TP), sobre la suma de TP y falsos negativos (FN). El rango va de 0 a 1. Un valor mayor indica mejor exactitud predictiva.
+ TPR = TP/(TP\$1FN)

#### Matriz de confusión
<a name="autopilot-model-insights-confusion-matrix"></a>

Una matriz de confusión es una forma de visualizar la precisión de las predicciones realizadas por un modelo para la clasificación binaria y multiclase de diferentes problemas. La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El número y el porcentaje de predicciones correctas e incorrectas para las etiquetas reales
+ El número y el porcentaje de predicciones precisas en la diagonal desde la esquina superior izquierda hasta la esquina inferior derecha
+ El número y el porcentaje de predicciones incorrectas en la diagonal desde la esquina superior derecha hasta la esquina inferior izquierda

Las predicciones incorrectas en una matriz de confusión son los valores de confusión.

El diagrama siguiente muestra un ejemplo de matriz de confusión para un problema de clasificación binaria. Contiene la siguiente información:
+ El eje vertical está dividido en dos filas que contienen etiquetas reales verdaderas y falsas.
+ El eje horizontal se divide en dos columnas que contienen las etiquetas verdadero y falso que predijo el modelo.
+ La barra de colores asigna un tono más oscuro a un número mayor de muestras para indicar visualmente el número de valores que se clasificaron en cada categoría.

En este ejemplo, el modelo predijo correctamente 2817 valores falsos reales y 353 valores verdaderos reales correctamente. El modelo predijo incorrectamente que 130 valores verdaderos eran falsos y que 33 valores falsos eran verdaderos. La diferencia de tono indica que el conjunto de datos no está equilibrado. El desequilibrio se debe a que hay muchas más etiquetas falsas reales que etiquetas verdaderas.

![\[Ejemplo de matriz de confusión binaria de Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-binary.png)


El diagrama siguiente muestra un ejemplo de matriz de confusión para un problema de clasificación multiclase. La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El eje vertical se divide en tres filas que contienen tres etiquetas reales diferentes.
+ El eje horizontal se divide en tres columnas que contienen las etiquetas que predijo el modelo.
+ La barra de colores asigna un tono más oscuro a un número mayor de muestras para indicar visualmente el número de valores que se clasificaron en cada categoría.

En el siguiente ejemplo, el modelo predijo correctamente 354 valores reales para la etiqueta **f**, 1094 valores para la etiqueta **i** y 852 valores para la etiqueta **m**. La diferencia en el tono indica que el conjunto de datos no está equilibrado, ya que hay muchas más etiquetas para el valor **i** que para **f** o **m**. 

![\[Ejemplo de matriz de confusión multiclase de Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


La matriz de confusión del informe de calidad del modelo proporcionado puede incluir un máximo de 15 etiquetas para los tipos de problemas de clasificación multiclase. Si una fila correspondiente a una etiqueta muestra un valor `Nan`, significa que el conjunto de datos de validación utilizado para comprobar las predicciones del modelo no contiene datos con esa etiqueta.

#### Curva de ganancia
<a name="autopilot-model-insights-precision-gain-curve"></a>

En la clasificación binaria, una curva de ganancia predice el beneficio acumulado de usar un porcentaje del conjunto de datos para encontrar una etiqueta positiva. El valor de ganancia se calcula durante el entrenamiento dividiendo el número acumulado de observaciones positivas entre el número total de observaciones positivas de los datos, en cada decil. Si el modelo de clasificación creado durante el entrenamiento es representativo de los datos no observados, puede usar la curva de ganancia para predecir el porcentaje de datos en el que debe concentrarse para obtener un porcentaje de etiquetas positivas. Cuanto mayor sea el porcentaje del conjunto de datos utilizado, mayor será el porcentaje de etiquetas positivas encontradas.

En el siguiente gráfico de ejemplo, la curva de ganancia es la línea con pendiente variable. La línea recta es el porcentaje de etiquetas positivas que se encuentran al seleccionar un porcentaje de datos del conjunto de datos de forma aleatoria. Al segmentar el 20 % del conjunto de datos, lo normal sería encontrar más del 40 % de las etiquetas positivas. Por ejemplo, podría usar una curva de ganancia para determinar en qué concentrarse en una campaña de marketing. Con nuestro ejemplo de curva de ganancia, si el 83 % de las personas de un vecindario compraran galletas, le enviaría un anuncio a aproximadamente el 60 % del vecindario.

![\[Ejemplo de curva de ganancia de Amazon SageMaker Autopilot con porcentaje y valor de ganancia.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-gain-curve.png)


#### Curva de elevación
<a name="autopilot-model-insights-lift-curve"></a>

En la clasificación binaria, la curva de elevación ilustra la elevación que supone utilizar un modelo entrenado para predecir la probabilidad de encontrar una etiqueta positiva en comparación con una suposición aleatoria. El valor de elevación se calcula durante el entrenamiento utilizando la relación entre el porcentaje de ganancia y la proporción de etiquetas positivas en cada decil. Si el modelo creado durante el entrenamiento es representativo de los datos no observados, use la curva de elevación para predecir la ventaja de usar el modelo en lugar de hacer predicciones aleatorias.

En el siguiente gráfico de ejemplo, la curva de elevación es la línea con pendiente variable. La línea recta es la curva de elevación asociada a la selección aleatoria del porcentaje correspondiente del conjunto de datos. Al seleccionar aleatoriamente el 40 % del conjunto de datos con las etiquetas de clasificación de su modelo, lo normal sería encontrar aproximadamente 1,7 veces el número de etiquetas positivas que habría encontrado al seleccionar aleatoriamente el 40 % de los datos no observados.

![\[Ejemplo de curva de elevación de Amazon SageMaker Autopilot con porcentaje y valor de elevación.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-lift-curve.png)


#### Curva de precisión/exhaustividad
<a name="autopilot-model-insights-precision-recall-curve"></a>

La curva de precisión/exhaustividad representa la compensación entre precisión y exhaustividad en problemas de clasificación binaria. 

La **precisión** mide la fracción de positivos reales que se predicen como positivos (TP) de entre todas las predicciones positivas (TP y falsos positivos). El rango va de 0 a 1. Un valor mayor indica mejor exactitud predictiva.
+ Precisión = TP/(TP\$1FP)

La **exhaustividad** mide la fracción de positivos reales (TP) que se predicen como positivos de entre todas las predicciones positivas reales (TP y falsos negativos). También se conoce como sensibilidad o tasa positiva verdadera. El rango va de 0 a 1. Un valor mayor indica una mejor detección de los valores positivos de la muestra. 
+ Exhaustividad = TP/(TP\$1FN)

El objetivo de un problema de clasificación es etiquetar correctamente tantos elementos como sea posible. Un sistema con un nivel alto de exhaustividad, pero con un nivel bajo de precisión, arroja un alto porcentaje de falsos positivos. 

El siguiente gráfico muestra un filtro de spam que marca todos los correos electrónicos como spam. Tiene un alto nivel de exhaustividad, pero una precisión baja, ya que la exhaustividad no mide los falsos positivos. 

Otórguele más importancia a la exhaustividad que a la precisión si el problema que está abordando tiene una penalización baja por declarar falsos positivos, pero una penalización alta por omitir positivos verdaderos. Por ejemplo, la detección de una colisión inminente en un vehículo autónomo.

![\[Ejemplo de Piloto automático con un nivel alto de exhaustividad y un nivel bajo de precisión; todas las muestras se modelan como positivas.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-high-recall-low-precision.PNG)


Por otro lado, un sistema con un nivel alto de precisión, pero con un nivel bajo de exhaustividad, arroja un alto porcentaje de falsos negativos. Un filtro de spam que marca todos los correos electrónicos como deseables (no spam) tiene una alta precisión, pero un nivel bajo de exhaustividad, ya que la precisión no mide los falsos negativos. 

Otórguele más importancia a la precisión que a la exhaustividad si el problema que está abordando tiene una penalización baja por declarar falsos negativos, pero una penalización alta por omitir negativos verdaderos. Por ejemplo, marcar un filtro sospechoso para una auditoría fiscal.

En el siguiente gráfico se muestra un filtro de spam con un nivel alto de precisión, pero un nivel bajo de exhaustividad, ya que la precisión no mide los falsos negativos. 

![\[Ejemplo de Piloto automático con un nivel alto de precisión y un nivel bajo de exhaustividad; todas las muestras se modelan como negativas.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-high-precision-low-recall.PNG)


Un modelo que hace predicciones con un nivel alto de precisión y exhaustividad genera una gran cantidad de resultados correctamente etiquetados. Para obtener más información, consulte el artículo [Precisión y exhaustividad](https://en.wikipedia.org/wiki/Precision_and_recall) en Wikipedia.

#### Área bajo la curva de precisión/exhaustividad (AUPRC)
<a name="autopilot-model-insights-area-under-precision-recall-curve"></a>

Para problemas de clasificación binaria, Amazon SageMaker Autopilot incluye un gráfico del área bajo la curva de recuperación de precisión (AUPRC). La métrica AUPRC proporciona una medida agregada del rendimiento del modelo en todos los umbrales de clasificación posibles, y utiliza tanto la precisión como la exhaustividad. La AUPRC no tiene en cuenta el número de negativos verdaderos. Por lo tanto, puede resultar útil evaluar el rendimiento del modelo en los casos en que haya una gran cantidad de negativos verdaderos en los datos. Por ejemplo, para modelar un gen que contiene una mutación poco frecuente.

El siguiente gráfico es un ejemplo de un gráfico AUPRC. La precisión, en su nivel más alto, es 1 y la exhaustividad es 0. En la esquina inferior derecha del gráfico, la exhaustividad está en su valor más alto (1) y la precisión es 0. Entre estos dos puntos, la curva AUPRC ilustra la compensación entre precisión y exhaustividad en diferentes umbrales.

![\[La curva de precisión/exhaustividad representa la compensación entre precisión y exhaustividad en diferentes umbrales.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-binary-precision-recall.png)


#### Comparación entre la gráfica real y la prevista
<a name="autopilot-model-insights-actual-vs-predicted-plot"></a>

La comparación entre la gráfica real y la prevista muestra la diferencia entre los valores reales y previstos del modelo. En el siguiente gráfico de ejemplo, la línea continua representa la mejor opción. Si el modelo tuviera una precisión del 100 %, cada punto previsto sería igual a su punto real correspondiente y estaría situado en esta línea de la mejor opción. La distancia desde la línea de mejor opción es una indicación visual del error del modelo. Cuanto mayor sea la distancia desde la línea de mejor opción, mayor será el error del modelo.

![\[Ejemplo con una línea de mejor opción, con la diferencia entre la gráfica real y la prevista y el error del modelo\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-actual-vs-predicted-plot.png)


#### Gráfica residual estandarizada
<a name="autopilot-model-insights-standardized-residual"></a>

Una gráfica residual estandarizada incorpora los siguientes términos estadísticos:

**`residual`**  
Un residual (sin procesar) muestra la diferencia entre los valores reales y los pronosticados por el modelo. Cuanto mayor sea la diferencia, mayor será el valor residual.

**`standard deviation`**  
La desviación estándar es una medida de cómo varían los valores con respecto a un valor promedio. Una desviación estándar alta indica que muchos valores son muy diferentes a su valor promedio. Una desviación estándar baja indica que muchos valores son similares a su valor promedio.

**`standardized residual`**  
Un valor residual estandarizado divide los residuales sin procesar por su desviación estándar. Los residuales estandarizados tienen unidades de desviación estándar y son útiles para identificar valores atípicos en los datos, independientemente de la diferencia de escala de los residuales sin procesar. Si un residual estandarizado es mucho más pequeño o más grande que los demás residuales estandarizados, esto indica que el modelo no se ajusta bien a estas observaciones.

La gráfica de residuales estandarizada mide la intensidad de la diferencia entre los valores observados y esperados. El valor previsto real se muestra en el eje x. Un punto con un valor superior a un valor absoluto de 3 suele considerarse un valor atípico.

El siguiente gráfico de ejemplo muestra que una gran cantidad de residuales estandarizados se agrupan alrededor de 0 en el eje horizontal. Los valores cercanos a cero indican que el modelo se ajusta bien a estos puntos. El modelo no predice bien los puntos hacia la parte superior e inferior de la gráfica.

![\[Ejemplo de gráfica de residuos estandarizada de Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-standardized-residual.png)


#### Histograma residual
<a name="autopilot-model-insights-residual-histogram"></a>

Un histograma residual estandarizado incorpora los siguientes términos estadísticos:

**`residual`**  
Un residual (sin procesar) muestra la diferencia entre los valores reales y los pronosticados por el modelo. Cuanto mayor sea la diferencia, mayor será el valor residual.

**`standard deviation`**  
La desviación estándar es una medida de cuánto varían los valores con respecto a un valor promedio. Una desviación estándar alta indica que muchos valores son muy diferentes a su valor promedio. Una desviación estándar baja indica que muchos valores son similares a su valor promedio.

**`standardized residual`**  
Un valor residual estandarizado divide los residuales sin procesar por su desviación estándar. Los residuales estandarizados tienen unidades de desviación estándar. Son útiles para identificar valores atípicos en los datos, independientemente de la diferencia de escala de los residuales sin procesar. Si un residual estandarizado es mucho más pequeño o más grande que los demás residuales estandarizados, el modelo no se ajusta bien a estas observaciones.

**`histogram`**  
Un histograma es un gráfico que muestra la frecuencia con la que ocurre un valor.

El histograma residual muestra la distribución de los valores residuales estandarizados. Un histograma distribuido en forma de campana y centrado en el cero indica que el modelo no subestima ni sobreestima sistemáticamente un rango determinado de valores objetivo.

En el siguiente gráfico, los valores residuales estandarizados indican que el modelo se ajusta bien a los datos. Si el gráfico mostrara valores muy alejados del valor central, eso indicaría que esos valores no se ajustan bien al modelo.

![\[Un valor residual estandarizado cercano a cero, lo que indica que el modelo se ajusta bien a los datos.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-residual-histogram.png)


# Cuadernos de Piloto automático generados para administrar las tareas de AutoML
<a name="autopilot-automate-model-development-notebook-output"></a>

Amazon SageMaker Autopilot gestiona las tareas clave de un proceso de aprendizaje automático (AutoML) mediante un trabajo de AutoML. El trabajo de AutoML crea tres informes basados en cuadernos que describen el plan que sigue Piloto automático para generar modelos candidatos.

Un modelo candidato consiste en un par (canalización, algoritmo). En primer lugar, hay un cuaderno de **exploración de datos**, que describe lo que Piloto automático ha aprendido sobre los datos que usted ha suministrado. En segundo lugar, hay un cuaderno de **definición de candidatos**, que utiliza la información sobre los datos para generar candidatos. En tercer lugar, hay un informe con **información sobre el modelo**, que puede ayudar a detallar las características de rendimiento del mejor modelo en la clasificación de un experimento de Piloto automático.

**Topics**
+ [Informe de exploración de datos de Piloto automático](autopilot-data-exploration-report.md)
+ [Búsqueda y ejecución del cuaderno de definición de candidatos](autopilot-candidate-generation-notebook.md)

Puede ejecutar estos cuadernos en Amazon SageMaker AI o de forma local si ha instalado el [SDK de Amazon SageMaker Python](https://sagemaker.readthedocs.io/en/stable). Puede compartir las libretas como cualquier otra libreta de SageMaker Studio Classic. Los cuadernos están creados para que realices experimentos. Por ejemplo, puede editar los siguientes elementos en los blocs de notas:
+ Preprocesadores utilizados en los datos 
+ Número de ejecuciones de optimización de hiperparámetros (HPO) y su paralelismo
+ Algoritmos por probar
+ Tipos de instancia utilizados para los trabajos de HPO
+ Intervalos de hiperparámetros

Como método de aprendizaje, es recomendable hacer modificaciones en el cuaderno de definiciones de candidatos. Esta capacidad le permite entender cómo afectan a sus resultados las decisiones tomadas durante el proceso de machine learning. 

**nota**  
Al ejecutar los cuadernos en la instancia predeterminada, habrá un impacto en los costos básicos. Sin embargo, cuando ejecuta trabajos de HPO desde el cuaderno candidato, estos trabajos utilizan recursos de computación adicionales que generan costos adicionales. 

# Informe de exploración de datos de Piloto automático
<a name="autopilot-data-exploration-report"></a>

Amazon SageMaker Autopilot limpia y preprocesa el conjunto de datos automáticamente. Los datos de alta calidad mejoran la eficiencia del machine learning y generan modelos que permiten realizar predicciones más precisas. 

Algunos problemas relacionados con los conjuntos de datos proporcionados por los clientes no se pueden solucionar automáticamente sin contar con conocimientos sobre la materia. Los valores atípicos grandes en la columna objetivo para problemas de regresión, por ejemplo, pueden provocar predicciones subóptimas para los valores no atípicos. Es posible que sea necesario eliminar los valores atípicos según el objetivo del modelado. Si una columna objetivo se incluye por accidente como una de las características de entrada, el modelo final se validará bien, pero tendrá poco valor para futuras predicciones. 

Para ayudar a los clientes a descubrir este tipo de problemas, Piloto automático proporciona un informe de exploración de datos que contiene información sobre los posibles problemas con sus datos. El informe también sugiere cómo abordar los problemas.

En todos los trabajos de Piloto automático, se genera un cuaderno de exploración de datos con dicho informe. El informe se almacena en un bucket de Amazon S3 y se puede acceder a él desde su ruta de salida. La ruta del informe de exploración de datos suele seguir el siguiente patrón.

```
[s3 output path]/[name of the automl job]/sagemaker-automl-candidates/[name of processing job used for data analysis]/notebooks/SageMaker AIAutopilotDataExplorationNotebook.ipynb
```

La ubicación del cuaderno de exploración de datos se puede obtener de la API del piloto automático mediante la respuesta de la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)operación, que se almacena en. [DataExplorationNotebookLocation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html#sagemaker-Type-AutoMLJobArtifacts-DataExplorationNotebookLocation) 

Al ejecutar el piloto automático desde SageMaker Studio Classic, puede abrir el informe de exploración de datos siguiendo estos pasos:

1. Seleccione el icono ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/icons/house.png) de **inicio** en el *panel de navegación izquierdo* para ver el menú de navegación de nivel superior de **Amazon SageMaker Studio Classic**.

1. Seleccione la tarjeta **AutoML** en el área de trabajo principal. Se abrirá una nueva pestaña **Piloto automático**.

1. En la sección **Nombre**, seleccione el trabajo de Piloto automático que contiene el cuaderno de exploración de datos que desea examinar. Se abrirá una nueva pestaña **Trabajo de piloto automático**.

1. Seleccione **Abrir cuaderno de exploración de datos** en la sección superior derecha de la pestaña **Trabajo de piloto automático**.

El informe de exploración de datos se genera a partir de sus datos antes de que comience el proceso de entrenamiento. Esto le permite detener los trabajos de Piloto automático que podrían generar resultados irrelevantes. Del mismo modo, puede abordar cualquier problema o mejora en el conjunto de datos antes de volver a ejecutar Piloto automático. De esta forma, puede utilizar su experiencia para mejorar la calidad de los datos de forma manual y entrenar así al modelo con un conjunto de datos que esté más preparado.

El informe de datos solo contiene reducciones estáticas y se puede abrir en cualquier entorno de Jupyter. El cuaderno que contiene el informe se puede convertir a otros formatos, como PDF o HTML. Para obtener más información sobre las conversiones, consulte [Using the nbconvert script to convert Jupyter notebooks to other formats](https://nbconvert.readthedocs.io/en/latest/usage.html ).

**Topics**
+ [Resumen de conjunto de datos](#autopilot-data-exploration-report-dataset-summary)
+ [Análisis de objetivos](#autopilot-data-exploration-report-target-analysis)
+ [Ejemplo de datos](#autopilot-data-exploration-report-data-sample)
+ [Filas duplicadas](#autopilot-data-exploration-report-duplicate-rows)
+ [Correlaciones entre columnas](#autopilot-data-exploration-report-cross-column-correlations)
+ [Filas anómalas](#autopilot-data-exploration-report-cross-anomolous-rows)
+ [Valores que faltan, cardinalidad y estadísticas descriptivas](#autopilot-data-exploration-report-description-statistics-and-values)

## Resumen de conjunto de datos
<a name="autopilot-data-exploration-report-dataset-summary"></a>

Este **Resumen de conjunto de datos** proporciona estadísticas clave que caracterizan su conjunto de datos, como el número de filas, el número de columnas, el porcentaje de filas duplicadas y los valores objetivo que faltan. Su objetivo es proporcionarle una alerta rápida cuando haya algún problema con su conjunto de datos que Amazon SageMaker Autopilot haya detectado y que pueda requerir su intervención. La información se presenta como advertencias que se clasifican en gravedad “alta” o “baja”. La clasificación depende del nivel de confianza que existe en que el problema afectará negativamente al rendimiento del modelo.

Los datos de gravedad alta y baja aparecen en el resumen en forma de ventanas emergentes. Para la mayoría de los datos, se ofrecen recomendaciones sobre cómo confirmar que existe un problema con el conjunto de datos que requiere su atención. También hay propuestas sobre cómo resolver los problemas.

Piloto automático proporciona estadísticas adicionales sobre los valores objetivo que faltan o no son válidos en nuestro conjunto de datos, para ayudarle a detectar otros problemas que tal vez no se capten con información de gravedad alta. Un número inesperado de columnas de un tipo concreto podría indicar que es posible que algunas columnas que desee utilizar no estén incluidas en el conjunto de datos. También podría indicar que hubo un problema con la forma en que se prepararon o almacenaron los datos. Si se solucionan los problemas de datos detectados por Piloto automático, se puede mejorar el rendimiento de los modelos de machine learning basados en los datos. 

La información sobre gravedad alta se muestra en la sección de resumen y en otras secciones relevantes del informe. Por lo general, se proporcionan ejemplos de información de gravedad alta y baja según la sección del informe de datos.

## Análisis de objetivos
<a name="autopilot-data-exploration-report-target-analysis"></a>

En esta sección, se muestran varios datos de gravedad alta y baja relacionados con la distribución de los valores en la columna objetivo. Compruebe que la columna objetivo contenga los valores correctos. Los valores incorrectos en la columna objetivo probablemente den como resultado un modelo de machine learning que no sirva para el propósito comercial previsto. En esta sección, se incluyen varios datos de alta y baja gravedad. A continuación, se presentan varios ejemplos.
+ **Valores objetivo atípicos**: distribución objetivo asimétrica o sesgada para la regresión, como los lugares con una alta probabilidad de valores atípicos.
+ **Cardinalidad objetivo alta o baja**: número poco frecuente de etiquetas de clase o un gran número de clases únicas para la clasificación.

Tanto para los tipos de problemas de regresión como los de clasificación, aparecen valores no válidos, como el infinito numérico, `NaN` o un espacio vacío en la columna de destino. Según el tipo de problema, se presentan diferentes estadísticas del conjunto de datos. Una distribución de los valores de las columnas objetivo para un problema de regresión le permite verificar si la distribución es la que esperaba. 

La siguiente captura de pantalla muestra un informe de datos de Piloto automático, que incluye estadísticas como la media, la mediana, el mínimo, el máximo y el porcentaje de valores atípicos del conjunto de datos. La captura de pantalla también incluye un histograma que muestra la distribución de las etiquetas en la columna de destino. En el histograma, se muestran los **valores de la columna objetivo** en el eje horizontal y el **recuento** en el eje vertical. Un cuadro resalta la sección **Porcentaje de valores atípicos** de la captura de pantalla para indicar dónde aparece esta estadística.

![\[Informe de datos de Piloto automático sobre la distribución de los valores de la columna objetivo.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis.png)


Hay varias estadísticas sobre los valores objetivo y su distribución. Si alguno de los valores atípicos, valores no válidos o porcentajes faltantes es superior a cero, estos valores aparecen para que pueda investigar por qué sus datos contienen valores objetivo inutilizables. Algunos valores objetivo inutilizables aparecen resaltados como una advertencia de gravedad baja. 

En la siguiente captura de pantalla, se ha añadido accidentalmente un símbolo ` a la columna de destino, lo que impidió analizar el valor numérico del objetivo. Aparece el aviso **Datos de gravedad baja: “Valores objetivo no válidos”**. La advertencia de este ejemplo dice lo siguiente: “El 0,14 % de las etiquetas de la columna de destino no se ha podido convertir a valores numéricos. Los valores no numéricos más comunes son ["-3,8e-05","-9-05","-4,7e-05","-1,4999999999999999e-05","-4,3e-05"]. Esto suele indicar que hay problemas con la recopilación o el procesamiento de los datos. Amazon SageMaker Autopilot ignora todas las observaciones cuya etiqueta de destino no sea válida».

![\[Los datos de Piloto automático muestran una advertencia de gravedad baja sobre valores objetivo no válidos.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis-invalid-target-values.png)


Piloto automático también proporciona un histograma que muestra la distribución de las etiquetas para su clasificación. 

La siguiente captura de pantalla muestra un ejemplo de estadísticas proporcionadas para la columna de destino, incluido el número de clases y los valores faltantes o no válidos. Un histograma con la **etiqueta de destino** en el eje horizontal y la **frecuencia** en el eje vertical muestra la distribución de cada categoría de etiquetas.

![\[Los datos de Piloto automático indican una alta cardinalidad para la clasificación.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis-invalid-classification.png)


**nota**  
Puede encontrar las definiciones de todos los términos presentados en esta y otras secciones en la sección **Definiciones**, en la parte inferior del cuaderno de informes.

## Ejemplo de datos
<a name="autopilot-data-exploration-report-data-sample"></a>

Piloto automático presenta una muestra real de sus datos para ayudarte a detectar problemas en el conjunto de datos. La tabla de muestra se desplaza horizontalmente. Inspeccione los datos de muestra para verificar que todas las columnas necesarias estén presentes en el conjunto de datos. 

Piloto automático también calcula una medida de la potencia predictiva, que se puede utilizar para identificar una relación lineal o no lineal entre una característica y la variable objetivo. El valor `0` indica que la característica no tiene ningún valor predictivo para predecir la variable objetivo. Un valor `1` indica la potencia predictiva más alta para la variable objetivo. Para obtener más información sobre la potencia predictiva, consulte la sección **Definiciones**. 

**nota**  
No es recomendable utilizar la potencia predictiva como sustituto de la importancia de las características. Úsela solo si está seguro de que la potencia predictiva es una medida adecuada para el caso de uso en particular.

En la siguiente captura de pantalla, se ve un ejemplo de muestra de datos. La fila superior contiene la potencia predictiva de cada columna del conjunto de datos. La segunda fila contiene el tipo de datos de la columna. Las filas siguientes contienen las etiquetas. Las columnas contienen la columna de destino seguida de cada columna de características. Cada columna de características tiene una potencia predictiva asociada (resaltada en esta captura de pantalla con un recuadro). En este ejemplo, la columna que contiene la característica `x51` tiene una potencia predictiva de `0.68` para la variable objetivo `y`. La característica `x55` es ligeramente menos predictiva: tiene una potencia predictiva de `0.59`.

![\[Los datos de Piloto automático informan sobre la potencia predictiva de la muestra de datos.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-sample-prediction.png)


## Filas duplicadas
<a name="autopilot-data-exploration-report-duplicate-rows"></a>

Si hay filas duplicadas en el conjunto de datos, Amazon SageMaker Autopilot muestra una muestra de ellas.

**nota**  
No se recomienda equilibrar un conjunto de datos con un sobremuestreo antes de proporcionárselo a Piloto automático. Esto puede provocar que las puntuaciones de validación de los modelos entrenados con Piloto automático sean inexactas y que los modelos que se produzcan queden inutilizables.

## Correlaciones entre columnas
<a name="autopilot-data-exploration-report-cross-column-correlations"></a>

Piloto automático utiliza el coeficiente de correlación de Pearson, una medida de la correlación lineal entre dos características, para rellenar una matriz de correlación. En la matriz de correlación, las características numéricas se representan en los ejes horizontal y vertical, y el coeficiente de correlación de Pearson se representa en sus intersecciones. Cuanto mayor sea la correlación entre dos características, mayor será el coeficiente, con un valor máximo de `|1|`.
+ Un valor de `-1` indica que las características están perfectamente correlacionadas negativamente.
+ Un valor de `1`, que ocurre cuando una característica está correlacionada consigo misma, indica una correlación positiva perfecta.

Puede utilizar la información de la matriz de correlación para eliminar las características con un nivel alto de correlación. Un número menor de características reduce las posibilidades de sobreajustar un modelo; además, puede contribuir a abaratar los costos de producción de dos maneras. Reduce el tiempo de ejecución de Piloto automático necesario y, en el caso de algunas aplicaciones, puede abaratar los procedimientos de recopilación de datos. 

En la siguiente captura de pantalla, se muestra un ejemplo de matriz de correlación entre `7` características. Cada característica se muestra en una matriz en los ejes horizontal y vertical. El coeficiente de correlación de Pearson se muestra en la intersección entre dos características. Cada intersección de características tiene un tono de color asociado. Cuanto mayor sea la correlación, más oscuro será el tono. Los tonos más oscuros ocupan la diagonal de la matriz, donde cada característica se correlaciona consigo misma, lo que representa una correlación perfecta.

![\[Matriz de correlación cruzada de datos de Piloto automático.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-cross-column-statistics.png)


## Filas anómalas
<a name="autopilot-data-exploration-report-cross-anomolous-rows"></a>

Amazon SageMaker Autopilot detecta qué filas del conjunto de datos pueden ser anómalas. A continuación, asigna una puntuación de anomalía a cada fila. Las filas con puntuaciones de anomalía negativas se consideran anómalas. 

La siguiente captura de pantalla muestra el resultado de un análisis de Piloto automático para las filas que contienen anomalías. Junto a las columnas del conjunto de datos de cada fila, aparece una columna que contiene una puntuación anómala.

![\[Conjunto de datos de Piloto automático con filas anómalas; se pueden ver las puntuaciones de anomalía negativas\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-anomalous-rows.png)


## Valores que faltan, cardinalidad y estadísticas descriptivas
<a name="autopilot-data-exploration-report-description-statistics-and-values"></a>

Amazon SageMaker Autopilot examina e informa sobre las propiedades de las columnas individuales de su conjunto de datos. En cada sección del informe de datos que presenta este análisis, el contenido está organizado. De este modo, puede comprobar primero los valores más “sospechosos”. Con estas estadísticas, puede mejorar el contenido de las columnas individuales y la calidad del modelo producido por Piloto automático.

Piloto automático calcula varias estadísticas sobre los valores categóricos en las columnas que los contienen. Esto incluye el número de entradas únicas y, para texto, el número de palabras únicas.

Piloto automático calcula varias estadísticas estándar sobre los valores numéricos en las columnas que los contienen. La siguiente imagen muestra estas estadísticas, lo que incluye los valores medio, mediano, mínimo y máximo, así como los porcentajes de los tipos numéricos y de los valores atípicos. 

![\[Piloto automático muestra los datos en estadísticas de columnas con valores numéricos.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-descriptive-statistics.png)


# Búsqueda y ejecución del cuaderno de definición de candidatos
<a name="autopilot-candidate-generation-notebook"></a>

El cuaderno de definición de candidatos contiene todos los pasos de preprocesamiento, los algoritmos y los rangos de hiperparámetros sugeridos. 

Puede elegir el candidato que desea entrenar y ajustar de dos maneras. En primer lugar, ejecutando secciones del cuaderno. En segundo lugar, ejecutando todo el cuaderno para optimizar a todos los candidatos e identificar al mejor candidato. Si ejecuta todo el cuaderno, solo se mostrará el mejor candidato tras finalizar el trabajo. 

Para ejecutar el piloto automático desde SageMaker Studio Classic, abra el cuaderno de definiciones candidatas siguiendo estos pasos:

1. Seleccione el icono ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/icons/house.png) de **inicio** en el panel de navegación izquierdo para ver el menú de navegación de nivel superior de **Amazon SageMaker Studio Classic**.

1. Seleccione la tarjeta **AutoML** en el área de trabajo principal. Se abrirá una nueva pestaña **Piloto automático**.

1. En la sección **Nombre**, seleccione el trabajo de Piloto automático que contenga el cuaderno de definiciones de candidatos que desee examinar. Se abrirá una nueva pestaña **Trabajo de Piloto automático**.

1. Seleccione **Abrir el cuaderno de generación de candidatos**, en la sección superior derecha de la pestaña **Trabajo de Piloto automático**. Esto abre una nueva vista previa de solo lectura del cuaderno de definiciones de **candidatos de Amazon SageMaker Autopilot**.

Para ejecutar el cuaderno de definición de candidatos, siga estos pasos:

1. Selecciona **Importar bloc de notas** en la parte superior derecha de la pestaña Bloc de **notas con definiciones de candidatos de Amazon SageMaker Autopilot**. Esto abrirá una pestaña para configurar un nuevo entorno de cuaderno a fin de ejecutar el cuaderno.

1. Seleccione una SageMaker **imagen** existente o utilice una **imagen personalizada**. 

1. Seleccione un **Kernel**, un **Tipo de instancia** y un **Script de inicio** opcional.

Ahora puede ejecutar el cuaderno en este nuevo entorno.

# Configure el resultado de la inferencia en los contenedores generados
<a name="autopilot-automate-model-development-container-output"></a>

Piloto automático genera una lista [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerDefinition.html) ordenada. Esto se puede usar para crear un modelo e implementarlo en una canalización de machine learning. Este modelo se puede utilizar para el alojamiento en línea y la inferencia. 

Los clientes pueden enumerar las definiciones de los contenedores de inferencia con la API [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidateForAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidateForAutoMLJob.html). La lista de definiciones de contenedores de inferencia que representan el mejor candidato también está disponible en la respuesta [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html).

## Definiciones de contenedores de inferencia para tipos de problemas de regresión y clasificación
<a name="autopilot-problem-type-container-output"></a>

Piloto automático genera contenedores de inferencia específicos para el [modo de entrenamiento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode) y el [tipo de problema](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-datasets-problem-types.html#autopilot-problem-types) del trabajo.

### Definiciones de contenedores para el modo de optimización de hiperparámetros (HPO)
<a name="autopilot-problem-type-container-output-hpo"></a>
+ **Regresión**: HPO genera dos contenedores.

  1. Un contenedor de ingeniería de características que transforma las características originales en características sobre las que pueden entrenarse los algoritmos de regresión.

  1. Un contenedor de algoritmos que transforma las características y genera una puntuación de regresión para el conjunto de datos.
+ **Clasificación**: HPO genera tres contenedores.

  1. Un contenedor de ingeniería de características que transforma las características originales en características sobre las que pueden entrenarse los algoritmos de clasificación.

  1. Un contenedor de algoritmos que genera el `predicted_label` con la probabilidad más alta. Este contenedor también puede generar las diversas probabilidades asociadas a los resultados de la clasificación en la respuesta de inferencia.

  1. Un contenedor de ingeniería de características que realiza el posprocesamiento de la predicción del algoritmo. Por ejemplo, puede realizar una transformación inversa en la etiqueta prevista y cambiarla por la etiqueta original. 

### Definiciones de contenedores para el modo de ensamblaje
<a name="autopilot-problem-type-container-output-ensemble"></a>

En el modo de ensamblaje, los tipos de problemas de regresión y clasificación tienen un solo contenedor de inferencias. Este contenedor de inferencias transforma las características y genera las predicciones en función del tipo de problema. 

## Respuestas de inferencias por tipo de problema
<a name="autopilot-problem-type-inference-response"></a>

### Respuestas de inferencias para modelos de clasificación
<a name="autopilot-problem-type-inference-response-classification"></a>

En los contenedores de inferencias de clasificación, puede seleccionar el contenido de la respuesta de inferencia mediante cuatro claves predefinidas.
+ `predicted_label`: la etiqueta con la mayor probabilidad de predecir la etiqueta correcta, según lo determinado por Piloto automático.
+ `probability`: 
  + **Modelos HPO:** la probabilidad de la clase `True` para clasificación binaria. La probabilidad de `predicted_label` para la clasificación multiclase.
  + **Modelos de ensamblaje:** la probabilidad de `predicted_label` para la clasificación binaria y multiclase.
+ `probabilities`: la lista de probabilidades de todas las clases correspondientes.
+ `labels`: la lista de todas las etiquetas.

Por ejemplo, para un problema de clasificación binaria, si pasa las claves de respuesta de inferencias `['predicted_label', 'probability', 'probabilities', 'labels']` y la respuesta de salida aparece como `[1, 0.1, "[0.9, 0.1]", "['1', '0']"]`, debe interpretarla de la siguiente manera:

1. `predicted_label` es igual a `1` porque la etiqueta “1” tiene una probabilidad mayor (en este caso, `0.9`).

1. Para los modelos HPO, `probability` es igual a `0.1`, que es la probabilidad de la `positive_class` (en este caso, `0`) seleccionada por Piloto automático.

   Para los modelos de ensamblaje, `probability` es igual a `0.9`, que es la probabilidad de la `predicted_label`.

1. `probabilities` muestra la `probability` de cada etiqueta en `labels`.

1. `labels` son las etiquetas únicas del conjunto de datos, donde la segunda etiqueta (“0” en este caso) es la `positive_class` seleccionada por Piloto automático.

De forma predeterminada, los contenedores de inferencias están configurados para generar solo la `predicted_label`. Para seleccionar contenido de inferencia adicional, puede actualizar el parámetro `inference_response_keys` para incluir hasta las siguientes tres variables de entorno.
+ `SAGEMAKER_INFERENCE_SUPPORTED`: configurado para proporcionarle sugerencias sobre el contenido que admite cada contenedor.
+ `SAGEMAKER_INFERENCE_INPUT`: debe configurarse con las claves que el contenedor espera en la carga de entrada.
+ `SAGEMAKER_INFERENCE_OUTPUT`: debe rellenarse con el conjunto de claves que genera el contenedor.

### Respuestas de inferencias para modelos de clasificación en el modo HPO
<a name="autopilot-problem-type-inference-response-classification-hpo"></a>

En esta sección, se muestra cómo configurar la respuesta de inferencias de los modelos de clasificación mediante el modo de optimización de hiperparámetros (HPO).

A fin de elegir el contenido de la respuesta de inferencias en el modo HPO, añada las variables `SAGEMAKER_INFERENCE_INPUT` y `SAGEMAKER_INFERENCE_OUTPUT` a los contenedores segundo y tercero que se generan en el modo HPO para los problemas de clasificación.

Las claves que admite el segundo contenedor (algoritmo) son predicted\$1label, probability y probabilities. Tenga en cuenta que, de forma deliberada, `labels` no se ha agregado a `SAGEMAKER_INFERENCE_SUPPORTED`.

Las claves que admite el contenedor del modelo de tercera clasificación son `predicted_label`, `labels`, `probability` y `probabilities`. Por lo tanto, el entorno `SAGEMAKER_INFERENCE_SUPPORTED` incluye los nombres de estas claves.

A fin de actualizar la definición de los contenedores de inferencia de modo que reciban a `predicted_label` y `probability`, utilice el siguiente ejemplo de código.

```
containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label, probability'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
```

El siguiente ejemplo de código actualiza la definición de los contenedores de inferencia de modo que reciban a `predicted_label`, `labels` y `probabilities`. No transfiera `labels` al segundo contenedor (el contenedor del algoritmo), ya que el tercer contenedor lo genera de forma independiente. 

```
containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label,probabilities'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label,probabilities'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probabilities,labels'})
```

Las siguientes secciones plegables proporcionan ejemplos de código para AWS SDK para Python (Boto3) y para el SageMaker SDK para Python. En cada sección se muestra cómo seleccionar el contenido de las respuestas de inferencia en modo HPO para el ejemplo de código correspondiente.

#### AWS SDK para Python (Boto3)
<a name="autopilot-problem-type-inference-response-classification-hpo-boto3"></a>

```
import boto3

sm_client = boto3.client('sagemaker', region_name='<Region>')

role = '<IAM role>'
input_data = '<S3 input uri>'
output_path = '<S3 output uri>'

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName='<AutoML Job Name>')['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

best_candidate_containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
best_candidate_containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label, probability'})
best_candidate_containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})

# create model
reponse = sm_client.create_model(
    ModelName = '<Model Name>',
    ExecutionRoleArn = role,
    Containers = best_candidate_containers
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName='<Transform Job Name>',
    ModelName='<Model Name>',
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/CSV",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m4.xlarge',
        'InstanceCount': 1,
    },
)
```

#### SageMaker SDK para Python
<a name="autopilot-problem-type-inference-response-classification-hpo-sdk"></a>

```
from sagemaker import AutoML

aml = AutoML.attach(auto_ml_job_name='<AutoML Job Name>')
aml_best_model = aml.create_model(name='<Model Name>',
                                  candidate=None,
                                  inference_response_keys**=['probabilities', 'labels'])

aml_transformer = aml_best_model.transformer(accept='text/csv',
                                            assemble_with='Line',
                                            instance_type='ml.m5.xlarge',
                                            instance_count=1,)

aml_transformer.transform('<S3 input uri>',
                          content_type='text/csv',
                          split_type='Line',
                          job_name='<Transform Job Name>',
                          wait=True)
```

### Respuestas de inferencias para modelos de clasificación en el modo ensamblaje
<a name="autopilot-problem-type-inference-response-classification-ensemble"></a>

En esta sección, se muestra cómo configurar la respuesta de inferencias de los modelos de clasificación mediante el modo de ensamblaje. 

En el **modo de ensamblaje**, para elegir el contenido de la respuesta de inferencia, actualice la variable de entorno `SAGEMAKER_INFERENCE_OUTPUT`.

Las claves que admite el contenedor del modelo de clasificación son `predicted_label`, `labels`, `probability` y `probabilities`. Estas claves se incluyen en el entorno `SAGEMAKER_INFERENCE_SUPPORTED`.

A fin de actualizar la definición de los contenedores de inferencia de modo que reciban a `predicted_label` y `probability`, consulte el siguiente ejemplo de código.

```
containers[0]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
```

La siguiente sección contraíble proporciona un ejemplo de código para seleccionar el contenido de las respuestas de inferencia en el modo de ensamblaje. El ejemplo usa AWS SDK para Python (Boto3).

#### AWS SDK para Python (Boto3)
<a name="autopilot-problem-type-inference-response-classification-ensembling-boto3"></a>

```
import boto3
sm_client = boto3.client('sagemaker', region_name='<Region>')

role = '<IAM role>'
input_data = '<S3 input uri>'
output_path = '<S3 output uri>' 

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName='<AutoML Job Name>')['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

*best_candidate_containers[0]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
*
# create model
reponse = sm_client.create_model(
    ModelName = '<Model Name>',
    ExecutionRoleArn = role,
    Containers = best_candidate_containers
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName='<Transform Job Name>',
    ModelName='<Model Name>',
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/CSV",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m4.xlarge',
        'InstanceCount': 1,
    },
)
```

La siguiente sección plegable proporciona un ejemplo de código que es idéntico al ejemplo de SageMaker SDK para Python para HPO. Se incluye aquí para acceder con comodidad.

#### SageMaker SDK para Python
<a name="autopilot-problem-type-inference-response-classification-ensembling-sdk"></a>

El siguiente ejemplo de código de HPO usa el SageMaker SDK para Python.

```
from sagemaker import AutoML

aml = AutoML.attach(auto_ml_job_name='<AutoML Job Name>')
aml_best_model = aml.create_model(name='<Model Name>',
                                  candidate=None,
                                  *inference_response_keys**=['probabilities', 'labels'])*

aml_transformer = aml_best_model.transformer(accept='text/csv',
                                            assemble_with='Line',
                                            instance_type='ml.m5.xlarge',
                                            instance_count=1,)

aml_transformer.transform('<S3 input uri>',
                          content_type='text/csv',
                          split_type='Line',
                          job_name='<Transform Job Name>',
                          wait=True)
```

# Creación de un trabajo de clasificación de imágenes mediante la API de AutoML
<a name="autopilot-create-experiment-image-classification"></a>

Las siguientes instrucciones muestran cómo crear un trabajo de Amazon SageMaker Autopilot como experimento piloto para tipos de problemas de clasificación de imágenes mediante SageMaker [API Reference](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).

**nota**  
Las tareas como la clasificación de textos e imágenes, la previsión de series temporales y el refinamiento de modelos de lenguaje de gran tamaño están disponibles exclusivamente en la versión 2 de la [API de REST de AutoML](autopilot-reference.md). Si su idioma preferido es Python, puede consultar directamente el [MLV2 objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del SDK de Amazon SageMaker Python. [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)  
Los usuarios que prefieran la comodidad de una interfaz de usuario pueden usar [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acceder a modelos previamente entrenados y modelos básicos de IA generativa, o crear modelos personalizados adaptados a textos específicos, clasificación de imágenes, necesidades de previsión o IA generativa.

Puede crear un experimento de clasificación de imágenes con piloto automático mediante programación llamando a la acción de la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API en cualquier idioma compatible con Amazon SageMaker Autopilot o el. AWS CLI

Para obtener información sobre cómo se traduce esta acción de API en una función en el lenguaje que usted prefiera, consulte la sección [Véase también](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` en AWS SDK para Python (Boto3).

Lo que sigue es una colección de parámetros de solicitud de entrada obligatorios y opcionales para la acción de API `CreateAutoMLJobV2` utilizada en la clasificación de imágenes.

## Parámetros necesarios
<a name="image-classification-api-required-params"></a>

Al llamar a `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para crear un experimento de Piloto automático para la clasificación de imágenes, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar el nombre del trabajo.
+ Al menos un `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` en `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar el origen de datos.
+ Un `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` del tipo `[ImageClassificationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html)`. 
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos.

Todos los demás parámetros son opcionales.

## Parámetros opcionales
<a name="image-classification-api-optional-params"></a>

En las siguientes secciones, se proporcionan detalles sobre algunos parámetros opcionales que puede transferir al trabajo AutoML de clasificación de imágenes.

### Cómo especificar los conjuntos de datos de entrenamiento y validación de un trabajo de AutoML
<a name="image-classification-data-training-or-validation"></a>

Puede proporcionar su propio conjunto de datos de validación y una tasa de división de datos personalizada, o puede dejar que Piloto automático divida el conjunto de datos automáticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte el parámetro obligatorio [Automático MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tiene una`ChannelType`, que se puede configurar en `validation` valores que especifican cómo se utilizarán los datos al crear un modelo de aprendizaje automático. `training` 

Debe proporcionar al menos un origen de datos y un máximo de dos: uno para los datos de entrenamiento y otro para los datos de validación. La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos. 

La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos.
+ Si solo tiene **un origen de datos**, el `ChannelType` se establece en `training` de forma predeterminada y debe tener este valor.
  + Si el valor `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) no está establecido, el 20 % (0,2) de los datos de este origen se utiliza para la validación de forma predeterminada. 
  + Si la `ValidationFraction` se establece en un valor entre 0 y 1, el conjunto de datos se divide en función del valor especificado, donde el valor especifica la fracción del conjunto de datos utilizada para la validación.
+ Si tiene **dos orígenes de datos**, el `ChannelType` de uno de los objetos de `AutoMLJobChannel` debe establecerse en `training`, el valor predeterminado. El `ChannelType` del otro origen de datos debe estar establecido en `validation`. Los dos orígenes de datos deben tener el mismo formato, CSV o Parquet, y el mismo esquema. En este caso, no debe establecer el valor de `ValidationFraction`, ya que todos los datos de cada origen se utilizan para el entrenamiento o la validación. Si se configura este valor, se producirá un error.

### Cómo especificar la configuración de implementación automática de modelos para un trabajo de AutoML
<a name="image-classification-auto-model-deployment"></a>

Para permitir la implementación automática del mejor candidato modelo para un trabajo de AutoML, incluya un `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en la solicitud de trabajo de AutoML. Esto permitirá implementar el mejor modelo en un punto final de SageMaker IA. A continuación, se muestran las configuraciones disponibles para la personalización.
+ Para permitir que Piloto automático genere el nombre del punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` en `True`.
+ Si desea proporcionar su propio nombre para el punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

# Formato de conjuntos de datos y métrica objetivo para la clasificación de imágenes
<a name="image-classification-data-format-and-metric"></a>

En esta sección, descubriremos cuáles son los formatos disponibles para los conjuntos de datos utilizados en la clasificación de imágenes, y veremos cuál es la métrica objetivo utilizada para evaluar la calidad predictiva de los candidatos a modelo de machine learning. Las métricas calculadas para los candidatos se especifican mediante una serie de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Formatos de conjuntos de datos
<a name="image-classification-data-format"></a>

Piloto automático admite los formatos de imagen .png, .jpg y .jpeg. Si su conjunto de datos solo contiene imágenes .png, use `image/png`; si solo contiene imágenes .jpg o .jpeg, use `image/jpeg`, y si contiene una combinación de formatos de imagen, utilice `image/*`.

## Métrica objetiva
<a name="image-classification-objective-metric"></a>

La siguiente lista contiene los nombres de las métricas que están disponibles actualmente para medir el rendimiento de los modelos para la clasificación de imágenes.

**`Accuracy`**  
 La relación entre el número de elementos clasificados correctamente y el número total de elementos clasificados (correcta e incorrectamente). La precisión mide el grado de aproximación de los valores de clase pronosticados con respecto a los valores reales. Los valores de las métricas de precisión varían entre cero (0) y uno (1). Un valor de 1 indica una precisión perfecta y un 0 indica una imprecisión perfecta.

# Implementación de modelos de Piloto automático para realizar inferencias en tiempo real
<a name="image-classification-deploy-models"></a>

Después de entrenar tus modelos de Amazon SageMaker Autopilot, puedes configurar un punto final y obtener predicciones de forma interactiva. En la siguiente sección se describen los pasos para implementar su modelo en un punto final de inferencia en tiempo real de la SageMaker IA a fin de obtener predicciones a partir de su modelo.

## Inferencia en tiempo real
<a name="autopilot-deploy-models-text-image-classification-realtime"></a>

La inferencia en tiempo real es idónea para cargas de trabajo de inferencia con requisitos en tiempo real, interactivos y de baja latencia. Esta sección le muestra cómo puede usar la inferencia en tiempo real para obtener predicciones de forma interactiva a partir de su modelo.

Puede utilizar SageMaker APIs para implementar manualmente el modelo que produjo la mejor métrica de validación en un experimento de piloto automático de la siguiente manera.

También puede elegir la opción de implementación automática al crear el experimento de Piloto automático. Para obtener más información sobre cómo configurar la implementación automática de modelos, consulte `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en los parámetros de solicitud de `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestParameters)`. Esto crea un punto de conexión automáticamente.

**nota**  
Para evitar incurrir en cargos innecesarios, puede eliminar los puntos de conexión y los recursos innecesarios creados a partir de la implementación del modelo. Para obtener información sobre los precios de las instancias por región, consulta [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

1. **Obtener las definiciones del contenedor del candidato**

   Obtenga las definiciones de contenedores candidatas en [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers). Una definición de contenedor para la inferencia se refiere al entorno contenerizado diseñado para implementar y ejecutar un modelo de SageMaker IA entrenado a fin de realizar predicciones. 

   En el siguiente ejemplo de AWS CLI comando, se utiliza la API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obtener las definiciones candidatas para el mejor modelo candidato.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Enumerar los candidatos**

   El siguiente ejemplo de AWS CLI comando usa la [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para enumerar todos los modelos candidatos.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Cree un modelo de SageMaker IA**

   Utilice las definiciones de contenedor de los pasos anteriores y un candidato de su elección para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Crear la configuración de un punto de conexión**

   El siguiente ejemplo de AWS CLI comando usa la [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para crear una configuración de punto final.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Crear el punto de conexión** 

   En el siguiente AWS CLI ejemplo, se utiliza la [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para crear el punto final.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Compruebe el progreso de la implementación de su punto final mediante la [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. **Invocar al punto de conexión** 

   La siguiente estructura de comandos invoca el punto de conexión para realizar inferencias en tiempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

# Informe de explicabilidad
<a name="image-classification-explainability-report"></a>

Amazon SageMaker Autopilot proporciona un informe de explicabilidad para ayudar a explicar cómo el mejor candidato a modelo hace predicciones para los problemas de clasificación de imágenes. Este informe puede ayudar a ingenieros de ML, directores de producto y otras partes interesadas internas a comprender las características del modelo. Tanto los consumidores como los reguladores confían en la transparencia del machine learning para confiar en las decisiones tomadas en función de las predicciones del modelo e interpretarlas. Puede utilizar estas explicaciones para auditar y cumplir los requisitos reglamentarios, establecer la confianza en el modelo, respaldar la toma de decisiones y depurar y mejorar el rendimiento del modelo.

La función explicativa de Piloto automático para la clasificación de imágenes utiliza una estrategia de mapa visual de activación de clases (CAM) que produce un mapa de calor en el que la distribución y la intensidad de cada color resaltan las áreas de la imagen que más contribuyen a una predicción específica. Este método se basa en los componentes principales derivados de la implementación de [Eigen-CAM](https://arxiv.org/ftp/arxiv/papers/2008/2008.00299.pdf).

Piloto automático genera el informe de explicabilidad como un archivo JSON. El informe incluye detalles del análisis que se basan en el conjunto de datos de validación. Cada muestra utilizada para generar el informe contiene la siguiente información.
+ `input_image_uri`: el URI de Amazon S3 de la imagen de entrada tomado como entrada para el mapa de calor. 
+ `heatmap_image_uri`: el URI de Amazon S3 de la imagen del mapa de calor generado por Piloto automático. 
+ `predicted_label`: la clase de etiqueta pronosticada por el mejor modelo entrenado con Piloto automático. 
+ `probability`: la confianza con la que se predice la `predicted_label`.

Puede encontrar el prefijo Amazon S3 de los artefactos de explicabilidad generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

Los siguientes ejemplos ilustran el aspecto de los mapas de calor en algunas muestras de [Oxford-IIIT Pet Dataset](https://www.robots.ox.ac.uk/~vgg/data/pets/). La imagen del mapa de calor muestra gradientes de color que indican la importancia relativa de las diferentes características de la imagen. El color rojo representa las regiones que tienen mayor importancia a la hora de predecir la “etiqueta predictiva” de la imagen de entrada, en comparación con las características representadas por el color azul.


****  

| Imagen de entrada | Imagen de mapa de calor | 
| --- | --- | 
|  ![\[La imagen original de un perro.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img1-input.png)  |  ![\[Un mapa de calor con la imagen de un perro que destaca las regiones que más contribuyen a la etiqueta prevista.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img1-output.png)  | 
|  ![\[La imagen original de un gato.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img2-input.png)  |  ![\[Un mapa de calor con la imagen de un gato que destaca las regiones que más contribuyen a la etiqueta prevista.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img2-output.png)  | 

# Informe de rendimiento del modelo
<a name="image-classification-model-performance-report"></a>

Un informe de calidad de un modelo de Amazon SageMaker AI (también denominado informe de rendimiento) proporciona información valiosa e información de calidad para el mejor candidato de modelo generado por un trabajo de AutoML. Incluye información sobre los detalles del trabajo, el tipo de problema del modelo, la función objetivo y diversas métricas. En esta sección, se detalla el contenido de un informe de rendimiento para los problemas de clasificación de imágenes y se explica cómo acceder a las métricas como datos sin procesar en un archivo JSON.

Puede encontrar el prefijo Amazon S3 de los artefactos de informe de calidad del modelo generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

El informe de rendimiento consta de dos secciones:
+ La primera sección contiene detalles sobre el trabajo de Piloto automático generado por el modelo.
+  La segunda sección contiene un informe de calidad del modelo con varias métricas de rendimiento.

## Detalles del trabajo en Piloto automático
<a name="image-classification-performance-report-jobdetails"></a>

Esta primera sección del informe proporciona información general sobre el trabajo de Piloto automático que ha generado el modelo. En estos detalles, se incluye la siguiente información.
+ Nombre del candidato en Piloto automático: el nombre del candidato a mejor modelo.
+ Nombre del trabajo en Piloto automático: el nombre del trabajo.
+ Tipo de problema: el tipo de problema. En nuestro caso, *clasificación de imágenes*.
+ Métrica objetiva: la métrica objetiva utilizada para optimizar el rendimiento del modelo. En nuestro caso, *precisión*.
+ Dirección de optimización: indica si se debe minimizar o maximizar la métrica objetivo.

## Informe de calidad del modelo
<a name="image-classification-performance-report-modelquality"></a>

La información sobre la calidad del modelo se genera mediante la información sobre modelos de Piloto automático. El contenido del informe que se genera depende del tipo de problema que se aborde. El informe especifica el número de filas que se incluyeron en el conjunto de datos de evaluación y el momento en que se realizó la evaluación.

### Tablas de métricas
<a name="image-classification-model-quality-report-metrics"></a>

La primera parte del informe de calidad del modelo contiene tablas de métricas. Son las adecuadas para el tipo de problema que abordó el modelo.

La siguiente imagen es un ejemplo de una tabla de métricas generada por Piloto automático para un problema de clasificación de imágenes o textos. Muestra el nombre, el valor y la desviación estándar de la métrica.

![\[Ejemplo de informe de métricas de clasificación de imágenes o texto de Amazon SageMaker Autopilot Model Insights.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Información gráfica sobre el rendimiento del modelo
<a name="image-classification-model-quality-report-graphs"></a>

La segunda parte del informe de calidad del modelo contiene información gráfica para ayudarle a evaluar el rendimiento del modelo. El contenido de esta sección depende del tipo de problema seleccionado.

#### Matriz de confusión
<a name="image-classification-model-insights-confusion-matrix"></a>

Una matriz de confusión es una forma de visualizar la precisión de las predicciones realizadas por un modelo para la clasificación binaria y multiclase de diferentes problemas.

Los componentes del gráfico de **tasa de falsos positivos** (FPR) y **tasa de positivos reales** (TPR) se definen de la siguiente manera.
+ Predicciones correctas
  + **Positivo real** (TP): el valor predicho es 1 y el valor real es 1.
  + **Negativo real** (TN): el valor predicho es 0 y el valor real es 0.
+ Predicciones erróneas
  + **Positivo falso** (FP): el valor predicho es 1, pero el valor real es 0.
  + **Falso negativo** (FN): el valor predicho es 0, pero el valor real es 1.

La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El número y el porcentaje de predicciones correctas e incorrectas para las etiquetas reales
+ El número y el porcentaje de predicciones precisas en la diagonal desde la esquina superior izquierda hasta la esquina inferior derecha
+ El número y el porcentaje de predicciones incorrectas en la diagonal desde la esquina superior derecha hasta la esquina inferior izquierda

Las predicciones incorrectas en una matriz de confusión son los valores de confusión.

El diagrama siguiente muestra un ejemplo de matriz de confusión para un problema de clasificación multiclase. La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El eje vertical se divide en tres filas que contienen tres etiquetas reales diferentes.
+ El eje horizontal se divide en tres columnas que contienen las etiquetas que predijo el modelo.
+ La barra de colores asigna un tono más oscuro a un número mayor de muestras para indicar visualmente el número de valores que se clasificaron en cada categoría.

En el siguiente ejemplo, el modelo predijo correctamente 354 valores reales para la etiqueta **f**, 1094 valores para la etiqueta **i** y 852 valores para la etiqueta **m**. La diferencia en el tono indica que el conjunto de datos no está equilibrado, ya que hay muchas más etiquetas para el valor **i** que para **f** o **m**.

![\[Ejemplo de matriz de confusión multiclase de Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


La matriz de confusión del informe de calidad del modelo proporcionado puede incluir un máximo de 15 etiquetas para los tipos de problemas de clasificación multiclase. Si una fila correspondiente a una etiqueta muestra un valor `Nan`, significa que el conjunto de datos de validación utilizado para comprobar las predicciones del modelo no contiene datos con esa etiqueta.

# Creación de un trabajo de AutoML de clasificación de texto mediante la API
<a name="autopilot-create-experiment-text-classification"></a>

Las siguientes instrucciones muestran cómo crear un trabajo de Amazon SageMaker Autopilot como experimento piloto para tipos de problemas de clasificación de textos mediante SageMaker [API Reference](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).

**nota**  
Las tareas como la clasificación de textos e imágenes, la previsión de series temporales y el refinamiento de modelos de lenguaje de gran tamaño están disponibles exclusivamente en la versión 2 de la [API de REST de AutoML](autopilot-reference.md). Si su idioma preferido es Python, puede consultar directamente el [MLV2 objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del SDK de Amazon SageMaker Python. [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)  
Los usuarios que prefieran la comodidad de una interfaz de usuario pueden usar [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acceder a modelos previamente entrenados y modelos básicos de IA generativa, o crear modelos personalizados adaptados a textos específicos, clasificación de imágenes, necesidades de previsión o IA generativa.

Puede crear un experimento de clasificación de texto con piloto automático mediante programación llamando a la acción de la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API en cualquier idioma compatible con Amazon SageMaker Autopilot o el. AWS CLI

Para obtener información sobre cómo se traduce esta acción de API en una función en el lenguaje que usted prefiera, consulte la sección [Véase también](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` en AWS SDK para Python (Boto3).

Lo que sigue es una colección de parámetros de solicitud de entrada obligatorios y opcionales para la acción de API `CreateAutoMLJobV2` utilizada en la clasificación de textos.

## Parámetros necesarios
<a name="text-classification-api-required-params"></a>

Al llamar a `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para crear un experimento de Piloto automático para la clasificación de textos, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar el nombre del trabajo.
+ Al menos un `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` en `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar el origen de datos.
+ Un `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` del tipo `[TextClassificationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextClassificationJobConfig.html)`. 
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos.

Todos los demás parámetros son opcionales.

## Parámetros opcionales
<a name="text-classification-api-optional-params"></a>

En las siguientes secciones, se proporcionan detalles sobre algunos parámetros opcionales que puede transferir al trabajo AutoML de clasificación de textos.

### Cómo especificar los conjuntos de datos de entrenamiento y validación de un trabajo de AutoML
<a name="text-classification-data-training-or-validation"></a>

Puede proporcionar su propio conjunto de datos de validación y una tasa de división de datos personalizada, o puede dejar que Piloto automático divida el conjunto de datos automáticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte el parámetro obligatorio [Automático MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tiene una`ChannelType`, que se puede configurar en `validation` valores que especifican cómo se utilizarán los datos al crear un modelo de aprendizaje automático. `training` 

Debe proporcionar al menos un origen de datos y un máximo de dos: uno para los datos de entrenamiento y otro para los datos de validación. La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos. 

La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos.
+ Si solo tiene **un origen de datos**, el `ChannelType` se establece en `training` de forma predeterminada y debe tener este valor.
  + Si el valor `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) no está establecido, el 20 % (0,2) de los datos de este origen se utiliza para la validación de forma predeterminada. 
  + Si la `ValidationFraction` se establece en un valor entre 0 y 1, el conjunto de datos se divide en función del valor especificado, donde el valor especifica la fracción del conjunto de datos utilizada para la validación.
+ Si tiene **dos orígenes de datos**, el `ChannelType` de uno de los objetos de `AutoMLJobChannel` debe establecerse en `training`, el valor predeterminado. El `ChannelType` del otro origen de datos debe estar establecido en `validation`. Los dos orígenes de datos deben tener el mismo formato, CSV o Parquet, y el mismo esquema. En este caso, no debe establecer el valor de `ValidationFraction`, ya que todos los datos de cada origen se utilizan para el entrenamiento o la validación. Si se configura este valor, se producirá un error.

### Cómo especificar la configuración de implementación automática de modelos para un trabajo de AutoML
<a name="text-classification-auto-model-deployment"></a>

Para permitir la implementación automática del mejor candidato modelo para un trabajo de AutoML, incluya un `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en la solicitud de trabajo de AutoML. Esto permitirá implementar el mejor modelo en un punto final de SageMaker IA. A continuación, se muestran las configuraciones disponibles para la personalización.
+ Para permitir que Piloto automático genere el nombre del punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` en `True`.
+ Si desea proporcionar su propio nombre para el punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

# Formato de conjuntos de datos y métrica objetivo para la clasificación de textos
<a name="text-classification-data-format-and-metric"></a>

En esta sección, descubriremos cuáles son los formatos disponibles para los conjuntos de datos utilizados en la clasificación de textos, y veremos cuál es la métrica utilizada para evaluar la calidad predictiva de los candidatos a modelo de machine learning. Las métricas calculadas para los candidatos se especifican mediante una serie de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Formatos de conjuntos de datos
<a name="text-classification-data-format"></a>

Piloto automático admite datos tabulares formateados como archivos CSV o como archivos Parquet. En los datos tabulares, cada columna contiene una característica con un tipo de datos específico y cada fila contiene una observación. Las propiedades de estos dos formatos de archivo difieren considerablemente.
+ El **CSV** (comma-separated-values) es un formato de archivo basado en filas que almacena los datos en texto plano legible para las personas. Es una opción popular para el intercambio de datos, ya que es compatible con una amplia gama de aplicaciones.
+ **Parquet** es un formato de archivo basado en columnas en el que los datos se almacenan y procesan de forma más eficiente que en los formatos de archivo basados en filas. Esto los convierte en una mejor opción para los problemas en macrodatos.

Los **tipos de datos** aceptados para las columnas son numéricos, categóricos y de texto.

El piloto automático permite crear modelos de aprendizaje automático en conjuntos de datos grandes de hasta cientos de. GBs Para obtener más información sobre los límites de recursos predeterminados para los conjuntos de datos de entrada y cómo aumentarlos, consulta las cuotas de [Amazon SageMaker Autopilot](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-quotas.html).

## Métrica objetiva
<a name="text-classification-objective-metric"></a>

La siguiente lista contiene los nombres de las métricas que están disponibles actualmente para medir el rendimiento de los modelos para la clasificación de textos.

**`Accuracy`**  
 La relación entre el número de elementos clasificados correctamente y el número total de elementos clasificados (correcta e incorrectamente). La precisión mide el grado de aproximación de los valores de clase pronosticados con respecto a los valores reales. Los valores de las métricas de precisión varían entre cero (0) y uno (1). Un valor de 1 indica una precisión perfecta y un 0 indica una imprecisión perfecta.

# Implementación de modelos de Piloto automático para realizar inferencias en tiempo real
<a name="text-classification-deploy-models"></a>

Después de entrenar tus modelos de Amazon SageMaker Autopilot, puedes configurar un punto final y obtener predicciones de forma interactiva. En la siguiente sección se describen los pasos para implementar su modelo en un punto final de inferencia en tiempo real de la SageMaker IA a fin de obtener predicciones a partir de su modelo.

## Inferencia en tiempo real
<a name="autopilot-deploy-models-text-image-classification-realtime"></a>

La inferencia en tiempo real es idónea para cargas de trabajo de inferencia con requisitos en tiempo real, interactivos y de baja latencia. Esta sección le muestra cómo puede usar la inferencia en tiempo real para obtener predicciones de forma interactiva a partir de su modelo.

Puede utilizar SageMaker APIs para implementar manualmente el modelo que produjo la mejor métrica de validación en un experimento de piloto automático de la siguiente manera.

También puede elegir la opción de implementación automática al crear el experimento de Piloto automático. Para obtener más información sobre cómo configurar la implementación automática de modelos, consulte `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en los parámetros de solicitud de `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestParameters)`. Esto crea un punto de conexión automáticamente.

**nota**  
Para evitar incurrir en cargos innecesarios, puede eliminar los puntos de conexión y los recursos innecesarios creados a partir de la implementación del modelo. Para obtener información sobre los precios de las instancias por región, consulta [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

1. **Obtener las definiciones del contenedor del candidato**

   Obtenga las definiciones de contenedores candidatas en [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers). Una definición de contenedor para la inferencia se refiere al entorno contenerizado diseñado para implementar y ejecutar un modelo de SageMaker IA entrenado a fin de realizar predicciones. 

   En el siguiente ejemplo de AWS CLI comando, se utiliza la API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obtener las definiciones candidatas para el mejor modelo candidato.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Enumerar los candidatos**

   El siguiente ejemplo de AWS CLI comando usa la [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para enumerar todos los modelos candidatos.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Cree un modelo de SageMaker IA**

   Utilice las definiciones de contenedor de los pasos anteriores y un candidato de su elección para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Crear la configuración de un punto de conexión**

   El siguiente ejemplo de AWS CLI comando usa la [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para crear una configuración de punto final.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Crear el punto de conexión** 

   En el siguiente AWS CLI ejemplo, se utiliza la [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para crear el punto final.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Compruebe el progreso de la implementación de su punto final mediante la [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. **Invocar al punto de conexión** 

   La siguiente estructura de comandos invoca el punto de conexión para realizar inferencias en tiempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

# Informe de explicabilidad
<a name="text-classification-explainability-report"></a>

Amazon SageMaker Autopilot proporciona un informe de explicabilidad para ayudar a explicar cómo el mejor candidato a modelo hace predicciones para los problemas de clasificación de textos. Este informe puede ayudar a ingenieros de ML, directores de producto y otras partes interesadas internas a comprender las características del modelo. Tanto los consumidores como los reguladores confían en la transparencia del machine learning para confiar en las decisiones tomadas en función de las predicciones del modelo e interpretarlas. Puede utilizar estas explicaciones para auditar y cumplir los requisitos reglamentarios, establecer la confianza en el modelo, respaldar la toma de decisiones y depurar y mejorar el rendimiento del modelo.

La función explicativa de Piloto automático para la clasificación de textos utiliza el método de atribución axiomática *Integrated Gradients*. Este enfoque se basa en una implementación de [Axiomatic Attribution for Deep Network](https://arxiv.org/pdf/1703.01365.pdf).

Piloto automático genera el informe de explicabilidad como un archivo JSON. El informe incluye detalles del análisis que se basan en el conjunto de datos de validación. Cada muestra utilizada para generar el informe contiene la siguiente información.
+ `text`: se explica el contenido del texto introducido.
+ `token_scores`: la lista de puntuaciones de cada token del texto.
+ 
  + `attribution`: la puntuación que muestra la importancia del token.
  + `description.partial_text`: la subcadena parcial que representa el token.
+ `predicted_label`: la clase de etiqueta pronosticada por el mejor candidato para el modelo.
+ `probability`: la confianza con la que se predijo la `predicted_label`.

Puede encontrar el prefijo Amazon S3 de los artefactos de explicabilidad generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

Lo que sigue es un ejemplo del contenido de análisis que puede encontrar en los artefactos de explicabilidad.

```
{
    "text": "It was a fantastic movie!",
    "predicted_label": 2,
    "probability": 0.9984835,
    "token_scores": [
        {
            "attribution": 0,
            "description": {
                "partial_text": "It"
            }
        },
        {
            "attribution": -0.022447118861679088,
            "description": {
                "partial_text": "was"
            }
        },
        {
            "attribution": -0.2164326456817965,
            "description": {
                "partial_text": "a"
            }
        },
        {
            "attribution": 0.675,
            "description": {
                "partial_text": "fantastic"
            }
        },
        {
            "attribution": 0.416,
            "description": {
                "partial_text": "movie!"
            }
        }
    ]
}
```

En este ejemplo del informe JSON, la funcionalidad explicativa evalúa el texto `It was a fantastic movie!` y puntúa la contribución de cada uno de sus tokens a la etiqueta global prevista. La etiqueta pronosticada es `2`: un sentimiento muy positivo, con una probabilidad del 99,85 %. A continuación, el ejemplo de JSON detalla la contribución de cada token individual a esta predicción. Por ejemplo, el token `fantastic` tiene una atribución más fuerte que el token `was`. Es el token que más ha contribuido a la predicción final.

# Informe de rendimiento del modelo
<a name="text-classification-model-performance-report"></a>

Un informe de calidad de un modelo de Amazon SageMaker AI (también denominado informe de rendimiento) proporciona información valiosa e información de calidad para el mejor candidato de modelo generado por un trabajo de AutoML. Incluye información sobre los detalles del trabajo, el tipo de problema del modelo, la función objetivo y diversas métricas. En esta sección, se detalla el contenido de un informe de rendimiento para los problemas de clasificación de textos y se explica cómo acceder a las métricas como datos sin procesar en un archivo JSON.

Puede encontrar el prefijo Amazon S3 de los artefactos de informe de calidad del modelo generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

El informe de rendimiento consta de dos secciones:
+ La primera sección contiene detalles sobre el trabajo de Piloto automático generado por el modelo.
+  La segunda sección contiene un informe de calidad del modelo con varias métricas de rendimiento.

## Detalles del trabajo en Piloto automático
<a name="text-classification-performance-report-jobdetails"></a>

Esta primera sección del informe proporciona información general sobre el trabajo de Piloto automático que ha generado el modelo. En estos detalles, se incluye la siguiente información.
+ Nombre del candidato en Piloto automático: el nombre del candidato a mejor modelo.
+ Nombre del trabajo en Piloto automático: el nombre del trabajo.
+ Tipo de problema: el tipo de problema. En nuestro caso, *clasificación de textos*.
+ Métrica objetiva: la métrica objetiva utilizada para optimizar el rendimiento del modelo. En nuestro caso, *precisión*.
+ Dirección de optimización: indica si se debe minimizar o maximizar la métrica objetivo.

## Informe de calidad del modelo
<a name="text-classification-performance-report-modelquality"></a>

La información sobre la calidad del modelo se genera mediante la información sobre modelos de Piloto automático. El contenido del informe que se genera depende del tipo de problema que se aborde. El informe especifica el número de filas que se incluyeron en el conjunto de datos de evaluación y el momento en que se realizó la evaluación.

### Tablas de métricas
<a name="text-classification-model-quality-report-metrics"></a>

La primera parte del informe de calidad del modelo contiene tablas de métricas. Son las adecuadas para el tipo de problema que abordó el modelo.

La siguiente imagen es un ejemplo de una tabla de métricas generada por Piloto automático para un problema de clasificación de imágenes o textos. Muestra el nombre, el valor y la desviación estándar de la métrica.

![\[Ejemplo de informe de métricas de clasificación de imágenes o texto de Amazon SageMaker Autopilot Model Insights.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Información gráfica sobre el rendimiento del modelo
<a name="text-classification-model-quality-report-graphs"></a>

La segunda parte del informe de calidad del modelo contiene información gráfica para ayudarle a evaluar el rendimiento del modelo. El contenido de esta sección depende del tipo de problema seleccionado.

#### Matriz de confusión
<a name="text-classification--model-insights-confusion-matrix"></a>

Una matriz de confusión es una forma de visualizar la precisión de las predicciones realizadas por un modelo para la clasificación binaria y multiclase de diferentes problemas.

Los componentes del gráfico de **tasa de falsos positivos** (FPR) y **tasa de positivos reales** (TPR) se definen de la siguiente manera.
+ Predicciones correctas
  + **Positivo real** (TP): el valor predicho es 1 y el valor real es 1.
  + **Negativo real** (TN): el valor predicho es 0 y el valor real es 0.
+ Predicciones erróneas
  + **Positivo falso** (FP): el valor predicho es 1, pero el valor real es 0.
  + **Falso negativo** (FN): el valor predicho es 0, pero el valor real es 1.

La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El número y el porcentaje de predicciones correctas e incorrectas para las etiquetas reales
+ El número y el porcentaje de predicciones precisas en la diagonal desde la esquina superior izquierda hasta la esquina inferior derecha
+ El número y el porcentaje de predicciones incorrectas en la diagonal desde la esquina superior derecha hasta la esquina inferior izquierda

Las predicciones incorrectas en una matriz de confusión son los valores de confusión.

El diagrama siguiente muestra un ejemplo de matriz de confusión para un problema de clasificación multiclase. La matriz de confusión del informe de calidad del modelo contiene lo siguiente.
+ El eje vertical se divide en tres filas que contienen tres etiquetas reales diferentes.
+ El eje horizontal se divide en tres columnas que contienen las etiquetas que predijo el modelo.
+ La barra de colores asigna un tono más oscuro a un número mayor de muestras para indicar visualmente el número de valores que se clasificaron en cada categoría.

En el siguiente ejemplo, el modelo predijo correctamente 354 valores reales para la etiqueta **f**, 1094 valores para la etiqueta **i** y 852 valores para la etiqueta **m**. La diferencia en el tono indica que el conjunto de datos no está equilibrado, ya que hay muchas más etiquetas para el valor **i** que para **f** o **m**.

![\[Ejemplo de matriz de confusión multiclase de Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


La matriz de confusión del informe de calidad del modelo proporcionado puede incluir un máximo de 15 etiquetas para los tipos de problemas de clasificación multiclase. Si una fila correspondiente a una etiqueta muestra un valor `Nan`, significa que el conjunto de datos de validación utilizado para comprobar las predicciones del modelo no contiene datos con esa etiqueta.

# Creación de un trabajo de AutoML para la previsión de serie temporal con la API
<a name="autopilot-create-experiment-timeseries-forecasting"></a>

En machine learning, la previsión se refiere al proceso de predecir los resultados o tendencias futuros en función de patrones y datos históricos. Al analizar datos de series temporales pasadas e identificar los patrones subyacentes, los algoritmos de machine learning pueden hacer predicciones y proporcionar información valiosa sobre el comportamiento futuro. Al pronosticar, el objetivo es desarrollar modelos que puedan capturar con precisión la relación entre las variables de entrada y la variable objetivo a lo largo del tiempo. Esto implica examinar varios factores, como las tendencias, la estacionalidad y otros patrones relevantes de los datos. La información recopilada se utiliza luego para entrenar un modelo de machine learning. El modelo entrenado es capaz de generar predicciones tomando nuevos datos de entrada y aplicando las relaciones y los patrones aprendidos. Puede proporcionar pronósticos para una amplia gama de casos de uso, como proyecciones de ventas, tendencias del mercado de valores, pronósticos meteorológicos, pronósticos de demanda y muchos más.

[Las siguientes instrucciones muestran cómo crear un trabajo de Amazon SageMaker Autopilot como experimento piloto para tipos de problemas de previsión de series temporales mediante SageMaker API Reference.](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html)

**nota**  
Las tareas como la clasificación de textos e imágenes, la previsión de series temporales y el refinamiento de modelos de lenguaje de gran tamaño están disponibles exclusivamente en la versión 2 de la [API de REST de AutoML](autopilot-reference.md). Si su idioma preferido es Python, puede consultar directamente el [MLV2 objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del SDK de Amazon SageMaker Python. [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)  
Los usuarios que prefieran la comodidad de una interfaz de usuario pueden usar [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acceder a modelos previamente entrenados y modelos básicos de IA generativa, o crear modelos personalizados adaptados a textos específicos, clasificación de imágenes, necesidades de previsión o IA generativa.

Puede crear un experimento de previsión de series temporales con piloto automático mediante programación llamando a la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API en cualquier idioma compatible con Amazon Autopilot o el. SageMaker AWS CLI

Para obtener información sobre cómo se traduce esta acción de API en una función en el lenguaje que usted prefiera, consulte la sección [Véase también](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` en AWS SDK para Python (Boto3).

Piloto automático entrena a varios modelos candidatos con su serie temporal objetivo y, a continuación, selecciona un modelo de pronóstico óptimo para una métrica objetivo determinada. Cuando los candidatos a modelo hayan recibido entrenamiento, podrá encontrar las mejores métricas candidatas en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html#sagemaker-Type-CandidateProperties-CandidateMetrics)`.

En las siguientes secciones se definen los parámetros de solicitud de entrada obligatorios y opcionales para la API `CreateAutoMLJobV2` utilizada en la previsión de series temporales.

**nota**  
Consulte el cuaderno [Previsión de series temporales con Amazon SageMaker Autopilot para ver un ejemplo práctico y práctico de previsión](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/autopilot_time_series.ipynb) de series temporales. En este cuaderno, utiliza Amazon SageMaker Autopilot para entrenar un modelo de series temporales y producir predicciones utilizando el modelo entrenado. El cuaderno proporciona instrucciones para recuperar un conjunto de datos históricos tabulares listo para usar en Amazon S3.

## Requisitos previos
<a name="autopilot-timeseries-forecasting-prerequisites"></a>

Antes de usar el piloto automático para crear un experimento de previsión de series temporales en SageMaker IA, asegúrese de:
+ Prepare su conjunto de datos de series temporales. La preparación del conjunto de datos implica recopilar datos relevantes de diversas fuentes, limpiarlos y filtrarlos para eliminar el ruido y las incoherencias y organizarlos en un formato estructurado. Consulte [Formato de conjuntos de datos de series temporales y métodos de relleno de valores faltantes](timeseries-forecasting-data-format.md) para obtener más información sobre los requisitos de formato de series temporales en Piloto automático. Si lo desea, puede complementar su conjunto de datos con el calendario de días festivos del país que elija para capturar los patrones asociados. Para obtener más información sobre los calendarios de días festivos, consulte [Calendarios de días festivos nacionales](autopilot-timeseries-forecasting-holiday-calendars.md).
**nota**  
Recomendamos proporcionar al menos de 3 a 5 puntos de datos históricos por cada punto de datos futuro que desee predecir. Por ejemplo, para prever con 7 días de antelación (horizonte de 1 semana) en función de los datos diarios, entrene el modelo con un mínimo de 21 a 35 días de datos históricos. Asegúrese de proporcionar datos suficientes para captar los patrones estacionales y recurrentes. 
+ Coloque el conjunto de datos de serie temporal en un bucket de Amazon S3.
+ Conceda acceso completo al depósito de Amazon S3 que contiene los datos de entrada para la función de ejecución de SageMaker IA utilizada para ejecutar el experimento. Una vez hecho esto, puede usar el ARN de este rol de ejecución en las solicitudes de la API de Piloto automático.
  + Para obtener información sobre cómo recuperar su función de ejecución de SageMaker IA, consulte[Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role).
  + Para obtener información sobre cómo conceder permisos a su función de ejecución de SageMaker IA para acceder a uno o más buckets específicos en Amazon S3, consulte *Añadir permisos adicionales de Amazon S3 a una función de ejecución de SageMaker IA* en[Creación de un rol de ejecución](sagemaker-roles.md#sagemaker-roles-create-execution-role).

## Parámetros necesarios
<a name="timeseries-forecasting-api-required-params"></a>

Al llamar a `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para crear un experimento de Piloto automático a fin de realizar una previsión de series temporales, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar el nombre del trabajo. El nombre debe ser del tipo `string` y tener una longitud de caracteres de entre 1 y 32.
+ Al menos un `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` en `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)`, en el que usted especifique el nombre del bucket de Amazon S3 que contiene sus datos. Si lo desea, puede especificar el contenido (archivos CSV o Parquet) y los tipos de compresión (GZip).
+ Un `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` del tipo `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` para configurar los ajustes de su trabajo de previsión de series temporales. Es especialmente importante que especifique lo siguiente:
  + La **frecuencia** de las predicciones; es decir, la granularidad deseada (por hora, día, mes, etc.) de su previsión.

    Los intervalos válidos son un número entero seguido de `Y` (año), `M` (mes), `W` (semana), `D` (día), `H` (hora) y `min` (minuto). Por ejemplo, `1D` indica todos los días y `15min` indica cada 15 minutos. El valor de una frecuencia no debe superponerse con la siguiente frecuencia mayor. Por ejemplo, debe utilizar una frecuencia de `1H` en lugar de `60min`.

    Los valores válidos de cada frecuencia son los siguientes:
    + Minuto: de 1 a 59
    + Hora: de 1 a 23
    + Día: de 1 a 6
    + Semana: de 1 a 4
    + Mes: de 1 a 11
    + Año: 1
  + El **horizonte** de predicciones de su pronóstico; es decir, el número de intervalos de tiempo que predice el modelo. El horizonte de previsión también se denomina longitud de predicción. El horizonte máximo de previsión es 500 intervalos temporales o 1/4 de los intervalos temporales del conjunto de datos (el valor más pequeño).
  + A, [TimeSeriesConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html)en la que se define el esquema del conjunto de datos para asignar los encabezados de las columnas a la previsión especificando:
    + Un `TargetAttributeName`: la columna que contiene los datos históricos del campo objetivo que se va a pronosticar.
    + Un `TimestampAttributeName`: la columna que contiene un punto en el tiempo en el que se registra el valor objetivo de un elemento determinado.
    + Un `ItemIdentifierAttributeName`: la columna que contiene los identificadores de los elementos para los que desea predecir el valor objetivo.

  Lo que sigue es un ejemplo de estos parámetros de solicitud. En este ejemplo, está configurando una previsión diaria para la cantidad o el nivel de demanda esperados de artículos específicos durante un periodo de 20 días.

  ```
  "AutoMLProblemTypeConfig": { 
          "ForecastFrequency": "D",
          "ForecastHorizon": 20,
          "TimeSeriesConfig": {
              "TargetAttributeName": "demand",
              "TimestampAttributeName": "timestamp",
              "ItemIdentifierAttributeName": "item_id"
          },
  ```
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos. Puede utilizar el ARN de la función de ejecución a la que ha concedido acceso a sus datos.

Todos los demás parámetros son opcionales. Por ejemplo, puede establecer cuantiles de previsión específicos, elegir un método de relleno para los valores que faltan en el conjunto de datos o definir cómo agregar los datos que no se ajustan a la frecuencia de la previsión. Para saber cómo configurar esos parámetros adicionales, consulte [Parámetros opcionales](#timeseries-forecasting-api-optional-params).

## Parámetros opcionales
<a name="timeseries-forecasting-api-optional-params"></a>

En las siguientes secciones, se proporcionan detalles de algunos parámetros opcionales que puede pasar a la predicción de series temporales de AutoML.

### Cómo especificar los algoritmos
<a name="timeseries-forecasting-algorithms-selection"></a>

De forma predeterminada, el trabajo de Piloto automático entrena una lista predefinida de algoritmos en su conjunto de datos. No obstante, puede proporcionar un subconjunto de la selección de algoritmos predeterminada.

Para la previsión de series temporales, debe elegir `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` como tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

A continuación, puede especificar una matriz de los seleccionados `AutoMLAlgorithms` en el `AlgorithmsConfig` atributo de [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html).

A continuación se muestra un ejemplo de un atributo `AlgorithmsConfig` que enumera exactamente tres algoritmos ("cnn-qr", "prophet", "arima") en su campo `AutoMLAlgorithms`.

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)": {
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["cnn-qr", "prophet", "arima"]}
            ]
         },
       },
     },
  }
```

Para ver la lista de algoritmos disponibles para la previsión de serie temporal, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms). Para obtener información sobre cada algoritmo, consulte [Compatibilidad de algoritmos para la previsión de series temporales](timeseries-forecasting-algorithms.md).

### Cómo especificar cuantiles personalizados
<a name="timeseries-forecasting-custom-quantiles"></a>

Piloto automático entrena a seis modelos candidatos con su serie temporal objetivo; luego, combina estos modelos con un método de conjunto de apilamiento a fin de crear un modelo de previsión óptimo para una métrica objetivo determinada. Cada modelo de pronóstico de Piloto automático genera un pronóstico probabilístico con pronósticos en cuantiles de entre P1 y P99. Estos cuantiles se utilizan para contabilizar la incertidumbre de las previsiones. De forma predeterminada, se generarán pronósticos para los valores 0,1 (`p10`), 0,5 (`p50`) y 0,9 (`p90`). Puede especificar sus propios cuantiles. 

En el piloto automático, puede especificar hasta cinco cuantiles de previsión, de 0,01 (`p1`) a 0,99 (`p99`), mediante incrementos de 0,01 o más en el atributo de. `ForecastQuantiles` [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)

En este ejemplo, se configura una previsión diaria de los percentiles 10, 25, 50, 75 y 90 para la cantidad o el nivel de demanda esperados de artículos específicos durante un periodo de 20 días.

```
"AutoMLProblemTypeConfig": { 
        "ForecastFrequency": "D",
        "ForecastHorizon": 20,
        "ForecastQuantiles": ["p10", "p25", "p50", "p75", "p90"],
        "TimeSeriesConfig": {
            "TargetAttributeName": "demand",
            "TimestampAttributeName": "timestamp",
            "ItemIdentifierAttributeName": "item_id"
        },
```

### Cómo agregar datos para distintas frecuencias de previsión
<a name="timeseries-forecasting-aggregation"></a>

Para crear un modelo de previsión (también denominado el mejor modelo candidato del experimento), debe especificar una frecuencia de previsión. La frecuencia de previsión determina la frecuencia de las predicciones en sus previsiones. Por ejemplo, las previsiones de ventas mensuales. El mejor modelo de Piloto automático puede generar pronósticos para frecuencias de datos superiores a la frecuencia con la que se registran los datos.

Durante el entrenamiento, Piloto automático agrega cualquier dato que no se ajuste a la frecuencia de previsión que especifique. Por ejemplo, puede que tenga algunos datos diarios, pero que especifique una frecuencia de previsión semanal. Piloto automático ajusta los datos diarios en función de la semana a la que pertenecen. Luego, Piloto automático los combina en un solo registro para cada semana.

Durante la agregación, el método de transformación predeterminado consiste en sumar los datos. Puede configurar la agregación al crear su trabajo de AutoML en el `Transformations` atributo de. [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) Los métodos de agregación compatibles son `sum` (predeterminado), `avg`, `first`, `min` y `max`. La agregación solo se admite en la columna de destino.

En el siguiente ejemplo, configura la agregación para calcular la media de las previsiones promocionales individuales y proporcionar los valores finales de las previsiones agregadas.

```
"Transformations": {
            "Aggregation": {
                "promo": "avg"
            }
        }
```

### Cómo gestionar los valores que faltan en los conjuntos de datos de entrada
<a name="timeseries-forecasting-fill-missing-values"></a>

Piloto automático proporciona varios métodos de relleno para gestionar los valores que faltan en las columnas objetivo y otras columnas numéricas de sus conjuntos de datos de series temporales. Para obtener información sobre la lista de métodos de relleno compatibles y su lógica de relleno disponible, consulte [Gestión de valores que faltan](timeseries-forecasting-data-format.md#timeseries-missing-values).

Usted configura su estrategia de llenado en el `Transformations` atributo de [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)al crear su trabajo de AutoML.

Para configurar un método de relleno, debe proporcionar un par clave-valor:
+ La clave es el nombre de la columna cuyo método de relleno quiera especificar.
+ El valor asociado a la clave es un objeto que define la estrategia de relleno de esa columna.

Puede especificar varios métodos de relleno para una sola columna.

Para establecer un valor específico para el método de relleno, debe establecer el parámetro de relleno según el valor del método de relleno deseado (por ejemplo, `"backfill" : "value"`) y definir el valor de relleno real en un parámetro adicional con el sufijo “\$1value”. Por ejemplo, para establecer `backfill` a un valor de `2`, debe incluir dos parámetros: `"backfill": "value"` y `"backfill_value":"2"`.

En el siguiente ejemplo, se especifica la estrategia de relleno para la columna de datos incompleta (“precio”) de la siguiente manera: todos los valores faltantes entre el primer punto de datos de un artículo y el último se establecen en `0`; después, todos los valores faltantes se rellenan con el valor `2` hasta la fecha de finalización del conjunto de datos.

```
"Transformations": {
            "Filling": {
                "price": {
                        "middlefill" : "zero",
                        "backfill" : "value",
                        "backfill_value": "2"
                }
            }
        }
```

### Cómo especificar una métrica objetivo
<a name="timeseries-forecasting-set-objective-metric"></a>

Piloto automático produce métricas de precisión para evaluar los modelos candidatos y ayudarlo a elegir cuál usar para generar pronósticos. Cuando ejecuta un experimento de previsión de series temporales, puede elegir AutoML para que Piloto automático optimice el predictor de forma automática, o puede elegir manualmente un algoritmo para su predictor.

De forma predeterminada, Piloto automático utiliza la pérdida de cuantil ponderada media. Sin embargo, puede configurar la métrica del objetivo al crear su trabajo de AutoML en el `MetricName` atributo de [Auto MLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) Objective.

Para ver la lista de algoritmos disponibles, consulte [Compatibilidad de algoritmos para la previsión de series temporales](timeseries-forecasting-algorithms.md).

### Cómo incorporar la información sobre días festivos nacionales a su conjunto de datos
<a name="timeseries-forecasting-add-holiday-calendar"></a>

En Piloto automático, puede incorporar a su serie temporal un conjunto de datos, con ingeniería de características, con información sobre los días festivos nacionales. Piloto automático proporciona soporte nativo para los calendarios de días festivos de más de 250 países. Después de elegir un país, Piloto automático aplica el calendario de días festivos de ese país a todos los elementos de su conjunto de datos durante el entrenamiento. Esto permite que el modelo identifique los patrones asociados a días festivos específicos.

Puede habilitar la función navideña al crear su trabajo de AutoML pasando un [HolidayConfigAttributes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html)objeto al atributo de. `HolidayConfig` [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) El objeto `HolidayConfigAttributes` contiene el atributo `CountryCode` de dos letras que determina el país del calendario festivo nacional público que se utiliza para aumentar el conjunto de datos de series temporales.

Consulte [Códigos de país](autopilot-timeseries-forecasting-holiday-calendars.md#holiday-country-codes) para obtener una lista de calendarios compatibles y su código de país correspondiente.

### Cómo habilitar la implementación automática
<a name="timeseries-forecasting-auto-model-deployment"></a>

Piloto automático le permite implementar automáticamente su modelo de pronóstico en un punto de conexión. Para permitir la implementación automática del mejor candidato modelo para un trabajo de AutoML, incluya un `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en la solicitud de trabajo de AutoML. Esto permite implementar el mejor modelo en un SageMaker punto final de IA. A continuación, se muestran las configuraciones disponibles para la personalización.
+ Para permitir que Piloto automático genere el nombre del punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` en `True`.
+ Si desea proporcionar su propio nombre para el punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

### Configuración de AutoML para iniciar un trabajo remoto en EMR sin servidor para conjuntos de datos grandes
<a name="autopilot-set-emr-serverless-api-forecasting"></a>

Puede configurar su trabajo de AutoML V2 para iniciar automáticamente un trabajo remoto en Amazon EMR sin servidor cuando se necesiten recursos de computación adicionales para procesar conjuntos de datos de gran tamaño. Al realizar una transición sin problemas a EMR sin servidor cuando es necesario, el trabajo de AutoML puede gestionar conjuntos de datos que, de otro modo, superarían los recursos aprovisionados inicialmente, sin ninguna intervención manual por su parte. EMR sin servidor está disponible para los tipos de problemas tabulares y de series temporales. Recomendamos configurar esta opción para conjuntos de datos de series temporales de más de 30 GB.

Para permitir que el trabajo de AutoML V2 pase automáticamente a EMR sin servidor para conjuntos de datos grandes, debe proporcionar un objeto `EmrServerlessComputeConfig`, que incluya un campo `ExecutionRoleARN`, para el `AutoMLComputeConfig` de la solicitud de entrada del trabajo AutoML V2.

`ExecutionRoleARN` es el ARN del rol de IAM que otorga al trabajo de AutoML V2 los permisos necesarios para ejecutar los trabajos de EMR sin servidor.

Este rol debe tener la siguiente relación de confianza:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

Y conceder los permisos para:
+ Crear, enumerar y actualizar aplicaciones de EMR sin servidor.
+ Iniciar, enumere, obtener o cancelar las ejecuciones de trabajos en una aplicación EMR sin servidor.
+ Etiquetar los recursos EMR sin servidor.
+ Pasar un rol de IAM al servicio de EMR sin servidor para su ejecución.

  Al conceder el permiso `iam:PassRole`, el trabajo de AutoML V2 puede asumir temporalmente el rol `EMRServerlessRuntimeRole-*` y pasarlo al servicio de EMR sin servidor. Estas son las funciones de IAM que utilizan los entornos de ejecución de trabajos sin servidor de EMR para acceder a AWS otros servicios y recursos necesarios durante el tiempo de ejecución, como Amazon S3 para el acceso a los datos, el registro CloudWatch , AWS Glue el acceso al catálogo de datos u otros servicios en función de sus requisitos de carga de trabajo.

  Consulte [Roles en tiempo de ejecución de trabajo para Amazon EMR sin servidor](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html) para obtener más información sobre los permisos de este rol.

La política de IAM definida en el documento JSON proporcionado concede esos permisos:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
           "Sid": "EMRServerlessCreateApplicationOperation",
           "Effect": "Allow",
           "Action": "emr-serverless:CreateApplication",
           "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListApplicationOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListApplications",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessApplicationOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:UpdateApplication",
                "emr-serverless:GetApplication"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessStartJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:StartJobRun",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessListJobRunOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:ListJobRuns",
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessJobRunOperations",
            "Effect": "Allow",
            "Action": [
                "emr-serverless:GetJobRun",
                "emr-serverless:CancelJobRun"
            ],
            "Resource": "arn:aws:emr-serverless:*:*:/applications/*/jobruns/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "EMRServerlessTagResourceOperation",
            "Effect": "Allow",
            "Action": "emr-serverless:TagResource",
            "Resource": "arn:aws:emr-serverless:*:*:/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/sagemaker:is-canvas-resource": "True",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "IAMPassOperationForEMRServerless",
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/EMRServerlessRuntimeRole-*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "emr-serverless.amazonaws.com",
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
         }
    ]
}
```

------

# Formato de conjuntos de datos de series temporales y métodos de relleno de valores faltantes
<a name="timeseries-forecasting-data-format"></a>

Los datos de series temporales se refieren a un conjunto de observaciones o mediciones registradas a intervalos de tiempo regulares. En este tipo de datos, cada observación está asociada a una marca temporal o periodo de tiempo específico, lo que crea una secuencia de puntos de datos ordenados cronológicamente.

Las columnas específicas que incluya en su conjunto de datos de series temporales dependen de los objetivos del análisis y de los datos de los que disponga. Como mínimo, los datos de serie temporal se componen de una tabla de tres columnas:
+ Una columna contiene identificadores únicos asignados a elementos individuales para hacer referencia a su valor en un momento específico.
+ Otra columna representa el point-in-time valor o el **objetivo** para registrar el valor de un elemento determinado en un momento específico. Tras entrenar al modelo en esos valores objetivo, esta columna objetivo contiene los valores que el modelo predice con una frecuencia específica dentro de un horizonte definido.
+ Además, se incluye una columna timestamp para registrar la fecha y la hora en que se midió el valor.
+ Las columnas adicionales pueden contener otros factores que pueden influir en el rendimiento de la previsión. Por ejemplo, en un conjunto de datos de series temporales para el comercio minorista en el que el objetivo son las ventas o los ingresos, puede que haya funciones que proporcionen información sobre las unidades vendidas, el identificador del producto, la ubicación de la tienda, el número de clientes y los niveles de inventario, así como indicadores covariables, como los datos meteorológicos o la información demográfica.

**nota**  
Puede agregar a su serie temporal un conjunto de datos, con ingeniería de características, con información sobre los días festivos nacionales. Al incluir los días festivos en su modelo de series temporales, puede capturar los patrones periódicos que crean los días festivos. Esto ayuda a que sus pronósticos reflejen mejor la estacionalidad subyacente de sus datos. Para obtener información sobre los calendarios disponibles por país, consulte [Calendarios de días festivos nacionales](autopilot-timeseries-forecasting-holiday-calendars.md)

## Formato de conjuntos de datos para la previsión de series temporales
<a name="timeseries-format"></a>

Piloto automático admite tipos de datos numéricos, categóricos, de texto y de fecha y hora. El tipo de datos de la columna objetivo debe ser numérico.

Piloto automático admite datos de serie temporal formateados como archivos CSV (opción predeterminada) o como archivos Parquet.
+ El **CSV** (comma-separated-values) es un formato de archivo basado en filas que almacena los datos en texto plano legible para las personas. Es una opción popular para el intercambio de datos, ya que es compatible con una amplia gama de aplicaciones.
+ **Parquet** es un formato de archivo basado en columnas en el que los datos se almacenan y procesan de forma más eficiente que en los formatos de archivo basados en filas. Esto los convierte en una mejor opción para los problemas en macrodatos.

Para obtener más información sobre los límites de recursos de los conjuntos de datos de series temporales para la previsión en Piloto automático, consulte [Límites de recursos de previsión de series temporales para Piloto Automático](timeseries-forecasting-limits.md).

## Gestión de valores que faltan
<a name="timeseries-missing-values"></a>

Un problema habitual en los datos de predicción de series temporales es la presencia de valores faltantes. Es posible que sus datos contengan valores faltantes por varias razones, como fallos de medición, problemas de formato, errores humanos o falta de información para registrar. Por ejemplo, si pronostica la demanda de productos para una tienda minorista y un artículo está agotado o no está disponible, no habría datos de ventas que registrar mientras ese artículo estuviera agotado. Si están suficientemente extendidos, los valores faltantes pueden afectar de manera significativa a la precisión de un modelo.

Piloto automático proporciona varios métodos de relleno para gestionar los valores que faltan, con distintas estrategias para la columna objetivo y otras columnas adicionales. El llenado es el proceso de añadir valores estandarizados a las entradas que faltan en su conjunto de datos.

Consulte [Cómo gestionar los valores que faltan en los conjuntos de datos de entrada](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-fill-missing-values) para obtener información sobre cómo configurar el método para rellenar los valores faltantes en su conjunto de datos de series temporales.

Piloto automático admite los siguientes métodos de relleno.
+ **Rellenado frontal:** rellena los valores faltantes entre el primer punto de datos registrado de todos los elementos y el punto de partida de cada elemento (cada elemento puede empezar en un momento diferente). Esto garantiza que los datos de cada elemento estén completos y abarquen desde el primer punto de datos registrado hasta su punto de partida respectivo.
+ **Relleno intermedio:** rellena los valores que falten entre las fechas de inicio y finalización de los elementos del conjunto de datos.
+ **Relleno trasero:** rellena los valores faltantes entre el último punto de datos de cada elemento (cada elemento puede detenerse en un momento diferente) y el último punto de datos registrado de todos los elementos.
+ **Relleno futuro:** rellena los valores que falten entre el último punto de datos registrado entre todos los elementos y el final del horizonte de previsión.

La siguiente imagen proporciona una representación visual de los diferentes métodos de relleno.

![\[Los diferentes métodos de llenado para la previsión de series temporales en Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/autopilot/autopilot-forecast-filling-methods.png)


### Elección de una lógica de relleno
<a name="filling-logic"></a>

Al elegir una lógica de llenado, debe considerar cómo interpretará su modelo la lógica. Por ejemplo, en un caso comercial, registrar 0 ventas de un artículo disponible es diferente de registrar 0 ventas de un artículo no disponible, ya que este último no implica una falta de interés del cliente en el artículo. Debido a esto, el relleno `0` en la columna de destino de la serie temporal podría causar que el predictor sea poco sesgado en sus predicciones, mientras que el relleno `NaN` podría pasar por alto las ocurrencias reales de 0 artículos disponibles que se venden y hacer que el predictor sea excesivamente sesgado.

### Lógica de relleno
<a name="filling-restrictions"></a>

Puede llevar a cabo el relleno de la columna de destino y otras columnas numéricas en sus conjuntos de datos. Las columnas de destino tienen pautas y restricciones de llenado diferentes a las del resto de las columnas numéricas.

Directrices de llenado


| Tipo de columna | ¿Llenado por defecto? | Métodos de llenado admitidos | Lógica de llenado predeterminada | Lógica de relleno aceptada | 
| --- | --- | --- | --- | --- | 
| Columna objetivo | Sí | Llenado medio y final | 0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 
| Otras columnas numéricas | No | Llenado medio, final y futuro | No hay valor predeterminado |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 

**nota**  
Tanto para la columna objetivo como para otras columnas numéricas, `mean`, `median`, `min` y `max` se calculan en función de una ventana sucesiva de las 64 entradas de datos más recientes antes de los valores faltantes.

# Calendarios de días festivos nacionales
<a name="autopilot-timeseries-forecasting-holiday-calendars"></a>

Piloto automático admite un conjunto de datos de ingeniería de características con información sobre días festivos nacionales para tener acceso a los calendarios de días festivos de más de 250 países. Las características del calendario de días festivos son especialmente útiles en el sector minorista, donde los días festivos pueden afectar significativamente a la demanda. En la siguiente sección se enumeran los códigos de país que puede usar para acceder a los calendarios de días festivos de cada país compatible.

Consulte [Cómo incorporar la información sobre días festivos nacionales a su conjunto de datos](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-add-holiday-calendar) para obtener información sobre cómo añadir un calendario en su conjunto de datos.

## Códigos de país
<a name="holiday-country-codes"></a>

Piloto automático proporciona soporte nativo para los calendarios de días festivos de los siguientes países. Use el **código de país** al especificar un país con la API.


| País | Código de país | 
| --- | --- | 
|   Afganistán   |   AF   | 
|   Islas Åland   |   AX   | 
|   Albania   |   AL   | 
|   Argelia   |   DZ   | 
|   Samoa Americana   |   AS   | 
|   Andorra   |   AD   | 
|   Angola   |   AO   | 
|   Anguila   |   AI   | 
|   Antártida   |   AQ   | 
|   Antigua y Barbuda   |   AG   | 
|   Argentina   |   AR   | 
|   Armenia   |   AM   | 
|   Aruba   |   AW   | 
|   Australia   |   AU   | 
|   Austria   |   AT   | 
|   Azerbaiyán   |   AZ   | 
|   Bahamas   |   BS   | 
|   Bahréin   |   BH   | 
|   Bangladesh   |   BD   | 
|   Barbados   |   BB   | 
|   Bielorrusia   |   BY   | 
|   Bélgica   |   BE   | 
|   Belice   |   BZ   | 
|   Benín   |   BJ   | 
|   Bermudas   |   BM   | 
|   Bután   |   BT   | 
|   Bolivia   |   BO   | 
|   Bosnia y Herzegovina   |   BA   | 
|   Botsuana   |   BW   | 
|   Isla Bouvet   |   BV   | 
|   Brasil   |   BR   | 
|   Territorio Británico del Océano Índico   |   IO   | 
|   Islas Vírgenes Británicas   |   VG   | 
|   Brunéi   |   BN   | 
|   Bulgaria   |   BG   | 
|   Burkina Faso   |   BF   | 
|   Burundi   |   BI   | 
|   Camboya   |   KH   | 
|   Camerún   |   CM   | 
|   Canadá   |   CA   | 
|   Cabo Verde   |   CV   | 
|   Caribe Neerlandés   |   BQ   | 
|   Islas Caimán   |   KY   | 
|   República Centroafricana   |   CF   | 
|   Chad   |   TD   | 
|   Chile   |   CL   | 
|   China   |   CN   | 
|   Isla de Navidad   |   CX   | 
|   Islas Cocos   |   CC   | 
|   Colombia   |   CO   | 
|   Comoras   |   KM   | 
|   Islas Cook   |   CK   | 
|   Costa Rica   |   CR   | 
|   Croacia   |   HR   | 
|   Cuba   |   CU   | 
|   Curazao   |   CW   | 
|   Chipre   |   CY   | 
|   Chequia   |   CZ   | 
|   República Democrática del Congo   |   CD   | 
|   Dinamarca   |   DK   | 
|   Yibuti   |   DJ   | 
|   Dominica   |   DM   | 
|   República Dominicana   |   DO   | 
|   Ecuador   |   EC   | 
|   Egipto   |   EG   | 
|   El Salvador   |   SV   | 
|   Guinea Ecuatorial   |   GQ   | 
|   Eritrea   |   ER   | 
|   Estonia   |   EE   | 
|   Suazilandia   |   SZ   | 
|   Etiopía   |   ET   | 
|   Islas Malvinas   |   FK   | 
|   Islas Faroe   |   FO   | 
|   Fiyi   |   FJ   | 
|   Finlandia   |   FI   | 
|   Francia   |   FR   | 
|   Guayana Francesa   |   GF   | 
|   Polinesia Francesa   |   PF   | 
|   Territorios Australes Franceses   |   TF   | 
|   Gabón   |   GA   | 
|   Gambia   |   GM   | 
|   Georgia   |   GE   | 
|   Alemania   |   DE   | 
|   Ghana   |   GH   | 
|   Gibraltar   |   GI   | 
|   Grecia   |   GR   | 
|   Groenlandia   |   GL   | 
|   Granada   |   GD   | 
|   Guadalupe   |   GP   | 
|   Guam   |   GU   | 
|   Guatemala   |   GT   | 
|   Guernsey   |   GG   | 
|   Guinea   |   GN   | 
|   Guinea-Bissau   |   GW   | 
|   Guyana   |   GY   | 
|   Haití   |   HT   | 
|   Isla e McDonald islas Heard   |   HM   | 
|   Honduras   |   HN   | 
|   Hong Kong   |   HK   | 
|   Hungría   |   HU   | 
|   Iceland   |   IS   | 
|   India   |   IN   | 
|   Indonesia   |   ID   | 
|   Irán   |   IR   | 
|   Irak   |   IQ   | 
|   Irlanda   |   IE   | 
|   Isla de Man   |   IM   | 
|   Israel   |   IL   | 
|   Italia   |   IT   | 
|   Costa de Marfil   |   CI   | 
|   Jamaica   |   JM   | 
|   Japón   |   JP   | 
|   Jersey   |   JE   | 
|   Jordania   |   JO   | 
|   Kazajistán   |   KZ   | 
|   Kenia   |   KE   | 
|   Kiribati   |   KI   | 
|   Kosovo   |   XK   | 
|   Kuwait   |   KW   | 
|   Kirguistán   |   KG   | 
|   Laos   |   LA   | 
|   Letonia   |   LV   | 
|   Líbano   |   LB   | 
|   Lesoto   |   LS   | 
|   Liberia   |   LR   | 
|   Libia   |   LY   | 
|   Liechtenstein   |   LI   | 
|   Lituania   |   LT   | 
|   Luxemburgo   |   LU   | 
|   Macao   |   MO   | 
|   Madagascar   |   MG   | 
|   Malawi   |   MW   | 
|   Malasia   |   MY   | 
|   Maldivas   |   MV   | 
|   Mali   |   ML   | 
|   Malta   |   MT   | 
|   Islas Marshall   |   MH   | 
|   Martinica   |   MQ   | 
|   Mauritania   |   MR   | 
|   Mauricio   |   MU   | 
|   Mayotte   |   YT   | 
|   México   |   MX   | 
|   Micronesia   |   FM   | 
|   Moldavia   |   MD   | 
|   Mónaco   |   MC   | 
|   Mongolia   |   MN   | 
|   Montenegro   |   ME   | 
|   Montserrat   |   MS   | 
|   Marruecos   |   MA   | 
|   Mozambique   |   MZ   | 
|   Myanmar   |   MM   | 
|   Namibia   |   NA   | 
|   Nauru   |   NR   | 
|   Nepal   |   NP   | 
|   Países Bajos   |   NL   | 
|   Nueva Caledonia   |   NC   | 
|   Nueva Zelanda   |   NZ   | 
|   Nicaragua   |   NI   | 
|   Níger   |   NE   | 
|   Nigeria   |   NG   | 
|   Niue   |   NU   | 
|   Isla Norfolk   |   NF   | 
|   Corea del Norte   |   KP   | 
|   Macedonia del Norte   |   MK   | 
|   Islas Marianas del Norte   |   MP   | 
|   Noruega   |   NO   | 
|   Omán   |   OM   | 
|   Pakistán   |   PK   | 
|   Palaos   |   PW   | 
|   Palestina   |   PS   | 
|   Panamá   |   PA   | 
|   Papúa Nueva Guinea   |   PG   | 
|   Paraguay   |   PY   | 
|   Perú   |   PE   | 
|   Filipinas   |   PH   | 
|   Islas Pitcairn   |   PN   | 
|   Polonia   |   PL   | 
|   Portugal   |   PT   | 
|   Puerto Rico   |   PR   | 
|   Catar   |   QA   | 
|   República del Congo   |   CG   | 
|   Reunión   |   RE   | 
|   Rumanía   |   RO   | 
|   Federación de Rusia   |   RU   | 
|   Ruanda   |   RW   | 
|   San Bartolomé   |   BL   | 
|   Santa Elena, Ascensión y Tristán de Acuña   |   SH   | 
|   San Cristóbal y Nieves   |   KN   | 
|   Santa Lucía   |   LC   | 
|   San Martín (Francia)   |   MF   | 
|   San Pedro y Miquelón   |   PM   | 
|   San Vicente y las Granadinas   |   VC   | 
|   Samoa   |   WS   | 
|   San Marino   |   SM   | 
|   Santo Tomé y Príncipe   |   ST   | 
|   Arabia Saudí   |   SA   | 
|   Senegal   |   SN   | 
|   Serbia   |   RS   | 
|   Seychelles   |   SC   | 
|   Sierra Leona   |   SL   | 
|   Singapur   |   SG   | 
|   San Martín (Países Bajos)   |   SX   | 
|   Eslovaquia   |   SK   | 
|   Eslovenia   |   SI   | 
|   Islas Salomón   |   SB   | 
|   Somalia   |   SO   | 
|   Sudáfrica   |   ZA   | 
|   Islas Georgias del Sur y Sandwich del Sur   |   GS   | 
|   Corea del Sur   |   KR   | 
|   Sudán del Sur   |   SS   | 
|   España   |   ES   | 
|   Sri Lanka   |   LK   | 
|   Sudán   |   SD   | 
|   Surinam   |   SR   | 
|   Svalbard y Jan Mayen   |   SJ   | 
|   Suecia   |   SE   | 
|   Suiza   |   CH   | 
|   República Árabe Siria   |   SY   | 
|   Taiwán   |   TW   | 
|   Tayikistán   |   TJ   | 
|   Tanzania   |   TZ   | 
|   Tailandia   |   TH   | 
|   Timor Oriental   |   TL   | 
|   Togo   |   TG   | 
|   Tokelau   |   TK   | 
|   Tonga   |   TO   | 
|   Trinidad y Tobago   |   TT   | 
|   Túnez   |   TN   | 
|   Turquía   |   TR   | 
|   Turkmenistán   |   TM   | 
|   Islas Turcas y Caicos   |   TC   | 
|   Tuvalu   |   TV   | 
|   Uganda   |   UG   | 
|   Ucrania   |   UA   | 
|   Emiratos Árabes Unidos   |   AE   | 
|   Reino Unido   |   UK   | 
|   Naciones Unidas   |   UN   | 
|   Estados Unidos   |   US   | 
|   Islas Ultramarinas Menores de Estados Unidos   |   UM   | 
|   Islas Vírgenes de los Estados Unidos   |   VI   | 
|   Uruguay   |   UY   | 
|   Uzbekistán   |   UZ   | 
|   Vanuatu   |   VU   | 
|   Ciudad del Vaticano   |   VA   | 
|   Venezuela   |   VE   | 
|   Vietnam   |   VN   | 
|   Wallis y Futuna   |   WF   | 
|   Sahara Occidental   |   EH   | 
|   Yemen   |   YE   | 
|   Zambia   |   ZM   | 
|   Zimbabue   |   ZW   | 

# Métricas objetivo
<a name="timeseries-objective-metric"></a>

Piloto automático produce métricas de precisión para evaluar los modelos candidatos y ayudarlo a elegir cuál usar para generar pronósticos. Puede dejar que Piloto automático optimice el predictor de forma automática o puede elegir manualmente un algoritmo para su predictor. De forma predeterminada, Piloto automático utiliza la pérdida de cuantil ponderada media.

La siguiente lista contiene los nombres de las métricas que están disponibles actualmente para medir el rendimiento de los modelos de previsión de series temporales.

**`RMSE`**  
Raíz del error cuadrático medio (RMSE): mide la raíz cuadrada de la diferencia cuadrática entre los valores pronosticados y los reales, y se promedia sobre todos los valores. Es una métrica importante para indicar la presencia de valores atípicos y errores de modelo grandes. Los valores van desde cero (0) hasta infinito, y los números más pequeños indican el modelo que se ajusta mejor a los datos. El RMSE depende de la escala y no debe usarse para comparar conjuntos de datos de diferentes tamaños.

**`wQL`**  
Pérdida de cuantil ponderada (wQL): evalúe la precisión de la previsión midiendo las diferencias absolutas ponderadas entre los cuantiles P10, P50 y P90 previstos y reales; los valores más bajos indican un mejor rendimiento.

**`Average wQL (default)`**  
Pérdida de cuantil ponderada media (wQL promedio): evalúa el pronóstico promediando la exactitud de los cuantiles P10, P50 y P90. Un valor más bajo indica un modelo más exacto.

**`MASE`**  
Error escalado absoluto medio (MASE): el error absoluto medio de la previsión normalizado mediante el error absoluto medio de un método de previsión de referencia simple. Un valor más bajo indica un modelo más preciso, en el que MASE <1 se considera mejor que la referencia y MASE >1 se considera peor que la referencia.

**`MAPE`**  
Error porcentual absoluto medio (MAPE): el porcentaje de error (diferencia porcentual entre el valor medio previsto y el valor real) promediado en todos los puntos temporales. Un valor más bajo indica un modelo más exacto; donde MAPE = 0, es un modelo sin errores.

**`WAPE`**  
Error porcentual absoluto ponderado (WAPE): suma del error absoluto normalizado por la suma del objetivo absoluto, que mide la desviación general de los valores pronosticados con respecto a los valores observados. Un valor más bajo indica un modelo más exacto.

# Compatibilidad de algoritmos para la previsión de series temporales
<a name="timeseries-forecasting-algorithms"></a>

Piloto automático entrena los siguientes seis algoritmos integrados con la serie temporal objetivo. Luego, utiliza un método de conjunto de apilamiento para combinar estos modelos candidatos a fin de crear un modelo de previsión óptimo para una métrica objetivo determinada.
+ **Red neuronal convolucional: regresión cuantil (CNN-QR): CNN-QR** es un algoritmo de aprendizaje automático patentado para pronosticar series temporales utilizando redes neuronales convolucionales causales (). CNNs CNN-QR funciona mejor con conjuntos de datos grandes que contienen cientos de series temporales.
+ **DeepAr\$1**: DeepAr\$1 es un algoritmo de aprendizaje automático patentado para pronosticar series temporales mediante redes neuronales recurrentes (). RNNs DeepAR\$1 funciona mejor con conjuntos de datos grandes que contienen cientos de series temporales de características.
+ **Prophet**: [Prophet](https://facebook.github.io/prophet/) es un popular modelo local de series temporales estructurales bayesianas basado en un modelo aditivo en el que las tendencias no lineales se ajustan a la estacionalidad anual, semanal y diaria. El algoritmo Prophet utiliza la [clase Prophet](https://facebook.github.io/prophet/docs/quick_start.html#python-ap) de la implementación de Prophet en Python. Funciona mejor con series temporales con fuertes efectos estacionales y con una cantidad de datos históricos que refleje varios periodos estacionales. 
+ **Non-Parametric Time Series (NPTS)**: el algoritmo patentado NPTS es un pronosticador básico, probabilístico y escalable. Predice la distribución futura de valores de una serie temporal determinada mediante muestreos de observaciones anteriores. El NPTS resulta especialmente útil cuando se trabaja con series temporales dispersas o intermitentes. 
+ **Autoregressive Integrated Moving Average (ARIMA)**: ARIMA es un algoritmo estadístico local de uso común para la predicción de series temporales. El algoritmo captura estructuras temporales estándar (organizaciones con patrones de tiempo) en el conjunto de datos de entrada. Resulta especialmente útil para conjuntos de datos simples con menos de 100 series temporales. 
+ **Exponential Smoothing (ETS)**: el ETS es un algoritmo estadístico de uso común para la predicción de series temporales. El algoritmo es especialmente útil para conjuntos de datos simples con menos de 100 series temporales y conjuntos de datos con patrones de estacionalidad. El ETS calcula un promedio ponderado sobre todas las observaciones en el conjunto de datos de las series temporales como su predicción, y la ponderación decrece exponencialmente a lo largo del tiempo.

# Previsión de un modelo de piloto automático implementado
<a name="timeseries-forecasting-deploy-models"></a>

Después de entrenar sus modelos con la API de AutoML, puede implementarlos para realizar previsiones en tiempo real o por lotes. 

La API de AutoML entrena a varios modelos candidatos con sus datos de serie temporal y selecciona un modelo de previsión óptimo en función de una métrica objetivo determinada. Una vez que los candidatos a su modelo estén capacitados, podrá encontrar al mejor candidato en el Response [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) en [BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-CandidateName).

Para obtener predicciones con este modelo de mejor rendimiento, puede configurar un punto de conexión para obtener las previsiones de forma interactiva o utilizar la previsión por lotes para realizar predicciones a partir de un lote de observaciones.

**Consideraciones**
+ Al proporcionar datos de entrada para la previsión, el esquema de datos debe seguir siendo el mismo que el utilizado para entrenar al modelo, lo que incluye el número de columnas, los encabezados de las columnas y los tipos de datos. Puede realizar pronósticos para un elemento nuevo o existente IDs dentro del mismo intervalo de tiempo o uno diferente para realizar predicciones para un período de tiempo diferente.
+ Los modelos de predicción pronostican los puntos del horizonte de previsión en el futuro especificados en la solicitud de entrada durante el entrenamiento; es decir, desde la *fecha de finalización objetivo* hasta la *fecha de finalización objetivo \$1 horizonte de previsión*. A fin de usar el modelo para predecir fechas específicas, debe proporcionar los datos en el mismo formato que los datos de entrada originales, hasta una *fecha de finalización objetivo* determinada. En este escenario, el modelo empezará a realizar predicciones a partir de la nueva fecha finalización objetivo.

  Por ejemplo, si su conjunto de datos tuviera datos mensuales de enero a junio con un horizonte de previsión de 2, el modelo predeciría el valor objetivo para los próximos 2 meses, que serían julio y agosto. Si en agosto desea realizar una predicción para los próximos 2 meses, esta vez los datos de entrada deberían ser de enero a agosto, y el modelo realizará una predicción para los próximos 2 meses (septiembre y octubre).
+ Al prever puntos de datos futuros, no hay un mínimo establecido para la cantidad de datos históricos que se deben proporcionar. Incluya datos suficientes para captar los patrones estacionales y recurrentes en sus series temporales.

**Topics**
+ [Previsión en tiempo real](timeseries-forecasting-realtime.md)
+ [Previsión por lotes](timeseries-forecasting-batch.md)

# Previsión en tiempo real
<a name="timeseries-forecasting-realtime"></a>

La previsión en tiempo real resulta útil cuando se necesitan generar predicciones on-the-fly, como en el caso de aplicaciones que requieren respuestas inmediatas o cuando se realizan previsiones para puntos de datos individuales.

Al implementar su modelo AutoML como un punto de conexión en tiempo real, puede generar pronósticos bajo demanda y minimizar la latencia entre la recepción de nuevos datos y la obtención de predicciones. Esto hace que la previsión en tiempo real sea adecuada para aplicaciones que requieren capacidades de previsión inmediatas, personalizadas o basadas en eventos.

Para la previsión en tiempo real, el conjunto de datos debe ser un subconjunto del conjunto de datos de entrada. El punto de conexión en tiempo real tiene un tamaño de datos de entrada de aproximadamente 6 MB y un límite de tiempo de respuesta de 60 segundos. Recomendamos incluir uno o varios artículos a la vez.

Se puede utilizar SageMaker APIs para recuperar al mejor candidato de un trabajo de AutoML y, a continuación, crear un punto final de SageMaker IA con ese candidato.

También puede elegir la opción de implementación automática al crear el experimento de Piloto automático. Para obtener más información sobre cómo configurar la implementación automática de modelos, consulte [Cómo habilitar la implementación automática](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-auto-model-deployment).

**Para crear un punto final de SageMaker IA utilizando tu mejor modelo candidato:**

1. 

**Recuperación de los detalles del trabajo de AutoML.**

   El siguiente ejemplo de AWS CLI comando utiliza la API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obtener detalles del trabajo de AutoML, incluida la información sobre el mejor modelo candidato.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**Extraiga la definición del [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)contenedor del mejor modelo candidato.**

   Una definición de contenedor es el entorno contenerizado que se utiliza para alojar el modelo de SageMaker IA entrenado para realizar predicciones.

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
     --auto-ml-job-name job-name 
     --region region \
     --query 'BestCandidate.InferenceContainers[0]' \
     --output json
   ```

   Este comando extrae la definición del contenedor para el mejor modelo candidato y la almacena en la variable `BEST_CANDIDATE`.

1. 

**Cree un modelo de SageMaker IA utilizando la mejor definición de contenedor candidata.**

   Usa las definiciones de contenedor de los pasos anteriores para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API.

   ```
   aws sagemaker create-model \
               --model-name 'your-candidate-name>' \
               --primary-container "$BEST_CANDIDATE"
               --execution-role-arn 'execution-role-arn>' \
               --region 'region>
   ```

   El `--execution-role-arn` parámetro especifica la función de IAM que asume la SageMaker IA al utilizar el modelo para la inferencia. Para obtener más información sobre los permisos necesarios para este rol, consulte [CreateModel API: Permisos del rol de ejecución](https://docs.aws.amazon.com/).

1. 

**Cree una configuración de punto final de SageMaker IA utilizando el modelo.**

   El siguiente AWS CLI comando usa la [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para crear una configuración de punto final.

   ```
   aws sagemaker create-endpoint-config \
     --production-variants file://production-variants.json \
     --region 'region'
   ```

   Donde el archivo `production-variants.json` contiene la configuración del modelo, incluidos el nombre del modelo y el tipo de instancia.
**nota**  
Se recomienda utilizar instancias [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) para la previsión en tiempo real.

   ```
   [
       {
         "VariantName": "variant-name",
         "ModelName": "model-name",
         "InitialInstanceCount": 1,
         "InstanceType": "m5.12xlarge"
       }
     ]
   }
   ```

1. 

**Cree el punto final de SageMaker IA mediante la configuración del punto final.**

   En el siguiente AWS CLI ejemplo, se utiliza la [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para crear el punto final.

   ```
   aws sagemaker create-endpoint \
               --endpoint-name 'endpoint-name>' \
               --endpoint-config-name 'endpoint-config-name' \
               --region 'region'
   ```

   Compruebe el progreso de la implementación de su punto final de inferencia en tiempo real mediante la [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-endpoint \
               --endpoint-name 'endpoint-name' \
               --region 'region'
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. 

**Invoca el punto final de la SageMaker IA para hacer predicciones.**

   ```
   aws sagemaker invoke-endpoint \
               --endpoint-name 'endpoint-name' \ 
               --region 'region' \
               --body file://input-data-in-bytes.json \
               --content-type 'application/json' outfile
   ```

   Donde el archivo `input-data-in-bytes.json` contiene los datos de entrada para la predicción.

# Previsión por lotes
<a name="timeseries-forecasting-batch"></a>

La previsión por lotes, también conocida como inferencia fuera de línea, genera predicciones de modelos a partir de un lote de observaciones. La inferencia por lotes es una buena opción para conjuntos de datos grandes o si no necesita una respuesta inmediata a una solicitud de predicción del modelo.

Por el contrario, la inferencia en línea (inferencia en tiempo real) genera predicciones en tiempo real. 

Se puede utilizar SageMaker APIs para recuperar al mejor candidato de un trabajo de AutoML y, a continuación, enviar un lote de datos de entrada para su inferencia con ese candidato.

1. 

**Recuperación de los detalles del trabajo de AutoML.**

   El siguiente ejemplo de AWS CLI comando utiliza la API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obtener detalles del trabajo de AutoML, incluida la información sobre el mejor modelo candidato.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**Extraiga la definición del [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)contenedor del mejor modelo candidato.**

   Una definición de contenedor es el entorno contenerizado que se utiliza para alojar el modelo de SageMaker IA entrenado para realizar predicciones.

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
         --auto-ml-job-name job-name 
         --region region \
         --query 'BestCandidate.InferenceContainers[0]' \
         --output json
   ```

   Este comando extrae la definición del contenedor para el mejor modelo candidato y la almacena en la variable `BEST_CANDIDATE`.

1. 

**Cree un modelo de SageMaker IA utilizando la mejor definición de contenedor candidata.**

   Usa las definiciones de contenedor de los pasos anteriores para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API.

   ```
   aws sagemaker create-model \
         --model-name 'model-name' \
         --primary-container "$BEST_CANDIDATE"
         --execution-role-arn 'execution-role-arn>' \
         --region 'region>
   ```

   El `--execution-role-arn` parámetro especifica la función de IAM que asume la SageMaker IA al utilizar el modelo para la inferencia. Para obtener más información sobre los permisos necesarios para este rol, consulte [CreateModel API: Permisos del rol de ejecución](https://docs.aws.amazon.com/).

1. 

**Creación de trabajos de transformación por lotes.**

   En el siguiente ejemplo, se crea un trabajo de transformación mediante la [CreateTransformJob](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-transform-job.html)API. 

   ```
   aws sagemaker create-transform-job \ 
          --transform-job-name 'transform-job-name' \
          --model-name 'model-name'\
          --transform-input file://transform-input.json \
          --transform-output file://transform-output.json \
          --transform-resources file://transform-resources.json \
          --region 'region'
   ```

   Los detalles de entrada, salida y recursos se definen en archivos JSON independientes:
   + `transform-input.json`:

     ```
     {
       "DataSource": {
         "S3DataSource": {
           "S3DataType": "S3Prefix",
           "S3Uri": "s3://my-input-data-bucket/path/to/input/data"
         }
       },
       "ContentType": "text/csv",
       "SplitType": "None"
     }
     ```
   + `transform-output.json`:

     ```
     {
       "S3OutputPath": "s3://my-output-bucket/path/to/output",
       "AssembleWith": "Line"
     }
     ```
   + `transform-resources.json`:
**nota**  
Recomendamos el uso de instancias [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) para cargas de trabajo de uso general e instancias `m5.24xlarge` para tareas de previsión de macrodatos.

     ```
     {
       "InstanceType": "instance-type",
       "InstanceCount": 1
     }
     ```

1. 

**Supervisa el progreso de tu trabajo de transformación mediante la [DescribeTransformJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTransformJob.html)API.**

   Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-transform-job \
         --transform-job-name 'transform-job-name' \
         --region region
   ```

1. 

**Recuperación del resultado de la transformación por lotes.**

   Una vez finalizado el trabajo, el resultado previsto estará disponible en `S3OutputPath`. 

   El nombre de archivo de salida tiene el siguiente formato: `input_data_file_name.out`. Por ejemplo, si el archivo de entrada es `text_x.csv`, el nombre de la salida será `text_x.csv.out`.

   ```
   aws s3 ls s3://my-output-bucket/path/to/output/
   ```

Los siguientes ejemplos de código ilustran el uso del AWS SDK para Python (boto3) y AWS CLI para la previsión por lotes.

------
#### [ AWS SDK for Python (boto3) ]

 El siguiente ejemplo usa el **SDK de AWS para Python (boto3)** a fin de hacer predicciones por lotes.

```
import sagemaker 
import boto3

session = sagemaker.session.Session()

sm_client = boto3.client('sagemaker', region_name='us-west-2')
role = 'arn:aws:iam::1234567890:role/sagemaker-execution-role'
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

best_candidate = sm_client.describe_auto_ml_job_v2(AutoMLJobName=job_name)['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

# create model
reponse = sm_client.create_model(
    ModelName = best_candidate_name,
    ExecutionRoleArn = role,
    Containers = best_candidate_containers 
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName=f'{best_candidate_name}-transform-job',
    ModelName=model_name,
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/csv",
        'SplitType': 'None'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m5.2xlarge',
        'InstanceCount': 1,
    },
)
```

El trabajo de inferencia por lotes devuelve una respuesta con el siguiente formato.

```
{'TransformJobArn': 'arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-transform-job',
 'ResponseMetadata': {'RequestId': '659f97fc-28c4-440b-b957-a49733f7c2f2',
  'HTTPStatusCode': 200,
  'HTTPHeaders': {'x-amzn-requestid': '659f97fc-28c4-440b-b957-a49733f7c2f2',
   'content-type': 'application/x-amz-json-1.1',
   'content-length': '96',
   'date': 'Thu, 11 Aug 2022 22:23:49 GMT'},
  'RetryAttempts': 0}}
```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenga las definiciones del contenedor del mejor candidato**.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Cree el modelo**.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/tuning/flicdf10v2-dpp0-xgb/test-job1E9-244-7490a1c0/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", 
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code" 
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \
   --region 'us-west-2'
   ```

1. **Cree un trabajo de transformación**.

   ```
   aws sagemaker create-transform-job --transform-job-name 'test-tranform-job'\
    --model-name 'test-sagemaker-model'\
    --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "SplitType": "None"
       }'\
   --transform-output '{
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line"
       }'\
   --transform-resources '{
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       }'\
   --region 'us-west-2'
   ```

1. **Compruebe el progreso del trabajo de transformación**. 

   ```
   aws sagemaker describe-transform-job --transform-job-name  'test-tranform-job' --region us-west-2
   ```

   Lo que sigue es la respuesta del trabajo de transformación.

   ```
   {
       "TransformJobName": "test-tranform-job",
       "TransformJobArn": "arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-tranform-job",
       "TransformJobStatus": "InProgress",
       "ModelName": "test-model",
       "TransformInput": {
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "CompressionType": "None",
           "SplitType": "None"
       },
       "TransformOutput": {
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line",
           "KmsKeyId": ""
       },
       "TransformResources": {
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       },
       "CreationTime": 1662495635.679,
       "TransformStartTime": 1662495847.496,
       "DataProcessing": {
           "InputFilter": "$",
           "OutputFilter": "$",
           "JoinSource": "None"
       }
   }
   ```

   Después de que `TransformJobStatus` cambie a `Completed`, puede comprobar el resultado de la inferencia en `S3OutputPath`.

------

# Cuaderno de exploración de datos Amazon SageMaker Autopilot
<a name="timeseries-forecasting-data-exploration-notebook"></a>

Amazon SageMaker Autopilot limpia y preprocesa el conjunto de datos automáticamente. Para ayudar a los usuarios a entender sus datos y descubrir patrones, relaciones y anomalías sobre las series temporales, Amazon SageMaker Autopilot genera un informe estático de **exploración de datos** en forma de bloc de notas para que los usuarios puedan consultarlo.

El cuaderno de exploración de datos se genera para cada trabajo de Piloto automático. El informe se almacena en un bucket de Amazon S3 y se puede acceder a él desde la ruta de salida del trabajo.

Puede encontrar el prefijo Amazon S3 del cuaderno de exploración de datos en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[AutoMLJobArtifacts.DataExplorationNotebookLocation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#sagemaker-DescribeAutoMLJobV2-response-AutoMLJobArtifacts)`.

# Informes generados por Amazon SageMaker Autopilot
<a name="timeseries-forecasting-reports"></a>

Además del cuaderno de exploración de datos, Piloto automático genera varios informes para el mejor modelo candidato de cada experimento.
+ Un informe de explicabilidad proporciona información sobre cómo hace pronósticos el modelo. 
+ Un informe de rendimiento proporciona una evaluación cuantitativa de las capacidades de previsión del modelo.
+ Tras comprobar el rendimiento del modelo con datos históricos, se genera un informe de resultados históricos. 

## Informe de explicabilidad
<a name="timeseries-forecasting-explainability-report"></a>

El informe de explicabilidad de Piloto automático le ayuda a comprender mejor el impacto de los atributos de sus conjuntos de datos sobre las previsiones para series temporales (combinaciones de elementos y dimensiones) y puntos temporales. Piloto automático utiliza una métrica llamada *puntuaciones de impacto* para cuantificar el impacto relativo de cada atributo y determinar si aumentan o disminuyen los valores de previsión.

Por ejemplo, imaginemos un escenario de pronóstico en el que el objetivo es `sales` y hay dos atributos relacionados: `price` y `color`. Piloto automático puede detectar que el color del artículo tiene un gran impacto en las ventas de algunos artículos, pero un efecto insignificante en el caso de otros artículos. También puede descubrir que una promoción en verano tiene un gran impacto en las ventas, mientras que una promoción en invierno tiene poco efecto.

El informe de explicabilidad se genera solo en estas situaciones:
+ El conjunto de datos de series temporales incluye columnas de características adicionales o está asociado a un calendario de días festivos.
+ Los modelos base CNN-QR y DeepAR\$1 se incluyen en el conjunto final.

### Interpretación de las puntuaciones de impacto
<a name="timeseries-forecasting-explainability-impact-scores"></a>

Las puntuaciones de impacto miden el impacto relativo que tienen los atributos en los valores de pronóstico. Por ejemplo, si el atributo `price` tiene una puntuación de impacto dos veces superior a la del atributo `store location`, podemos concluir que el precio de un artículo tiene el doble de impacto en los valores previstos que la ubicación de la tienda.

Las puntuaciones de impacto también proporcionan información sobre si los atributos aumentan o disminuyen los valores de previsión.

Las puntuaciones de impacto van de -1 a 1, y el signo indica la dirección del impacto. Una puntuación de 0 indica que no hay impacto, mientras que una puntuación cercana a 1 o -1 indica un impacto significativo.

Es importante tener en cuenta que las puntuaciones de impacto miden el impacto relativo de los atributos, no el impacto absoluto. Por lo tanto, las puntuaciones de impacto no se pueden utilizar para determinar si determinados atributos mejoran la precisión del modelo. Si un atributo tiene una puntuación de impacto baja, eso no significa necesariamente que tenga un impacto bajo en los valores de previsión; significa que tiene un impacto menor en los valores de previsión que otros atributos utilizados por el predictor.

### Buscar el informe de explicabilidad
<a name="timeseries-forecasting-explainability-report-location"></a>

Puede encontrar el prefijo Amazon S3 de los artefactos de explicabilidad generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

## Informe de rendimiento del modelo
<a name="timeseries-forecasting-model-performance-report"></a>

Un informe de calidad de modelo de Piloto automático (también denominado informe de rendimiento) proporciona información valiosa y de calidad sobre el mejor candidato de modelo (mejor predictor) generado por un trabajo de AutoML. Incluye información sobre los detalles del trabajo, la función objetivo y las métricas de precisión (`wQL`, `MAPE`, `WAPE`, `RMSE`, `MASE`).

Puede encontrar el prefijo Amazon S3 de los artefactos de informe de calidad del modelo generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

## Informe de resultados de pruebas retrospectivas
<a name="timeseries-forecasting-model-backtest-report"></a>

Los resultados de las pruebas retrospectivas proporcionan información sobre el rendimiento de un modelo de pronóstico de series temporales al evaluar su precisión y fiabilidad predictivas. Ayuda a los analistas y científicos de datos a evaluar su rendimiento con datos históricos y a comprender su rendimiento potencial con datos futuros y no observados.

Piloto automático utiliza pruebas retrospectivas (backtesting) para ajustar los parámetros y producir métricas de precisión. Durante las pruebas retrospectivas, Piloto automático divide automáticamente los datos de serie temporal en dos conjuntos: un conjunto de entrenamiento y un conjunto de pruebas. El conjunto de entrenamiento se usa para entrenar un modelo que, luego, se usará a fin de generar pronósticos para los puntos de datos del conjunto de pruebas. Piloto automático utiliza este conjunto de datos de prueba para evaluar la precisión del modelo comparando los valores pronosticados con los valores observados en el conjunto de pruebas.

Puede encontrar el prefijo Amazon S3 de los artefactos de informe de calidad del modelo generados para el mejor candidato en la respuesta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` en `[BestCandidate.CandidateProperties.CandidateArtifactLocations.BacktestResults](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-BacktestResults)`.

# Límites de recursos de previsión de series temporales para Piloto Automático
<a name="timeseries-forecasting-limits"></a>

En la siguiente tabla se indican los límites de recursos para los trabajos de previsión de series temporales en Amazon SageMaker Autopilot y si se puede ajustar o no cada límite.


| **Límites de recursos** | **Límite predeterminado** | **Ajustable** | 
| --- | --- | --- | 
|  Tamaño del conjunto de datos de entrada  |  30 GB  |  Sí  | 
|  Tamaño de un solo archivo de Parquet  |  2 GB  |  No  | 
|  Número máximo de filas en un grupo de conjuntos de datos  |  3000 millones  |  Sí  | 
|  Número máximo de columnas de agrupamiento  |  5  |  No  | 
|  Número máximo de características numéricas  |  13  |  No  | 
|  Número máximo de características categóricas  |  10  |  No  | 
|  Número máximo de series temporales (combinaciones únicas de columnas de elementos y agrupaciones) por conjunto de datos  |  5,000,000  |  Sí  | 
|  Horizonte de previsión máximo  |  500  |  Sí  | 

# Creación de un trabajo de AutoML para afinar modelos de generación de texto mediante la API
<a name="autopilot-create-experiment-finetune-llms"></a>

Los modelos lingüísticos de gran tamaño (LLMs) destacan en múltiples tareas generativas, como la generación de textos, el resumen, la finalización, la respuesta a preguntas y más. Su rendimiento se puede atribuir a su considerable tamaño y a su amplio entrenamiento en diversos conjuntos de datos y tareas. Sin embargo, algunos dominios específicos, como los servicios sanitarios y el sector financiero, pueden requerir ajustes personalizados para adaptarse a sus datos y casos de uso particulares. Al adaptar su formación a su dominio particular, LLMs pueden mejorar su rendimiento y proporcionar resultados más precisos para las aplicaciones específicas.

Piloto automático ofrece la capacidad de ajustar una selección de modelos de texto generativo previamente entrenados. En particular, Autopilot permite **ajustar con precisión, mediante instrucciones**, una selección de modelos lingüísticos extensos de uso general () con la ayuda de. LLMs JumpStart

**nota**  
Los modelos de generación de texto que admiten el ajuste preciso en Autopilot están disponibles actualmente exclusivamente en las regiones compatibles con Canvas. SageMaker Consulte la documentación de SageMaker Canvas para ver la [lista completa de las regiones compatibles](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html).

A fin de ajustar un modelo prentrenado, se requiere un conjunto de datos específico de instrucciones claras que le digan al modelo cómo generar resultados o cómo comportarse para esa tarea. El modelo aprende del conjunto de datos y ajusta sus parámetros para adaptarse a las instrucciones proporcionadas. El refinamiento basado en instrucciones implica el uso de ejemplos etiquetados con formato de pares de petición-respuesta y redactados como instrucciones. Para obtener más información sobre el refinamiento, consulte [Fine-tune a foundation model](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-foundation-models-fine-tuning.html).

[Las siguientes pautas describen el proceso de creación de un trabajo de Amazon SageMaker Autopilot como experimento piloto para ajustar la generación de texto LLMs mediante la SageMaker API Reference.](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html)

**nota**  
Las tareas como la clasificación de textos e imágenes, la previsión de series temporales y el refinamiento de modelos de lenguaje de gran tamaño están disponibles exclusivamente en la versión 2 de la [API de REST de AutoML](autopilot-reference.md). Si su idioma preferido es Python, puede consultar directamente el [MLV2 objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del SDK de Amazon SageMaker Python. [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)  
Los usuarios que prefieran la comodidad de una interfaz de usuario pueden usar [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acceder a modelos previamente entrenados y modelos básicos de IA generativa, o crear modelos personalizados adaptados a textos específicos, clasificación de imágenes, necesidades de previsión o IA generativa.

Para crear un experimento de piloto automático mediante programación para ajustar un LLM, puede llamar a la [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API en cualquier idioma compatible con Amazon Autopilot o el. SageMaker AWS CLI

Para obtener información sobre cómo se traduce esta acción de API en una función en el lenguaje de su elección, consulte la sección [Véase también](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` en AWS SDK para Python (Boto3).

**nota**  
Piloto automático ajusta modelos de lenguaje grandes sin necesidad de entrenar ni evaluar a varios candidatos. En lugar de esto, Piloto automático utiliza su conjunto de datos para ajustar directamente el modelo objetivo a fin de mejorar una métrica objetivo predeterminada: la pérdida de entropía cruzada. Para ajustar los modelos de lenguaje en Piloto automático no es necesario configurar el campo `AutoMLJobObjective`.

Tras refinar el LLM, podrá evaluar su rendimiento accediendo a varias puntuaciones de ROUGE mediante el `[BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html#sagemaker-Type-CandidateProperties-CandidateMetrics)` al hacer una llamada a la API de `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)`. El modelo también proporciona información sobre su pérdida de entrenamiento y validación, así como sobre la perplejidad. A fin de obtener una lista completa de métricas para evaluar la calidad del texto generado por los modelos de ajuste fino, consulte [Métricas para ajustar modelos de lenguaje grandes en Piloto automático](autopilot-llms-finetuning-metrics.md).

## Requisitos previos
<a name="autopilot-llms-finetuning-api-prerequisites"></a>

Antes de usar el piloto automático para crear un experimento de ajuste preciso en SageMaker IA, asegúrate de seguir los siguientes pasos:
+ (Opcional) Elegir el modelo prentrenado que desee ajustar.

  Para ver la lista de modelos previamente entrenados disponibles para su ajuste en Amazon SageMaker Autopilot, consulte. [Modelos de lenguaje grandes compatibles para el ajuste](autopilot-llms-finetuning-models.md) *La selección de un modelo no es obligatoria; si no se especifica ningún modelo, el piloto automático utilizará automáticamente el modelo Falcon7 por defecto. BInstruct*
+ Crear un conjunto de datos de instrucciones. Consulte [Tipos de archivos de conjuntos de datos y formato de datos de entrada](autopilot-llms-finetuning-data-format.md) para obtener más información sobre los requisitos de formato del conjunto de datos basado en instrucciones.
+ Colocar el conjunto de datos en un bucket de Amazon S3.
+ Conceda acceso completo al depósito de Amazon S3 que contiene los datos de entrada para la función de ejecución de SageMaker IA utilizada para ejecutar el experimento.
  + Para obtener información sobre cómo recuperar su función de ejecución de SageMaker IA, consulte[Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role).
  + Para obtener información sobre cómo conceder permisos a su función de ejecución de SageMaker IA para acceder a uno o más buckets específicos en Amazon S3, consulte *Añadir permisos adicionales de Amazon S3 a una función de ejecución de SageMaker IA* en[Creación de un rol de ejecución](sagemaker-roles.md#sagemaker-roles-create-execution-role).
+ Además, debe proporcionar a su función de ejecución los permisos necesarios para acceder al depósito de almacenamiento predeterminado que utiliza el bucket de Amazon S3 JumpStart. Este acceso es necesario para almacenar y recuperar artefactos de modelos previamente entrenados. JumpStart Para conceder acceso a este bucket de Amazon S3, debe crear una nueva política personalizada integrada en su rol de ejecución.

  A continuación, se muestra un ejemplo de política que puede usar en el editor de JSON al configurar trabajos de refinamiento de AutoML en `us-west-2`:

  *JumpStartLos nombres de los cubos siguen un patrón predeterminado que depende del. Regiones de AWS Debe ajustar el nombre del bucket en consecuencia.* 

  ```
  {
      "Sid": "Statement1",
      "Effect": "Allow",
      "Action": [
          "s3:GetObject",
          "s3:PutObject",
          "s3:ListBucket"
      ],
      "Resource": [
          "arn:aws:s3:::jumpstart-cache-prod-us-west-2",
          "arn:aws:s3:::jumpstart-cache-prod-us-west-2/*"
      ]
  }
  ```

Una vez hecho esto, puede usar el ARN de este rol de ejecución en las solicitudes de la API de Piloto automático.

## Parámetros necesarios
<a name="autopilot-llms-finetuning-api-required-params"></a>

Al llamar a `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para crear un experimento de Piloto automático con el fin de refinar LLM, debe proporcionar los siguientes valores:
+ Un `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar el nombre del trabajo. El nombre debe ser del tipo `string` y tener una longitud de caracteres de entre 1 y 32.
+ Como mínimo, un `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` del tipo `training` dentro de `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)`. Este canal especifica el nombre del bucket de Amazon S3 donde se encuentra su conjunto de datos de ajuste. Tiene la opción de definir un canal `validation`. Si no se proporciona ningún canal de validación y se ha configurado una `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html), esta fracción se utiliza para dividir aleatoriamente el conjunto de datos de entrenamiento en conjuntos de entrenamiento y validación. Además, puede especificar el tipo de contenido (archivos CSV o Parquet) del conjunto de datos.
+ Un `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` del tipo `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` para configurar los ajustes del trabajo de entrenamiento.

  Algo especialmente importante es que puede especificar el nombre del modelo base que se va a ajustar en el campo `BaseModelName`. Para ver la lista de modelos previamente entrenados disponibles para su ajuste en Amazon SageMaker Autopilot, consulte. [Modelos de lenguaje grandes compatibles para el ajuste](autopilot-llms-finetuning-models.md)
+ Una `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar la ruta de salida de Amazon S3 a fin de almacenar los artefactos de su trabajo de AutoML.
+ Un `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar el ARN del rol utilizado para acceder a sus datos.

A continuación, se muestra un ejemplo del formato de solicitud completo que se utiliza al realizar una llamada a la API para `CreateAutoMLJobV2` con el fin de refinar un modelo (`Falcon7BInstruct`).

```
{
   "AutoMLJobName": "<job_name>",
   "AutoMLJobInputDataConfig": [ 
      { 
         "ChannelType": "training",
         "CompressionType": "None",
         "ContentType": "text/csv", 
         "DataSource": { 
            "S3DataSource": { 
               "S3DataType": "S3Prefix",
               "S3Uri": "s3://<bucket_name>/<input_data>.csv"
            }
         }
      }
   ],
  "OutputDataConfig": {
      "S3OutputPath": "s3://<bucket_name>/output",
      "KmsKeyId": "arn:aws:kms:<region>:<account_id>:key/<key_value>"
   },
   "RoleArn":"arn:aws:iam::<account_id>:role/<sagemaker_execution_role_name>",
   "AutoMLProblemTypeConfig": {
        "TextGenerationJobConfig": {
            "BaseModelName": "Falcon7BInstruct"
       }
   }
}
```

Todos los demás parámetros son opcionales.

## Parámetros opcionales
<a name="autopilot-llms-finetuning-api-optional-params"></a>

En las siguientes secciones, se proporcionan detalles de algunos parámetros opcionales que puede pasar al trabajo de ajuste de AutoML.

### Cómo especificar los conjuntos de datos de entrenamiento y validación de un trabajo de AutoML
<a name="autopilot-llms-finetuning-data-training-or-validation"></a>

Puede proporcionar su propio conjunto de datos de validación y una tasa de división de datos personalizada, o puede dejar que Piloto automático divida el conjunto de datos automáticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte el parámetro obligatorio [Automático MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tiene una`ChannelType`, que se puede configurar en `validation` valores que especifican cómo se van a utilizar los datos al crear un modelo de aprendizaje automático. `training`

Debe proporcionar al menos un origen de datos y un máximo de dos: uno para los datos de entrenamiento y otro para los datos de validación. La forma de dividir los datos en conjuntos de datos de entrenamiento y validación depende de si tiene uno o dos orígenes de datos. 
+ Si solo tiene **un origen de datos**, el `ChannelType` se establece en `training` de forma predeterminada y debe tener este valor.
  + Si el valor `ValidationFraction` en [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) no está establecido, el 20 % (0,2) de los datos de este origen se utiliza para la validación de forma predeterminada. 
  + Si la `ValidationFraction` se establece en un valor entre 0 y 1, el conjunto de datos se divide en función del valor especificado, donde el valor especifica la fracción del conjunto de datos utilizada para la validación.
+ Si tiene **dos orígenes de datos**, el `ChannelType` de uno de los objetos de `AutoMLJobChannel` debe establecerse en `training`, el valor predeterminado. El `ChannelType` del otro origen de datos debe estar establecido en `validation`. Los dos orígenes de datos deben tener el mismo formato, CSV o Parquet, y el mismo esquema. En este caso, no debe establecer el valor de `ValidationFraction`, ya que todos los datos de cada origen se utilizan para el entrenamiento o la validación. Si se configura este valor, se producirá un error.

### Cómo habilitar la implementación automática
<a name="autopilot-llms-finetuning-auto-model-deployment"></a>

Con Piloto automático, puede implementar automáticamente su modelo de ajuste fino a un punto de conexión. Para habilitar la implementación automática de su modelo de ajuste fino, incluya una `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` en la solicitud de trabajo de AutoML. Esto permite implementar su modelo ajustado en un punto final de SageMaker IA. A continuación, se muestran las configuraciones disponibles para la personalización.
+ Para permitir que Piloto automático genere el nombre del punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` en `True`.
+ Si desea proporcionar su propio nombre para el punto de conexión, configure `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

### Cómo configurar la aceptación del EULA al refinar un modelo mediante la API de AutoML
<a name="autopilot-llms-finetuning-set-eula"></a>

En el caso de los modelos que requieren la aceptación de un acuerdo de licencia de usuario final antes de realizar el refinamiento, puede aceptar el EULA estableciendo el atributo `AcceptEula` de `[ModelAccessConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelAccessConfig.html)` en `True` en `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` al configurar su `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

### Cómo configurar hiperparámetros para optimizar el proceso de aprendizaje de un modelo
<a name="autopilot-llms-finetuning-set-hyperparameters"></a>

Puede optimizar el proceso de aprendizaje de su modelo de generación de texto estableciendo valores de hiperparámetros en el atributo `TextGenerationHyperParameters` de `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` al configurar su `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Piloto automático permite configurar cuatro hiperparámetros comunes en todos los modelos.
+ `epochCount`: su valor debe ser una cadena que contenga un valor entero dentro del rango de `1` a `10`.
+ `batchSize`: su valor debe ser una cadena que contenga un valor entero dentro del rango de `1` a `64`.
+ `learningRate`: su valor debe ser una cadena que contenga un valor de coma flotante dentro del rango de `0` a `1`.
+ `learningRateWarmupSteps`: su valor debe ser una cadena que contenga un valor entero dentro del rango de `0` a `250`.

Para obtener más información sobre cada hiperparámetro, consulte [Hiperparámetros para optimizar el proceso de aprendizaje de los modelos de generación de texto](autopilot-llms-finetuning-hyperparameters.md).

El siguiente ejemplo de JSON muestra un `TextGenerationHyperParameters` campo que se pasa al TextGenerationJobConfig lugar donde están configurados los cuatro hiperparámetros.

```
"AutoMLProblemTypeConfig": {
  "TextGenerationJobConfig": {
    "BaseModelName": "Falcon7B",
    "TextGenerationHyperParameters": {"epochCount":"5", "learningRate":"0.000001", "batchSize": "32", "learningRateWarmupSteps": "10"}
  }
}
```

# Modelos de lenguaje grandes compatibles para el ajuste
<a name="autopilot-llms-finetuning-models"></a>

Con la API de piloto automático, los usuarios pueden ajustar modelos de lenguaje de gran tamaño (LLMs) que funcionan con Amazon. SageMaker JumpStart

**nota**  
Para refinar modelos que requieren la aceptación de un acuerdo de licencia para el usuario final, debe declarar explícitamente la aceptación del EULA al crear su trabajo de AutoML. Tenga en cuenta que, después de refinar un modelo previamente entrenado, cambian las ponderaciones del modelo original, por lo que no tendrá que aceptar más adelante un EULA al implementar el modelo de ajuste fino.  
Para obtener información sobre cómo aceptar el EULA al crear un trabajo de refinamiento con la API de AutoML, consulte [Cómo configurar la aceptación del EULA al refinar un modelo mediante la API de AutoML](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-set-eula).

**Para encontrar todos los detalles de cada modelo, busca tu **ID de JumpStart modelo** en la siguiente [tabla de modelos](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table) y, a continuación, sigue el enlace de la columna Fuente.** Estos detalles pueden incluir los idiomas compatibles con el modelo, los sesgos que pueda presentar, los conjuntos de datos empleados para el refinamiento, etc.

En la siguiente tabla se enumeran los JumpStart modelos compatibles que se pueden ajustar con un trabajo de AutoML.


| JumpStart ID del modelo | `BaseModelName` en una solicitud de API | Description (Descripción) | 
| --- | --- | --- | 
| huggingface-textgeneration-dolly-v2-3b-bf16 | Dolly3B |  Dolly 3B es un modelo de lenguaje grande que sigue instrucciones de 2800 millones de parámetros, basado en [pythia-2.8b](https://huggingface.co/EleutherAI/pythia-2.8b#pythia-28b). Está entrenado en el conjunto de datos de ajuste instruction/response preciso [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) y puede realizar tareas como la lluvia de ideas, la clasificación, las preguntas y respuestas, la generación de texto, la extracción de información y el resumen.  | 
| huggingface-textgeneration-dolly-v2-7b-bf16 | Dolly7B |  Dolly 7B es un modelo de lenguaje grande que sigue instrucciones de 6900 millones de parámetros, basado en [pythia-6.9b](https://huggingface.co/EleutherAI/pythia-6.9b). Está formado en el conjunto de datos de ajuste instruction/response preciso [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) y puede realizar tareas como la lluvia de ideas, la clasificación, las preguntas y respuestas, la generación de texto, la extracción de información y el resumen.  | 
| huggingface-textgeneration-dolly-v2-12b-bf16 | Dolly12B |  Dolly 12B es un modelo de lenguaje grande que sigue instrucciones de 12 000 millones de parámetros, basado en [pythia-12b](https://huggingface.co/EleutherAI/pythia-12b). Está formado en el conjunto de datos de ajuste instruction/response preciso [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) y puede realizar tareas como la lluvia de ideas, la clasificación, las preguntas y respuestas, la generación de texto, la extracción de información y el resumen.  | 
| huggingface-llm-falcon-7b-bf16 | Falcon7B |  Falcon 7B es un modelo de lenguaje grande y causal de 7000 millones de parámetros entrenado sobre 1 500 000 de millones de tokens mejorados con corpus seleccionados. Falcon-7B está entrenado únicamente con datos en inglés y francés, y no generaliza adecuadamente en otros idiomas. Dado que el modelo se entrenó con grandes cantidades de datos web, contiene los estereotipos y sesgos que se encuentran habitualmente en Internet.  | 
| huggingface-llm-falcon-7b-instruct-bf16 | Falcon7BInstruct |  El Falcon 7B Instruct es un modelo de lenguaje amplio y causal de 7.000 millones de parámetros basado en el Falcon 7B y ajustado a partir de una mezcla de conjuntos de datos de 250 millones de fichas. chat/instruct Falcon 7B Instruct está entrenado sobre todo con datos en inglés y no generaliza adecuadamente en otros idiomas. Además, al estar entrenado a partir de un corpus representativo de la web a gran escala, incluye los estereotipos y sesgos que suelen encontrarse en Internet.  | 
| huggingface-llm-falcon-40b-bf16 | Falcon40B |  Falcon 40B es un modelo de lenguaje grande y causal de 40 000 millones de parámetros entrenado sobre 1 000 000 de millones de tokens mejorados con corpus seleccionados. Está entrenado principalmente en inglés, alemán, español y francés, con capacidades limitadas en italiano, portugués, polaco, holandés, rumano, checo y sueco. No generaliza adecuadamente en otros idiomas. Además, al estar entrenado a partir de un corpus representativo de la web a gran escala, incluye los estereotipos y sesgos que suelen encontrarse en Internet.  | 
| huggingface-llm-falcon-40b-instruct-bf16 | Falcon40BInstruct |  Falcon 40B Instruct es un modelo de lenguaje de gran tamaño causal de 40 000 millones de parámetros basado en Falcon40B y refinado a partir de una combinación de Baize. Está entrenado principalmente con datos en inglés y francés, y no generaliza adecuadamente en otros idiomas. Además, al estar entrenado a partir de un corpus representativo de la web a gran escala, incluye los estereotipos y sesgos que suelen encontrarse en Internet.   | 
| huggingface-text2text-flan-t5-large | FlanT5L |  La familia de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) es un conjunto de modelos de lenguaje de gran tamaño que se refinan sobre múltiples tareas y pueden seguir entrenándose. Estos modelos son aptos para tareas como la traducción de idiomas, la generación de textos, la finalización de oraciones, la desambiguación del sentido de las palabras, la síntesis o la respuesta a preguntas. Flan T5 L es un modelo de lenguaje grande de 780 millones de parámetros entrenado sobre numerosos idiomas. [Puedes encontrar la lista de los idiomas compatibles con el Flan T5 L en los detalles del modelo obtenidos al buscar por ID de modelo en la tabla de modelos. JumpStart](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| huggingface-text2text-flan-t5-xl | FlanT5XL |  La familia de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) es un conjunto de modelos de lenguaje de gran tamaño que se refinan sobre múltiples tareas y pueden seguir entrenándose. Estos modelos son aptos para tareas como la traducción de idiomas, la generación de textos, la finalización de oraciones, la desambiguación del sentido de las palabras, la síntesis o la respuesta a preguntas. Flan T5 XL es un modelo de lenguaje grande de 3000 millones de parámetros que se ha entrenado en numerosos idiomas. [Puedes encontrar la lista de idiomas compatibles con el Flan T5 XL en los detalles del modelo obtenidos al buscar por ID de modelo en JumpStart la tabla de modelos.](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| huggingface-text2text-flan-t5-xxll | FlanT5XXL |  La familia de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) es un conjunto de modelos de lenguaje de gran tamaño que se refinan sobre múltiples tareas y pueden seguir entrenándose. Estos modelos son aptos para tareas como la traducción de idiomas, la generación de textos, la finalización de oraciones, la desambiguación del sentido de las palabras, la síntesis o la respuesta a preguntas. Flan T5 XXL es un modelo de 11 000 millones de parámetros. [Puedes encontrar la lista de idiomas compatibles con el Flan T5 XXL en los detalles del modelo obtenidos al buscar por ID de modelo en la tabla de modelos. JumpStart](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| meta-textgeneration-llama-2-7b | Llama2-7B |  Llama 2 es una colección de modelos de texto generativo preentrenados y de ajuste fino, con una escala que oscila entre 7000 y 70 000 millones de parámetros. Llama2-7B es el modelo de 7000 millones de parámetros diseñado para su uso en inglés y que se puede adaptar a una variedad de tareas de generación de lenguaje natural.  | 
| meta-textgeneration-llama-2-7b-f | Llama2-7BChat |  Llama 2 es una colección de modelos de texto generativo preentrenados y afinados, con una escala que oscila entre 7000 y 70 000 millones de parámetros. Llama2-7B es el modelo de chat de 7000 millones de parámetros que está optimizado para casos de uso de diálogo.  | 
| meta-textgeneration-llama-2-13b | Llama2-13B |  Llama 2 es una colección de modelos de texto generativo preentrenados y afinados, con una escala que oscila entre 7000 y 70 000 millones de parámetros. Llama2-13B es el modelo de 13 000 millones de parámetros diseñado para su uso en inglés y que se puede adaptar a una variedad de tareas de generación de lenguaje natural.  | 
| meta-textgeneration-llama-2-13b-f | Llama2-13BChat |  Llama 2 es una colección de modelos de texto generativo preentrenados y afinados, con una escala que oscila entre 7000 y 70 000 millones de parámetros. Llama2-13B es el modelo de chat de 13 000 millones de parámetros que está optimizado para casos de uso de diálogo.  | 
| huggingface-llm-mistral-7b | Mistral7B |  Mistral 7B es un código de 7000 millones de parámetros y un modelo de generación de texto en inglés de uso general. Se puede usar en una variedad de casos de uso, incluidos resumen de texto, clasificación, finalización de texto o finalización de código.  | 
| huggingface-llm-mistral-7b-instruct | Mistral7BInstruct |  Mistral 7B Instruct es la versión de refinamiento de Mistral 7B para casos de uso conversacionales. Se especializó utilizando una variedad de conjuntos de datos de conversaciones disponibles públicamente en inglés.  | 
| huggingface-textgeneration1-mpt-7b-bf16 | MPT7B |  MPT 7B es un modelo de lenguaje grande transformador de estilo decodificador, con 6700 millones de parámetros, preentrenado desde cero con 1 billón de tokens de texto y código en inglés. Está preparado para gestionar contextos de gran longitud.  | 
| huggingface-textgeneration1-mpt-7b-instruct-bf16 | MPT7BInstruct |  MPT 7B Instruct es un modelo para tareas de seguimiento de instrucciones abreviadas. Se creó refinando MPT 7B a partir de un conjunto de datos derivado de [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) y de los conjuntos de datos [Anthropic Helpful and Harmless (HH-RLHF)](https://huggingface.co/datasets/Anthropic/hh-rlhf).  | 

# Tipos de archivos de conjuntos de datos y formato de datos de entrada
<a name="autopilot-llms-finetuning-data-format"></a>

El ajuste preciso basado en instrucciones utiliza conjuntos de datos etiquetados para mejorar el rendimiento de las tareas previamente entrenadas LLMs en el procesamiento del lenguaje natural (PNL) específicas. Los ejemplos etiquetados tienen formato de pares de petición-respuesta y están redactados como instrucciones.



Para obtener más información sobre los tipos de archivos de conjuntos de datos compatibles, consulte [Tipos de archivo de conjuntos de datos admitidos](#autopilot-llms-finetuning-dataset-format).

Para obtener más información sobre el formato de datos de entrada, consulte [Formato de datos de entrada para el ajuste basado en instrucciones](#autopilot-llms-finetuning-input-format).

## Tipos de archivo de conjuntos de datos admitidos
<a name="autopilot-llms-finetuning-dataset-format"></a>

Piloto automático admite conjuntos de datos de refinamiento basados en instrucciones formateados como archivos CSV (opción predeterminada) o como archivos Parquet.
+ **CSV** (valores separados por comas) es un formato de archivo basado en filas que almacena datos en texto plano legible por humanos y es una opción popular para el intercambio de datos, ya que es compatible con una amplia gama de aplicaciones.
+ **Parquet** es un formato binario de archivo basado en columnas en el que los datos se almacenan y procesan de forma más eficiente que en los formatos de archivo legibles por humanos, como CSV. Esto los convierte en una mejor opción para los problemas de macrodatos.

**nota**  
El conjunto de datos puede constar de varios archivos, cada uno de los cuales debe ajustarse a una plantilla específica. Para obtener más información sobre cómo dar formato a datos de entrada, consulte [Formato de datos de entrada para el ajuste basado en instrucciones](#autopilot-llms-finetuning-input-format).

## Formato de datos de entrada para el ajuste basado en instrucciones
<a name="autopilot-llms-finetuning-input-format"></a>

Cada archivo en el conjunto de datos debe tener el siguiente formato:
+ El conjunto de datos debe contener exactamente dos columnas nombradas y separadas por comas: `input` y `output`. Piloto automático no permite columnas adicionales. 
+ Las columnas `input` contienen las instrucciones y las correspondientes `output` contienen la respuesta esperada. Tanto `input` como `output` están en formato de cadena.

El siguiente ejemplo muestra el formato de datos de entrada para el ajuste basado en instrucciones en Piloto automático.

```
input,output
"<prompt text>","<expected generated text>"
```

**nota**  
Recomendamos utilizar conjuntos de datos con un mínimo de 1000 filas para garantizar un aprendizaje y un rendimiento óptimos del modelo.

Además, Piloto automático establece un límite máximo en el número de filas del conjunto de datos, así como la longitud del contexto en función del tipo de modelo que se utilice.
+ Los límites del número de filas de un conjunto de datos se aplican al recuento acumulado de filas en todos los archivos del conjunto de datos, lo que incluye varios archivos. Si hay dos [tipos de canales](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html) definidos (uno para entrenamiento y otro para validación), el límite se aplica al número total de filas en todos los conjuntos de datos en ambos canales. Cuando el número de filas supera el umbral, el trabajo falla y se produce un error de validación.
+ Cuando la longitud de la entrada o salida de una fila del conjunto de datos supera el límite establecido en el contexto del modelo de lenguaje, queda truncado automáticamente. Si más del 60 % de las filas del conjunto de datos están truncadas, ya sea en la entrada o en la salida, el piloto automático falla y se produce un error de validación.

La siguiente tabla presenta esos límites para cada modelo.


| JumpStart ID de modelo | `BaseModelName` en una solicitud de API | Límite de fila | Límite de longitud del contexto | 
| --- | --- | --- | --- | 
| huggingface-textgeneration-dolly-v2-3b-bf16 | Dolly3B | 10 000 filas | 1024 tokens | 
| huggingface-textgeneration-dolly-v2-7b-bf16 | Dolly7B | 10 000 filas | 1024 tokens | 
| huggingface-textgeneration-dolly-v2-12b-bf16 | Dolly12B | 10 000 filas | 1024 tokens | 
| huggingface-llm-falcon-7b-bf16 | Falcon7B | 1000 filas | 1024 tokens | 
| huggingface-llm-falcon-7b-instruct-bf16 | Falcon7BInstruct | 1000 filas | 1024 tokens | 
| huggingface-llm-falcon-40b-bf16 | Falcon40B | 10 000 filas | 1024 tokens | 
| huggingface-llm-falcon-40b-instruct-bf16 | Falcon40BInstruct | 10 000 filas | 1024 tokens | 
| huggingface-text2text-flan-t5-large | FlanT5L | 10 000 filas | 1024 tokens | 
| huggingface-text2text-flan-t5-xl | FlanT5XL | 10 000 filas | 1024 tokens | 
| huggingface-text2text-flan-t5-xxll | FlanT5XXL | 10 000 filas | 1024 tokens | 
| meta-textgeneration-llama-2-7b | Llama2-7B | 10 000 filas | 2048 tokens | 
| meta-textgeneration-llama-2-7b-f | Llama2-7BChat | 10 000 filas | 2048 tokens | 
| meta-textgeneration-llama-2-13b | Llama2-13B | 7000 filas | 2048 tokens | 
| meta-textgeneration-llama-2-13b-f | Llama2-13BChat | 7000 filas | 2048 tokens | 
| huggingface-llm-mistral-7b | Mistral7B | 10 000 filas | 2048 tokens | 
| huggingface-llm-mistral-7b-instruct | Mistral7BInstruct | 10 000 filas | 2048 tokens | 
| huggingface-textgeneration1-mpt-7b-bf16 | MPT7B | 10 000 filas | 1024 tokens | 
| huggingface-textgeneration1-mpt-7b-instruct-bf16 | MPT7BInstruct | 10 000 filas | 1024 tokens | 

# Hiperparámetros para optimizar el proceso de aprendizaje de los modelos de generación de texto
<a name="autopilot-llms-finetuning-hyperparameters"></a>

Puede optimizar el proceso de aprendizaje de su modelo base ajustando cualquier combinación de los siguientes hiperparámetros. Estos parámetros están disponibles para todos los modelos.
+ **Recuento de épocas**: el hiperparámetro `epochCount` determina cuántas veces el modelo recorre todo el conjunto de datos de entrenamiento. Influye en la duración del entrenamiento y puede evitar el sobreajuste si se configura adecuadamente. Un gran número de épocas puede aumentar el tiempo de ejecución general de los trabajos de refinamiento. Recomendamos establecer un `MaxAutoMLJobRuntimeInSeconds` grande dentro de `CompletionCriteria` de `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` para evitar que los trabajos de refinamiento se detengan de forma prematura.
+ **Tamaño del lote**: el hiperparámetro `batchSize` define el número de muestras de datos utilizadas en cada iteración del entrenamiento. Puede afectar a la velocidad de convergencia y al uso de memoria. Con un tamaño de lote grande, aumenta el riesgo de que se produzcan errores de falta de memoria (OOM), que pueden manifestarse como un error interno del servidor en el Piloto automático. Para comprobar si hay algún error de este tipo, consulte en el grupo de registro `/aws/sagemaker/TrainingJobs` de los trabajos de entrenamiento iniciados por el trabajo de Piloto automático. Puede acceder a esos inicios CloudWatch de sesión desde la consola AWS de administración. Elija **Registros** y, a continuación, elija el **grupo de registros** `/aws/sagemaker/TrainingJobs`. Para corregir los errores de OOM, reduzca el tamaño del lote.

  Recomendamos empezar con un tamaño de lote de 1 y, a continuación, aumentarlo gradualmente hasta que se produzca un error de falta de memoria. Como referencia, 10 épocas suelen tardar hasta 72 horas en completarse.
+ **Velocidad de aprendizaje**: el hiperparámetro `learningRate` controla el tamaño del paso al que se actualizan los parámetros de un modelo durante el entrenamiento. Determina la rapidez o la lentitud con que se actualizan los parámetros del modelo durante el entrenamiento. Una tasa de aprendizaje alta significa que los parámetros se actualizan con un tamaño de paso grande, lo que puede producir a una convergencia más rápida, pero también puede provocar que el proceso de optimización sobrepase la solución óptima y se vuelva inestable. Una tasa de aprendizaje baja significa que los parámetros se actualizan con un tamaño de paso reducido, lo que puede producir a una convergencia más estable, pero a costa de un aprendizaje más lento.
+ **Pasos de calentamiento de la tasa de aprendizaje**: el hiperparámetro `learningRateWarmupSteps` especifica el número de pasos de entrenamiento durante los cuales la tasa de aprendizaje aumenta gradualmente hasta alcanzar su objetivo o valor máximo. Esto contribuye a que el modelo converja de manera más eficaz y evita problemas como la divergencia o la convergencia lenta que pueden producirse con una tasa de aprendizaje inicialmente alta.

Para obtener información sobre cómo ajustar los hiperparámetros para el experimento de refinamiento en el Piloto automático y detectar sus posibles valores, consulte [Cómo configurar hiperparámetros para optimizar el proceso de aprendizaje de un modelo](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-set-hyperparameters).

# Métricas para ajustar modelos de lenguaje grandes en Piloto automático
<a name="autopilot-llms-finetuning-metrics"></a>

En la siguiente sección se describen las métricas que puede utilizar para comprender sus modelos lingüísticos extensos y ajustados ()LLMs. Con el conjunto de datos, Piloto automático refina directamente un LLM objetivo, con el fin de mejorar una métrica objetivo predeterminada: la pérdida de entropía cruzada.

La pérdida de entropía cruzada es una métrica muy utilizada para evaluar la diferencia entre la distribución de probabilidad prevista y la distribución real de las palabras en los datos de entrenamiento. Al minimizar la pérdida de entropía cruzada, el modelo aprende a hacer predicciones más precisas y relevantes desde el punto de vista del contexto, especialmente en las tareas relacionadas con la generación de texto.

Tras refinar un LLM, puede evaluar la calidad del texto generado utilizando una serie de puntuaciones de ROUGE. Además, puede analizar la perplejidad y las pérdidas de entrenamiento y validación por entropía cruzada como parte del proceso de evaluación.
+ La pérdida de perplejidad mide hasta qué punto el modelo puede predecir la siguiente palabra de una secuencia de texto; los valores más bajos indican una mejor comprensión del idioma y el contexto. 
+ Recall-Oriented Understudy for Gisting Evaluation (ROUGE) consiste en un conjunto de métricas que se utilizan en el campo del procesamiento de lenguaje natural (NLP) y el machine learning para evaluar la calidad del texto generado, por ejemplo, en tareas de resumen o generación de texto. Principalmente, evalúa las similitudes entre el texto generado y el texto veraz (escrito por humanos) en un conjunto de datos de validación. Las medidas de ROUGE se han diseñado para evaluar varios aspectos de la similitud de los textos, como la precisión y la exhaustividad de los n-gramas (secuencias contiguas de palabras) en los textos de referencia y los generados por el sistema. El objetivo es evaluar el grado de precisión de un modelo al capturar la información presente en el texto de referencia.

  Existen distintas variantes de las métricas de ROUGE, según el tipo de n-gramas utilizados y los aspectos específicos de la calidad del texto que se estén evaluando.

  La siguiente lista contiene el nombre y la descripción de las métricas de ROUGE disponibles tras el refinamiento de modelos de lenguaje de gran tamaño en Piloto automático.  
**`ROUGE-1`, `ROUGE-2`**  
ROUGE-N, la métrica principal de ROUGE, mide la superposición de n-gramas entre los textos generados por el sistema y los de referencia. ROUGE-N se puede ajustar a distintos valores de `n` (aquí `1` o `2`) para evaluar la precisión del texto generado por el sistema a la hora de capturar los n-gramas del texto de referencia.  
**`ROUGE-L`**  
ROUGE-L (ROUGE-Longest Common Subsequence) calcula la subsecuencia común más larga entre el texto generado por el sistema y el texto de referencia. Esta variante tiene en cuenta el orden de las palabras además de la superposición del contenido.  
**`ROUGE-L-Sum`**  
ROUGE-L-SUM (Longest Common Subsequence for Summarization) se ha diseñado para la evaluación de sistemas de resumen de textos. Su objetivo es medir la subsecuencia común más larga entre el resumen generado automáticamente y el resumen de referencia. ROUGE-L-SUM tiene en cuenta el orden de las palabras del texto, lo que es importante en las tareas de resumen de textos.

# Predicciones e implementación de modelos en Piloto automático
<a name="autopilot-llms-finetuning-deploy-models"></a>

Tras refinar un modelo de lenguaje de gran tamaño (LLM), puede implementar el modelo para la generación de texto en tiempo real configurando un punto de conexión para obtener predicciones interactivas.

**nota**  
Recomendamos ejecutar los trabajos de inferencia en tiempo real en `ml.g5.12xlarge` para obtener un mejor rendimiento. Como alternativa, las instancias `ml.g5.8xlarge` son adecuadas para las tareas de generación de texto Falcon-7B-Instruct y MPT-7B-Instruct.  
Puede encontrar información detallada sobre estas instancias en la categoría [Computación acelerada](https://aws.amazon.com/ec2/instance-types/), en la selección de tipos de instancias suministrada por Amazon EC2.

## Generación de texto en tiempo real
<a name="autopilot-llms-finetuning-realtime"></a>

Puede utilizarla SageMaker APIs para implementar manualmente su modelo ajustado en un punto final de [inferencia en tiempo real de SageMaker AI Hosting y, a continuación, empezar a hacer predicciones invocando el punto final](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints.html) de la siguiente manera.

**nota**  
Como alternativa, puede elegir la opción de implementación automática al crear el experimento de ajuste en Piloto automático. Para obtener más información sobre cómo configurar la implementación automática de modelos, consulte [Cómo habilitar la implementación automática](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-auto-model-deployment).   
También puedes usar el SDK de SageMaker Python y la `JumpStartModel` clase para realizar inferencias con modelos ajustados por el piloto automático. Para ello, especifique una ubicación personalizada para el artefacto del modelo en Amazon S3. Para obtener información sobre cómo definir su modelo como JumpStart modelo y cómo implementarlo para la inferencia, consulte Implementación de código [bajo con](https://sagemaker.readthedocs.io/en/stable/overview.html#deploy-a-pre-trained-model-directly-to-a-sagemaker-endpoint) la clase. JumpStartModel 

1. **Obtener las definiciones del contenedor de inferencias candidato**

   Puedes encontrarlo `InferenceContainerDefinitions` dentro del `BestCandidate` objeto recuperado de la respuesta a la llamada a la API de la [DescribeAutoMLJobversión 2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#API_DescribeAutoMLJobV2_ResponseSyntax). Una definición de contenedor para inferencias hace referencia al entorno contenerizado que se ha diseñado para implementar y ejecutar el modelo entrenado a fin de realizar predicciones.

   El siguiente ejemplo de AWS CLI comando usa la API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obtener las definiciones de contenedor recomendadas para el nombre de tu trabajo.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Cree un modelo de SageMaker IA**

   Utilice las definiciones de contenedor del paso anterior para crear un modelo de SageMaker IA mediante la [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Consulte el siguiente AWS CLI comando como ejemplo. Use `CandidateName` como nombre para el modelo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --primary-container '<container-definition' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Crear la configuración de un punto de conexión**

   El siguiente ejemplo de AWS CLI comando usa la [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para crear una configuración de punto final.
**nota**  
Para evitar que se agote el tiempo de creación del punto de conexión debido a una descarga prolongada del modelo, es recomendable configurar `ModelDataDownloadTimeoutInSeconds = 3600` y `ContainerStartupHealthCheckTimeoutInSeconds = 3600`.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' ModelDataDownloadTimeoutInSeconds=3600 ContainerStartupHealthCheckTimeoutInSeconds=3600 \
                       --region '<region>'
   ```

1. **Crear el punto de conexión** 

   En el siguiente AWS CLI ejemplo, se utiliza la [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para crear el punto final.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Compruebe el progreso de la implementación de su punto final mediante la [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Consulte el siguiente AWS CLI comando como ejemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Cuando `EndpointStatus` cambie a `InService`, el punto de conexión estará listo para usarse en la inferencia en tiempo real.

1. **Invocar al punto de conexión** 

   El siguiente comando invoca al punto de conexión para realizar inferencias en tiempo real. El mensaje debe estar codificado en bytes.
**nota**  
El formato de la solicitud de entrada depende del modelo de idioma. Para obtener más información sobre el formato de las solicitudes de generación de texto, consulte [Formato de solicitud para la inferencia en tiempo real de modelos de generación de texto](#autopilot-llms-finetuning-realtime-prompt-examples). 

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-promt-in-bytes>' [--content-type] 'application/json' <outfile>
   ```

## Formato de solicitud para la inferencia en tiempo real de modelos de generación de texto
<a name="autopilot-llms-finetuning-realtime-prompt-examples"></a>

Los diferentes modelos de lenguaje de gran tamaño (LLMs) pueden tener dependencias de software, entornos de ejecución y requisitos de hardware específicos que influyen en el contenedor recomendado por Autopilot para alojar el modelo a efectos de inferencia. Además, cada modelo dicta el formato de datos de entrada necesario y el formato esperado para las predicciones o salidas.

A continuación, se muestran ejemplos de entradas para algunos modelos y contenedores recomendados.
+ Para los modelos Falcon con el contenedor `huggingface-pytorch-tgi-inference:2.0.1-tgi1.0.3-gpu-py39-cu118-ubuntu20.04` recomendado:

  ```
  payload = {
      "inputs": "Large language model fine-tuning is defined as",
      "parameters": {
          "do_sample": false,
          "top_p": 0.9,
          "temperature": 0.1,
          "max_new_tokens": 128,
          "stop": ["<|endoftext|>", "</s>"]
      }
  }
  ```
+ Para los demás modelos con el contenedor recomendado `djl-inference:0.22.1-fastertransformer5.3.0-cu118`:

  ```
  payload= {
      "text_inputs": "Large language model fine-tuning is defined as"
  }
  ```

# Creación de un experimento de Piloto automático de regresión o clasificación para datos tabulares usando la interfaz de usuario de Studio Classic
<a name="autopilot-automate-model-development-create-experiment-ui"></a>

**importante**  
A partir del 30 de noviembre de 2023, la interfaz de usuario de Autopilot migrará a [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) como parte de la experiencia actualizada de [Amazon SageMaker Studio](studio-updated.md). SageMaker Canvas proporciona a los analistas y científicos de datos ciudadanos funciones sin necesidad de programar para tareas como la preparación de datos, la ingeniería de funciones, la selección de algoritmos, la formación y el ajuste, la inferencia y mucho más. Los usuarios pueden aprovechar las visualizaciones integradas y el análisis hipotético para explorar sus datos y diferentes escenarios, con predicciones automatizadas que les permiten poner en producción sus modelos con facilidad. Canvas admite una variedad de casos de uso, como la visión artificial, la previsión de la demanda, la búsqueda inteligente y la IA generativa.  
 Los usuarios de [Amazon SageMaker Studio Classic](studio.md), la experiencia anterior de [Studio](studio-updated.md), pueden seguir utilizando la interfaz de usuario del piloto automático en Studio Classic. Los usuarios con experiencia en codificación pueden seguir utilizando todas las [referencias de la API ](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html) en cualquier SDK admitido para la implementación técnica.  
Si ha utilizado el piloto automático en Studio Classic hasta ahora y quiere migrar a SageMaker Canvas, es posible que tenga que conceder permisos adicionales a su perfil de usuario o función de IAM para poder crear y utilizar la SageMaker aplicación Canvas. Para obtener más información, consulte [(Opcional) Migre del piloto automático de Studio Classic a Canvas SageMaker](studio-updated-migrate-ui.md#studio-updated-migrate-autopilot).  
[Todas las instrucciones relacionadas con la interfaz de usuario de esta guía se refieren a las funciones independientes de Autopilot antes de migrar a Amazon Canvas. SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) Los usuarios que sigan estas instrucciones deben usar [Studio Classic](studio.md).

Puede utilizar la interfaz de usuario clásica de Amazon SageMaker Studio para crear experimentos de piloto automático para problemas de clasificación o regresión en datos tabulares. La interfaz de usuario le ayuda a especificar el nombre del experimento, proporcionar ubicaciones para los datos de entrada y salida y especificar qué datos de destino desea predecir. Si lo prefiere, también puede especificar el tipo de problema que desea resolver (regresión, clasificación, clasificación multiclase), elegir su estrategia de modelado (*conjuntos apilados* u *optimización de hiperparámetros*), seleccionar la lista de algoritmos utilizados por el trabajo de Piloto automático para entrenar los datos, etc. 

La interfaz de usuario incluye descripciones, conmutadores, menús desplegables, botones de radio y mucho más para ayudarte a crear los modelos candidatos. Tras la ejecución del experimento, puede comparar las pruebas y ahondar en los detalles de los pasos de preprocesamiento, los algoritmos y los rangos de hiperparámetros de cada modelo. También tiene la opción de descargar sus informes de [explicabilidad](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-explainability.html) y [rendimiento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-insights.html). Utilice los [cuadernos](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-notebook-output.html ) proporcionados para ver los resultados de la exploración automática de datos o las definiciones de los modelos candidatos.

 También puede utilizar la API de Autopilot AutoML en [Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML](autopilot-automate-model-development-create-experiment.md).

# Configurar los parámetros predeterminados de un experimento de Piloto automático (para administradores)
<a name="autopilot-set-default-parameters-create-experiment"></a>

El piloto automático permite establecer valores predeterminados para simplificar la configuración de Amazon SageMaker Autopilot al crear un experimento de piloto automático mediante la interfaz de usuario de Studio Classic. Los administradores pueden usar las [configuraciones del ciclo de vida](studio-lcc.md) (LCC) de Studio Classic para establecer los valores de infraestructura, redes y seguridad en los archivos de configuración y rellenar previamente los [ajustes avanzados](autopilot-automate-model-development-create-experiment-ui.md#advanced-settings) de los trabajos de `AutoML`.

De este modo, pueden controlar completamente la conectividad de la red y los permisos de acceso a los recursos asociados a Amazon SageMaker Studio Classic, incluidas las instancias de SageMaker IA, las fuentes de datos, los datos de salida y otros servicios relacionados. En concreto, los administradores pueden configurar la arquitectura de red deseada, como Amazon VPC, subredes y grupos de seguridad, para un dominio de Studio Classic o para perfiles de usuario individuales. Los científicos de datos pueden centrarse en parámetros específicos de la ciencia de datos al crear sus experimentos de Piloto automático mediante la interfaz de usuario de Studio Classic. Además, los administradores pueden gestionar el cifrado de los datos en la instancia en la que se ejecutan los experimentos de Piloto automático configurando claves de cifrado predeterminadas.

**nota**  
Actualmente, esta característica no está disponible en las regiones registradas de Asia-Pacífico (Hong Kong) y Medio Oriente (Baréin).

En las siguientes secciones, encontrará la lista completa de parámetros para establecer valores predeterminados al crear un experimento de Piloto automático con la interfaz de usuario de Studio Classic y descubrirá la manera de establecer dichos valores.

**Topics**
+ [Lista de parámetros predeterminados compatibles](#autopilot-list-default-parameters-create-experiment)
+ [Establecer los parámetros predeterminados del experimento con Piloto automático](#autopilot-set-default-parameters-create-experiment-howto)

## Lista de parámetros predeterminados compatibles
<a name="autopilot-list-default-parameters-create-experiment"></a>

Los siguientes parámetros permiten establecer los valores predeterminados con un archivo de configuración para crear un experimento de Piloto automático mediante la interfaz de usuario de Studio Classic. Una vez configurados, los valores rellenan automáticamente el campo correspondiente en la pestaña **Crear experimento** de Piloto automático de la interfaz de usuario de Studio Classic. Consulte [Advanced settings (optional)](autopilot-automate-model-development-create-experiment-ui.md#advanced-settings) para obtener una descripción completa de cada campo.
+ **Seguridad:** Amazon VPC, subredes y grupos de seguridad.
+ **Acceso: función** de AWS IAM. ARNs
+ **Cifrado:** AWS KMS clave IDs.
+ **Etiquetas:** pares clave-valor que se utilizan para etiquetar y organizar los recursos de SageMaker IA.

## Establecer los parámetros predeterminados del experimento con Piloto automático
<a name="autopilot-set-default-parameters-create-experiment-howto"></a>

Los administradores pueden establecer los valores predeterminados en un archivo de configuración y, a continuación, colocar manualmente el archivo en una ubicación recomendada dentro del entorno de Studio Classic para usuarios específicos, o pueden pasar el archivo a un script de configuración del ciclo de vida (LCC) para automatizar la personalización del entorno de Studio Classic para un dominio o perfil de usuario determinados.
+ Para configurar el archivo de configuración, comience por rellenar  con sus parámetros predeterminados.

  Para configurar los valores predeterminados incluidos en [Lista de parámetros predeterminados compatibles](#autopilot-list-default-parameters-create-experiment), los administradores pueden crear un archivo de configuración denominado`config.yaml`, cuya estructura debe adherirse a la de este [archivo de configuración de ejemplo](https://sagemaker.readthedocs.io/en/stable/overview.html#configuration-file-structure). En el siguiente fragmento, se muestra un ejemplo de archivo de configuración con todos los parámetros `AutoML` compatibles. Para obtener más información sobre el formato de este archivo, consulte el [esquema completo](https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/config/config_schema.py).

  ```
  SchemaVersion: '1.0'
  SageMaker:
    AutoMLJob:
      # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html
      AutoMLJobConfig:
        SecurityConfig:
          EnableInterContainerTrafficEncryption: true
          VolumeKmsKeyId: 'kms-key-id'
          VpcConfig:
            SecurityGroupIds:
              - 'security-group-id-1'
              - 'security-group-id-2'
            Subnets:
              - 'subnet-1'
              - 'subnet-2'
      OutputDataConfig:
        KmsKeyId: 'kms-key-id'
      RoleArn: 'arn:aws:iam::111222333444:role/Admin'
      Tags:
      - Key: 'tag_key'
        Value: 'tag_value'
  ```
+ A continuación, coloque el archivo de configuración en la ubicación recomendada [copiando manualmente el archivo](#autopilot-intelligent-defaults-manual-setup) en sus rutas recomendadas o utilizando una [configuración del ciclo de vida](#autopilot-intelligent-defaults-lcc-setup) (LCC).

  El archivo de configuración debe estar en, al menos, una de las siguientes ubicaciones del entorno Studio Classic del usuario. De forma predeterminada, SageMaker AI busca un archivo de configuración en dos ubicaciones:
  + Primero, en`/etc/xdg/sagemaker/config.yaml`. Nos referimos a este archivo como el *archivo de configuración del administrador*.
  + Luego, en`/root/.config/sagemaker/config.yaml`. Nos referimos a este archivo como el *archivo de configuración del usuario*.

  Con el archivo de configuración del *administrador*, los administradores pueden definir un conjunto de valores predeterminados. Si lo desean, pueden usar el archivo de configuración de *usuario* para anular los valores establecidos en el archivo de configuración del *administrador* o establecer valores de parámetros predeterminados adicionales.

  En el siguiente fragmento se muestra un script de ejemplo que escribe el archivo de configuración de parámetros predeterminado en la ubicación del *administrador* del entorno de Studio Classic del usuario. Puede sustituir `/etc/xdg/sagemaker` por `/root/.config/sagemaker` para escribir el archivo en la ubicación del *usuario*.

  ```
  ## Sample script with AutoML intelligent defaults
  #!/bin/bash
  
  sudo mkdir -p /etc/xdg/sagemaker
  
  echo "SchemaVersion: '1.0'
  CustomParameters:
    AnyStringKey: 'AnyStringValue'
  SageMaker:
    AutoMLJob:
      # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html
      AutoMLJobConfig:
        SecurityConfig:
          EnableInterContainerTrafficEncryption: true
          VolumeKmsKeyId: 'kms-key-id'
          VpcConfig:
            SecurityGroupIds:
              - 'security-group-id-1'
              - 'security-group-id-2'
            Subnets:
              - 'subnet-1'
              - 'subnet-2'
      OutputDataConfig:
        KmsKeyId: 'kms-key-id'
      RoleArn: 'arn:aws:iam::111222333444:role/Admin'
      Tags:
      - Key: 'tag_key'
        Value: 'tag_value'
  " | sudo tee /etc/xdg/sagemaker/config.yaml
  ```
  + **Copiar los archivos manualmente**: para copiar los archivos de configuración manualmente, ejecute el [script](#autopilot-intelligent-defaults-manual-setup) creado en el paso anterior desde un terminal de Studio Classic. En este caso, el perfil de usuario que ejecutó el script puede crear experimentos de Piloto automático con los valores predeterminados aplicables solo a ellos.
  + **Cree una configuración del ciclo de vida de la SageMaker IA**: también puede utilizar una [configuración del ciclo](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html) de vida (LCC) para automatizar la personalización de su entorno de Studio Classic. Los LCC son scripts de shell activados por eventos del ciclo de vida de Amazon SageMaker Studio Classic, como el inicio de una aplicación de Studio Classic. Esta personalización incluye la instalación de paquetes personalizados, la configuración de extensiones de cuaderno, la precarga de conjuntos de datos, la configuración de repositorios de código fuente o, en nuestro caso, el relleno previo de los parámetros predeterminados. Los administradores pueden asociar la LCC a un dominio de Studio Classic para automatizar la configuración de los valores predeterminados de cada perfil de usuario de ese dominio.

    En las siguientes secciones, se detalla cómo crear una configuración de ciclo de vida para que los usuarios puedan cargar automáticamente los parámetros predeterminados de Piloto automático al iniciar Studio Classic. Puede elegir crear una LCC mediante la consola SageMaker AI o la. AWS CLI

------
#### [ Create a LCC from the SageMaker AI Console ]

    Siga estos pasos para crear una LCC que contenga sus parámetros predeterminados, adjunte la LCC a un dominio o un perfil de usuario y, a continuación, inicie una aplicación Studio Classic rellenada previamente con los parámetros predeterminados establecidos por la LCC mediante la consola AI. SageMaker 
    + **Para crear una configuración de ciclo de vida que ejecute el [script](#autopilot-intelligent-defaults-script) que contiene los valores predeterminados mediante la consola AI SageMaker **
      + Abre la consola de SageMaker IA en[https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).
      + En el lado izquierdo, desplácese hasta **Configuraciones de administración** y, a continuación, a **Configuraciones del ciclo de vida**.
      + En la página de **Configuraciones del ciclo de vida**, vaya a la pestaña Studio Classic y, a continuación, seleccione **Crear configuración**.
      + En **Nombre**, escriba un nombre con caracteres alfanuméricos y guiones, pero sin espacios. El nombre puede tener un máximo de 63 caracteres.
      + Pegue el [script](#autopilot-intelligent-defaults-script) en la sección **Scripts**.
      + Seleccione **Crear configuración** para crear la configuración del ciclo de vida. Esto crea una LCC de tipo `Kernel gateway app`.
    +  **Asociar la configuración del ciclo de vida a su dominio de Studio Classic, un espacio o a un perfil de usuario**

      Siga los pasos que se indican en [Attach lifecycle configuration to Studio Domain or user profile](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-console.html#studio-lcc-create-console-step2) para asociar su LCC a un dominio de Studio o a un perfil de usuario específico.
    +  **Iniciar la aplicación de Studio Classic con la configuración del ciclo de vida**

      Una vez que la LCC esté asociada a un dominio o a un perfil de usuario, los usuarios afectados pueden iniciar una aplicación de Studio Classic desde la página de inicio de Studio Classic en Studio para seleccionar automáticamente los valores predeterminados establecidos por la LCC. Esto rellena automáticamente la interfaz de usuario de Studio Classic al crear un experimento de Piloto automático.

------
#### [ Create a LCC from the AWS CLI ]

    Utilice los siguientes fragmentos para iniciar una aplicación de Studio Classic que ejecute el [script](#autopilot-intelligent-defaults-manual-setup) usando la AWS CLI. Tenga en cuenta que `lifecycle_config.sh` es el nombre que se le da al script en este ejemplo.

    Antes de comenzar:
    + Asegúrese de haber actualizado y configurado AWS CLI completando los requisitos previos descritos en [Crear una configuración del ciclo de vida desde](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-cli.html). AWS CLI
    + Instale la documentación de [OpenSSL](https://www.openssl.org/source/). El AWS CLI comando utiliza la biblioteca de código abierto *OpenSSL* para codificar el script en formato Base64. Este requisito evita errores debidos a la codificación del espaciado y los saltos de línea.

    Ahora puede seguir estos tres pasos:
    +  **Crear una nueva configuración del ciclo de vida que haga referencia al script de configuración `lifecycle_config.sh`**

      ```
      LCC_CONTENT=`openssl base64 -A -in lifecycle_config.sh`
      
      ## Create a new lifecycle config 
      aws sagemaker create-studio-lifecycle-config --region region \
      --studio-lifecycle-config-name lcc-name \
      --studio-lifecycle-config-content $LCC_CONTENT \
      --studio-lifecycle-config-app-type default
      ```

      Tenga en cuenta el ARN de la configuración del ciclo de vida recién creada que se devuelve. Este ARN es necesario para asociar la configuración del ciclo de vida a la aplicación.
    +  **Asociar la configuración del ciclo de vida a su`JupyterServerApp`**

      En el siguiente ejemplo, se muestra cómo crear un perfil de usuario con la configuración del ciclo de vida asociada. Para actualizar un perfil de usuario existente, utilice el comando. AWS CLI [update-user-profile](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-user-profile.html) Para crear o actualizar un dominio, consulte [create-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-domain.html) y [update-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-domain.html). Agregue el ARN de configuración del ciclo de vida del paso anterior a la configuración del tipo de aplicación `JupyterServerAppSettings`. Puede agregar varias configuraciones de ciclo de vida a la vez mediante una lista de configuraciones del ciclo de vida.

      ```
      # Create a new UserProfile
      aws sagemaker create-user-profile --domain-id domain-id \
      --user-profile-name user-profile-name \
      --region region \
      --user-settings '{
      "JupyterServerAppSettings": {
        "LifecycleConfigArns":
          ["lifecycle-configuration-arn"]
        }
      }'
      ```

      Una vez que la LCC esté asociada a un dominio o perfil de usuario, los usuarios afectados pueden cerrar y actualizar su aplicación Studio Classic existente siguiendo los pasos que se indican en [Cerrar y actualizar Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-tasks-update-studio.html), o iniciar una nueva aplicación de Studio Classic desde la AWS consola para seleccionar automáticamente los valores predeterminados establecidos por la LCC. Esto rellena automáticamente la interfaz de usuario de Studio Classic al crear un experimento de Piloto automático. Como alternativa, pueden lanzar una nueva aplicación de Studio Classic de la AWS CLI siguiente manera.
    +  **Inicie la aplicación Studio Classic con la configuración del ciclo de vida mediante el AWS CLI**

      ```
      # Create a Jupyter Server application
      aws sagemaker create-app --domain-id domain-id \
      --user-profile-name user-profile-name \
      --region region \
      --app-type JupyterServer \
      --resource-spec LifecycleConfigArn=lifecycle-configuration-arn \
      --app-name default
      ```

      Para obtener más información sobre cómo crear una configuración de ciclo de vida con la AWS CLI, consulte [Create a Lifecycle Configuration from the AWS CLI](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-cli.html).

------

**Creación de un experimento de Piloto automático usando la interfaz de usuario de Studio Classic**

1. Inicie sesión en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/), elija **Studio** en el panel de navegación izquierdo, seleccione su dominio y perfil de usuario y, a continuación, **abra Studio**.

1. En Studio, seleccione el icono de Studio Classic en el panel de navegación superior izquierdo. Se abrirá una aplicación de Studio Classic.

1. Ejecute o abra una aplicación de Studio Classic desde el espacio que prefiera, o bien **cree un espacio de Studio Classic**. En la pestaña **Inicio**, seleccione la tarjeta **AutoML**. Esto abrirá una nueva pestaña **AutoML**.

1. Seleccione **Crear un experimento de AutoML**. Se abrirá una nueva pestaña **Crear experimento**.

1. En la sección **Detalles del experimento y los datos**, introduzca la siguiente información:

   1. **Nombre del experimento**: debe ser exclusivo de tu cuenta actual Región de AWS y contener un máximo de 63 caracteres alfanuméricos. Puede incluir guiones (-), pero no espacios.

   1. **Datos de entrada**: proporcione la ubicación del bucket de Amazon Simple Storage Service (Amazon S3) de los datos de entrada. Este bucket de S3 debe estar en su Región de AWS actual. La URL debe estar en un `s3://` formato en el que Amazon SageMaker AI tenga permisos de escritura. El archivo debe estar en formato CSV o Parquet y contener al menos 500 filas. Seleccione **Examinar** para desplazarse por las rutas disponibles y **Vista previa** para ver una muestra de los datos de entrada.

   1. **¿La entrada de S3 es un archivo de manifiesto?**: un archivo de manifiesto incluye metadatos con los datos de entrada. Los metadatos especifican la ubicación de los datos en Amazon S3. También especifica cómo se formatean los datos y qué atributos del conjunto de datos se van a utilizar al entrenar el modelo. Puede usar un archivo de manifiesto como alternativa al preprocesamiento cuando los datos etiquetados se transmitan en modo `Pipe`.

   1. **¿Dividir automáticamente los datos?**: Piloto automático puede dividir sus datos en una división 80-20 % para los datos de entrenamiento y validación. Si prefiere una división personalizada, puede elegir **Especificar la tasa de división**. Para usar un conjunto de datos personalizado para la validación, seleccione **Proporcionar un conjunto de validación**.

   1. **Ubicación de los datos de salida (bucket S3)**: el nombre de la ubicación del bucket S3 en la que desea almacenar los datos de salida. La URL de este bucket debe estar en un formato de Amazon S3 en el que Amazon SageMaker AI tenga permisos de escritura. El bucket de S3 debe estar en la Región de AWS actual. Piloto automático también puede crearlo automáticamente en la misma ubicación que los datos de entrada. 

1. Seleccione **Siguiente: Objetivo y características**. Se abrirá la pestaña **Objetivo y características**.

1. En la sección **Objetivo y características**:
   + Seleccione una columna para establecerla como objetivo para las predicciones del modelo.
   + Si lo desea, puede introducir el nombre de una columna de ponderaciones de muestra en la sección **Ponderaciones de muestra** para solicitar que las filas del conjunto de datos se ponderen durante el entrenamiento y la evaluación. Para obtener más información sobre las métricas disponibles, consulte [Métricas ponderadas en Piloto automático](autopilot-metrics-validation.md#autopilot-weighted-metrics).
**nota**  
El soporte para ponderaciones de muestra solo está disponible en el [modo de ensamblaje](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode).
   + También puede seleccionar características para el entrenamiento y cambiar su tipo de datos. Están disponibles los siguientes tipos de datos: `Text`, `Numerical`, `Categorical`, `Datetime`, `Sequence` y `Auto`. Todas las características se seleccionan de forma predeterminada.

1. Elija **Siguiente: Método de entrenamiento**. Se abre la pestaña **Método de entrenamiento**.

1. En la sección **Método de entrenamiento**, seleccione la opción de entrenamiento: **Ensamblaje**, **Optimización de hiperparámetros (HPO)** o **Automático** para que Piloto automático elija el método de entrenamiento automáticamente en función del tamaño del conjunto de datos. Cada modo de entrenamiento ejecuta un conjunto predefinido de algoritmos en el conjunto de datos para entrenar a los candidatos a modelo. De forma predeterminada, Piloto automático preselecciona todos los algoritmos disponibles para el modo de entrenamiento en cuestión. Puedes realizar un experimento de entrenamiento en Piloto automático con todos los algoritmos o elegir su propio subconjunto.

   Para obtener más información sobre los modos de entrenamiento y los algoritmos disponibles, consulte la sección **Autopilot training modes** en la página [Training modes and algorithms](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html).

1. Seleccione **Siguiente: Implementación y configuración avanzada** para abrir la pestaña **Implementación y configuración avanzada**. La configuración incluye el nombre del punto de conexión que se muestra automáticamente, el tipo de problema de machine learning y opciones adicionales para ejecutar el experimento.

   1. **Configuración de implementación**: Piloto automático puede crear automáticamente un punto de conexión e implementar el modelo automáticamente.

      Para realizar una implementación automática en un punto de conexión generado automáticamente o para proporcionar un nombre de punto de conexión para una implementación personalizada, establezca el conmutador en **Sí** en **¿Hacer implementación automática?** Si está importando datos de Amazon SageMaker Data Wrangler, tiene opciones adicionales para implementar automáticamente el mejor modelo con o sin las transformaciones de Data Wrangler.
**nota**  
Si su flujo de Data Wrangler contiene operaciones de varias filas, como `groupby`, `join` o `concatenate`, no podrá implementar automáticamente con estas transformaciones. Para obtener más información, consulte [Automatically Train Models on Your Data Flow](https://docs.aws.amazon.com/sagemaker/latest/dg/data-wrangler-autopilot.html).

   1. **Configuración avanzada (opcional)**: Piloto automático proporciona controles adicionales para configurar manualmente los parámetros experimentales, como la definición del tipo de problema, las limitaciones de tiempo en las pruebas y los trabajos de Piloto automático, la seguridad y la configuración del cifrado.
**nota**  
Piloto automático permite establecer valores predeterminados para simplificar la configuración de los experimentos de Piloto automático con la interfaz de usuario de Studio Classic. Los administradores pueden usar las [configuraciones del ciclo de vida](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html) (LCC) de Studio Classic para establecer los valores de infraestructura, redes y seguridad en los archivos de configuración y rellenar previamente los *ajustes avanzados* de los trabajos de `AutoML`.  
Para obtener más información sobre cómo pueden los administradores automatizar la personalización de un experimento de Piloto automático, consulte [Configurar los parámetros predeterminados de un experimento de Piloto automático (para administradores)](autopilot-set-default-parameters-create-experiment.md).

      1. **Tipo de problema de machine learning**: Piloto automático puede inferir automáticamente el tipo de problema de aprendizaje supervisado a partir de su conjunto de datos. Si prefiere elegirlo manualmente, puede usar el menú desplegable **Seleccionar el tipo de problema de machine learning**. Tenga en cuenta que el valor predeterminado es **Auto**. En algunos casos, la SageMaker IA no puede inferir con precisión. Cuando eso suceda, debe aportar el valor necesario para que el trabajo se complete correctamente. Algo especialmente importante es que puede elegir uno de los siguientes tipos.
         + **Clasificación binaria**: la clasificación binaria asigna los datos de entrada a una de dos clases predefinidas y mutuamente excluyentes en función de sus atributos, como el diagnóstico médico basado en los resultados de las pruebas de diagnóstico que determinan si una persona tiene una enfermedad.
         + **Regresión**: la regresión establece una relación entre las variables de entrada (también conocidas como características o variables independientes) y la variable objetivo (también conocida como variable dependiente). Esta relación se captura mediante una función o modelo matemático que asigna las variables de entrada a una salida continua. Se suele utilizar para tareas como la predicción de los precios de la vivienda en función de características como los metros cuadrados y el número de baños, las tendencias del mercado de valores o la estimación de las cifras de ventas.
         + **Clasificación multiclase**: la clasificación multiclase asigna los datos de entrada a una de varias clases en función de sus atributos; por ejemplo, la predicción del tema más relevante para un documento de texto, como política, finanzas o filosofía.

      1. **Tiempo de ejecución**: puede definir un límite de tiempo máximo. Al alcanzar el límite de tiempo, las pruebas y los trabajos que superen el límite de tiempo se detienen automáticamente.

      1. **Acceso**: puede elegir el rol al que Amazon SageMaker Studio Classic asume para obtener acceso temporal Servicios de AWS (en particular, SageMaker AI y Amazon S3) en su nombre. Si no se define ningún rol de forma explícita, Studio Classic utiliza automáticamente el rol de ejecución de SageMaker IA predeterminado adjunto a su perfil de usuario.

      1. **Cifrado**: para mejorar la seguridad de sus datos en reposo y protegerlos contra el acceso no autorizado, puede especificar claves de cifrado para cifrar los datos en sus buckets de Amazon S3 y en el volumen de Amazon Elastic Block Store (Amazon EBS) asociado a su dominio de Studio Classic.

      1. **Seguridad**: puede elegir la nube privada virtual (Amazon VPC) en la que se ejecuta su trabajo de SageMaker IA. Asegúrese de que la VPC de Amazon tenga acceso a sus buckets de entrada y salida de Amazon S3.

      1. **Proyecto**: especifique el nombre del proyecto de SageMaker IA que desee asociar a este experimento de piloto automático y modele los resultados. Al especificar un proyecto, Piloto automático lo etiqueta como un experimento. Esto le permite saber qué salidas del modelo están asociadas a este proyecto.

      1. **Etiquetas**: las etiquetas son una matriz de pares clave-valor. Usa etiquetas para clasificar tus recursos Servicios de AWS, como su propósito, propietario o entorno.

   1. Seleccione **Siguiente: Revisar y crear** para obtener un resumen del experimento de Piloto automático antes de crearlo. 

1. Selecciona **Crear experimento**. La creación del experimento inicia un trabajo de piloto automático en SageMaker la IA. Piloto automático proporciona el estado del experimento, información sobre el proceso de exploración de datos y los modelos candidatos en cuadernos, una lista de los modelos generados y sus informes y el perfil de trabajo utilizado para crearlos.

   Para obtener información sobre los cuadernos generados por un trabajo de Piloto automático, consulte [Cuadernos de Piloto automático generados para administrar las tareas de AutoML](autopilot-automate-model-development-notebook-output.md). Para obtener información sobre los detalles de cada candidato modelo y sus informes, consulte [Ver detalles del modelo](autopilot-models-details.md) y [Visualización de un informe de rendimiento sobre el modelo de Piloto automático](autopilot-model-insights.md).

**nota**  
Para evitar incurrir en cargos innecesarios: si implementa un modelo que ya no es necesario, elimine los puntos de conexión y los recursos que se crearon durante esa implementación. La información sobre los precios de las instancias por región está disponible en [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

# Cuadernos de ejemplo de Piloto automático de Amazon SageMaker
<a name="autopilot-example-notebooks"></a>

Los siguientes cuadernos sirven como ejemplos prácticos y abordan varios casos de uso de Piloto automático.

Puede encontrar todos los cuadernos de Piloto automático en el directorio [https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot) del repositorio de ejemplos de SageMaker AI GitHub.

Recomendamos clonar todo el repositorio de Git en Studio Classic para acceder a los cuadernos y ejecutarlos directamente. Para obtener información sobre cómo clonar un repositorio de Git en Studio Classic, consulte [Clonar un repositorio de Git en Amazon SageMaker Studio Classic](studio-tasks-git.md).


| **Caso de uso** | **Descripción** | 
| --- | --- | 
| [Inferencia sin servidor](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/autopilot-serverless-inference) |  De forma predeterminada, Piloto automático permite implementar los modelos generados en puntos de conexión de inferencia en tiempo real. En este repositorio, el cuaderno ilustra cómo implementar modelos de Piloto automático entrenados con los modos `ENSEMBLING` y `HYPERPARAMETER OPTIMIZATION (HPO)` en puntos de conexión sin servidor. Los puntos de conexión sin servidor lanzan automáticamente los recursos informáticos y los amplían y reducen en función del tráfico, lo que elimina la necesidad de elegir tipos de instancias o de gestionar las políticas de escalado.  | 
|  [Selección de características personalizada](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/custom-feature-selection)  |  Piloto automático inspecciona su conjunto de datos y ejecuta una serie de candidatos para determinar la combinación óptima de pasos de preprocesamiento de datos, algoritmos de machine learning e hiperparámetros. Puede implementarlos fácilmente en un punto de conexión en tiempo real o para el procesamiento por lotes. En algunos casos, es posible que desee tener la flexibilidad de llevar el código de procesamiento de datos personalizado a Piloto automático. Por ejemplo, sus conjuntos de datos pueden contener una gran cantidad de variables independientes, y es posible que desee incorporar un paso de selección de características personalizado para eliminar primero las variables irrelevantes. El conjunto de datos más pequeño resultante se puede usar luego para iniciar un trabajo de Piloto automático. En última instancia, también querrá incluir tanto el código de procesamiento personalizado como los modelos de Piloto automático para el procesamiento en tiempo real o por lotes.  | 
|  [Ejemplo de canalización](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/sagemaker-autopilot-pipelines)  |  Si bien Piloto automático agiliza el proceso de creación de modelos ML, los ingenieros de MLOps siguen siendo responsables de crear, automatizar y gestionar los flujos de trabajo integrales de ML en la producción. SageMaker Pipelines puede ayudar a automatizar varios pasos del ciclo de vida del ML, como el preprocesamiento de datos, el entrenamiento del modelo, el ajuste de hiperparámetros, la evaluación del modelo y la implementación. Este cuaderno es una demostración de cómo incorporar Piloto automático en un flujo de trabajo de entrenamiento de AutoML integral de SageMaker Pipelines. Para lanzar un experimento de Piloto automático en Pipelines, debe crear un flujo de trabajo de creación de modelos escribiendo un código de integración personalizado con pasos de Pipelines, [Lambda](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-lambda) o [Processing](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-processing). Para obtener más información, consulte [Move Amazon SageMaker Autopilot ML models from experimentation to production using Amazon SageMaker Pipelines](https://aws.amazon.com/blogs/machine-learning/move-amazon-sagemaker-autopilot-ml-models-from-experimentation-to-production-using-amazon-sagemaker-pipelines/). Como alternativa, cuando utilice Piloto automático en el [modo de ensamblaje](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html), puede consultar el ejemplo de cuaderno que muestra cómo utilizar el paso AutoML nativo en el [paso AutoML nativo de SageMaker Pipelines](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/sagemaker-autopilot-pipelines/autopilot_pipelines_demo_notebook.ipynb). Gracias a la compatibilidad con Piloto automático como paso nativo en Pipelines, ahora puede añadir un paso de entrenamiento automatizado ([AutoMLStep](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-automl)) a su Pipelines e invocar un experimento de Piloto automático en el modo de ensamblaje.  | 
| [ Direct marketing with Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/sagemaker_autopilot_direct_marketing.html) |  Este cuaderno demuestra cómo se utiliza el [conjunto de datos de marketing bancario](https://archive.ics.uci.edu/ml/datasets/bank+marketing) para predecir si un cliente se inscribirá en un depósito a plazo fijo en un banco. Puede utilizar Piloto automático en este conjunto de datos para obtener la canalización ML más precisa explorando las opciones contenidas en varias canalizaciones candidatas. Piloto automático genera cada candidato en un procedimiento de dos pasos. El primer paso diseña características automatizadas en el conjunto de datos. El segundo paso entrena y ajusta un algoritmo para producir un modelo. El cuaderno contiene instrucciones sobre cómo entrenar el modelo y sobre cómo implementarlo para realizar inferencias por lotes utilizando el mejor candidato.  | 
| [Customer Churn Prediction with Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/autopilot_customer_churn.html) |  Este cuaderno describe el uso de machine learning para identificar automáticamente a los clientes descontentos; también se conoce como predicción de abandono de clientes. El ejemplo muestra cómo analizar un conjunto de datos disponible públicamente y cómo aplicarle ingeniería de características. A continuación se muestra cómo ajustar un modelo seleccionando la canalización de mejor rendimiento junto con los hiperparámetros óptimos para el algoritmo de entrenamiento. Por último, muestra cómo implementar el modelo en un punto de conexión alojado y cómo evaluar sus predicciones en comparación con la realidad. Sin embargo, los modelos de ML rara vez ofrecen predicciones perfectas. Es por eso que este cuaderno también muestra cómo incorporar los costos relativos de los errores de predicción al determinar el resultado financiero del uso de ML.  | 
| [Top Candidates Customer Churn Prediction with Amazon SageMaker Autopilot and Batch Transform (Python SDK)](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/autopilot_customer_churn_high_level_with_evaluation.html) |  Este cuaderno describe el uso de machine learning para identificar automáticamente a los clientes descontentos; también se conoce como predicción de abandono de clientes. Este cuaderno muestra cómo configurar el modelo para obtener la probabilidad de inferencia, seleccionar los N modelos principales y realizar la transformación por lotes en un conjunto de pruebas de espera para su evaluación.   El cuaderno funciona con el SDK de Python para SageMaker >= 1.65.1 (publicado el 19 de junio de 2020).   | 
| [Bringing your own data processing code to Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/custom-feature-selection/Feature_selection_autopilot.html) |  Este cuaderno muestra cómo incorporar e implementar código de procesamiento de datos personalizado al utilizar Piloto automático de Amazon SageMaker. Añade un paso de selección de características personalizado para eliminar las variables irrelevantes de un trabajo de Piloto automático. A continuación, se muestra cómo implementar tanto el código de procesamiento personalizado como los modelos generados por Piloto automático en un punto de conexión en tiempo real o para el procesamiento por lotes.   | 
| Más cuadernos | Puede encontrar más cuadernos que ilustran otros casos de uso, como [batch transform](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/ap-batch-transform.ipynb), [time-series forecasting](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/autopilot_time_series.ipynb) y otros en el directorio raíz. | 

# Vídeos: Uso de Piloto automático para automatizar y explorar el proceso de machine learning
<a name="autopilot-videos"></a>

Esta es una serie de vídeos que ofrece un recorrido por las capacidades del SageMaker piloto automático de Amazon con Studio Classic. Muestran cómo iniciar un trabajo AutoML, analizar y preprocesar datos, diseñar ingeniería de entidades y optimización de hiperparámetros en modelos candidatos, y cómo visualizar y comparar las métricas de modelo resultantes.

**Topics**
+ [Comience un trabajo en AutoML con Amazon Autopilot SageMaker](#autopilot-video-start-automl-job)
+ [Revise la exploración de datos e ingeniería de características automatizada en Autopilot.](#autopilot-video-generated-notebooks)
+ [Ajuste de modelos para optimizar el rendimiento](#autopilot-video-optimizing-model-performance)
+ [Elegir e implementar el mejor modelo](#autopilot-video-choose-and-deploy-the-best-model)
+ [Tutorial de Amazon SageMaker Autopilot](#autopilot-walkthrough)

## Comience un trabajo en AutoML con Amazon Autopilot SageMaker
<a name="autopilot-video-start-automl-job"></a>

Este vídeo muestra cómo iniciar un trabajo de AutoML con Autopilot. (Duración: 8:41)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/qMEtqJPhqpA/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/qMEtqJPhqpA)


## Revise la exploración de datos e ingeniería de características automatizada en Autopilot.
<a name="autopilot-video-generated-notebooks"></a>

En este vídeo se muestra cómo revisar los cuadernos de exploración de datos y definiciones de candidatos generados por Amazon SageMaker Autopilot. (Duración: 10:04)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/WsfRAeGzgm8/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/WsfRAeGzgm8)


## Ajuste de modelos para optimizar el rendimiento
<a name="autopilot-video-optimizing-model-performance"></a>

Este vídeo muestra cómo optimizar el rendimiento del modelo durante el entrenamiento mediante el ajuste de hiperparámetros. (Duración: 4:59)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/KZSTsWrDGXs/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/KZSTsWrDGXs)


## Elegir e implementar el mejor modelo
<a name="autopilot-video-choose-and-deploy-the-best-model"></a>

En este vídeo se muestra cómo utilizar las métricas de trabajo para elegir el mejor modelo y, a continuación, cómo implementarlo. (Duración: 5:20)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/vRHyX3kDstI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/vRHyX3kDstI)


## Tutorial de Amazon SageMaker Autopilot
<a name="autopilot-walkthrough"></a>

Este vídeo muestra una demostración integral en la que primero creamos un modelo de clasificación binaria de forma automática con Amazon SageMaker Autopilot. Vemos cómo los modelos candidatos se han construido y optimizado mediante blocs de notas generados automáticamente. También analizamos a los mejores candidatos con Amazon SageMaker Experiments. Por último, seleccionamos al mejor candidato (en función de XGBoost) y configuramos la captura de datos con SageMaker Model Monitor.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/DRjOOaR2prQ/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/DRjOOaR2prQ)


# Cuotas de Piloto automático
<a name="autopilot-quotas"></a>

Hay cuotas que limitan los recursos disponibles cuando utiliza Piloto automático de Amazon SageMaker. Algunos de estos límites se pueden aumentar y otros no. 

**nota**  
Las cuotas de recursos documentadas en las siguientes secciones son válidas para la versión 3.22.2 de Amazon SageMaker Studio Classic y versiones posteriores. Para obtener información sobre cómo actualizar su versión de SageMaker Studio Classic, consulte [Cierre y actualice Amazon SageMaker Studio Classic y sus aplicaciones](studio-tasks-update.md).

**Topics**
+ [Cuotas que puede aumentar](#autopilot-quotas-limits-increasable)
+ [Cuotas de recursos](#autopilot-quotas-resource-limits)

## Cuotas que puede aumentar
<a name="autopilot-quotas-limits-increasable"></a>

La siguiente tabla contiene los límites de recursos para las cuotas que puede aumentar:


| Recurso | Regiones | Límites predeterminados | Se puede aumentar hasta | 
| --- | --- | --- | --- | 
| Tamaño del conjunto de datos de entrada | Todos | 100 GB | Cientos de GB | 
| Tamaño de un solo archivo de Parquet\$1 | Todos | 2 GB | N/A | 
| Tamaño del conjunto de datos objetivo para el submuestreo\$1\$1 | Todos | 5 GB | Cientos de GB | 
| Número de trabajos de Piloto automático simultáneos | us-east-1, us-east-2,us-west-2, ap-northeast-1, eu-west-1, eu-central-1 | 4 | Cientos | 
| Número de trabajos de Piloto automático simultáneos | ap-northeast-2, ap-southeast-2, eu-west-2, ap-southeast-1 | 2 | Cientos | 
| Número de trabajos de Piloto automático simultáneos | Las demás regiones | 1 | Decenas | 

**nota**  
\$1Este límite de tamaño de 2 GB es para un único archivo Parquet comprimido. Puede proporcionar un conjunto de datos de Parquet que incluya varios archivos de Parquet comprimidos hasta el tamaño máximo del conjunto de datos de entrada. Después de descomprimir los archivos, es posible que cada uno de ellos se expanda a un tamaño mayor.  
\$1\$1Piloto automático submuestrea automáticamente los conjuntos de datos de entrada que son más grandes que el conjunto de datos objetivo, pero también tiene en cuenta el desequilibrio de clases y conserva las etiquetas de clase poco comunes.

**Para solicitar un aumento de cuota:**

1. Abra la [consola de Service Quotas de ](https://console.aws.amazon.com/servicequotas/home/services/sagemaker/quotas).

1. Seleccione el aumento de cuota y, a continuación, elija **Solicitud de aumento en el nivel de cuenta**.

1. En el campo **Aumentar el valor de cuota**, introduzca el nuevo valor límite que está solicitando.

1. Seleccione **Request (Solicitar)**.

## Cuotas de recursos
<a name="autopilot-quotas-resource-limits"></a>

La siguiente tabla contiene los límites de recursos en tiempo de ejecución para un trabajo de Piloto automático de Amazon SageMaker en una Región de AWS.


| Recurso | Límite por trabajo de Piloto automático | 
| --- | --- | 
| Tiempo de ejecución máximo para un trabajo de Piloto automático | 30 días | 

# Guía de referencia de las API de Piloto automático
<a name="autopilot-reference"></a>

En esta sección, se proporciona un subconjunto de las API de REST del servicio HTTP para crear y administrar los recursos de Piloto automático de Amazon SageMaker (trabajos de AutoML) mediante programación.

Si el lenguaje de su elección es Python, puede hacer referencia a [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html) o al [objeto AutoMLV2](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) del Amazon SageMaker Python SDK directamente.

## Acciones de API de AutoML
<a name="autopilot-api-actions"></a>

En esta lista, se detallan las operaciones disponibles en la referencia de las API para administrar trabajos de AutoML mediante programación.
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListAutoMLJobs.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListAutoMLJobs.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopAutoMLJob.html)

**nota**  
[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) y [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) sob versiones nuevas de [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html) y [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html) que ofrecen compatibilidad con versiones anteriores.  
Recomendamos utilizar `CreateAutoMLJobV2`. `CreateAutoMLJobV2` puede gestionar tipos de problemas tabulares idénticos a los de su versión anterior (`CreateAutoMLJob`), así como tipos de problemas no tabulares, como la clasificación de imágenes o textos o la previsión de series temporales.  
Consulte las instrucciones sobre cómo migrar un `CreateAutoMLJob` a `CreateAutoMLJobV2` en [Migrate a CreateAutoMLJob to CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html#autopilot-create-experiment-api-migrate-v1-v2).

## Tipos de datos de API de AutoML
<a name="autopilot-api-data-types"></a>

En esta lista, se detallan los objetos AutoML de la API que utilizan las acciones anteriores como solicitudes entrantes o respuestas salientes.
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateStep.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateStep.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLContainerDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLContainerDefinition.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSource.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSource.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLInferenceContainerDefinitions.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLInferenceContainerDefinitions.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobInputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobInputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobStepMetadata.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobStepMetadata.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLPartialFailureReason.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLPartialFailureReason.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLSecurityConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLSecurityConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_FinalAutoMLJobObjectiveMetric.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_FinalAutoMLJobObjectiveMetric.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployResult.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployResult.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationResolvedAttribute.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationResolvedAttribute.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesTransformations.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesTransformations.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TuningJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TuningJobCompletionCriteria.html)