  Recognition of facial expression is a challenge when it comes to computer
vision. The primary reasons are class imbalance due to data collection and
uncertainty due to inherent noise such as fuzzy facial expressions and
inconsistent labels. However, current research has focused either on the
problem of class imbalance or on the problem of uncertainty, ignoring the
intersection of how to address these two problems. Therefore, in this paper, we
propose a framework based on Resnet and Attention to solve the above problems.
We design weight for each class. Through the penalty mechanism, our model will
pay more attention to the learning of small samples during training, and the
resulting decrease in model accuracy can be improved by a Convolutional Block
Attention Module (CBAM). Meanwhile, our backbone network will also learn an
uncertain feature for each sample. By mixing uncertain features between
samples, the model can better learn those features that can be used for
classification, thus suppressing uncertainty. Experiments show that our method
surpasses most basic methods in terms of accuracy on facial expression data
sets (e.g., AffectNet, RAF-DB), and it also solves the problem of class
imbalance well.
