【问题标题】:AWS SageMaker Random Cut Forest or Kinesis Data Analytics Random Cut Forest?AWS SageMaker 随机森林砍伐或 Kinesis Data Analytics 随机森林砍伐?
【发布时间】:2018-07-27 14:47:19
【问题描述】:
我需要构建一个架构,可以检测 Web 应用程序创建的日志中的异常情况。
在我的研究中不断出现随机砍伐森林算法,它用于两种场景:SageMaker 和 Kinesis Data Analytics。
我应该在我的架构中使用这两种服务中的哪一种?
【问题讨论】:
-
您可以尝试使用内置的 Amazon SageMaker Random Cut Forest 算法作为可以调用的终端节点。这是针对不同任务的Python example。
标签:
amazon-web-services
amazon-kinesis
amazon-kinesis-firehose
amazon-sagemaker
【解决方案1】:
在核心上,两者之间的数学方法几乎相同,但它们在 Kinesis 和 SageMaker 中的实施方式存在一些差异,这应该有助于推动您的决策。
Kinesis RandomCutForest:
- 算法的流式版本,非常适合对模型进行近乎实时的更新。
- 支持旧记录的时间衰减、输入数据的叠加,如果您使用多个维度,异常归因可以帮助您了解每个维度的影响。
- 因此,如果您的日志存储在 CloudWatch 中,通过使用订阅过滤器(如果需要,还可以使用 Lambda),您可以毫不费力地将它们预处理并发送到 Kinesis。
SageMaker RandomCutForest:
- 算法的批处理版本,非常适合大型数据集(通常存储在 S3 中)或不需要经常更新模型的地方。
- 与 Kinesis 类似,支持通过推理端点对传入数据点进行近实时评分,但新数据点不会更改底层模型。
- 支持超参数优化,为您的模型确定最佳参数集(例如样本数、树数等)
- 为训练和评分扩展实例非常简单,可用的 SageMaker Notebooks 可以帮助您预处理和准备训练数据。
- 因此,如果您的数据集很大并且您不需要对模型进行动态更新,那么 SageMaker 解决方案应该是您的首选解决方案。
希望这能回答你的问题。