Data Labeling
A rotulagem de dados associa classes, caixas, máscaras ou pontos-chave a dados brutos para que modelos supervisionados possam aprender com eles. Veja tipos de rótulos, fluxos de trabalho e verificações de qualidade.
A rotulagem de dados é o processo de associar informações de referência a dados brutos, como o nome de uma classe para uma imagem, uma caixa delimitadora ao redor de cada carro em uma foto de rua ou uma transcrição para um trecho de áudio, para que modelos de aprendizagem supervisionada possam aprender com esses dados. Os rótulos definem a tarefa: um modelo aprende a prever exatamente o que os rótulos descrevem, com a mesma precisão e consistência. Anotação de dados é um sinônimo, e as pessoas que fazem esse trabalho são chamadas de rotuladores ou anotadores. A rotulagem costuma ser a etapa mais lenta e cara na criação de dados de treinamento, por isso muitos fluxos de trabalho fazem um modelo propor rótulos para que as pessoas os corrijam.
Tipos de rótulos em visão computacional#
O formato dos rótulos depende da tarefa que o modelo precisa executar:
- Classificação de imagens: Uma classe por imagem, como "defeituosa" ou "ok" para uma peça em uma linha de inspeção.
- Detecção de objetos: Uma caixa alinhada aos eixos e uma classe para cada objeto de interesse.
- Caixas delimitadoras orientadas: Caixas giradas que se ajustam a objetos alongados ou inclinados, como navios e veículos em imagens aéreas.
- Segmentação de instâncias: Um polígono ou máscara de pixels que contorna cada objeto individualmente.
- Segmentação semântica: Uma classe para cada pixel, como estrada, calçada e céu, sem separar objetos individuais.
- Estimativa de pose: Pontos-chave em pontos de referência fixos, como os 17 pontos do COCO, do nariz e dos olhos até os tornozelos, geralmente com um indicador de visibilidade para cada ponto.
O esforço aumenta com o nível de detalhe. Desenhar uma caixa de alta qualidade para o ILSVRC, o conjunto de dados do desafio ImageNet, levou cerca de 35 segundos, e o clique extremo, em que os anotadores clicam nos pontos superior, inferior, mais à esquerda e mais à direita de um objeto em vez de arrastar os cantos, reduziu esse tempo para 7 segundos, com caixas da mesma qualidade. Polígonos e máscaras de pixels levam ainda mais tempo. Fora da visão computacional, os rótulos marcam trechos de entidades para o reconhecimento de entidades nomeadas (NER), sentimentos para a classificação de texto e transcrições para o reconhecimento de fala.
O fluxo de trabalho de rotulagem#
Os projetos de rotulagem começam com diretrizes escritas que definem cada classe e resolvem os casos extremos antes do início do trabalho: se uma caixa deve ser desenhada em torno de um carro 90% oculto, o quanto deve se ajustar aos membros de um ciclista e como lidar com reflexos, objetos minúsculos e multidões. Na rotulagem assistida por modelo, um modelo treinado com os rótulos disponíveis pré-rotula imagens novas, os anotadores corrigem os erros, os revisores verificam uma amostra e cada modelo retreinado torna as propostas da rodada seguinte mais precisas. A aprendizagem ativa adiciona uma etapa de seleção a esse ciclo, para que as pessoas rotulem primeiro as imagens sobre as quais o modelo tem menos certeza.
O editor de anotações da Ultralytics Platform incorpora esse ciclo: o modo Smart transforma um clique em uma máscara com os modelos Segment Anything da Meta ou adiciona predições de modelos YOLO pré-treinados ou dos teus próprios modelos ajustados como rascunhos de anotação. A mesma etapa de pré-rotulagem é executada em Python com um detector YOLO26, que grava as predições no formato de rótulos usado no treinamento:
from pathlib import Path
from ultralytics import YOLO
# Carrega um detector YOLO26 nano pré-treinado para propor rótulos
model = YOLO("yolo26n.pt")
# Faz uma predição em uma imagem sem rótulo
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Grava uma linha "class x_center y_center width height" por objeto, normalizada de 0 a 1
label_file = result.save_txt("bus.txt")
# Imprime os rótulos preliminares que um anotador vai revisar
print(Path(label_file).read_text())Cada linha impressa contém um índice de classe do COCO seguido pelo centro, a largura e a altura da caixa como frações do tamanho da imagem: o formato de rótulos YOLO, que o treinamento lê diretamente depois que um anotador corrige as caixas erradas ou ausentes.
Qualidade dos rótulos#
Um modelo não pode ser mais consistente do que seus rótulos, e erros são comuns até mesmo em conjuntos de dados famosos. Um estudo de erros de rotulagem em 10 benchmarks amplamente usados estimou que, em média, pelo menos 3.3% dos rótulos de teste estão errados, incluindo pelo menos 6% do conjunto de validação do ImageNet. As equipes identificam erros com várias verificações padrão:
- Perguntas de controle: Itens com respostas conhecidas, inseridos na fila de cada rotulador para medir sua precisão, geralmente extraídos de um conjunto de dados de referência.
- Rotulagem sobreposta: Dois ou mais anotadores rotulam os mesmos itens, e o nível de concordância é calculado usando o kappa de Cohen para rótulos de classe ou a interseção sobre união (IoU) entre suas caixas e máscaras.
- Auditoria baseada em modelo: Um modelo treinado sinaliza rótulos com os quais discorda fortemente, e ferramentas como o cleanlab classificam os erros de rotulagem mais prováveis para revisão humana.
Rotulagem de dados e termos relacionados#
- Anotação de dados: Um sinônimo. As equipes de visão computacional costumam usar o termo anotação para geometrias desenhadas, como caixas e máscaras.
- Aprendizagem semissupervisionada: Um modelo rotula os próprios dados sem rótulos e mantém suas próprias predições confiáveis como pseudorrótulos, sem revisão humana.
- Aprendizagem ativa: Decide quais itens as pessoas vão rotular em seguida, geralmente aqueles sobre os quais o modelo atual tem mais incerteza.
- Limpeza de dados: Corrige problemas em um conjunto de dados, como duplicatas, arquivos corrompidos e formatos inconsistentes, incluindo rótulos incorretos encontrados após a rotulagem.
- Dados sintéticos: Imagens renderizadas ou geradas cujos rótulos são fornecidos gratuitamente pelo gerador, pois o layout da cena é conhecido com exatidão, ao custo de uma diferença entre imagens sintéticas e reais.










