微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 AWS 步骤函数为整个数据集运行 ML 管道?

如何解决使用 AWS 步骤函数为整个数据集运行 ML 管道?

我有一个步进函数设置,它为数据项调用预处理 lambda 和推理 lambda。现在,我需要对整个数据集(超过 10000 个项目)执行此过程。一种方法是为每个输入并行调用阶跃函数。这种方法有更好的替代方法吗?

解决方法

另一种方法是使用 Map 状态来运行一组项目。您可以从项目 ID 列表开始,然后为其运行一组任务。

https://aws.amazon.com/blogs/aws/new-step-functions-support-for-dynamic-parallelism/

尽管这种方法有一些缺点:

  1. 输入/输出数据有 256kb 的限制。最初的项目数组可能更大。但是,如果您仅将一组 ID 作为输入传递给映射状态,则 10k 项可能不会超过该限制。

  2. 地图状态并不能保证所有的项目会同时运行。一次可能少于 40 个(解决方法是嵌套地图状态或地图状态的地图)。来自文档:

并发迭代可能会受到限制。发生这种情况时,某些迭代将在之前的迭代完成之前不会开始。当您的输入数组超过 40 个项目时,发生这种情况的可能性会增加。

https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-map-state.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。