[Aprendizaje de literatura] Transferencia de conocimiento grupal: aprendizaje federado de grandes CNN en el borde

        Para abordar la realidad de las limitaciones de recursos en los dispositivos de borde, este documento redefine FL como un algoritmo de entrenamiento de transferencia de conocimiento grupal llamado FedGKT. FedGKT diseñó una variante del método de minimización alterna para entrenar una pequeña CNN en nodos de borde y transferir periódicamente su conocimiento a una gran CNN del lado del servidor a través de la destilación de conocimiento.

        Reduce la necesidad de computación perimetral, reduce el ancho de banda de comunicación de las grandes CNN y entrena de forma asíncrona mientras mantiene una precisión del modelo comparable a FedAvg. Los resultados muestran que FedGKT puede lograr una precisión comparable o incluso ligeramente mayor que FedAvg. Además, FedGKT hace que la formación avanzada sea asequible. En comparación con el entrenamiento perimetral con FedAvg, FedGKT requiere de 9 a 17 veces menos potencia informática (FLOP) en los dispositivos perimetrales y de 54 a 105 veces menos parámetros en las CNN perimetrales.


        FedGKT puede transferir conocimiento desde muchas CNN compactas capacitadas en el perímetro a grandes CNN capacitadas en servidores en la nube. La esencia de FedGKT es redefinir FL como un método de minimización alternativo (AM), que optimiza dos variables aleatorias (modelo de borde y modelo de servidor) fijando alternativamente una variable aleatoria y optimizando la otra variable aleatoria.

        En general, podemos formular el aprendizaje federado basado en CNN como un problema de optimización distribuida:

         Los autores señalan que el principal inconveniente de los métodos de optimización federados existentes radica en la falta de aceleradores de GPU y memoria suficiente para entrenar CNN grandes en dispositivos de borde con recursos limitados.


        Para abordar las limitaciones de recursos en FL existente, considere otro enfoque para resolver el problema de FL: dividir los pesos W en un pequeño extractor de características We y un modelo Ws del lado del servidor a gran escala. También agregamos un clasificador Wc a We para crear un modelo pequeño pero completamente entrenable en el margen. Por lo tanto, reformulamos la optimización del modelo global único como un problema de optimización no convexo que requiere que resolvamos tanto el modelo de servidor Fs como el modelo de borde Fc .

         Note que la Ecuación 5 puede ser resuelta independientemente por el cliente. Para un entrenamiento CNN grande, el ancho de banda de comunicación para transferir H^(k)_i al servidor es mucho más pequeño que el ancho de banda para comunicar todos los parámetros del modelo en el aprendizaje federado tradicional. No entendí estas fórmulas al principio, creo que debe analizarse en combinación con la siguiente figura:

         El cambio de la fórmula 4 a la fórmula 5 es en realidad otra forma de decirlo, la primera se describe mediante f y la segunda mediante fc. El modelo de servidor fs usa H(k)i como características de entrada para el entrenamiento.

        Una ventaja central de la reforma anterior es que el entrenamiento marginal es asequible cuando asumimos que el tamaño del modelo de f(k) es mucho más pequeño que fs.

        Intuitivamente, el conocimiento transferido desde el modelo de servidor puede facilitar la optimización en el borde (Ec. (5)). Un servidor CNN absorbe conocimiento de varios bordes, y un solo borde CNN obtiene conocimiento mejorado de un servidor CNN:

         Aquí se utiliza la divergencia KL (D_KL). ls y lc son las predicciones probabilísticas del modelo de borde f(k) y el modelo de servidor fs, respectivamente. zs y z(k)c son la salida de la última capa completamente conectada en el modelo de servidor y el modelo de cliente, respectivamente. El siguiente artículo propone una variante de Minimización alternante (MA) para resolver el problema de optimización reformulado:

         (¿Por qué hay una k en el segundo parámetro de entrada de (8)?)

        El superíndice * en la ecuación anterior indica que las variables aleatorias relevantes se fijan durante el proceso de optimización. W(k) es una combinación de W(k)e y W(k)c.

        En (8), fijamos W(k) y optimizamos (entrenamos) W s durante unos pocos ciclos, luego cambiamos a (10) para fijar W s y optimizar W(k) durante unos pocos ciclos. Esta optimización se realiza en muchas rondas entre las ecuaciones (8) y (10) hasta alcanzar un estado de convergencia.

 

Supongo que te gusta

Origin blog.csdn.net/m0_51562349/article/details/128268828
Recomendado
Clasificación