Active Learning
A aprendizagem ativa permite que um modelo escolha as amostras sem rótulos que as pessoas devem rotular a seguir, alcançando uma acurácia-alvo com menos rótulos. Estratégias de consulta e código.
O aprendizado ativo é uma abordagem de aprendizado de máquina em que o modelo escolhe quais exemplos sem rótulo uma pessoa deve rotular em seguida. Em vez de rotular uma amostra aleatória dos dados, uma equipe treina um modelo com um pequeno conjunto rotulado, usa-o para pontuar um grande conjunto de exemplos sem rótulo, envia os mais informativos para anotação, treina novamente com o conjunto ampliado e repete o processo. A pessoa que fornece os rótulos é chamada de oráculo. O objetivo é alcançar uma acurácia desejada com o menor número possível de rótulos, o que é especialmente importante quando a rotulagem exige especialistas, como radiologistas analisando exames, ou quando o conjunto é grande demais para ser rotulado por completo, como os vídeos que uma frota de veículos autônomos grava todos os dias.
Como funciona o ciclo de aprendizado ativo#
Os projetos de visão computacional geralmente usam aprendizado ativo baseado em pool, em que uma coleção fixa de imagens sem rótulo aguarda a pontuação. Cada rodada tem quatro etapas:
- Treinar: Ajuste um modelo, como um modelo de detecção de objetos, com os exemplos rotulados coletados até o momento.
- Pontuar: Execute o modelo no conjunto sem rótulo e atribua a cada exemplo uma pontuação de informatividade.
- Consultar: Envie o lote com as maiores pontuações aos anotadores para rotulagem de dados.
- Atualizar: Adicione os novos rótulos aos dados de treinamento e treine novamente.
O ciclo termina quando o orçamento de rotulagem se esgota ou quando a acurácia em um conjunto de validação fixo deixa de melhorar. Comparar cada rodada com um modelo treinado com a mesma quantidade de rótulos escolhidos aleatoriamente mostra se a seleção está ajudando.
Estratégias de consulta#
A estratégia de consulta define o que é considerado informativo:
- Amostragem por incerteza: Seleciona os exemplos sobre os quais o modelo tem menos certeza, identificados pela menor confiança atribuída à classe mais provável, pela menor margem entre as duas classes com maior pontuação ou pela maior entropia da distribuição das classes previstas.
- Consulta por comitê: Treina vários modelos e seleciona os exemplos sobre os quais eles mais discordam. O dropout de Monte Carlo cria um comitê econômico a partir de uma única rede.
- Amostragem por diversidade: Seleciona exemplos que cobrem o espaço de embeddings, evitando que um lote fique cheio de quase duplicatas, como quadros consecutivos de um vídeo. A abordagem core-set formula a seleção de lotes dessa maneira, após constatar que muitas heurísticas de incerteza não eram eficazes para CNNs nesse contexto.
- Estratégias híbridas: Combinam os dois sinais. O BADGE seleciona exemplos que são ao mesmo tempo incertos e diversos em um espaço de embeddings de gradiente, sem pesos ajustados manualmente.
Os detectores produzem muitas caixas por imagem, então as pontuações das caixas precisam ser combinadas em uma única pontuação por imagem, por exemplo, calculando a média da confiança de cada detecção. O script abaixo classifica um pequeno conjunto pela confiança média das detecções com um modelo YOLO26 pré-treinado e consulta primeiro a imagem com menor confiança:
from ultralytics import YOLO
# Model trained on the current labeled set
model = YOLO("yolo26n.pt")
# Unlabeled pool, usually thousands of images
pool = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
results = model(pool, conf=0.1)
# Least-confidence sampling: score each image by its mean detection confidence
scores = {}
for image, result in zip(pool, results):
if len(result.boxes):
scores[image] = result.boxes.conf.mean().item()
# Query the lowest-scoring images first, within a labeling budget of one image
query = sorted(scores, key=scores.get)[:1]
print(f"Label next: {query}")O baixo limite de conf=0.1 mantém as detecções fracas na pontuação, pois são as caixas sobre as quais o modelo tem dúvidas. O editor de anotações da Ultralytics Platform completa o restante do ciclo: o modo Smart carrega seus próprios modelos YOLO ajustados, para que cada modelo treinado novamente pré-rotule o próximo lote consultado para que os anotadores o corrijam.
Armadilhas práticas#
- Arranque a frio: as pontuações de incerteza de um modelo treinado com algumas dezenas de exemplos não são confiáveis, por isso as primeiras rodadas costumam usar seleção aleatória ou baseada em diversidade. Os modelos de visão e linguagem também podem pré-rotular um primeiro lote usando apenas nomes de classes, e o VLM Leaderboard compara a precisão com que anotam conjuntos de dados de detecção do mundo real.
- Lotes redundantes: Selecionar de forma independente as k imagens mais incertas tende a gerar grupos de imagens quase idênticas — problema que as estratégias de diversidade e híbridas procuram resolver.
- Viés de amostragem: O conjunto rotulado se afasta da distribuição real dos dados porque representa em excesso os casos difíceis. Por isso, os conjuntos de validação e teste são selecionados aleatoriamente do conjunto completo para manter suas pontuações imparciais.
- Valores atípicos: Imagens corrompidas, desfocadas ou fora do domínio parecem incertas para todos os modelos e podem desperdiçar o orçamento de rotulagem se não forem filtradas.
Aprendizado ativo e termos relacionados#
- Aprendizado semissupervisionado: Também usa dados sem rótulo, mas o modelo atribui pseudorrótulos às próprias previsões confiantes, em vez de perguntar a alguém sobre as previsões incertas. As duas abordagens costumam ser combinadas.
- Aprendizado curricular: Ordena os exemplos já rotulados do mais fácil ao mais difícil durante o treinamento. O aprendizado ativo decide quais exemplos serão rotulados.
- Mineração de negativos difíceis: Seleciona os exemplos negativos rotulados que o modelo classifica com maior erro e os usa mais no treinamento. Funciona com rótulos existentes e não adiciona novos.
- Volante de dados: Ciclo de produção em que modelos implantados revelam novos dados que aprimoram o próximo modelo. O aprendizado ativo é uma etapa de seleção comum nesse ciclo.










