本文中的内容和观点是第三方作者的观点,AWS对本文的内容或准确性不承担任何责任。
随着越来越多的组织使用计算机视觉和自然语言处理等深度学习技术,机器学习 (ML) 开发人员角色需要围绕实验跟踪、沿袭和协作的可扩展工具。 实验跟踪包括元数据,例如操作系统、使用的基础设施、库以及输入和输出数据集——通常在电子表格上手动跟踪。 Lineage 涉及跟踪用于创建 ML 模型的数据集、转换和算法。 协作包括从事单个项目的 ML 开发人员,以及 ML 开发人员在团队和业务利益相关者之间分享他们的结果——这个过程通常通过电子邮件、屏幕截图和 PowerPoint 演示文稿完成。
在这篇文章中,我们训练了一个模型来使用权重和偏差 (W&B) 识别自动驾驶汽车用例的对象,以及 亚马逊SageMaker. 我们展示了联合解决方案如何减少 ML 开发人员的手动工作,在模型开发过程中创造更高的透明度,并使团队能够在项目上进行协作。
我们运行这个例子 亚马逊SageMaker Studio 供您自己尝试。
权重和偏差概述
Weights & Biases 帮助 ML 团队更快地构建更好的模型。 只需在 SageMaker 笔记本中添加几行代码,您就可以立即调试、比较和重现您的模型(架构、超参数、git 提交、模型权重、GPU 使用、数据集和预测),同时与您的队友协作。
W&B 受到来自世界上一些最具创新性的公司和研究组织的 200,000 多名机器学习从业者的信任。 要免费试用,请在以下位置注册 权重与偏见,或访问 W&B AWS 市场列表.
SageMaker Studio 入门
SageMaker Studio 是第一个用于 ML 的完全集成的开发环境 (IDE)。 Studio 提供了一个单一的基于 Web 的界面,ML 从业者和数据科学家只需点击几下,就可以在一个地方构建、训练和部署模型。
要开始使用 Studio,您需要一个 AWS 账户和一个 AWS身份和访问管理 (IAM) 有权创建 Studio 域的用户或角色。 参考 加入 Amazon SageMaker 域 创建一个域,并且 工作室文档 有关使用 Studio 可视化界面和笔记本的概述。
搭建环境
对于这篇文章,我们有兴趣运行我们自己的代码,所以让我们从 GitHub 导入一些笔记本。 我们使用以下 GitHub回购 作为一个例子,让我们加载 这个笔记本.
您可以通过终端或 Studio UI 克隆存储库。 要通过终端克隆存储库,请打开系统终端(在 文件 菜单中选择 全新 和 终端) 并输入以下命令:
要从 Studio UI 克隆存储库,请参阅 在 SageMaker Studio 中克隆 Git 存储库.
要开始,请选择 01_data_processing.ipynb 笔记本。 系统会提示您内核切换器提示。 这个例子使用了 PyTorch,所以我们可以选择预建的 PyTorch 1.10 Python 3.8 GPU 优化 图像开始我们的笔记本。 您可以看到应用程序正在启动,当内核准备就绪时,它会在您的笔记本右上角显示实例类型和内核。
我们的 notebook 需要一些额外的依赖。 此存储库提供了一个带有附加依赖项的 requirements.txt。 运行第一个单元以安装所需的依赖项:
您还可以创建生命周期配置以在每次启动 PyTorch 应用程序时自动安装包。 看 使用生命周期配置自定义 Amazon SageMaker Studio 获取说明和示例实现。
在 SageMaker Studio 中使用权重和偏差
权重和偏差 (wandb
) 是一个标准的 Python 库。 安装后,只需在训练脚本中添加几行代码即可,您就可以开始记录实验了。 我们已经通过 requirements.txt 文件安装了它。 您也可以使用以下代码手动安装它:
案例研究:自动驾驶汽车语义分割
数据集
我们使用 剑桥驾驶标记视频数据库 (CamVid) 用于此示例。 它包含一组带有对象类语义标签的视频,并带有元数据。 该数据库提供将每个像素与 32 个语义类别之一相关联的基本事实标签。 我们可以将数据集版本化为 wandb.神器,这样我们以后可以参考。 请参阅以下代码:
您可以在 01_data_processing.ipynb 笔记本电脑。
我们还记录了一个 表 的数据集。 表格是丰富而强大的类似 DataFrame 的实体,使您能够查询和分析表格数据。 您可以在中央仪表板中了解您的数据集、可视化模型预测并分享见解。
权重和偏差表支持许多富媒体格式,例如图像、音频和波形。 有关媒体格式的完整列表,请参阅 数据类型.
以下屏幕截图显示了一个表格,其中包含带有基本事实分割的原始图像。 您还可以查看一个 此表的交互式版本.
训练模型
我们现在可以创建一个模型并在我们的数据集上对其进行训练。 我们用 PyTorch 和 法泰 快速建立基线原型,然后使用 wandb.Sweeps
优化我们的超参数。 跟随在 02_semantic_segmentation.ipynb 笔记本。 在打开笔记本时提示输入内核时,从我们的第一个笔记本中选择相同的内核, PyTorch 1.10 Python 3.8 GPU 优化. 您的软件包已经安装,因为您使用的是同一个应用程序。
该模型应该学习从自主代理的角度捕获的场景的每像素注释。 该模型需要将给定场景的每个像素分类或分割为 32 个相关类别,例如道路、行人、人行道或汽车。 您可以选择表格上的任何分割图像并访问此交互式界面以访问分割结果和类别。
由于 法泰 图书馆与 wandb
,你可以简单地通过 WandbCallback
给学习者:
对于基线实验,我们决定使用受 网络 不同主干的纸 蒂姆。 我们用 焦点损失 作为标准。 使用权重和偏差,您可以轻松创建带有实验摘要的仪表板,以快速分析训练结果,如下面的屏幕截图所示。 你也可以 以交互方式查看此仪表板.
带扫描的超参数搜索
为了提高基线模型的性能,我们需要选择最佳模型和最佳超参数集进行训练。 W&B 让我们使用起来很容易 扫描.
我们执行一个 贝叶斯超参数搜索 目标是最大化模型在验证数据集上的前景精度。 为了执行扫描,我们定义了配置文件 sweep.yaml。 在这个文件中,我们传递了要使用的所需方法:贝叶斯和要搜索的参数及其对应的值。 在我们的案例中,我们尝试了不同的主干、批量大小和损失函数。 我们还探索了不同的优化参数,例如学习率和权重衰减。 因为这些是连续值,所以我们从分布中采样。 有多个 可用于扫描的配置选项。
之后,在终端中,您使用 wandb 命令行:
然后使用以下代码在这台机器上启动一个扫描代理:
扫描完成后,我们可以使用平行坐标图来探索具有不同主干和不同超参数集的模型的性能。 基于此,我们可以看到哪个模型表现最好。
以下屏幕截图显示了扫描的结果,包括平行坐标图和参数相关图。 你也可以 以交互方式查看此扫描仪表板.
我们可以从扫描中得出以下关键见解:
- 较低的学习率和较低的权重衰减会导致更好的前景准确度和 Dice 分数。
- 批量大小与指标有很强的正相关。
- 基于 VGG 的主干 可能不是训练我们最终模型的好选择,因为它们很容易导致 消失梯度. (随着损失的发散,它们被过滤掉了。)
- RESNET 骨干在指标方面产生最佳的整体性能。
- 最终模型应该选择 ResNet34 或 ResNet50 主干,因为它们在指标方面的强大性能。
数据和模型沿袭
W&B 工件旨在让您轻松地对数据集和模型进行版本控制,无论您是想使用 W&B 存储文件还是已经有一个希望 W&B 跟踪的存储桶。 跟踪数据集或模型文件后,W&B 会自动记录每次修改,为您提供完整且可审核的文件更改历史记录。
在我们的例子中,训练期间生成的数据集、模型和不同的表被记录到工作区。 您可以通过转到 文物 页面上发布服务提醒。
解释模型预测
权重和偏差在使用以下功能评估模型性能时特别有用 wandb.表 可视化我们的模型在哪里做的不好。 在这种情况下,我们对正确检测自行车和行人等易受攻击的用户特别感兴趣。
我们将预测的掩码与每类 Dice 得分系数一起记录到一个表中。 然后,我们按包含所需类别的行进行过滤,并按 Dice 分数的升序排序。
在下表中,我们首先通过选择 Dice 得分为正的位置(图像中出现行人)进行过滤。 然后我们按升序排序以识别我们检测到的最差的行人。 请记住,Dice 分数等于 1 意味着正确分割行人类别。 你也可以 以交互方式查看此表.
我们可以对其他易受攻击的类别重复此分析,例如自行车或交通信号灯。
此功能是识别未正确标记的图像并标记它们以重新注释的非常好的方法。
结论
这篇文章展示了 Weights & Biases MLOps 平台、如何在 SageMaker Studio 中设置 W&B,以及如何在联合解决方案上运行介绍性笔记本。 然后,我们运行了一个自动驾驶汽车语义分割用例,并演示了使用 W&B 实验的跟踪训练运行、使用 W&B 扫描的超参数优化以及使用 W&B 表解释结果。
如果您有兴趣了解更多信息,可以访问直播 W&B 报告. 要免费试用权重和偏差,请在以下位置注册 权重与偏见,或访问 W&B AWS 市场列表.
作者简介
托马斯·卡佩尔 是 Weights and Biases 的机器学习工程师。 他负责保持 www.github.com/wandb/examples 存储库的实时性和最新性。 他还构建了关于 MLOPS、W&B 在行业中的应用以及有趣的深度学习的内容。 此前,他正在使用深度学习来解决太阳能的短期预测。 他拥有城市规划、组合优化、交通经济学和应用数学方面的背景。
杜尔加苏里 是 Amazon SageMaker Service SA 团队的 ML 解决方案架构师。 她热衷于让每个人都可以使用机器学习。 在 AWS 的 3 年中,她帮助为企业客户建立了 AI/ML 平台。 当她不工作时,她喜欢骑摩托车、阅读推理小说以及和她四岁的哈士奇一起徒步旅行。
- "
- &
- 000
- 10
- 100
- a
- 关于
- ACCESS
- 无障碍
- 访问
- 账号管理
- 横过
- 额外
- AI
- 算法
- 所有类型
- 已经
- Amazon
- 分析
- 分析
- 应用
- 应用领域
- 应用的
- 架构
- 围绕
- 律师
- 音频
- 自动
- 自主性
- 可使用
- AWS
- 背景
- 底线
- 因为
- 最佳
- 建立
- 建立
- 商业
- 汽车
- 案件
- 中央
- 图表
- 选择
- 程
- 类
- 码
- 合作
- 合作
- 合作
- 采集
- 公司
- 完成
- 一台
- 配置
- 包含
- 内容
- 相应
- 创建信息图
- 创建
- 合作伙伴
- XNUMX月XNUMX日
- data
- 数据库
- 十
- 决定
- 深
- 证明
- 部署
- 设计
- 开发商
- 开发
- 研发支持
- 不同
- 分配
- 域
- ,我们将参加
- 每
- 容易
- 经济学
- 邮箱地址
- enable
- 使
- 能源
- 工程师
- 输入
- 企业
- 实体
- 环境
- 特别
- 每个人
- 例子
- 执行
- 体验
- 实验
- 探索
- 高效率
- 快
- 专栏
- 姓氏:
- 遵循
- 以下
- Free
- 止
- ,
- 开玩笑
- 功能
- 其他咨询
- 产生
- 混帐
- GitHub上
- 给予
- 目标
- 去
- 非常好
- GPU
- 帮助
- 帮助
- 历史
- 创新中心
- How To
- HTTPS
- 鉴定
- 确定
- 身分
- 图片
- 图片
- 履行
- 改善
- 包括
- 包含
- 行业
- 基础设施
- 创新
- 输入
- 可行的洞见
- 灵感
- 安装
- 例
- 集成
- 积分
- 互动
- 有兴趣
- 接口
- 介绍
- IT
- 保持
- 保持
- 键
- 标签
- 语言
- 发射
- 领导者
- 学习用品
- 学习
- 自学资料库
- 线
- 清单
- 生活
- 加载
- 机
- 机器学习
- 使
- 制作
- 制作
- 颠覆性技术
- 手册
- 体力劳动
- 手动
- 市场
- 面膜
- 数学
- 手段
- 媒体
- 指标
- 可能
- 介意
- ML
- 模型
- 模型
- 更多
- 最先进的
- 摩托车
- 多
- 神秘
- 自然
- 需要
- 笔记本
- 打开
- 开放
- 操作
- 操作系统
- 意见
- 优化
- 优化
- 附加选项
- 附加选项
- 秩序
- 组织
- 其他名称
- 最划算
- 己
- 纸类
- 尤其
- 多情
- 性能
- 表演
- 规划行程
- 平台
- 平台
- 点
- 观点
- 积极
- 功率
- 强大
- 预测
- 当下
- 案例分享
- 过程
- 处理
- 产品
- 产品管理
- 生产率
- 项目
- 项目
- 提供
- 很快
- 原
- 相应
- 重复
- 知识库
- 必须
- 岗位要求
- 研究
- 提供品牌战略规划
- 导致
- 成果
- 路
- 角色
- 运行
- 运行
- 同
- 可扩展性
- 现场
- 科学家
- 搜索
- 段
- 分割
- 服务
- 集
- Share
- 共享
- 短期的
- 展示
- 如图
- 签署
- 简易
- 单
- 尺寸
- So
- 太阳的
- 太阳能
- 方案,
- 解决方案
- 解决
- 一些
- 标准
- 开始
- 开始
- 商店
- 策略
- 强烈
- 工作室
- 学习
- SUPPORT
- 扫描
- 系统
- 团队
- 队
- 技术
- 终端
- 条款
- 关节
- 世界
- 第三方
- 通过
- 次
- 最佳
- 跟踪时
- 跟踪
- 交通
- 产品培训
- 转换
- 用户评论透明
- 信任
- ui
- 理解
- 城市
- us
- 使用
- 用户
- 验证
- 折扣值
- 各个
- 汽车
- 版本
- 视频
- 视频
- 查看
- 愿景
- 脆弱
- 基于网络的
- 是否
- 而
- 维基百科上的数据
- 工作
- 加工
- 世界
- 年
- 您一站式解决方案