Si este es solo un caso de una sola vez, simplemente puede volver a entrenar la red neuronal. Si con frecuencia tiene que agregar nuevas clases, esta es una mala idea. Lo que desea hacer en tales casos se llama recuperación de imágenes basada en contenido (CBIR), o simplemente recuperación de imágenes o búsqueda visual. Explicaré ambos casos en mi respuesta a continuación.
Caso de una sola vez
Si esto solo sucede una vez, usted olvidó la clase 11, o su cliente cambió de opinión, pero no volverá a suceder , entonces puede simplemente un 11 ° nodo de salida a la última capa. Inicialice los pesos de este nodo al azar, pero use los pesos que ya tiene para las otras salidas. Luego, solo entrena como de costumbre. Puede ser útil arreglar algunos pesos, es decir, no entrenarlos.
Un caso extremo sería entrenar solo los nuevos pesos y dejar todos los demás fijos. Pero no estoy seguro de si esto funcionará tan bien, podría valer la pena intentarlo.
Recuperación de imágenes basada en contenido.
Considere el siguiente ejemplo: está trabajando para una tienda de CD, que quiere que sus clientes puedan tomar una foto de la portada de un álbum, y la aplicación les muestra el CD que escanearon en su tienda en línea. En ese caso, tendría que volver a entrenar la red para cada nuevo CD que tengan en la tienda. Eso podría ser 5 nuevos CD cada día, por lo que volver a entrenar la red de esa manera no es adecuado.
La solución es entrenar una red, que mapea la imagen en un espacio de características. Cada imagen estará representada por un descriptor, que es, por ejemplo, un vector de 256 dimensiones. Puede "clasificar" una imagen calculando este descriptor y comparándolo con su base de datos de descriptores (es decir, los descriptores de todos los CD que tiene en su tienda). El descriptor más cercano en la base de datos gana.
¿Cómo se entrena una red neuronal para aprender un vector descriptor de este tipo? Ese es un campo activo de investigación. Puede encontrar trabajo reciente buscando palabras clave como "recuperación de imágenes" o "aprendizaje métrico".
En este momento, las personas generalmente toman una red pre-entrenada, por ejemplo, VGG-16, cortan las capas FC y usan la convolucional final como su vector descriptor. Puede entrenar aún más esta red, por ejemplo, utilizando una red siamesa con pérdida de triplete.