Transferência de aprendizado
Reutilizar uma rede pré-treinada em vez de começar do zero: sonda linear, ajuste fino, congelamento correto da BatchNorm e escolha de acordo com seus dados.
Transferência de aprendizado
Você tem oitocentas fotos rotuladas e um problema de classificação para resolver. O capítulo 2 estabeleceu o que acontece se você treinar uma rede profunda do zero: ela memorizará suas oitocentas imagens e não generalizará. O capítulo 3 mostrou que as arquiteturas de visão sérias têm dezenas de milhões de parâmetros. Oitocentos exemplos para dez milhões de parâmetros é uma batalha perdida de antemão, e nenhuma regularização vai inverter essa proporção.
Existe, porém, uma saída, e ela é a prática normal da área — não um atalho de amador. Alguém já treinou uma rede em um milhão de imagens, pagou por milhares de horas de computação e publicou os pesos. Essa rede aprendeu a detectar contornos, texturas, padrões repetidos, formas compostas. Nada disso é específico das classes que ela precisava reconhecer: são os blocos elementares de qualquer imagem natural. Suas oitocentas fotos também são feitas deles.
A transferência de aprendizado consiste em recuperar esses blocos e aprender apenas a última etapa — a combinação que responde à sua pergunta. O número de parâmetros a estimar cai de dez milhões para alguns milhares, e oitocentos exemplos de repente bastam. O ganho é da mesma ordem que o da convolução sobre a camada densa: não se encontrou um algoritmo melhor, evitou-se reaprender o que já era conhecido.