Glossário

YAML

Explora a simplicidade e o poder do YAML para configurações de IA/ML. Domina estruturas de dados flexíveis, integrações perfeitas e fluxos de trabalho eficientes hoje mesmo!

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

YAML, que significa "YAML Ain't Markup Language", é um padrão de serialização de dados legível por humanos, normalmente utilizado para ficheiros de configuração e troca de dados entre linguagens de programação. A sua simplicidade e legibilidade fazem com que seja uma escolha preferida para programadores e profissionais de aprendizagem automática que precisam de lidar facilmente com dados estruturados.

Principais caraterísticas do YAML

  • Legível por humanos: O formato YAML foi concebido para ser fácil de ler e escrever para os humanos. Usa indentação e uma sintaxe limpa e mínima para garantir clareza.
  • Estruturas de dados flexíveis: O YAML suporta estruturas de dados complexas, como listas, mapas e tipos escalares, que podem ser usados para representar matrizes, dicionários ou mapeamentos em vários ambientes de programação.
  • Agnóstico em termos de linguagem: O YAML pode ser facilmente integrado em diferentes linguagens de programação, o que o torna altamente versátil para aplicações de software e scripts.

YAML em IA e ML

No contexto da inteligência artificial (IA) e da aprendizagem automática (ML), o YAML é frequentemente utilizado para configurar ficheiros de configuração que definem parâmetros de modelos, passos de processamento de dados e outras definições vitais. Esta abordagem ajuda a simplificar os fluxos de trabalho de aprendizagem automática, tornando as configurações fáceis de modificar e partilhar.

Aplicações no mundo real

  1. Ultralytics YOLO Configurações: O YAML é frequentemente utilizado em modelos Ultralytics YOLO modelos para definir parâmetros como tamanho da entrada, tamanho do lote, taxa de aprendizado e outros. Isso ajuda a simplificar o processo de ajuste de hiperparâmetros e ajustes de modelos.

  2. Kubernetes: O YAML é amplamente usado no Kubernetes para definir configurações de implantação, serviços e cotas de recursos. Isso é crucial para modelos de aprendizado de máquina que exigem escalabilidade e implantação flexível.

YAML vs. JSON e XML

  • JSON: Embora tanto o YAML como o JSON sejam legíveis por humanos, o YAML tende a ser mais compacto com menos sintaxe, facilitando a edição manual. No entanto, o JSON é mais amplamente suportado em aplicações Web.
  • XML: O YAML é mais legível do que o XML, uma vez que não requer etiquetas de fecho ou estruturas de etiquetas aninhadas, que podem tornar-se complicadas em XML.

Noções básicas de sintaxe YAML

O YAML utiliza indentação para definir a estrutura, à semelhança da forma como Python utiliza espaços para indicar blocos de código. Os pares chave-valor são denotados com : com espaços após os dois pontos. As listas são representadas iniciando cada item com um traço (-).

Exemplo:

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

YAML na automatização do fluxo de trabalho

O YAML desempenha um papel fundamental nos processos de integração contínua e implantação contínua (CI/CD), definindo scripts de automação em ferramentas como GitHub Actions ou Travis CI. Isto permite que as equipas de aprendizagem automática automatizem os testes e os pipelines de implementação e garantam práticas consistentes de implementação de modelos.

Começar a utilizar o YAML

Para os profissionais que pretendem utilizar YAML nos seus projectos de IA/ML, explorar plataformas de código aberto é um bom começo. Muitas plataformas fornecem modelos e ferramentas para simplificar a implementação de configurações YAML, ajudando na transição suave do desenvolvimento para a produção.

Recursos adicionais

Ao tirar partido do YAML, os profissionais de IA e ML podem gerir eficazmente os ficheiros de configuração, permitindo uma colaboração perfeita, o tratamento de dados estruturados e processos de implementação simplificados.

Lê tudo