您好,欢迎观临半岛体育官网!

咨询热线:

040-88888888

在本地构建与训练机器学习模型

发布时间:2024-04-07 10:57人气:

  在本教程中,您将学习如何以本地方式在 Amazon SageMaker Studio 笔记本中构建与训练机器学习(ML)模型半岛体育登录入口

  Amazon SageMaker Studio是 ML 的一个集成开发环境(IDE)半岛体育登录入口,它提供了一个完全托管的 Jupyter Notebook 界面,您可以在其中执行端到端 ML 生命周期任务。使用 SageMaker Studio,您可以创建和探索数据集;准备训练数据,构建与训练模型,并部署经过训练的模型以用于推理 – 所有这些都可以在一个地方进行。

  在使用完整的数据集进行训练前探索数据集示例并对多个模型和参数配置进行迭代,这是 ML 开发时的一种常见做法。在这个探索阶段,Amazon SageMaker 会提供本地模式,允许您在运行全规模训练作业前测试您的训练逻辑,尝试不同的建模方法,并衡量模型的性能。

  针对此教程,您要使用合成的汽车保险索赔数据集。输入是训练和测试数据集,每个数据集都包含关于索赔和客户的详细信息和提取的特征,以及一个fraud(欺诈)列,表明索赔是欺诈性的还是其他的。您将使用开源 XGBoost 框架在这个合成数据集上构建一个二进制分类模型原型,以预测索赔被欺诈的可能性。

  此堆栈假设您已经在账户中设置了一个公有 VPC。如果您没有公有 VPC,请参阅具有单个公有子网的 VPC以了解如何创建公有 VPC。

  复制并粘贴以下代码片段到笔记本的单元格,按Shift+Enter运行当前单元格以便更新aiobotocore库,它是与很多 AWS 服务进行交互,并且会安装XGBoost库的 API。忽略任何警告以重新启动内核或任何依赖项冲突错误。

  您还需要实例化 S3 客户端对象,以及默认 S3 桶中上传指标和模型构件等内容的位置。要这样做,请复制并粘贴以下代码块并运行单元格。请注意,写入桶名称由 SageMaker 会话对象派生而来。您的默认桶具有名称 sagemaker-your-Region-your-account-id。此桶是上传所有训练构件所在的位置。用于训练的数据集存在于一个名为 sagemaker-sample-files 的公有 S3 桶桶中,该桶被指定为读取桶。桶中的位置通过读取前缀指定。

  在这一步中,您要使用合成的汽车保险索赔数据集设置与训练 XGBoost 二进制分类模型,并评估模型的性能。您要使用fraud(欺诈)列作为目标列。这样做的目标是,训练可区分欺诈索赔与合法索赔,并且衡量基准模型性能的 XGBoost 二进制分类器。

  开源 XGBoost 框架会公开多项可被用于控制模型性能的超参数。在本教程中,要设置一些重要的超参数,而受试者工作特征曲线下面积(ROC-AUC)则会被选作评估指标。在单元格中复制并粘贴以下代码块,运行该单元格以便对 XGBoost 进行交叉验证和训练。

  运行单元格后会显示交叉验证训练和验证 AUC 分数。由于建模流程的随机性,您的分数可能会有些许差异。不过,训练和测试性能之间的差异表明,考虑到所选超参数组合,模型最有可能对训练数据集过拟合。作为数据科学家,您可以在进行全规模训练前使用此洞察来优化模型。

  在对交叉验证性能进行过衡量以后,您可以使用完整的训练数据集对模型进行再训练,同时使用测试集提前停止,而不用在多个折之间分割数据集。提前停止有助于控制模型的复杂程度,减少过拟合。复制并粘贴以下代码块,以便使用训练和测试数据集进行再训练与评估。注意,以本地模式进行再训练意味着从 Amazon S3 将数据集提取到本地 SageMaker Studio 实例环境。SageMaker Studio 实例应有充足空间以在本地存储数据。

  使用汽车保险索赔数据集对二进制分类模型进行训练和评估的过程到此结束。复制并粘贴以下代码块,以便将评估指标保存为 JSON 文件半岛体育登录入口,将经过训练的模型保存为 Pickle 文件。该代将两者保存到 SageMaker Studio 中的本地目录以及您的默认 S3 桶。

  本教程中用于运行笔记本图像的数据科学内核将不断累积费用,直到您停止内核或执行以下步骤删除应用程序。有关更多信息,请参阅Amazon SageMaker 开发人员指南中的关闭资源。

  要删除 SageMaker Studio 应用程序,请执行以下操作:在 SageMaker Studio 控制台中,选择studio-user,然后通过选择Delete app(删除应用程序)来删除Apps(应用程序)下列出的所有应用程序。等待片刻直到状态更改为Deleted(已删除)。

  如果您在第 1 步中使用了一个现有的 SageMaker Studio 域,则跳过第 4 步的其余部分,直接进入结论部分。

  在CFN-SM-IM-Lambda-catalog堆栈详细信息页面上,选择Delete(删除)以删除堆栈以及在第 1 步中创建的资源。

  在本教程中,您使用 Amazon SageMaker Studio 和 XGBoost 开源库在本地构建二进制分类模型,并将模型构件和输出保存到 Amazon S3。如本教程中所述,借助 SageMaker Studio 中的快速原型制作,您可以在使用完整的数据集训练生产模型前评估模型的性能,以及可能的过拟合问题。


040-88888888