modeltraining 명령을 사용한 모델 훈련 - Amazon Neptune

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

modeltraining 명령을 사용한 모델 훈련

Neptune ML modeltraining 명령을 사용하여 모델 훈련 작업을 생성하거나, 작업 상태를 확인하거나, 중지하거나, 모든 활성 모델 훈련 작업을 나열할 수 있습니다.

Neptune ML modeltraining 명령을 사용하여 모델 훈련 작업 생성

완전히 새로운 작업을 생성하는 Neptune ML modeltraining 명령은 다음과 같습니다.

curl \ -X POST https://(your Neptune endpoint)/ml/modeltraining -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-training job ID)", "dataProcessingJobId" : "(the data-processing job-id of a completed job)", "trainModelS3Location" : "s3://(your Amazon S3 bucket)/neptune-model-graph-autotrainer" }'

증분 모델 훈련을 위한 업데이트 작업을 생성하는 Neptune ML modeltraining 명령은 다음과 같습니다.

curl \ -X POST https://(your Neptune endpoint)/ml/modeltraining -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-training job ID)", "dataProcessingJobId" : "(the data-processing job-id of a completed job)", "trainModelS3Location" : "s3://(your Amazon S3 bucket)/neptune-model-graph-autotrainer" "previousModelTrainingJobId" : "(the job ID of a completed model-training job to update)", }'

사용자가 제공한 사용자 지정 모델 구현으로 새 작업을 생성하는 Neptune ML modeltraining 명령은 다음과 같습니다.

