Beispiel #1
0
def test_marketplace_tuning_job(sagemaker_session, cpu_instance_type):
    data_path = os.path.join(DATA_DIR, "marketplace", "training")
    region = sagemaker_session.boto_region_name
    account = REGION_ACCOUNT_MAP[region]
    algorithm_arn = ALGORITHM_ARN % (region, account)

    mktplace = AlgorithmEstimator(
        algorithm_arn=algorithm_arn,
        role="SageMakerRole",
        train_instance_count=1,
        train_instance_type=cpu_instance_type,
        sagemaker_session=sagemaker_session,
        base_job_name="test-marketplace",
    )

    train_input = mktplace.sagemaker_session.upload_data(
        path=data_path, key_prefix="integ-test-data/marketplace/train")

    mktplace.set_hyperparameters(max_leaf_nodes=10)

    hyperparameter_ranges = {"max_leaf_nodes": IntegerParameter(1, 100000)}

    tuner = HyperparameterTuner(
        estimator=mktplace,
        base_tuning_job_name="byo",
        objective_metric_name="validation:accuracy",
        hyperparameter_ranges=hyperparameter_ranges,
        max_jobs=2,
        max_parallel_jobs=2,
    )

    tuner.fit({"training": train_input}, include_cls_metadata=False)
    time.sleep(15)
    tuner.wait()
Beispiel #2
0
def test_marketplace_tuning_job(sagemaker_session):
    data_path = os.path.join(DATA_DIR, 'marketplace', 'training')
    region = sagemaker_session.boto_region_name
    account = REGION_ACCOUNT_MAP[region]
    algorithm_arn = ALGORITHM_ARN % (region, account)

    mktplace = AlgorithmEstimator(algorithm_arn=algorithm_arn,
                                  role='SageMakerRole',
                                  train_instance_count=1,
                                  train_instance_type='ml.c4.xlarge',
                                  sagemaker_session=sagemaker_session,
                                  base_job_name='test-marketplace')

    train_input = mktplace.sagemaker_session.upload_data(
        path=data_path, key_prefix='integ-test-data/marketplace/train')

    mktplace.set_hyperparameters(max_leaf_nodes=10)

    hyperparameter_ranges = {'max_leaf_nodes': IntegerParameter(1, 100000)}

    tuner = HyperparameterTuner(estimator=mktplace,
                                base_tuning_job_name='byo',
                                objective_metric_name='validation:accuracy',
                                hyperparameter_ranges=hyperparameter_ranges,
                                max_jobs=2,
                                max_parallel_jobs=2)

    tuner.fit({'training': train_input}, include_cls_metadata=False)
    time.sleep(15)
    tuner.wait()