IP 见解 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

IP 见解

Amazon SageMaker IP Insights 是一种自主学习算法,它学习 IPv4 地址的使用模式。它旨在捕获 IPv4 地址与各种实体(如用户 IDs 或账号)之间的关联。例如,您可以使用它来标识尝试从异常 IP 地址登录 Web 服务的用户。或者,您可以使用它来识别尝试从异常 IP 地址创建计算资源的账户。经过训练的 IP 见解模型可以托管在终端节点上,以进行实时预测或用于处理批量转换。

SageMaker IP 见解以(实体、IPv4 地址)对的形式提取历史数据,并了解每个实体的 IP 使用模式。在使用(实体、IPv4 地址)事件进行查询时,SageMaker IP 见解模型返回一个分数,该分数推断事件的模式的异常程度。例如,当用户尝试从 IP 地址登录时,如果 IP 见解分数足够高,则 Web 登录服务器可能决定触发多重验证系统。在更高级的解决方案中,您可以将 IP 见解分数提供给另一个机器学习模型。例如,您可以将 IP 见解分数与其他功能组合起来,对其他安全系统的结果(如 Amazon GuardDuty 的结果)排名。

SageMaker IP 见解算法还可以学习 IP 地址的向量表示,称为嵌入。您可以使用向量编码的嵌入作为下游机器学习任务中的特征,这些任务使用在 IP 地址中观察到的信息。例如,您可在任务中使用它们,例如在集群任务和可视化任务中测量 IP 地址之间的相似性。

IP 见解算法的输入/输出接口

训练和验证

SageMaker IP 见解算法支持训练和验证数据通道。它使用可选的验证通道,根据预定义的负采样策略计算当前区域 (AUC) 分数。AUC 指标验证模型区分正样本和负样本的程度。训练和验证数据内容类型需要采用 text/csv 格式。CSV 数据的第一列是一个不透明的字符串,它为实体提供唯一标识符。第二列是十进制点表示法中的 IPv4 地址。IP 见解当前仅支持文件模式。有关更多信息以及一些示例,请参阅IP 见解训练数据格式

推理

对于推理,IP 见解支持 text/csvapplication/jsonapplication/jsonlines 数据内容类型。有关 SageMaker 提供的推理的常见数据格式的更多信息,请参阅用于推理的常见数据格式。IP 见解推理返回格式为 application/jsonapplication/jsonlines 的输出。 输出数据中的每个记录都包含每个输入数据点的相应 dot_product(或兼容性分数)。有关更多信息以及一些示例,请参阅IP 见解推理数据格式

IP 见解算法的 EC2 实例建议

SageMaker IP 见解算法可以在 GPU 和 CPU 实例上运行。对于训练作业,我们建议使用 GPU 实例。但是,对于具有大型训练数据集的某些工作负载,分布式 CPU 实例可能会降低训练成本。对于推理,我们建议使用 CPU 实例。

IP 见解算法的 GPU 实例

IP 见解支持所有可用的 GPUs。 如果您需要加快训练,我们建议您从单个 GPU 实例(如 ml.p3.2xlarge)开始,然后移动到多 GPU 环境(如 ml.p3.8xlarge 和 ml.p3.16xlarge)。多 GPU 会自动在自身间分割小批量训练数据。如果您从单个 GPU 切换到多个 GPUs,则 mini_batch_size 将平均除以使用的 GPUs 数。您可能需要增加 mini_batch_size 的值来弥补此问题。

IP 见解算法的 CPU 实例

我们推荐的 CPU 实例类型在很大程度上取决于实例的可用内存和模型大小。模型大小由两个超参数确定:vector_dimnum_entity_vectors。 支持的最大模型大小为 8 GB。下表针对各种模型大小,列出了基于这些输入参数部署的典型 EC2 实例类型。在表 1 中,第一列的 vector_dim 的值范围为 32 到 2048,第一行的 num_entity_vectors 的值范围为 10000 到 5000000。

vector_dim \ num_entity_vectors. 10000 50000 100000 500,000 1000000 5000000 10,000,000 5000000
32

ml.m5.large

ml.m5.large ml.m5.large ml.m5.large ml.m5.large ml.m5.xlarge ml.m5.2xlarge ml.m5.4xlarge

64

ml.m5.large

ml.m5.large ml.m5.large ml.m5.large ml.m5.large ml.m5.2xlarge ml.m5.2xlarge

128

ml.m5.large

ml.m5.large ml.m5.large ml.m5.large ml.m5.large ml.m5.2xlarge ml.m5.4xlarge

256

ml.m5.large

ml.m5.large ml.m5.large ml.m5.large ml.m5.xlarge ml.m5.4xlarge

512

ml.m5.large

ml.m5.large ml.m5.large ml.m5.large ml.m5.2xlarge

1024

ml.m5.large

ml.m5.large ml.m5.large ml.m5.xlarge ml.m5.4xlarge

2048

ml.m5.large

ml.m5.large ml.m5.xlarge ml.m5.xlarge

mini_batch_sizenum_ip_encoder_layersrandom_negative_sampling_rate 超参数的值也会影响所需的内存量。shuffled_negative_sampling_rate如果这些值较大,您可能需要使用比正常值更大的实例类型。

IP 见解示例笔记本

有关说明如何训练 SageMaker IP 见解算法并使用它执行推断的示例笔记本,请参阅 SageMaker IP 见解算法简介。有关如何创建和访问可用于在 SageMaker 中运行示例的 Jupyter 笔记本实例的说明,请参阅使用 Amazon SageMaker 笔记本实例。创建笔记本实例后,选择 SageMaker Examples (AWS 示例) 选项卡以查看所有 SageMaker 示例的列表。要打开笔记本,请选择其 Use (使用) 选项卡,然后选择 Create copy (创建副本)