本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Neptune ML 訓練模型
處理從 Neptune 匯出用於模型訓練的資料之後,您可以使用如下所示的命令啟動模型訓練任務:
- AWS CLI
-
aws neptunedata start-ml-model-training-job \ --endpoint-url https://your-neptune-endpoint:port\ --id "(a unique model-training job ID)" \ --data-processing-job-id "(the data-processing job-id of a completed job)" \ --train-model-s3-location "s3://(your S3 bucket)/neptune-model-graph-autotrainer"如需詳細資訊,請參閱《 AWS CLI 命令參考》中的 start-ml-model-training-job。
- SDK
-
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_training_job( id='(a unique model-training job ID)', dataProcessingJobId='(the data-processing job-id of a completed job)', trainModelS3Location='s3://(your S3 bucket)/neptune-model-graph-autotrainer' ) print(response) - awscurl
-
awscurl https://your-neptune-endpoint:port/ml/modeltraining \ --regionus-east-1\ --service neptune-db \ -X POST \ -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 S3 bucket)/neptune-model-graph-autotrainer" }'注意
此範例假設您的 AWS 登入資料已在您的環境中設定。將
us-east-1取代為 Neptune 叢集的區域。 - curl
-
curl \ -X POST https://your-neptune-endpoint:port/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 S3 bucket)/neptune-model-graph-autotrainer" }'
如何使用此命令的詳細資訊會在 modeltraining 指令 中加以說明,伴隨如何取得執行中工作狀態、如何停止執行中工作,以及如何列出所有執行中工作的相關資訊。
您也可以提供一個 previousModelTrainingJobId,使用來自已完成 Neptune ML 模型訓練工作的資訊,以在新的訓練工作中加速超參數搜尋。在對新圖形資料進行模型重新訓練期間,以及在對相同圖形資料進行增量訓練期間,這樣做很有用。使用像這樣的命令:
- AWS CLI
-
aws neptunedata start-ml-model-training-job \ --endpoint-url https://your-neptune-endpoint:port\ --id "(a unique model-training job ID)" \ --data-processing-job-id "(the data-processing job-id of a completed job)" \ --train-model-s3-location "s3://(your S3 bucket)/neptune-model-graph-autotrainer" \ --previous-model-training-job-id "(the model-training job-id of a completed job)"如需詳細資訊,請參閱《 AWS CLI 命令參考》中的 start-ml-model-training-job。
- SDK
-
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_training_job( id='(a unique model-training job ID)', dataProcessingJobId='(the data-processing job-id of a completed job)', trainModelS3Location='s3://(your S3 bucket)/neptune-model-graph-autotrainer', previousModelTrainingJobId='(the model-training job-id of a completed job)' ) print(response) - awscurl
-
awscurl https://your-neptune-endpoint:port/ml/modeltraining \ --regionus-east-1\ --service neptune-db \ -X POST \ -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 S3 bucket)/neptune-model-graph-autotrainer", "previousModelTrainingJobId" : "(the model-training job-id of a completed job)" }'注意
此範例假設您的 AWS 登入資料已在您的環境中設定。將
us-east-1取代為 Neptune 叢集的區域。 - curl
-
curl \ -X POST https://your-neptune-endpoint:port/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 S3 bucket)/neptune-model-graph-autotrainer", "previousModelTrainingJobId" : "(the model-training job-id of a completed job)" }'
您可以提供 customModelTrainingParameters 物件,在 Neptune ML 訓練基礎結構上訓練自己的模型實作,如下所示:
- AWS CLI
-
aws neptunedata start-ml-model-training-job \ --endpoint-url https://your-neptune-endpoint:port\ --id "(a unique model-training job ID)" \ --data-processing-job-id "(the data-processing job-id of a completed job)" \ --train-model-s3-location "s3://(your Amazon S3 bucket)/neptune-model-graph-autotrainer" \ --model-name "custom" \ --custom-model-training-parameters '{ "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)" }'如需詳細資訊,請參閱《 AWS CLI 命令參考》中的 start-ml-model-training-job。
- SDK
-
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_training_job( 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)' } ) print(response) - awscurl
-
awscurl https://your-neptune-endpoint:port/ml/modeltraining \ --regionus-east-1\ --service neptune-db \ -X POST \ -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)" } }'注意
此範例假設您的 AWS 登入資料已在您的環境中設定。將
us-east-1取代為 Neptune 叢集的區域。 - curl
-
curl \ -X POST https://your-neptune-endpoint:port/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 指令。如需如何實作並使用自訂模型的相關資訊,請參閱 Neptune ML 中的自訂模型。