示例:使用 Azure 机器学习生成和部署自定义技能(存档)

此示例已存档且不受支持。 其中介绍了如何使用 Azure 机器学习创建自定义技能,以便从评论中提取基于方面的情感分析。 在同一篇评论中,这使正面和负面情绪能够被正确归于已识别的实体,如员工、房间、大厅或游泳池。

若要在 Azure 机器学习中训练基于方面的情绪模型,你将使用 nlp 食谱存储库。 然后,模型将部署为 Azure Kubernetes 群集上的端点。 部署后,端点被添加到富化管道中,作为 AML 技能供认知搜索服务使用。

提供了两个数据集。 如果要自行训练模型,则需要 hotel_reviews_1000.csv 文件。 更喜欢跳过训练步骤? 下载 hotel_reviews_100.csv。

  • 创建 Azure 认知搜索实例
  • 创建 Azure 机器学习工作区(搜索服务和工作区应位于同一订阅中)
  • 训练模型并将其部署到 Azure Kubernetes 群集
  • 将 AI 扩充管道链接到已部署的模型
  • 以自定义技能的形式引入已部署模型的输出

重要

根据 补充使用条款,此技能当前处于公共预览阶段。 预览版 REST API 支持此技能。

先决条件

  • Azure 订阅 - 获取 免费订阅
  • 认知搜索服务
  • 认知服务资源
  • Azure 存储帐户)
  • Azure 机器学习工作区

安装

  • 克隆或下载 示例存储库的内容。
  • 如果下载是 zip 文件,则提取内容。 请确保文件是读写的。
  • 设置 Azure 帐户和服务时,将名称和密钥复制到易于访问的文本文件。 名称和密钥将添加到笔记本中的第一个单元中,其中定义了用于访问 Azure 服务的变量。
  • 如果不熟悉 Azure 机器学习及其要求,则需要在开始之前查看这些文档:
  • 配置 Azure 机器学习的开发环境
  • 在 Azure 门户中创建和管理 Azure 机器学习工作区
  • 为 Azure 机器学习配置开发环境时,请考虑使用 基于云的计算实例 来快速轻松地入门。
  • 将数据集文件上传到存储帐户中的容器。 如果要在笔记本中执行训练步骤,则需要更大的文件。 如果希望跳过训练步骤,建议使用较小的文件。

打开笔记本并连接到 Azure 服务

  1. 将允许访问 Azure 服务的变量的所有必需信息填入第一个单元格并运行该单元格。
  2. 运行第二个单元格将确认您已与订阅的搜索服务连接。
  3. 第 1.1 节 - 1.5 将创建搜索服务数据存储、技能集、索引和索引器。

此时,可以选择跳过在 Azure 机器学习中创建训练数据集和试验的步骤,并直接跳到注册 GitHub 存储库的 models 文件夹中提供的两个模型。 如果跳过这些步骤,则在笔记本中直接跳到第 3.5 节,并编写评分脚本。 这将节省时间;数据下载和上传步骤可能需要长达 30 分钟才能完成。

创建和训练模型

第 2 部分包含六个单元格,用于从 nlp 食谱存储库下载手套嵌入文件。 下载后,文件将上传到 Azure 机器学习数据存储。 .zip 文件大约为 2G,执行这些任务需要一些时间。 上传后,将提取训练数据,现在即可转到第 3 部分。

训练基于方面的情感分析模型并部署您的端点

笔记本的第 3 部分将训练第 2 节中创建的模型,注册这些模型并将其部署为 Azure Kubernetes 群集中的终结点。 如果不熟悉 Azure Kubernetes,强烈建议在尝试创建推理群集之前查看以下文章:

创建和部署推理群集最多可能需要 30 分钟。 建议在继续执行最终步骤之前测试 Web 服务,更新技能集并运行索引器。

更新技能集

笔记本中的第 4 节有四个单元格用于更新技能集和索引器。 或者,可以使用门户来选择新技能并将其应用到技能集,然后运行索引器来更新搜索服务。

在门户中,转到“技能集”并选择“技能集定义”(JSON)链接。 门户将显示在笔记本的第一个单元格中创建的技能集的 JSON。 显示右侧有一个下拉菜单,可在其中选择技能定义模板。 选择 Azure 机器学习(AML)模板。 提供 Azure ML 工作区的名称和部署到推理群集的模型的终结点。 模板将使用终结点 URI 和密钥进行更新。

技能集定义模板

从窗口中复制技能组模板,并将其粘贴到左侧的技能集定义中。 编辑模板以提供以下项的缺失值:

  • 名字
  • DESCRIPTION
  • 上下文
  • “inputs”名称和源
  • “outputs”名称和 targetName

保存技能集。

保存技能集后,转到索引器并选择“索引器定义”(JSON)链接。 门户将显示在笔记本第一个单元格中创建的索引器的 JSON。 输出字段映射需要使用其他字段映射进行更新,以确保索引器可以正确处理和传递它们。 保存更改,然后选择“运行”。

清理资源

在自己的订阅中操作时,最好在项目结束时确定是否仍需要已创建的资源。 持续运行资源可能会产生费用。 可以逐个删除资源,也可以删除资源组以删除整个资源集。

可以使用左侧导航窗格中的“所有资源”或“资源组”链接 ,在门户中查找和管理资源。

如果您使用免费服务,请记住,您只能使用三个索引、索引器和数据源。 可以在门户中删除单个项目,以不超出此限制。