深圳尤洛视觉
深圳
立即加入
词汇表

YAML

探索 YAML 在 AI/ML 中的强大功能!使用这种通用的数据格式简化配置、简化工作流程并增强可读性。

YAML 是 "YAML 不是标记语言 "的首字母缩写,是一种人类可读的数据序列化标准,用于编写配置文件和在系统间传输数据。其设计以清晰和简单为优先考虑,允许开发人员和数据科学家以易于读写的方式定义复杂的数据结构。与更冗长的格式不同,YAML 使用缩进来表示结构,从而产生简洁、直观的文件,非常适合管理软件项目中的设置,包括机器学习 (ML) 项目中的设置。官方规范和资源可在yaml.org 上找到。

在AI和ML中的作用与应用

人工智能(AI)领域,YAML 是配置管理的支柱,在确保可重复性和简化实验方面发挥着至关重要的作用。深度学习(DL)项目通常涉及从模型架构到训练参数的大量设置。将这些设置存储在 YAML 文件中,可以方便地跟踪、修改和共享实验设置。您可以浏览YAML 语法小抄,以便快速参考。

AI 应用中两个常见的现实示例包括:

  1. 数据集配置:在训练模型之前,您需要定义数据集。YAML 文件指定训练和验证图像的路径、对象类别的数量以及这些类别的名称。Ultralytics 使用这种方法来管理像 COCO 这样的数据集。这确保了模型确切地知道在哪里可以找到它的数据以及它应该学习什么。
  2. 训练和超参数配置:YAML 文件非常适合定义训练会话所需的所有参数,包括指定模型架构(例如, YOLO11n), (超参数,如学习率、, 外部配置设置,数量 epochs,以及相关设置 数据增强。集中管理这些设置可以实现系统化的 超参数调优 并使实验易于复现。该 Ultralytics 文档 提供了这些配置文件的详细示例。

YAML 与其他数据格式的比较

YAML 经常与 JSON 和 XML 等其他数据序列化格式进行比较。

更广泛的生态系统和工具

YAML 的用途远远超出了计算机视觉。它是 DevOps 世界的一个基本组件,被Kubernetes等工具用于定义容器编排,被Ansible等工具用于 IT 自动化手册。这一概念通常被称为 "配置即代码"(CaC)

对于使用 Python 的开发人员来说,PyYAML 库是解析和生成 YAML 数据的常用工具。为防止因缩进敏感性而常见的语法错误,建议使用YAML 验证器作为最佳实践。这个工具生态系统使 YAML 成为管理整个MLOps 生命周期的强大选择,从在Jupyter Notebook中进行初始设置,到使用DockerGitHub Actions 等工具的 CI/CD 管道进行全面模型部署

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入
链接已复制到剪贴板