Actualice XGBoost la versión 0.90 a la versión 1.5 - Amazon SageMaker AI

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.

Actualice XGBoost la versión 0.90 a la versión 1.5

Si utiliza SageMaker PythonSDK, para actualizar los trabajos XGBoost 0.90 existentes a la versión 1.5, debe tener SDK instalada la versión 2.x y cambiar los framework_version parámetros XGBoost version y a 1.5-1. Si utiliza Boto3, necesitará actualizar la imagen de Docker, así como algunos hiperparámetros y objetivos de aprendizaje.

Actualice la SDK versión 1.x de SageMaker AI Python a la versión 2.x

Si todavía usa la versión 1.x de SageMaker PythonSDK, debe actualizar la versión 2.x de Python SageMaker . SDK Para obtener información sobre la última versión de SageMaker PythonSDK, consulte Usar la versión 2.x de SageMaker Python SDK. Para instalar la versión más reciente, ejecute lo siguiente:

python -m pip install --upgrade sagemaker

Cambiar la etiqueta de imagen a 1.5-1

Si utiliza SageMaker Python SDK y utiliza el algoritmo XGBoost incorporado, cambie el parámetro de versión en. image_uris.retrive

from sagemaker import image_uris image_uris.retrieve(framework="xgboost", region="us-west-2", version="1.5-1") estimator = sagemaker.estimator.Estimator(image_uri=xgboost_container, hyperparameters=hyperparameters, role=sagemaker.get_execution_role(), instance_count=1, instance_type='ml.m5.2xlarge', volume_size=5, # 5 GB output_path=output_path)

Si utiliza SageMaker Python SDK y lo utiliza XGBoost como marco para ejecutar sus scripts de entrenamiento personalizados, cambie el framework_version parámetro en XGBoostAPI.

estimator = XGBoost(entry_point = "your_xgboost_abalone_script.py", framework_version='1.5-1', hyperparameters=hyperparameters, role=sagemaker.get_execution_role(), instance_count=1, instance_type='ml.m5.2xlarge', output_path=output_path)

sagemaker.session.s3_inputen SageMaker Python, SDK la versión 1.x ha cambiado de nombre asagemaker.inputs.TrainingInput. Debe utilizar sagemaker.inputs.TrainingInput como se muestra en el ejemplo siguiente.

content_type = "libsvm" train_input = TrainingInput("s3://{}/{}/{}/".format(bucket, prefix, 'train'), content_type=content_type) validation_input = TrainingInput("s3://{}/{}/{}/".format(bucket, prefix, 'validation'), content_type=content_type)

Para ver la lista completa de cambios de la SDK versión 2.x de SageMaker Python, consulta Usar la versión 2.x de Python SageMaker . SDK

Cambiar la imagen de Docker para Boto3

Si usa Boto3 para entrenar o implementar su modelo, cambie la etiqueta de imagen de Docker (1, 0,72, 0.90-1 o 0.90-2) a 1.5-1.

{ "AlgorithmSpecification":: { "TrainingImage": "746614075791.dkr.ecr.us-west-1.amazonaws.com/sagemaker-xgboost:1.5-1" } ... }

Si utiliza SageMaker Python SDK para recuperar la ruta del registro, cambie el version parámetro enimage_uris.retrieve.

from sagemaker import image_uris image_uris.retrieve(framework="xgboost", region="us-west-2", version="1.5-1")

Actualización de hiperparámetros y objetivos de aprendizaje

El parámetro silencioso ha quedado obsoleto y ya no está disponible en la versión XGBoost 1.5 y en las versiones posteriores. En su lugar, usa verbosity. Si usaba el objetivo de aprendizaje reg:linear, este también ha quedado obsoleto y ha sido reemplazado por reg:squarederror. En su lugar, usa reg:squarederror.

hyperparameters = { "verbosity": "2", "objective": "reg:squarederror", "num_round": "50", ... } estimator = sagemaker.estimator.Estimator(image_uri=xgboost_container, hyperparameters=hyperparameters, ...)