neptune-export 도구 또는 Neptune-Export 서비스를 사용하여 Neptune ML용 Neptune에서 데이터 내보내기 - Amazon Neptune

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

neptune-export 도구 또는 Neptune-Export 서비스를 사용하여 Neptune ML용 Neptune에서 데이터 내보내기

Neptune ML에서는 모델을 만들고 평가하기 위해 딥 그래프 라이브러리(DGL)에 대한 훈련 데이터를 제공하도록 요구합니다.

Neptune-Export 서비스 또는 neptune-export 유틸리티를 사용하여 Neptune에서 데이터를 내보낼 수 있습니다. 서비스와 명령줄 도구는 Amazon S3 서버 측 암호화(SSE-S3)를 사용하여 암호화된 데이터를 Amazon Simple Storage Service(S3)에 CSV 형식으로 게시합니다. Neptune-Export 및 neptune-export에서 내보낸 파일 섹션을 참조하세요.

또한 Neptune ML용 훈련 데이터 내보내기를 구성하면 내보내기 작업에서 내보낸 데이터와 함께 암호화된 모델 훈련 구성 파일을 만들어 게시합니다. 기본적으로 이 파일은 training-data-configuration.json으로 이름이 지정됩니다.

Neptune-Export 서비스를 사용하여 Neptune ML용 훈련 데이터를 내보내는 예제

이 요청은 노드 분류 작업을 위한 속성 그래프 훈련 데이터를 내보냅니다.

curl \ (your NeptuneExportApiUri) \ -X POST \ -H 'Content-Type: application/json' \ -d '{ "command": "export-pg", "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)", "profile": "neptune_ml" }, "additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "Movie", "property": "genre", "type": "classification" } ] } } }'

이 요청은 노드 분류 작업을 위한 RDF 훈련 데이터를 내보냅니다.

curl \ (your NeptuneExportApiUri) \ -X POST \ -H 'Content-Type: application/json' \ -d '{ "command": "export-rdf", "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)", "profile": "neptune_ml" }, "additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "http://aws.amazon.com/neptune/csv2rdf/class/Movie", "predicate": "http://aws.amazon.com/neptune/csv2rdf/datatypeProperty/genre", "type": "classification" } ] } } }'

훈련 데이터를 내보낼 때 params 객체에 설정할 필드

내보내기 요청의 params 객체에는 params 설명서에 나와 있는 대로 다양한 필드가 포함될 수 있습니다. 다음과 같은 필드가 기계 학습 훈련 데이터를 내보내는 데 가장 적합합니다.

  • endpoint   –   endpoint를 사용하여 내보내기 프로세스가 데이터를 추출하기 위해 쿼리할 수 있는 DB 클러스터의 Neptune 인스턴스 엔드포인트를 지정합니다.

  • profile   –   params 객체의 profile 필드를 neptune-ml로 설정해야 합니다.

    따라서 내보내기 프로세스에서는 내보낸 데이터 형식을 Neptune ML 모델 훈련에 적합하도록 속성 그래프 데이터는 CSV 형식으로, RDF 데이터는 N-Triples 형식으로 지정합니다. 또한 training-data-configuration.json 파일이 생성되어 내보낸 훈련 데이터와 동일한 Amazon S3 위치에 기록됩니다.

  • cloneCluster   –   true로 설정하면 내보내기 프로세스가 DB 클러스터를 복제하고 복제본에서 내보낸 후 완료 시 복제본을 삭제합니다.

  • useIamAuth   –   DB 클러스터에 IAM 인증이 활성화되어 있는 경우 이 필드를 true로 설정해서 포함해야 합니다.

내보내기 프로세스에서는 내보내는 데이터를 필터링하는 여러 방법도 제공합니다(이 예제 참조).

additionalParams 객체를 사용하여 모델 훈련 정보 내보내기 조정

additionalParams 객체에는 훈련 목적으로 기계 학습 클래스 레이블 및 특성을 지정하고 훈련 데이터 구성 파일 생성을 안내하는 데 사용할 수 있는 필드가 포함되어 있습니다.

내보내기 프로세스에서는 훈련 목적상 예제로 사용할 기계 학습 클래스 레이블이 되어야 하는 노드 및 엣지 속성을 자동으로 유추할 수 없습니다. 또한 숫자, 범주 및 텍스트 속성에 가장 적합한 특성 인코딩을 자동으로 유추할 수 없으므로, additionalParams 객체의 필드를 통해 힌트를 제공하여 해당 항목을 지정하거나 기본 인코딩을 재정의해야 합니다.

속성 그래프 데이터의 경우 내보내기 요청의 additionalParams 최상위 구조는 다음과 같을 수 있습니다.

{ "command": "export-pg", "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)", "profile": "neptune_ml" }, "additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ (an array of node and edge class label targets) ], "features": [ (an array of node feature hints) ] } } }

RDF 데이터의 경우 최상위 구조는 다음과 같을 수 있습니다.

{ "command": "export-rdf", "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)", "profile": "neptune_ml" }, "additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ (an array of node and edge class label targets) ] } } }

다음 jobs 필드를 사용하여 여러 내보내기 구성을 제공할 수도 있습니다.

{ "command": "export-pg", "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)", "profile": "neptune_ml" }, "additionalParams" : { "neptune_ml" : { "version": "v2.0", "jobs": [ { "name" : "(training data configuration name)", "targets": [ (an array of node and edge class label targets) ], "features": [ (an array of node feature hints) ] }, { "name" : "(another training data configuration name)", "targets": [ (an array of node and edge class label targets) ], "features": [ (an array of node feature hints) ] } ] } } }

additionalParamsneptune_ml 필드 내 최상위 요소

neptune_mlversion 요소

생성할 훈련 데이터 구성의 버전을 지정합니다.

(선택 사항), 유형: 문자열, 기본값: "v2.0".

version을 포함하는 경우 v2.0으로 설정하세요.

neptune_mljobs 필드

각각 데이터 처리 작업을 정의하는 훈련 데이터 구성 객체 배열을 포함하며, 다음을 포함합니다.

  • name   –   생성할 훈련 데이터 구성의 이름입니다.

    예를 들어, 이름이 "job-number-1"인 훈련 데이터 구성을 사용하면 이름이 job-number-1.json으로 지정된 훈련 데이터 구성 파일이 생성됩니다.

  • targets   –   훈련용 기계 학습 클래스 레이블을 나타내는 노드 및 엣지 클래스 레이블 대상으로 구성된 JSON 배열입니다. neptune_ml 객체의 targets 필드 섹션을 참조하세요.

  • features   –   노드 속성 특성으로 구성된 JSON 배열입니다. neptune_ml의 features 필드을(를) 참조하세요.