curl \ -X POST https://(your Neptune endpoint)/ml/modeltraining -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-training job ID)", "dataProcessingJobId" : "(the data-processing job-id of a completed job)", "trainModelS3Location" : "s3://(your Amazon S3 bucket)/neptune-model-graph-autotrainer" "modelName": "custom", "customModelTrainingParameters" : { "sourceS3DirectoryPath": "s3://(your Amazon S3 bucket)/(path to your Python module)", "trainingEntryPointScript": "(your training script entry-point name in the Python module)", "transformEntryPointScript": "(your transform script entry-point name in the Python module)" } }'
작업을 생성하는 modeltraining 파라미터
  • id   –   (선택 사항) 새 작업의 고유 식별자입니다.

    유형: 문자열. 기본값: 자동 생성된 UUID.

  • dataProcessingJobId   –   (필수) 훈련에서 사용할 데이터를 생성하여 완료된 데이터 처리 작업의 작업 ID입니다.

    유형: 문자열.

  • trainModelS3Location   –   (필수) 모델 아티팩트가 저장되는 Amazon S3의 위치입니다.

    유형: 문자열.

  • previousModelTrainingJobId   –   (선택 사항) 업데이트된 데이터를 기반으로 하여 점진적으로 업데이트하려는 완료된 모델 훈련 작업의 작업 ID입니다.

    유형: 문자열. 기본값: 없음.

  • sagemakerIamRoleArn   –   (선택 사항) SageMaker를 실행하기 위한 IAM 역할의 ARN입니다.

    유형: 문자열. 참고: 이는 DB 클러스터 파라미터 그룹에 나열되어 있어야 합니다. 그렇지 않으면 오류가 발생합니다.

  • neptuneIamRoleArn   –   (선택 사항) SageMaker와 Amazon S3 리소스에 대한 Neptune의 액세스 권한을 제공하는 IAM 역할의 ARN입니다.

    유형: 문자열. 참고: 이는 DB 클러스터 파라미터 그룹에 나열되어 있어야 합니다. 그렇지 않으면 오류가 발생합니다.

  • modelName   –   (선택 사항) 훈련을 위한 모델 유형입니다. 기본적으로 ML 모델은 자동으로 데이터 처리에 사용되는 modelType을 기반으로 하지만, 여기에서 다른 모델 유형을 지정할 수도 있습니다.

    유형: 문자열. 기본값: 이기종 그래프용 rgcn 및 지식 그래프용 kge. 유효 값: 이기종 그래프의 경우 rgcn, kge 그래프의 경우 transe, distmult 또는 rotate, 사용자 지정 모델 구현의 경우 custom.

  • baseProcessingInstanceType   –   (선택 사항) ML 모델 훈련 준비 및 관리에 사용되는 ML 인스턴스 유형입니다.

    유형: 문자열. 참고: 훈련 데이터 및 모델을 처리하는 데 필요한 메모리 요구 사항을 기반으로 선택된 CPU 인스턴스입니다. 모델 훈련 및 모델 변환용 인스턴스 선택 섹션을 참조하세요.

  • trainingInstanceType   –   (선택 사항) 모델 훈련에 사용되는 ML 인스턴스 유형입니다. 모든 Neptune ML 모델은 CPU, GPU 및 다중 GPU 훈련을 지원합니다.

    유형: 문자열. 기본값: ml.p3.2xlarge.

    참고: 훈련에 적합한 인스턴스 유형을 선택하는 것은 작업 유형, 그래프 크기, 예산에 따라 달라집니다. 모델 훈련 및 모델 변환용 인스턴스 선택 섹션을 참조하세요.

  • trainingInstanceVolumeSizeInGB   –   (선택 사항) 훈련 인스턴스의 디스크 볼륨 크기입니다. 입력 데이터와 출력 모델 모두 디스크에 저장되므로, 볼륨 크기는 두 데이터 세트를 모두 담을 수 있을 만큼 커야 합니다.

    유형: 정수. 기본값: 0.

    참고: 지정하지 않거나 0인 경우 Neptune ML은 데이터 처리 단계에서 생성된 권장 사항에 따라 디스크 볼륨 크기를 선택합니다. 모델 훈련 및 모델 변환용 인스턴스 선택 섹션을 참조하세요.

  • trainingTimeOutInSeconds   –   (선택 사항) 훈련 작업의 제한 시간(초 단위)입니다.

    유형: 정수. 기본값: 86,400(1일).

  • maxHPONumberOfTrainingJobs   –  하이퍼파라미터 조정 작업을 위해 시작할 최대 총 훈련 작업 수입니다.

    유형: 정수. 기본값: 2.

    참고: Neptune ML은 기계 학습 모델의 하이퍼파라미터를 자동으로 조정합니다. 성능이 좋은 모델을 확보하려면 최소 10개 이상의 작업(즉 maxHPONumberOfTrainingJobs 값을 10으로 설정)을 사용합니다. 일반적으로 조정 실행 횟수가 많을수록 더 좋은 결과를 얻을 수 있습니다.

  • maxHPOParallelTrainingJobs   –   하이퍼파라미터 조정 작업을 위해 시작할 최대 병렬 훈련 작업 수입니다.

    유형: 정수. 기본값: 2.

    참고: 실행할 수 있는 병렬 작업 수는 훈련 인스턴스에서 사용 가능한 리소스에 따라 제한됩니다.

  • subnets   –   (선택 사항) Neptune VPC의 서브넷 ID입니다.

    유형: 문자열 목록. 기본값: 없음.

  • securityGroupIds   –   (선택 사항) VPC 보안 그룹 ID입니다.

    유형: 문자열 목록. 기본값: 없음.

  • volumeEncryptionKMSKey   –   (선택 사항) SageMaker가 훈련 작업을 실행하는 ML 컴퓨팅 인스턴스에 연결된 스토리지 볼륨에서 데이터를 암호화하는 데 사용하는 AWS Key Management Service(AWS KMS) 키입니다.

    유형: 문자열. 기본값: 없음.

  • s3OutputEncryptionKMSKey   –   (선택 사항) SageMaker가 처리 작업의 출력을 암호화하는 데 사용하는 AWS Key Management Service(AWS KMS) 키입니다.

    유형: 문자열. 기본값: 없음.

  • enableInterContainerTrafficEncryption   –   (선택 사항) 훈련 또는 하이퍼 파라미터 조정 작업에서 컨테이너 간 트래픽 암호화를 활성화하거나 비활성화합니다.

    유형: 부울. 기본값: True.

    참고

    enableInterContainerTrafficEncryption 파라미터는 엔진 릴리스 1.2.0.2.R3에서만 사용할 수 있습니다.

  • enableManagedSpotTraining   –   (선택 사항) Amazon Elastic Compute Cloud 스팟 인스턴스를 사용하여 기계 학습 모델 훈련 비용을 최적화합니다. 자세한 내용은 Amazon SageMaker의 관리형 스팟 교육을 참조하세요.

    유형: 부울. 기본값: False.

  • customModelTrainingParameters   –   (선택 사항) 사용자 지정 모델 훈련 구성입니다. 이는 다음 필드가 있는 JSON 객체입니다.

    • sourceS3DirectoryPath   –   (필수) 모델을 구현하는 Python 모듈이 위치한 Amazon S3 위치 경로입니다. 이는 최소한 훈련 스크립트, 변환 스크립트 및 model-hpo-configuration.json 파일을 포함하는 유효한 기존 Amazon S3 위치를 가리켜야 합니다.

    • trainingEntryPointScript   –   (선택 사항) 모델 훈련을 수행하고 하이퍼파라미터를 명령줄 인수로 취하는 스크립트(예: 고정값 하이퍼파라미터)의 모듈 내 진입점 이름입니다.

      기본값: training.py.

    • transformEntryPointScript   –   (선택 사항) 모델 배포에 필요한 모델 아티팩트를 계산하기 위해 하이퍼파라미터 검색에서 최적의 모델을 식별한 후 실행해야 하는 스크립트의 모듈 내 진입점 이름입니다. 명령줄 인수 없이 실행할 수 있어야 합니다.

      기본값: transform.py.

  • maxWaitTime   –   (선택 사항) 스팟 인스턴스를 사용하여 모델 훈련을 수행할 때 대기하는 최대 시간(초)입니다. trainingTimeOutInSeconds보다 커야 합니다.

    유형: 정수.

