YAML(마크업 언어)은 사람이 읽을 수 있는 데이터 직렬화 언어입니다. 일반적으로 구성 파일과 데이터가 저장되거나 전송되는 애플리케이션에서 사용됩니다. AI와 머신 러닝의 맥락에서 YAML의 주요 역할은 구성 파일을 쉽게 이해하고 관리할 수 있게 만들어 사람이 읽을 수 있는 가독성과 기계 처리 사이의 간극을 메우는 것입니다.
YAML은 사람이 쉽게 읽고 쓸 수 있도록 설계되었습니다. 깔끔하고 간단한 구문은 대괄호나 태그가 아닌 들여쓰기를 사용하여 구조를 정의합니다. 따라서 YAML 파일은 XML이나 JSON과 같은 다른 데이터 형식에 비해 훨씬 덜 복잡하고 탐색하기 쉽습니다. 주요 기능은 다음과 같습니다:
AI 및 ML 분야에서 YAML 파일은 구성 관리, 모델 아키텍처 정의, 학습 파이프라인 설정에 없어서는 안 될 필수 요소입니다. 다음은 몇 가지 실제 사례입니다:
yolov8s.yaml
파일은 YOLOv8 작은 모델의 레이어와 파라미터를 지정하여 사용자가 실험을 쉽게 사용자 지정하거나 복제할 수 있도록 합니다. 이러한 구성 파일은 사용자 지정 모델을 학습하고 Ultralytics HUB를 사용하여 사전 학습된 모델을 배포하는 데 필수적입니다.YAML과 JSON은 모두 데이터 직렬화 언어이지만, 가독성이 뛰어나기 때문에 AI와 머신러닝에서 설정용으로 YAML이 선호되는 경우가 많습니다. JSON 역시 어느 정도 사람이 읽을 수 있지만 중괄호와 대괄호 같은 구두점을 더 많이 사용하기 때문에 복잡한 구성을 한 눈에 파악하기 어려울 수 있습니다. 들여쓰기와 최소한의 구문에 의존하는 YAML은 더 깔끔하고 직관적인 구성 파일을 생성하여 복잡한 AI 프로젝트에서 오류 발생 가능성을 줄이고 유지 관리 가능성을 개선합니다.
AI 및 ML 실무자는 YAML을 사용하여 구성을 효과적으로 관리하고 전달함으로써 워크플로우를 더욱 투명하고 재현 가능하며 쉽게 협업할 수 있습니다. 단순성과 인간 친화적인 특성으로 인해 AI 및 ML 환경에서 필수적인 도구가 되었습니다.