我正在试用Amazon Sagemaker,我还没有弄清楚我们如何进行持续培训。
例如,如果我在 s3 中有一个 CSV 文件,并且我想在每次更新 CSV 文件时进行训练。
我知道我们可以再次访问 notebook 并重新运行整个 notebook 来实现这一点。
但我正在寻找一种自动化方式,使用一些 python 脚本或使用带有 s3 事件等的 lambda 函数
我正在试用Amazon Sagemaker,我还没有弄清楚我们如何进行持续培训。
例如,如果我在 s3 中有一个 CSV 文件,并且我想在每次更新 CSV 文件时进行训练。
我知道我们可以再次访问 notebook 并重新运行整个 notebook 来实现这一点。
但我正在寻找一种自动化方式,使用一些 python 脚本或使用带有 s3 事件等的 lambda 函数
您可以使用 boto3 sdk for python 开始对 lambda 进行训练,然后您需要在 csv 更新时触发 lambda。
http://boto3.readthedocs.io/en/latest/reference/services/sagemaker.html
示例 python 代码
https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-train-model-create-training-job.html
另外:您不需要使用 lambda,您只需启动/cronjob python 脚本任何类型的实例,其中包含 python 和 aws sdk。
在aws-samples GitHub中有几个示例说明如何完成此操作。
serverless -sagemaker-orchestration示例听起来与您描述的用例最相似。此示例将引导您了解如何持续训练 SageMaker 线性回归模型,以使用内置的LinearLearner算法对每天添加到 S3 存储桶的新 CSV 数据进行房价预测,并与Amazon CloudWatch Events、AWS Step Functions和AWS协调拉姆达。
还有类似的aws-sagemaker-build示例,但如果您正在寻找详细说明,目前可能更难遵循。
希望这可以帮助!