Assume a teacher model and a student model. Teacher is bigger than student in terms of depth and/or width, however, comes from the same "family". In addition to the loss that involves the ground-truth labels, I also want to distill intermediate output feature maps. Assume an intermediate feature map of a teacher of shape [teacher_c,h,w] and a feature map of the student [student_c,h,w] , what's the best way to distill different number of channels given same feature map resolution? If channels were the same, we could use L2 or something else, but this is not the case here. One option can be to avg pool to [h,w] , then L2, but that loses a lot of info. Another option is pair-wise L2, normalized: L2 between pairs of teacher<>student channels (basically teacher_c_i*student_c_j MSE of feature-maps. Any other suggestions?

Full article content could not be extracted automatically. Read the original below.