Method and apparatus for multi-label class classification based on coarse-to-fine convolutional neural network
An apparatus for multi-label class classification based on a coarse-to-fine convolutional neural network includes: a processor; and a memory connected to the processor, in which the memory stores program instructions executed by the processor to generate a plurality of hierarchical structure based group labels for a plurality of classes to be classified by using a disjoint grouping method, predict classes which belong to the plurality of group labels, respectively among the plurality of classes by using a coarse-to-fine convolutional neural network including a main network and one or more subnetworks, complete learning of the coarse-to-fine convolutional network through the prediction, and classify one or more classes included in the image by receiving a feature map input from a last convolutional layer of the one or more subnetworks by the main network of the coarse-to-fine convolutional neural network of which learning is completed.
1 . An apparatus for multi-label class classification based on a coarse-to-fine convolutional neural network, the apparatus comprising:
a processor; and
a memory connected to the processor,
wherein the memory stores program instructions to train a coarse-to-fine convolutional neural network and to classify one or more classes in an input image using a trained coarse-to-fine convolutional neural network, the instructions executed by the processor to
generate a plurality of hierarchical structure based group labels for a plurality of classes to be classified by using a disjoint grouping method,
predict classes which belong to the plurality of group labels, respectively among the plurality of classes, by using the coarse-to-fine convolutional neural network including a main network and one or more subnetworks,
complete learning of the coarse-to-fine convolutional network through the prediction to produce the trained coarse-to-fine convolutional neural network, and
classify one or more classes included in the input image by receiving a feature map input from a last convolutional layer of the one or more subnetworks by the main network of the trained coarse-to-fine convolutional neural network;
wherein the main network comprises a refine convolutional layer configured to fuse a last feature map from each of the one or more subnetworks with a last feature map of the main network to generate a fused feature map for fine classification;
wherein the plurality of hierarchical structure based group labels are generated through class scores calculated using a basic convolutional neural network model pretrained for the plurality of respective classes;
wherein to generate the plurality of hierarchical structure based group labels comprises computing softmax-parameterized group assignment vectors satisfying orthogonality constraints and a group-balance normalization term based on the class scores;
wherein the plurality of classes are prevented from being unequally included in one of the plurality of groups included in a coarse label at a single level through group balance normalization; and
wherein the one or more subnetworks of the coarse-to-fine convolutional neural network are not pretrained.
2 . The apparatus for multi-label class classification of claim 1 , wherein the plurality of group labels includes a fine label and one or more coarse labels,
the fine label includes the plurality of classes in one group, and
the one or more coarse labels have different group numbers according to a higher level and a lower level.
3 . The apparatus for multi-label class classification of claim 2 , wherein-a higher-level coarse label has a smaller group number than a lower-level coarse label.
4 . The apparatus for multi-label class classification of claim 2 , wherein each of a plurality of groups included in a coarse label at a single level includes classes which are not duplicated with each other among the plurality of classes through group assignment vector orthogonal properties.
5 . The apparatus for multi-label class classification of claim 1 , wherein the main network includes a refine convolutional layer, and
the refine convolutional layer receives a feature map input in a last convolutional layer of the one or more subnetworks to classify one or more classes.
6 . The apparatus for multi-label class classification of claim 2 , wherein the one or more coarse labels include a first coarse label and a second coarse label of different levels, and
the one or more subnetworks include a first subnetwork that predicts a class included in the first coarse label and a second subnetwork that predicts a class included in the second coarse label.
7 . A method for multi-label class classification in an apparatus including a processor and a memory, the method comprising:
training a coarse-to-fine convolutional neural network by
generating a plurality of hierarchical structure based group labels for a plurality of classes to be classified by using a disjoint grouping method;
predicting classes which belong to the plurality of group labels, respectively among the plurality of classes by using a main network and one or more subnetworks of the coarse-to-fine convolutional neural network; and
completing learning of the coarse-to-fine convolutional network through the prediction to produce a trained coarse-to-fine convolutional neural network; and
classifying one or more classes in an input image using the trained coarse-to-fine convolutional neural network by
receiving a feature map input from a last convolutional layer of the one or more subnetworks by the main network of the trained coarse-to-fine convolutional neural network,
wherein the main network comprises a refine convolutional layer configured to fuse a last feature map from each of the one or more subnetworks with a last feature map of the main network to generate a fused feature map for fine classification;
wherein the plurality of hierarchical structure based group labels are generated through class scores calculated using a basic convolutional neural network model pretrained for the plurality of respective classes;
wherein generating the plurality of hierarchical structure based group labels comprises computing softmax-parameterized group assignment vectors satisfying orthogonality constraints and a group-balance normalization term based on the class scores;
wherein the plurality of classes are prevented from being unequally included in one of the plurality of groups included in a coarse label at a single level through group balance normalization; and
wherein the one or more subnetworks of the coarse-to-fine convolutional neural network are not pretrained.