Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

YAML

Descubra o poder do YAML em IA/ML! Simplifique configurações, otimize fluxos de trabalho e melhore a legibilidade com este formato de dados versátil.

YAML, que significa "YAML Ain't Markup Language", é um padrão de serialização de dados legível por humanos padrão de serialização de dados legível por humanos, comumente usado para arquivos de configuração e troca de dados entre linguagens. Ao contrário de formatos mais verbosos, o YAML prioriza a limpeza e a facilidade de uso, baseando-se na indentação em vez de parêntesis ou etiquetas para definir a estrutura. Esta abordagem minimalista torna-o uma escolha preferida escolha preferida para programadores e cientistas de dados que trabalham em Aprendizagem automática (ML) e Inteligência Artificial (IA), onde definir claramente ambientes e parâmetros complexos é essencial. Pode explorar a especificação oficial no sítio Web sítio Web YAML.

O papel do YAML nos fluxos de trabalho de IA

No domínio da aprendizagem profunda (DL), o YAML serve de a espinha dorsal da gestão e reprodutibilidade das experiências. Os sistemas complexos exigem frequentemente a definição de centenas de parâmetros, desde caminhos de ficheiros a constantes matemáticas. Ao externalizar essas configurações em arquivos YAML, os pesquisadores asseguram que as suas configurações de dados de treino e e arquitecturas de modelos permanecem separadas da base de código. Essa separação facilita as práticas de práticas de DataOps e permite um controlo de versão mais fácil das configurações experimentais.

Aplicações do mundo real na aprendizagem automática

O YAML é onipresente nas pilhas de desenvolvimento de IA modernas. Aqui estão duas maneiras principais de utilizá-lo:

  1. Definição de conjunto de dados: Uma das utilizações mais comuns em Visão por Computador (CV) é a definição de estruturas de conjuntos de dados estruturas. Por exemplo, ao preparar-se para a deteção de objectos, um ficheiro YAML tipicamente especifica os diretórios raiz para os dados de treino e dados de treino e validação, o número de classes e os nomes das classes. Ultralytics utiliza este formato para carregar sem problemas os benchmarks como COCO ou conjuntos de dados personalizados.
  2. Configuração de hiperparâmetros: A obtenção do melhor desempenho do modelo requer um ajuste rigoroso dos ajuste rigoroso dos hiperparâmetros. Um arquivo YAML pode armazenar variáveis de treinamento críticas, como a taxa de aprendizagem, tamanho do lote, decaimento do peso e o número de épocas. Isto permite que os engenheiros executem várias experiências simplesmente trocando os ficheiros de configuração sem modificar o código Python subjacente.

YAML vs. JSON e XML

Embora o YAML partilhe semelhanças com outros formatos, é distinto na sua filosofia de conceção e casos de utilização:

  • YAML vs. JSON: JSON (JavaScript Object Notation) é amplamente utilizado para APIs da Web APIs. No entanto, o JSON não suporta comentários, que são vitais para a documentação de experiências científicas. O YAML suporta comentários e é geralmente considerado mais legível para configuração, embora o JSON seja frequentemente mais rápido de analisar.
  • YAML vs. XML: O XML (eXtensible Markup Language) usa tags de abertura e fechamento o que torna os ficheiros significativamente maiores e mais difíceis de analisar rapidamente por humanos. A estrutura baseada em indentação do YAML reduz a confusão visual, tornando-a superior para manter a gestão de configuração de software ficheiros.

Aplicação de YAML com Ultralytics

Ao trabalhar com o modelo Ultralytics YOLO11 , os ficheiros YAML são fundamentais para definir os dados que o modelo vê. O ficheiro data na função de treino aceita um ficheiro YAML que aponta para as suas imagens e etiquetas.

O exemplo seguinte demonstra como iniciar uma sessão de treino utilizando um ficheiro de configuração de conjunto de dados padrão.

from ultralytics import YOLO

# Load a standard YOLO11 model
model = YOLO("yolo11n.pt")

# Train the model using the 'coco8.yaml' dataset configuration
# The YAML file contains paths to images and class names (e.g., person, bus)
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)

Integração mais alargada do ecossistema

Para além da formação direta de modelos, o YAML é parte integrante do ecossistema mais vasto do ecossistema MLOps. Ele é o formato de configuração formato de configuração padrão para o Docker Compose ao orquestrar contentores para a implementação de modelos. Da mesma forma, Kubernetes usa YAML para definir como os aplicativos são dimensionados na nuvem.

Ferramentas de automação como o GitHub Actions também dependem do YAML para definir fluxos de trabalho CI/CD, garantindo que os testes automatizados e a integração automatizados ocorram sem problemas sempre que o código é enviado. Os programadores Python utilizam frequentemente a biblioteca biblioteca PyYAML para ler e escrever programaticamente esses arquivos fazendo a ponte entre a configuração estática e a execução dinâmica do código.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora