Как загрузка файла S3 и estimator.fit () работают в этой записи блога? - PullRequest
1 голос
/ 20 сентября 2019

Трудность в понимании

Q2) Как скачать файл с S3?

С Рабочий процесс машинного обучения с SageMaker

А также, почему мы используем этот фрагмент кода?

estimator.fit(train_data_location)

1 Ответ

1 голос
/ 20 сентября 2019

Загрузка файла из S3:

Этот блок кода в разделе Q2 определяет функцию, которая загружает файл из S3.Пользователь создает экземпляр клиента S3, а затем передает URL-адрес S3 методу s3.Bucket.download_file().

def download_from_s3(url):
    """ex: url = s3://sagemakerbucketname/data/validation.tfrecords"""
    url_parts = url.split("/")  # => ['s3:', '', 'sagemakerbucketname', 'data', ...
    bucket_name = url_parts[2]
    key = os.path.join(*url_parts[3:])
    filename = url_parts[-1]
    if not os.path.exists(filename):
        try:
            # Create an S3 client
            s3 = boto3.resource('s3')
            print('Downloading {} to {}'.format(url, filename))
            s3.Bucket(bucket_name).download_file(key, filename)
        except botocore.exceptions.ClientError as e:
            if e.response['Error']['Code'] == "404":
                print('The object {} does not exist in bucket {}'.format(
                    key, bucket_name))
            else:
                raise

Объяснение Estimator.fit ():

Строка estimator.fit(train_data_location) - это то, чтоинициирует тренировочный процесс с SageMaker.При запуске SageMaker предоставит необходимую инфраструктуру, получит данные из местоположения, указанного пользователем (здесь train_data_location, который является путем к Amazon S3), и распределит их среди обучающего кластера, проведет процесс обучения, вернет полученный результатмодели и снести учебную инфраструктуру.

Результат этой учебной работы можно найти в консоли SageMaker.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...