本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用模型训练modeltraining
命令
你使用 Neptune MLmodeltraining
命令来创建模型训练作业、检查其状态、停止它或列出所有活动的模型训练作业。
使用 Neptune ML 创建模型训练作业modeltraining
命令
Neptune MLmodeltraining
用于创建全新作业的命令如下所示:
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 MLmodeltraining
用于创建增量模型训练的更新作业的命令如下所示:
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 MLmodeltraining
用户提供的自定义模型实现创建新作业的命令如下所示:
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
— (可选)新作业的唯一标识符。类型:字符串。默认值:自动生成的 UID。
-
dataProcessingJobId
— (必需) 已完成的数据处理作业的作业 ID,该作业已创建培训将使用的数据。类型:字符串。
-
trainModelS3Location
— (必需Amazon S3 中的存储模型构件的位置。类型:字符串。
-
previousModelTrainingJobId
— (可选) 您希望根据更新的数据以增量方式更新的已完成模型训练作业的作业 ID。类型:字符串。默认值:无.
-
sagemakerIamRoleArn
— (可选用于 SageMaker 执行的 IAM 角色的 ARN。类型:字符串。注意:这必须列在数据库集群参数组中,否则将发生错误。
-
neptuneIamRoleArn
— (可选允许 Neptune 访问 SageMaker 和 Amazon S3 资源的 ARN。类型:字符串。注意:这必须列在数据库集群参数组中,否则将发生错误。
-
modelName
— (可选) 训练的模型类型。默认情况下,ML 模型自动基于modelType
用于数据处理,但您可以在此指定不同的模型类型。类型:字符串。默认值:
rgcn
对于异构图表和kge
获取知识图表。 有效值:对于异构图表:rgcn
. 适用于kge
图形transe
、distmult
,或者rotate
. 对于自定义模型实现:custom
. -
baseProcessingInstanceType
— (可选) 准备和管理 ML 模型训练时使用的 ML 实例类型。类型:字符串。注意:这是根据处理训练数据和模型的内存需求选择的 CPU 实例。请参阅为模型训练和模型转换选择实例。
-
trainingInstanceType
— (可选) 用于模型训练的 ML 实例的类型。所有 Neptune ML 模型都支持 CPU、GPU 和 MultiGPU 训练。类型:字符串。默认值:
ml.p3.2xlarge
.注意:为培训选择正确的实例类型取决于任务类型、图形大小和预算。请参阅为模型训练和模型转换选择实例。
-
trainingInstanceVolumeSizeInGB
— (可选) 训练实例的磁盘卷大小。输入数据和输出模型都存储在磁盘上,因此卷大小必须足以容纳两个数据集。类型:整数。默认值:
0
.注意:如果未指定或 0,Neptune ML 将根据数据处理步骤中生成的建议选择磁盘卷大小。请参阅为模型训练和模型转换选择实例。
-
trainingTimeOutInSeconds
— (可选训练作业的超时(以秒为单位)。类型:整数。默认值:
86,400
(1 天)。 -
maxHPONumberOfTrainingJobs
超参数优化作业的最大训练作业总数。类型:整数。默认值:
2
.注意:Neptune ML 会自动调整机器学习模型的超参数。要获得表现良好的模型,请至少使用 10 个作业(换句话说,设置
maxHPONumberOfTrainingJobs
。一般来说,调整运行越多,结果越好。 -
maxHPOParallelTrainingJobs
为超参数优化作业启动的最大并行训练作业数。类型:整数。默认值:
2
.注意:您可以运行的并行作业数量受训练实例上的可用资源的限制。
-
subnets
— (可选)Neptune VPC 中的子网的 ID。类型:字符串列表。默认值:无.
-
securityGroupIds
— (可选) VPC 安全组 ID。类型:字符串列表。默认值:无.
-
volumeEncryptionKMSKey
— (可选) 该Amazon Key Management Service(Amazon KMS)密钥,SageMaker 使用该密钥加密附加到运行训练作业的 ML 计算实例的存储卷上的数据。类型:字符串。默认值:无.
-
s3OutputEncryptionKMSKey
— (可选) 该Amazon Key Management Service(Amazon KMS) SageMaker 用于加密处理作业输出的密钥。类型:字符串。默认值:无.
-
enableManagedSpotTraining
— (可选) 使用 Amazon Elastic Compute Cloud 竞价型实例优化培训机器学习模型的成本。有关更多信息,请参阅 。Amazon SageMaker 中的托管式 Spot 训练.类型:布尔值。默认值:False.
-
customModelTrainingParameters
— (可选) 自定义模型训练的配置。这是具有以下字段的 JSON 对象sourceS3DirectoryPath
— (必需)实现模型的 Python 模块所在的 Amazon S3 位置的路径。这必须指向一个有效的现有 Amazon S3 位置,该位置至少包含训练脚本、转换脚本和model-hpo-configuration.json
文件。-
trainingEntryPointScript
— (可选) 脚本模块中的入口点名称,该脚本执行模型训练并将超参数作为命令行参数,包括固定的超参数。默认值:
training.py
. -
transformEntryPointScript
— (可选) 脚本模块中的入口点名称,该脚本的入口点名称,该脚本应在确定超参数搜索中的最佳模型后运行,以计算模型部署所需的模型工件。它应该能够在没有命令行参数的情况下运行。默认值:
transform.py
.
使用 Neptune ML 获取模型训练作业的状态modeltraining
命令
样本 Neptune MLmodeltraining
作业状态的命令如下所示:
curl -s \ "https://
(your Neptune endpoint)
/ml/modeltraining/(the job ID)
" \ | python -m json.tool
的参数modeltraining
作业状态
-
id
— (必需) 模型训练作业的唯一标识符。类型:字符串。
-
neptuneIamRoleArn
— (可选允许 Neptune 访问 SageMaker 和 Amazon S3 资源的 ARN。类型:字符串。注意:这必须列在数据库集群参数组中,否则将发生错误。
使用 Neptune ML 停止模型训练作业modeltraining
命令
样本 Neptune MLmodeltraining
停止任务的命令如下所示:
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
— (可选允许 Neptune 访问 SageMaker 和 Amazon S3 资源的 ARN。类型:字符串。注意:这必须列在数据库集群参数组中,否则将发生错误。
-
clean
— (可选) 此标志指定在作业停止时应删除所有 Amazon S3 工件。类型:布尔值。默认值:
FALSE
.
使用 Neptune ML 列出活跃的模型训练作业modeltraining
命令
样本 Neptune MLmodeltraining
列出活动作业的命令如下所示:
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
— (可选允许 Neptune 访问 SageMaker 和 Amazon S3 资源的 ARN。类型:字符串。注意:这必须列在数据库集群参数组中,否则将发生错误。