Modelos sofisticados de aprendizado profundo têm milhões de parâmetros (pesos) e treiná-los do zero geralmente requer grandes quantidades de dados e recursos de computação. O aprendizado por transferência é uma técnica que reduz muito isso, pegando um pedaço de um modelo que já foi treinado em uma tarefa relacionada e reutilizando-o em um novo modelo.
Por exemplo, o próximo tutorial nesta seção mostrará como criar seu próprio reconhecedor de imagem que tira proveito de um modelo que já foi treinado para reconhecer milhares de tipos diferentes de objetos em imagens. Você pode adaptar o conhecimento existente no modelo pré-treinado para detectar suas próprias classes de imagem usando muito menos dados de treinamento do que o modelo original necessário.
Isso é útil para desenvolver rapidamente novos modelos, bem como personalizar modelos em ambientes com recursos limitados, como navegadores e dispositivos móveis.
Na maioria das vezes, ao fazer o aprendizado por transferência, não ajustamos os pesos do modelo original. Em vez disso, removemos a camada final e treinamos um novo modelo (geralmente bastante raso) sobre a saída do modelo truncado. Esta é a técnica que você verá demonstrada nos tutoriais desta seção:
- Crie um classificador de imagens baseado em aprendizado de transferência
- Crie um reconhecedor de áudio baseado em aprendizado de transferência
Para obter um exemplo adicional de aprendizagem por transferência usando TensorFlow.js, consulte Usar um modelo pré-treinado .