Me gustaría agregar a lo que ya se ha dicho que su pregunta toca una noción importante en el aprendizaje automático llamada aprendizaje de transferencia . En la práctica, muy pocas personas entrenan una red convolucional completa desde cero (con inicialización aleatoria), porque es lento y relativamente raro tener un conjunto de datos de tamaño suficiente.
Las ConvNets modernas tardan de 2 a 3 semanas en entrenarse en múltiples GPU en ImageNet. Por lo tanto, es común ver a las personas liberar sus puntos de control finales de ConvNet en beneficio de otros que pueden usar las redes para realizar ajustes. Por ejemplo, la biblioteca Caffe tiene un zoológico modelo donde las personas comparten sus pesos de red.
Cuando necesite un ConvNet para el reconocimiento de imágenes, sin importar cuál sea el dominio de su aplicación, debería considerar tomar una red existente, por ejemplo, VGGNet es una opción común.
Hay algunas cosas a tener en cuenta al realizar el aprendizaje de transferencia :
Restricciones de modelos preentrenados. Tenga en cuenta que si desea utilizar una red previamente capacitada, puede estar un poco limitado en términos de la arquitectura que puede utilizar para su nuevo conjunto de datos. Por ejemplo, no puede eliminar arbitrariamente las capas Conv de la red previamente entrenada. Sin embargo, algunos cambios son directos: debido al uso compartido de parámetros, puede ejecutar fácilmente una red previamente entrenada en imágenes de diferente tamaño espacial. Esto es claramente evidente en el caso de las capas Conv / Pool porque su función de avance es independiente del tamaño espacial del volumen de entrada (siempre y cuando las zancadas "encajen").
Tasas de aprendizaje. Es común usar una tasa de aprendizaje más pequeña para los pesos de ConvNet que se están ajustando, en comparación con los pesos (inicializados aleatoriamente) para el nuevo clasificador lineal que calcula los puntajes de clase de su nuevo conjunto de datos. Esto se debe a que esperamos que los pesos de ConvNet sean relativamente buenos, por lo que no deseamos distorsionarlos demasiado rápido y demasiado (especialmente mientras el nuevo Clasificador lineal por encima de ellos se está entrenando desde la inicialización aleatoria).
Referencia adicional si está interesado en este tema: ¿Qué tan transferibles son las características en las redes neuronales profundas?