Aprendizagem por transferência
Desbloqueie o poder da aprendizagem por transferência para poupar tempo, aumentar o desempenho da IA e lidar com novas tarefas com dados limitados utilizando modelos pré-treinados.
A aprendizagem por transferência é uma técnica de aprendizagem automática (ML) em que um modelo desenvolvido para uma tarefa é reutilizado como ponto de partida para um modelo numa segunda tarefa relacionada. Em vez de construir um modelo de raiz, o que requer uma grande quantidade de dados e recursos computacionais, a aprendizagem por transferência aproveita o conhecimento - como caraterísticas, pesos e padrões - aprendido numa tarefa de origem. Esta abordagem é altamente eficiente e tornou-se uma pedra angular da aprendizagem profunda moderna, especialmente na visão computacional (CV). Ao utilizar um modelo pré-treinado, os programadores podem obter um desempenho superior com muito menos dados e tempos de formação mais curtos.
Como funciona a aprendizagem por transferência
A ideia central da aprendizagem por transferência é que um modelo treinado num conjunto de dados grande e geral, como o ImageNet para classificação de imagens, já aprendeu a reconhecer caraterísticas universais como arestas, texturas e formas. Este conhecimento fundamental é armazenado nas camadas iniciais do modelo, frequentemente designadas por espinha dorsal.
O processo envolve normalmente duas etapas principais:
- Começar com um modelo pré-treinado: É selecionado um modelo que tenha sido previamente treinado num grande conjunto de dados de referência. Por exemplo, a maioria dos modelos Ultralytics YOLO vem com pesos pré-treinados no conjunto de dados COCO. Estes modelos já possuem uma compreensão sólida das caraterísticas gerais dos objectos.
- Ajuste fino: O modelo pré-treinado é então adaptado a uma tarefa nova e específica. Esta adaptação, conhecida como ajuste fino, envolve o treino adicional do modelo num conjunto de dados mais pequeno e específico da tarefa. Durante esta fase, a taxa de aprendizagem é normalmente mantida baixa para efetuar pequenos ajustes nos pesos do modelo sem perder as valiosas caraterísticas pré-aprendidas. Para um guia detalhado, pode consultar o tutorial PyTorch sobre aprendizagem por transferência.
Aplicações no mundo real
A aprendizagem por transferência não é apenas um conceito teórico; tem aplicações práticas em muitos sectores.
- Análise de imagens médicas: Um modelo pode ser pré-treinado no conjunto de dados geral ImageNet e depois aperfeiçoado para detetar anomalias específicas, como tumores cerebrais em exames de ressonância magnética. Uma vez que os dados médicos rotulados são muitas vezes escassos e dispendiosos de obter, a aprendizagem por transferência permite a criação de ferramentas de diagnóstico exactas sem necessidade de milhões de imagens médicas. Para mais informações sobre este assunto, veja como a IA está a criar uma nova era de precisão na radiologia.
- Veículos autónomos: Um modelo de deteção de objectos pode ser pré-treinado num conjunto de dados maciço de imagens de estradas e depois afinado por um fabricante de automóveis específico para reconhecer modelos de veículos únicos ou funcionar em condições meteorológicas específicas. Isto tira partido do conhecimento existente sobre automóveis, peões e sinais, acelerando o desenvolvimento e melhorando a segurança.
Aprendizagem por transferência vs. conceitos relacionados
É importante distinguir a aprendizagem por transferência de outras técnicas de aprendizagem automática:
- Modelos de fundação: Trata-se de modelos de grande escala pré-treinados em grandes quantidades de dados, concebidos especificamente para serem adaptados a várias tarefas a jusante. A aprendizagem por transferência é o processo de adaptação destes modelos de base.
- Aprendizagem Zero-Shot: Esta técnica permite que um modelo reconheça classes que não viu durante o treino. Enquanto a aprendizagem por transferência adapta um modelo a uma nova tarefa com alguns dados novos, a aprendizagem zero-shot tem como objetivo a generalização sem quaisquer exemplos das novas classes. O nosso guia sobre a Aprendizagem de poucas tentativas, zero tentativas e transferência explica estas diferenças com mais pormenor.
- Destilação do conhecimento: Trata-se de treinar um modelo mais pequeno de "aluno" para imitar o comportamento de um modelo maior de "professor" para obter eficiência. A aprendizagem por transferência centra-se na adaptação do conhecimento de uma tarefa para outra, enquanto a destilação se centra na compressão do conhecimento dentro da mesma tarefa.
Ferramentas e estruturas
A aplicação da aprendizagem por transferência é acessível através de várias ferramentas e plataformas. Estruturas como o PyTorch e o TensorFlow fornecem documentação extensa e modelos pré-treinados. Plataformas como o Ultralytics HUB simplificam todo o fluxo de trabalho, permitindo que os utilizadores carreguem facilmente modelos pré-treinados como o YOLOv8 e o YOLO11, efectuem formação personalizada em novos conjuntos de dados e gerem a implementação de modelos. Para uma compreensão teórica mais profunda, recursos como a visão geral do Stanford CS231n sobre aprendizagem por transferência são inestimáveis.