如何在 AWS SageMaker 中加载训练集来构建模型?
How to load a training set in AWS SageMaker to build a model?
我是 SageMaker 的新手。在我的第一次交互中,AWS SageMaker 似乎要求您从它的 Notebook 开始。我有一个准备好的训练集。有没有办法绕过设置笔记本而只是通过上传训练集开始?或者它应该通过笔记本来完成。如果有人知道上面的一些适合我需要的例子,那就太好了。
Amazon SageMaker 是多个服务的组合,每个服务都独立于其他服务。如果您想在熟悉的 Jupyter 环境中开发模型,可以使用笔记本实例。但如果只需要训练一个模型,你可以在不打开笔记本实例的情况下使用训练作业。
有几种启动训练作业的方法:
- 使用 Python 的 high-level SDK,这类似于您在 python 代码中开始训练步骤的方式
kmeans.fit(kmeans.record_set(train_set[0]))
这是 python 库的 link:https://github.com/aws/sagemaker-python-sdk
- 使用 low-level API 到 Create-Training-Job,您可以使用各种 SDK(Java、Python、Java脚本、C#...) 或 CLI。
sagemaker = boto3.client('sagemaker')
sagemaker.create_training_job(**create_training_params)
这是关于这些选项的文档的 link:https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-train-model-create-training-job.html
- 使用 Spark 界面启动它,使用类似于创建 MLLib 训练作业的界面
val estimator = new KMeansSageMakerEstimator(
sagemakerRole = IAMRole(roleArn),
trainingInstanceType = "ml.p2.xlarge",
trainingInstanceCount = 1,
endpointInstanceType = "ml.c4.xlarge",
endpointInitialInstanceCount = 1)
.setK(10).setFeatureDim(784)
val model = estimator.fit(trainingData)
这是 spark-sagemaker 库的 link:https://github.com/aws/sagemaker-spark
- 使用向导在 Amazon SageMaker 控制台中创建训练作业:https://console.aws.amazon.com/sagemaker/home?region=us-east-1#/jobs
请注意,还有一些选项可以训练模型,可以使用 built-in 算法,例如 K-Means、线性学习器或 XGBoost(完整列表请参见此处:https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). But you can also bring your own models for pre-baked Docker images such as TensorFlow (https://docs.aws.amazon.com/sagemaker/latest/dg/tf.html) or MXNet (https://docs.aws.amazon.com/sagemaker/latest/dg/mxnet.html), your own Docker image (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-training-algo.html).
我是 SageMaker 的新手。在我的第一次交互中,AWS SageMaker 似乎要求您从它的 Notebook 开始。我有一个准备好的训练集。有没有办法绕过设置笔记本而只是通过上传训练集开始?或者它应该通过笔记本来完成。如果有人知道上面的一些适合我需要的例子,那就太好了。
Amazon SageMaker 是多个服务的组合,每个服务都独立于其他服务。如果您想在熟悉的 Jupyter 环境中开发模型,可以使用笔记本实例。但如果只需要训练一个模型,你可以在不打开笔记本实例的情况下使用训练作业。
有几种启动训练作业的方法:
- 使用 Python 的 high-level SDK,这类似于您在 python 代码中开始训练步骤的方式
kmeans.fit(kmeans.record_set(train_set[0]))
这是 python 库的 link:https://github.com/aws/sagemaker-python-sdk
- 使用 low-level API 到 Create-Training-Job,您可以使用各种 SDK(Java、Python、Java脚本、C#...) 或 CLI。
sagemaker = boto3.client('sagemaker')
sagemaker.create_training_job(**create_training_params)
这是关于这些选项的文档的 link:https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-train-model-create-training-job.html
- 使用 Spark 界面启动它,使用类似于创建 MLLib 训练作业的界面
val estimator = new KMeansSageMakerEstimator(
sagemakerRole = IAMRole(roleArn),
trainingInstanceType = "ml.p2.xlarge",
trainingInstanceCount = 1,
endpointInstanceType = "ml.c4.xlarge",
endpointInitialInstanceCount = 1)
.setK(10).setFeatureDim(784)
val model = estimator.fit(trainingData)
这是 spark-sagemaker 库的 link:https://github.com/aws/sagemaker-spark
- 使用向导在 Amazon SageMaker 控制台中创建训练作业:https://console.aws.amazon.com/sagemaker/home?region=us-east-1#/jobs
请注意,还有一些选项可以训练模型,可以使用 built-in 算法,例如 K-Means、线性学习器或 XGBoost(完整列表请参见此处:https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). But you can also bring your own models for pre-baked Docker images such as TensorFlow (https://docs.aws.amazon.com/sagemaker/latest/dg/tf.html) or MXNet (https://docs.aws.amazon.com/sagemaker/latest/dg/mxnet.html), your own Docker image (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-training-algo.html).