作者文杰特涵
最后更新于 2022 年 2 月 8 日
警告
本文来自 Teradata 公司入门这是在 中发布的内容的删节版本。我们不保证所发布内容的准确性、完整性、可靠性或最新性。具体内容请参考原文。
此外,请随时留下任何评论或更正请求。
概述
本指南可帮助您将 Amazon SageMaker 与 Teradata Vantage 集成。本指南中描述的方法是与此服务集成的众多潜在方法之一。
Amazon SageMaker 提供了一个完全托管的机器学习平台。 Amazon SageMaker 和 Teradata 有两个用例。
① 数据位于 Teradata Vantage 上,Amazon SageMaker 用于模型定义和后续评分。在此用例中,Teradata 向 Amazon S3 环境提供数据,使 Amazon SageMaker 可以使用训练和测试数据集进行模型开发。 Teradata 还通过 Amazon S3 将数据提供给 Amazon SageMaker 进行后续评分。在此模型中,Teradata 是唯一的数据存储库。
② 数据驻留在 Teradata Vantage 上,Amazon SageMaker 用于模型定义,Teradata 用于后续评分。在此用例中,Teradata 将向 Amazon S3 环境提供数据,以便 Amazon SageMaker 可以使用训练和测试数据集进行模型开发。 Teradata 需要将 Amazon SageMaker 模型导入 Teradata 表,以便在 Teradata Vantage 中进行评分。在此模型中,Teradata 既是数据存储库又是评分引擎。
本文档描述了第一个用例。
Amazon SageMaker 使用来自 Amazon S3 存储桶的训练和测试数据。本文介绍如何将 Teradata 分析数据集加载到 Amazon S3 存储桶中。然后可以在 Amazon SageMaker 中使用这些数据,您可以在其中构建和训练机器学习模型并将它们部署到生产中。
先决条件
• 访问 Teradata Vantage 实例。
笔记!
如果您需要 Vantage 的新实例,您可以在 Google Cloud、Azure 或 AWS 云上安装名为 Vantage Express 的免费版本。您还可以使用 VMware、VirtualBox 或 UTM 在本地计算机上运行 Vantage Express。
・访问 Amazon S3 存储桶和使用 Amazon SageMaker 服务的 IAM 权限
・用于存储学习数据的 Amazon S3 存储桶
加载数据
Amazon SageMaker 训练来自 Amazon S3 存储桶的数据。以下是将训练数据从 Vantage 加载到 Amazon S3 存储桶的步骤。
① 进入 Amazon SageMaker 控制台,创建笔记本实例。有关如何创建笔记本实例的信息Amazon SageMaker 开发人员指南请参阅。
② 打开一个笔记本实例。
③新 → conda_python3单击以启动新文件。
④ 安装 Teradata Python 库。
!pip install teradataml
⑤ 将其他库导入新单元。
import teradataml as tdml
from teradataml import create_context, get_context, remove_context
from teradataml.dataframe.dataframe import DataFrame
import pandas as pd
import boto3, os
⑥ 在新单元格中,连接到 Teradata Vantage。主机名,数据库用户名,数据库密码请根据您的 Vantage 环境进行更换。
create_context(host = '<hostname>', username = '<database user name>', password = '<database password>')
⑦ 使用 TeradataML DataFrame API 从训练数据集所在的表中获取数据。
train_data = tdml.DataFrame('table_with_training_data')
trainDF = train_data.to_pandas()
⑧ 将数据写入本地文件。
trainFileName = 'train.csv'
trainDF.to_csv(trainFileName, header=None, index=False)
⑨ 将文件上传到 Amazon S3。
bucket = 'sagedemo'
prefix = 'sagemaker/train'
trainFile = open(trainFileName, 'rb')
boto3.Session().resource('s3').Bucket(bucket).Object(os.path.join(prefix, localFile)).upload_fileobj(trainFile)
模型训练
① 在左侧菜单中训练从培训职位并选择创建培训工作点击。
②培训工作在撰写窗口中职位名称(例子:xgboost-银行) 对于 IAM 角色创建一个新角色。到 Amazon S3 存储桶任何 S3 存储桶, 创建一个角色创建角色选择。
③创建培训工作作为算法回到窗口XGBoost使用。
④ 默认实例类型为ml.m4.xlarge,每个实例的额外存储量使用 30GB。这是一项短期培训工作,不应超过 10 分钟。
⑤ 输入以下超参数,其他保持默认。
num_round=100
silent=0
eta=0.2
gamma=4
max_depth=5
min_child_weight=6
subsample=0.8
objective='binary:logistic'
⑥输入数据配置对于 ,输入您保存训练数据的 Amazon S3 存储桶。输入方式为文件是。内容类型CSV是。S3 位置是文件上传目的地。
⑦输出数据配置输入要保存输出数据的路径。
⑧ 其余默认,点击“创建训练作业”。有关如何设置培训作业的更多信息Amazon SageMaker 开发人员指南列于
创建训练作业时,Amazon SageMaker 会启动一个 ML 实例来训练模型,并将生成的模型工件和其他输出存储在输出数据配置中(默认为路径/<训练作业名称>/输出)。
部署模型
训练模型后,使用持久端点部署模型。
创建模型
① 在左侧面板上推理“从”楷模,然后选择创建模型“选择。型号名称(例如xgboost-银行) 并选择在上一步中创建的 IAM 角色。
②容器定义1然后 ”推理代码图像的位置作为 ”433757028032。丹麦E 铬。 U s-we st-2。亚马逊WS。此 m/xg 助推器:Ate st“使用。模型工件的位置是训练作业的输出路径。
③ 其余默认创建模型“去做。
创建端点配置
① 选择创建的模型,点击[创建端点配置]点击。
② 姓名(例:xgboost-银行) 并对其他人使用默认值。模型名称和训练作业应自动填写。创建端点配置点击。
创建端点
① 从左侧面板推理→楷模,再次选择模型,这次创建端点点击。
② 姓名(例:xgboost-银行) 并输入 "使用现有端点配置:image::sagemaker-with-teradata-vantage/attach.endpoint.config.png[附加端点配置]”。
③ 选择上一步创建的端点配置,点击[选择端点配置]点击。
④ 其他都默认,选择“创建端点“点击。
该模型现在已部署到端点并可供客户端应用程序使用。
概括
本操作指南展示了如何从 Vantage 中提取训练数据并使用它在 Amazon SageMaker 上训练模型。
在这个解决方案中,
使用 Jupyter notebook 从 Vantage 中提取数据并写入 S3 存储桶,
SageMaker 训练作业从 S3 存储桶读取数据以生成模型,
将此模型作为服务端点部署到 AWS
做过。
学到更多
联系 Teradata Vantage
原创声明:本文系作者授权爱码网发表,未经许可,不得转载;
原文地址:https://www.likecs.com/show-308630543.html