Glossário

Afinação

Afina modelos de aprendizagem automática como Ultralytics YOLO para tarefas específicas. Aprende métodos, aplicações e melhores práticas aqui!

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

O ajuste fino é uma técnica popular na aprendizagem automática (ML) que envolve a utilização de um modelo já treinado num grande conjunto de dados (um modelo pré-treinado) e o seu posterior treino num conjunto de dados mais pequeno e específico, relevante para uma determinada tarefa. Esta abordagem aproveita o conhecimento geral adquirido pelo modelo durante a sua formação inicial, adaptando-o para se destacar num domínio mais especializado, sem necessidade de formar um modelo de raiz. Isto poupa tempo e recursos computacionais significativos, tornando-a uma prática comum em domínios como a visão computacional (CV) e o processamento de linguagem natural (PNL). Estruturas como PyTorch e TensorFlow fornecem as ferramentas necessárias para implementar o ajuste fino.

Como funciona o ajuste fino

Normalmente, o processo começa com a seleção de um modelo pré-treinado, como um modelo Ultralytics YOLO da Ultralytics treinado num vasto conjunto de dados como o COCO ou o ImageNet. Estes modelos, frequentemente Redes Neuronais Convolucionais (CNNs) para visão ou Transformers para PNL, já aprenderam a reconhecer caraterísticas gerais a partir dos seus dados de treino iniciais. Durante o ajuste fino, os pesos do modelo - parâmetrosaprendidos durante o treino - são ajustados com base no novo e mais pequeno conjunto de dados. Muitas vezes, as camadas iniciais da rede (que aprendem caraterísticas gerais, como bordas ou texturas) são mantidas "congeladas" (seus pesos não são atualizados), enquanto as camadas posteriores, mais específicas da tarefa, são retreinadas. Esse retreinamento geralmente envolve o uso de uma taxa de aprendizado menor do que a usada no treinamento original para fazer ajustes menores nos pesos, preservando o conhecimento aprendido anteriormente enquanto se adapta às nuances da nova tarefa. Podes encontrar mais detalhes sobre a mecânica em recursos como o curso fast.ai.

Porquê utilizar o ajuste fino?

O ajuste fino oferece várias vantagens importantes:

  • Redução do tempo de formação: Começar com um modelo pré-treinado reduz significativamente o tempo necessário em comparação com a formação de raiz, uma vez que o modelo já compreende os padrões básicos.
  • Requisitos de dados mais baixos: O ajuste fino pode muitas vezes alcançar bons resultados mesmo com dados limitados específicos da tarefa, uma vez que se baseia no conhecimento extenso obtido a partir do grande conjunto de dados inicial. Plataformas como o Kaggle organizam frequentemente competições em que o ajuste fino é uma estratégia fundamental.
  • Desempenho melhorado: Ao aproveitar as caraterísticas aprendidas em grandes conjuntos de dados, o ajuste fino pode levar a uma maior precisão e melhor generalização na tarefa alvo, especialmente quando o conjunto de dados alvo é pequeno.
  • Acessibilidade: Torna os modelos mais avançados acessíveis aos profissionais que podem não ter os enormes recursos computacionais necessários para o pré-treino inicial. Hugging Face fornece um vasto repositório de modelos pré-treinados prontos para serem ajustados.

Explora outras sugestões de formação de modelos para otimizar o processo.

Afinação vs. Conceitos relacionados

É importante distinguir o ajuste fino de conceitos de ML semelhantes:

  • Aprendizagem por transferência: Este é um conceito amplo em que o conhecimento adquirido numa tarefa é aplicado a uma tarefa diferente mas relacionada. O ajuste fino é um método específico de aprendizagem por transferência em que os pesos de um modelo pré-treinado são treinados (ajustados) com base nos dados da nova tarefa. Outros métodos de aprendizagem por transferência podem envolver a utilização do modelo apenas para extração de caraterísticas. Aprende mais com recursos como o Curso de Aprendizagem Automática de Andrew Ng.
  • Extração de caraterísticas: Nesta abordagem, o modelo pré-treinado (muitas vezes com as suas camadas finais removidas) é utilizado como um extrator de caraterísticas fixo. Os resultados (caraterísticas) são então introduzidos num novo modelo, normalmente mais simples (como um SVM ou uma pequena rede neural), que é treinado de raiz no novo conjunto de dados. Ao contrário do ajuste fino, os pesos do modelo principal pré-treinado não são normalmente actualizados.
  • Ajuste de hiperparâmetros: Envolve encontrar o conjunto ideal de hiperparâmetros (por exemplo, taxa de aprendizagem, tamanho do lote, número de épocas, opções de arquitetura de rede) antes do início do processo de treinamento ou ajuste fino. Otimiza a configuração do processo de aprendizagem, enquanto o ajuste fino otimiza os pesos do modelo com base nos dados. Ferramentas como o Ultralytics Tuner automatizam as pesquisas de hiperparâmetros.

Aplicações no mundo real

O ajuste fino é amplamente utilizado em vários domínios:

  • Análise de imagens médicas: Um modelo de visão pré-treinado no ImageNet pode ser afinado num conjunto de dados mais pequeno de raios X ou tomografias computorizadas para detetar condições específicas como pneumonia ou tumores cerebrais. Isto aproveita a capacidade aprendida do modelo para reconhecer formas e texturas para diagnóstico médico. A investigação nesta área é frequentemente publicada em plataformas como o arXiv.
  • Deteção especializada de objectos: Um detetor de objectos geral como o YOLO, pré-treinado em COCO, pode ser aperfeiçoado para identificar itens específicos em ambientes de nicho, como tipos particulares de defeitos em IA no controlo de qualidade de fabrico, ou espécies animais específicas para a conservação da vida selvagem.
  • Chatbots personalizados e análise de texto: Os modelos linguísticos de grande dimensão, como o BERT (explicado no blogue de IAGoogle ) ou o GPT-3 da OpenAI, podem ser aperfeiçoados em documentos específicos de uma empresa ou em registos de serviços de apoio ao cliente para criar sistemas especializados de resposta a perguntas ou efetuar uma análise de sentimentos altamente precisa para sectores específicos. O Stanford NLP Group é um dos principais contribuintes para a investigação em PNL.

Explora mais aplicações na comunidade de visão computacional.

Afinação dos modelosYOLO Ultralytics

Ultralytics fornece um suporte robusto para o ajuste fino dos seus modelos YOLO . Os utilizadores podem facilmente carregar pesos pré-treinados (por exemplo, de modelos treinados em COCO) e continuar a treinar no seu próprio conjunto de dados personalizado para tarefas como deteção, segmentação ou classificação. A documentaçãoUltralytics oferece guias detalhados sobre o processo de treino, permitindo aos utilizadores adaptar modelos de última geração como o YOLO11 para os seus desafios específicos de visão computacional. Plataformas como o Ultralytics HUB simplificam ainda mais o processo de treinamento personalizado. Esta adaptabilidade é fundamental para alcançar um desempenho ótimo em diversas aplicações, desde a IA na agricultura à robótica. Podes encontrar mais informações sobre técnicas de aprendizagem por transferência em plataformas educativas como a Especialização em Aprendizagem Profunda do Coursera e em sites como o Papers with Code ou o Distill.pub para obteres informações de investigação.

Lê tudo