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.
Creación de trabajos de regresión o clasificación para datos tabulares mediante la API de AutoML
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 CreateAutoMLJobV2
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 de CreateAutoMLJobV2
y seleccione un SDK. Como ejemplo, para los usuarios de Python, consulte la sintaxis de solicitud completa de create_auto_ml_job_v2
en AWS SDK for Python (Boto3).
nota
CreateAutoMLJobV2 y DescribeAutoMLJobV2 son versiones nuevas CreateAutoMLJoby DescribeAutoMLJobofrecen 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 y rendimiento. Utilice los cuadernos 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.
Parámetros necesarios
Todos los demás parámetros son opcionales.
Parámetros opcionales
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
.
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.
Selección de características
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.
Selección de algoritmos
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.
Para ver la lista de algoritmos disponibles por Mode
de entrenamiento, consulte AutoMLAlgorithms
. Para obtener información sobre cada algoritmo, consulte Modos de entrenamiento y compatibilidad con algoritmos.
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.
Para obtener información sobre la validación dividida y cruzada en Piloto automático, consulte Validación cruzada en Piloto automático.
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.
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. 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.
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:
{ "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 rolEMRServerlessRuntimeRole-*
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 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:
{ "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
Recomendamos a los usuarios de CreateAutoMLJob
que migren a CreateAutoMLJobV2
.
En esta sección, se explican las diferencias entre los parámetros de entrada CreateAutoMLJoby la CreateAutoMLJobV2, 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
yTargetAttributeName
han cambiado de posición. -
Los siguientes atributos han cambiado de posición y estructura entre versiones.
El siguiente JSON ilustra cómo funciona Auto MLJob Config. CandidateGenerationConfigdel tipo Auto MLCandidate GenerationConfig se movió a Auto MLProblemTypeConfig. TabularJobConfig. CandidateGenerationConfigde tipo CandidateGenerationConfigen V2.
-
Atributos de solicitud que han cambiado de nombre y estructura.
El siguiente JSON ilustra cómo InputDataConfig(Una matriz de Auto MLChannel) cambió a Auto MLJob InputDataConfig (Una matriz de Auto MLJob Channel) en la V2. Tenga en cuenta que los atributos
SampleWeightAttributeName
yTargetAttributeName
han salido deInputDataConfig
y han pasado a estar enAutoMLProblemTypeConfig
.