Глоссарий

YAML

Исследуй простоту и мощь YAML для AI/ML-конфигураций. Освой гибкие структуры данных, бесшовные интеграции и эффективные рабочие процессы уже сегодня!

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

YAML, что расшифровывается как "YAML Ain't Markup Language", - это человекочитаемый стандарт сериализации данных, который обычно используется для конфигурационных файлов и обмена данными между языками программирования. Его простота и читабельность делают его предпочтительным выбором для разработчиков и практиков машинного обучения, которым нужно легко работать со структурированными данными.

Ключевые особенности YAML

  • Читаемый человеком: Формат YAML разработан так, чтобы его было легко читать и писать. В нем используются отступы и чистый, минимальный синтаксис, чтобы обеспечить ясность.
  • Гибкие структуры данных: YAML поддерживает сложные структуры данных, такие как списки, карты и скалярные типы, которые можно использовать для представления массивов, словарей или отображений в различных средах программирования.
  • Языковая агностика: YAML легко интегрируется в различные языки программирования, что делает его весьма универсальным для программных приложений и скриптов.

YAML в искусственном интеллекте и ML

В контексте искусственного интеллекта (ИИ) и машинного обучения (МЛ) YAML часто используется для настройки конфигурационных файлов, которые определяют параметры модели, этапы обработки данных и другие важные настройки. Такой подход помогает оптимизировать рабочие процессы машинного обучения, делая конфигурации легко изменяемыми и общими.

Применение в реальном мире

  1. Ultralytics YOLO Конфигурация: YAML часто используется в Ultralytics YOLO в моделях для настройки таких параметров, как размер входа, размер партии, скорость обучения и многое другое. Это помогает упростить процесс настройки гиперпараметров и корректировки модели.

  2. Kubernetes: YAML широко используется в Kubernetes для определения конфигураций развертывания, сервисов и квот на ресурсы. Это крайне важно для моделей машинного обучения, которые требуют масштабируемости и гибкого развертывания.

YAML против JSON и XML

  • JSON: Хотя и YAML, и JSON являются человекочитаемыми, YAML имеет тенденцию быть более компактным с меньшим количеством синтаксиса, что делает его более удобным для ручного редактирования. Однако JSON более широко поддерживается в веб-приложениях.
  • XML: YAML более читабелен, чем XML, так как не требует закрывающих тегов или вложенных структур тегов, которые могут стать громоздкими в XML.

Основы синтаксиса YAML

YAML использует отступы для определения структуры, подобно тому, как на сайте Python используются пробелы для обозначения блоков кода. Пары ключ-значение обозначаются с помощью : с пробелами после двоеточия. Списки представляются так: каждый элемент начинается с тире (-).

Пример:

yamlname: Ultralytics Modelparameters: - batch_size: 16 - epochs: 50

YAML в автоматизации рабочих процессов

YAML играет ключевую роль в процессах непрерывной интеграции и непрерывного развертывания (CI/CD), определяя сценарии автоматизации в таких инструментах, как GitHub Actions или Travis CI. Это позволяет командам машинного обучения автоматизировать конвейеры тестирования и развертывания и обеспечить последовательную практику развертывания моделей.

Начало работы с YAML

Для практиков, которые хотят использовать YAML в своих AI/ML-проектах, изучение платформ с открытым исходным ко дом - отличное начало. Многие платформы предоставляют шаблоны и инструменты для упрощения внедрения YAML-конфигураций, помогая плавно перейти от разработки к производству.

Дополнительные ресурсы

Используя YAML, специалисты по ИИ и ML могут эффективно управлять конфигурационными файлами, обеспечивая бесперебойную совместную работу, структурированную обработку данных и оптимизацию процессов развертывания.

Читать полностью