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 aprendido 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, poupando tempo e recursos computacionais significativos. É uma prática comum em domínios como a visão por computador (CV) e o processamento de linguagem natural (PNL).
Como funciona o ajuste fino
Normalmente, o processo começa com a seleção de um modelo pré-treinado, como um modelo Ultralytics YOLO treinado em um conjunto de dados amplo como o COCO. Estes modelos já aprenderam a reconhecer caraterísticas gerais a partir dos seus dados de treino iniciais. Durante o ajuste fino, os pesos do modelo são ajustados com base no novo e menor conjunto de dados. Muitas vezes, as camadas iniciais da rede (que aprendem caraterísticas gerais) são mantidas "congeladas" (os seus pesos não são actualizados), enquanto as camadas posteriores, mais específicas da tarefa, são treinadas de novo. 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.
Afinação vs. Conceitos relacionados
É importante distinguir o ajuste fino de conceitos de ML semelhantes:
- Aprendizagem por transferência: O ajuste fino é um método específico dentro da categoria mais ampla de aprendizagem por transferência. A aprendizagem por transferência engloba qualquer técnica em que um modelo desenvolvido para uma tarefa é reutilizado como ponto de partida para um modelo numa segunda tarefa. Enquanto o ajuste fino ajusta os pesos do modelo pré-treinado, outras abordagens de aprendizagem por transferência podem utilizar o modelo pré-treinado apenas como um extrator de caraterísticas fixo.
- Treina a partir do zero: Isto envolve inicializar os pesos de um modelo aleatoriamente e treiná-lo apenas no conjunto de dados alvo. Requer significativamente mais dados e poder computacional em comparação com o ajuste fino e muitas vezes não tem um desempenho tão bom em conjuntos de dados menores, pois não tem a base de conhecimento geral de um modelo pré-treinado. Podes encontrar orientações sobre dicas de treino de modelos na nossa documentação.
- Afinação de hiperparâmetros: Este processo centra-se em encontrar as definições de configuração ideais (hiperparâmetros como a taxa de aprendizagem, o tamanho do lote, a escolha do optimizador) antes do início do processo de formação. O ajuste fino, por outro lado, faz parte do próprio processo de treinamento, ajustando os parâmetros internos do modelo (pesos) com base em novos dados. Ferramentas como o Ultralytics Tuner automatizam a otimização dos hiperparâmetros.
Porquê utilizar o ajuste fino?
O ajuste fino oferece várias vantagens:
- Reduz o tempo de formação: Aproveita o conhecimento existente, exigindo menos épocas de treinamento.
- Requer menos dados: Eficaz mesmo com conjuntos de dados mais pequenos e específicos da tarefa, porque o modelo não está a aprender tudo do zero.
- Desempenho melhorado: Consegue frequentemente uma maior precisão em tarefas especializadas em comparação com modelos treinados de raiz com dados limitados.
- Acesso a arquiteturas de última geração: Permite que os utilizadores utilizem modelos poderosos e complexos, como Transformers ou CNNs avançados, sem necessitarem dos enormes recursos necessários para a pré-treino inicial.
Aplicações no mundo real
O ajuste fino é amplamente utilizado em vários domínios:
- Deteção especializada de objectos: Um modeloYOLO Ultralytics pré-treinado para deteção geral de objectos pode ser afinado utilizando um conjunto de dados personalizado de peças industriais específicas para criar um sistema de deteção de defeitos de elevado desempenho para IA no fabrico. Da mesma forma, pode ser ajustado para análise de imagens médicas para detetar condições específicas, como tumores cerebrais. OUltralytics HUB fornece uma plataforma para gerir conjuntos de dados e simplificar este processo de formação personalizado.
- Tarefas de linguagem personalizadas: Um modelo de linguagem grande como o GPT-3, pré-treinado pela OpenAI em diversos textos da Internet, pode ser afinado num conjunto de dados de documentos jurídicos para melhorar o seu desempenho na sumarização de textos jurídicos ou em transcrições de atendimento ao cliente para respostas especializadas de chatbot. Outro exemplo envolve o aperfeiçoamento dos modelos BERT para tarefas específicas de análise de sentimentos em análises de produtos ou publicações em redes sociais, conforme descrito em recursos como o blogue de IAGoogle .
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 no ImageNet ou COCO) e continuar a treinar nos seus próprios conjuntos de dados 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. 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 o Coursera.