Come usare SageMaker CatBoost - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Come usare SageMaker CatBoost

Puoi usarlo CatBoost come algoritmo SageMaker integrato di Amazon. La sezione seguente descrive come usare CatBoost con SageMaker PythonSDK. Per informazioni su come utilizzare CatBoost dall'interfaccia utente di Amazon SageMaker Studio Classic, consultaSageMaker JumpStart modelli preaddestrati.

  • Utilizza CatBoost come algoritmo integrato

    Utilizzate l'algoritmo CatBoost integrato per creare un contenitore di CatBoost addestramento, come mostrato nel seguente esempio di codice. Puoi individuare automaticamente l'immagine dell'algoritmo CatBoost integrato URI utilizzando SageMaker image_uris.retrieve API (o get_image_uri API se usi Amazon SageMaker Python SDK versione 2).

    Dopo aver specificato l' CatBoost immagineURI, puoi utilizzare il CatBoost contenitore per creare uno stimatore utilizzando SageMaker Estimator API e avviare un processo di formazione. L'algoritmo CatBoost integrato viene eseguito in modalità script, ma lo script di addestramento viene fornito automaticamente e non è necessario sostituirlo. Se hai una vasta esperienza nell'uso della modalità script per creare un lavoro di SageMaker formazione, puoi incorporare i tuoi script di CatBoost formazione.

    from sagemaker import image_uris, model_uris, script_uris train_model_id, train_model_version, train_scope = "catboost-classification-model", "*", "training" training_instance_type = "ml.m5.xlarge" # Retrieve the docker image train_image_uri = image_uris.retrieve( region=None, framework=None, model_id=train_model_id, model_version=train_model_version, image_scope=train_scope, instance_type=training_instance_type ) # Retrieve the training script train_source_uri = script_uris.retrieve( model_id=train_model_id, model_version=train_model_version, script_scope=train_scope ) train_model_uri = model_uris.retrieve( model_id=train_model_id, model_version=train_model_version, model_scope=train_scope ) # Sample training data is available in this bucket training_data_bucket = f"jumpstart-cache-prod-{aws_region}" training_data_prefix = "training-datasets/tabular_multiclass/" training_dataset_s3_path = f"s3://{training_data_bucket}/{training_data_prefix}/train" validation_dataset_s3_path = f"s3://{training_data_bucket}/{training_data_prefix}/validation" output_bucket = sess.default_bucket() output_prefix = "jumpstart-example-tabular-training" s3_output_location = f"s3://{output_bucket}/{output_prefix}/output" from sagemaker import hyperparameters # Retrieve the default hyperparameters for training the model hyperparameters = hyperparameters.retrieve_default( model_id=train_model_id, model_version=train_model_version ) # [Optional] Override default hyperparameters with custom values hyperparameters[ "iterations" ] = "500" print(hyperparameters) from sagemaker.estimator import Estimator from sagemaker.utils import name_from_base training_job_name = name_from_base(f"built-in-algo-{train_model_id}-training") # Create SageMaker Estimator instance tabular_estimator = Estimator( role=aws_role, image_uri=train_image_uri, source_dir=train_source_uri, model_uri=train_model_uri, entry_point="transfer_learning.py", instance_count=1, instance_type=training_instance_type, max_run=360000, hyperparameters=hyperparameters, output_path=s3_output_location ) # Launch a SageMaker Training job by passing the S3 path of the training data tabular_estimator.fit( { "training": training_dataset_s3_path, "validation": validation_dataset_s3_path, }, logs=True, job_name=training_job_name )

    Per ulteriori informazioni su come configurarlo CatBoost come algoritmo integrato, consultate i seguenti esempi di notebook.