Neptune ML modeltraining 명령을 사용하여 모델 훈련 작업의 상태 가져오기

작업 상태를 나타내는 샘플 Neptune ML modeltraining 명령은 다음과 같습니다.

curl -s \ "https://(your Neptune endpoint)/ml/modeltraining/(the job ID)" \ | python -m json.tool
작업 상태를 나타내는 modeltraining 파라미터
  • id   –   (필수) 모델 훈련 작업의 고유 식별자입니다.

    유형: 문자열.

  • neptuneIamRoleArn   –   (선택 사항) SageMaker와 Amazon S3 리소스에 대한 Neptune의 액세스 권한을 제공하는 IAM 역할의 ARN입니다.

    유형: 문자열. 참고: 이는 DB 클러스터 파라미터 그룹에 나열되어 있어야 합니다. 그렇지 않으면 오류가 발생합니다.

Neptune ML modeltraining 명령을 사용하여 모델 훈련 작업 중지

작업 중지를 위한 샘플 Neptune ML modeltraining 명령은 다음과 같습니다.

curl -s \ -X DELETE "https://(your Neptune endpoint)/ml/modeltraining/(the job ID)"

아니면 다음을 사용해도 됩니다.

curl -s \ -X DELETE "https://(your Neptune endpoint)/ml/modeltraining/(the job ID)?clean=true"
작업을 중지하는 modeltraining 파라미터
  • id   –   (필수) 모델 훈련 작업의 고유 식별자입니다.

    유형: 문자열.

  • neptuneIamRoleArn   –   (선택 사항) SageMaker와 Amazon S3 리소스에 대한 Neptune의 액세스 권한을 제공하는 IAM 역할의 ARN입니다.

    유형: 문자열. 참고: 이는 DB 클러스터 파라미터 그룹에 나열되어 있어야 합니다. 그렇지 않으면 오류가 발생합니다.

  • clean   –   (선택 사항) 이 플래그는 작업이 중지될 때 모든 Amazon S3 아티팩트를 삭제하도록 지정합니다.

    유형: 부울. 기본값: FALSE.

Neptune ML modeltraining 명령을 사용하여 활성 모델 훈련 작업 나열

활성 작업을 나열하기 위한 샘플 Neptune ML modeltraining 명령은 다음과 같습니다.

curl -s "https://(your Neptune endpoint)/ml/modeltraining" | python -m json.tool

아니면 다음을 사용해도 됩니다.

curl -s "https://(your Neptune endpoint)/ml/modeltraining?maxItems=3" | python -m json.tool
작업을 나열하는 modeltraining 파라미터
  • maxItems   –   (선택 사항) 반환할 최대 항목 수입니다.

    유형: 정수. 기본값: 10. 최대 허용 값: 1024.

  • neptuneIamRoleArn   –   (선택 사항) SageMaker와 Amazon S3 리소스에 대한 Neptune의 액세스 권한을 제공하는 IAM 역할의 ARN입니다.

    유형: 문자열. 참고: 이는 DB 클러스터 파라미터 그룹에 나열되어 있어야 합니다. 그렇지 않으면 오류가 발생합니다.