Facial Action Units (AUs) represent a set of facial muscle activation, where a number of AUs (more than 36) are defined by Facial Action Coding System (FACS). Based on the combinations of AUs, any possible facial expression can be described and further interpretations of, e.g., emotional and cognitive states be made. For this reason, the detection of facial AUs from face images is an important task in computer vision. However, the manual annotation of AUs is difficult, time-consuming and tedious task. Furthermore, to perform an objective and consistent labeling of AUs, the human experts with comprehensive understanding of AUs are needed, which is costly. Moreover, manual annotation of AUs does not scale well with large image datasets of human facial expressions, typically required for automated systems for facial expression analysis. Though there are several benchmark datasets with annotated AUs, such as DISFA[Mavadati2013IEEE], BP4D [Mavadati2013IEEE], CK+ [Lucey2010IEEE], and MMI [Pantic2005IEEE], the ultimate challenge arrives when faced with face images of new subjects and/or AUs that we wish to detect from their face images. Usually, an AU detection model is trained for a number of available AU annotations. However, these models do not generalize well when tested on new tasks such as new subjects nor can easily be adapted to new AUs, without a substantial number of ground truth labels. For instance, to tackle this, several unsupervised re-learning approaches (e.g., [Wen2017tpami, Can2018ACM]) transferred the salient information of a new subject to the trained model in order to have better prediction for a new subject. However, these approaches do not use any labeled data from the new task (subject), and they typically require a lot of data to adapt to a new task. Yet, in the real-life situations, the models that can easily and in a fast way to the new tasks are required. Another challenge for existing AU detection models is the imbalanced AU distribution. Many AUs have significantly more negative (no AU activation) than positive (where the target AU is active) training examples. This easily leads to highly biased models. More importantly, when the model needs be fine-tuned very quickly, its adaptation is even more challenging due to this inherent imbalanced in the AU data.
To tackle some of these challenges, this paper introduces a deep learning approach for AU detection that can easily be adapted to new tasks (AUs and/or subjects) using the notion of model-agnostic meta-learning [Finn2017ICML]. This approach is based on the few-shot learning paradigm, designed to perform an efficient model adaptation using only a few labelled examples of target tasks. This, in turn, can also be used to address the challenge of imbalanced AU data by providing a few examples of positive/negative class from the target tasks, which is typically not costly to obtain. The main contributions of this paper can be summarized as follows:
We propose a new approach for the AU detection where the model adaptation is performed using the notion of model-agnostic meta-learning. Since this approach uses only a few (balanced) shots of the target tasks during the model adaptation, it naturally handles the challenge of model training when faced with highly imbalanced data (as in the case of the AU activations).
The proposed deep model for the AU detection can easily be adapted to a new subject using only a few shots of target AUs of the target subject. The resulting personalized model for the AU detection largely outperforms the non-personalized model.
The proposed approach can easily be adapted for detection of AUs that were not used to train the model. This is achieved using only a few shots (the positive/negative examples) of the target AU in order to adapt the model parameters.
The adaptation to the new task in the proposed approach is very fast, as it does not require a heavy re-training of the deep network since only a few shots are used for adaptation to (subject) or learning of (AUs) the new task.
2 Related Work
This paper combines a deep facial AU detection model with the few-shot meta-learning for fast model adaptation [Finn2017ICML]. In this section, we briefly review several relevant works addressing these modeling tasks.
2.1 Facial Action Unit Detection Model
Most of the recent works on facial AU detection are based on deep convolutional networks. For instance, Wei et al. [Li2017ActionUD] leveraged an attention mechanism and combined with individual regions of interest (ROIs) cropping as well as the temporal information of expressions with several stacks of the LSTM models. Also, the multi-label learning enabled them to learn relationships between various AUs. [Zhiwen2018eccv] proposed JAA-Net, which jointly learned both the AU detection and the corresponding best face alignment for the AU, rather than fixing the alignment as a pre-processing step. Also, they defined ROIs of AUs by having AU-specific local and global feature extractors based on hierarchical and multi-scale region layers with Deep Region and Multi-label Learning (DRML) network proposed by [Zhao2016Deep] . All of these are jointly optimized to facilitate the discovery of the salient local features for the AU detection. Similarly, Wei et al. [Li2017EACNetAR] introduced Enhancing and Cropping (EAC) Net where E-net enhances ROIs of the facial landmark features with attention map and c-net. These are designed for the extraction of ”deeper” features using individual CNNs for each facial region through facial regions cropping around the detected landmarks. However, this approach has a limited generalization ability when applied to new subjects or a new AUs, which usually have data distributions different from the training set.
To tackle the challenges of the data distribution shift, several approaches us the models for domain adaptation and transfer learning. Can et al.[Can2018ACM] proposed a generative adversarial recognition network (GARN) which adapts the model from the source subjects to a target subject for personalized AU recognition in unsupervised way. Likewise, Wen et al. [Wen2017tpami] attempted to personalize the facial AU analysis based on SVMs. To match distribution between training and test subjects, [Wen2017tpami] used the re-sampled training data that are most similar in distribution with that of a new test subject, and those are used to re-train the target model in an unsupervised fashion. They alternated between decision function and the selection coefficient by translating the problem into a biconvex problem [Jochen2007biconvex]. Though both methods address the AU detection problem without any test label, this method requires a lot of time to re-learn the model for a specific test subject. [Can2018ACM]
confines their adaptation to the feature extraction level without using any labeled data and training again the feature extractor with a new subject. In[Zhang2018cvpr], the authors measure the discrepancy between a new subject and training subjects to find the most similar distribution, and then re-sample the most similar training subject in order to adapt their model to a new subject.
There have also been a few studies on learning the AU detection model without the AU annotations. For instance, in a recent work, [Zhang2018cvpr]
proposed a method that uses prior probabilities on AUs, obtained by leveraging the information about the facial anatomy and emotion expressions. Though they achieved competitive results compared to the supervised methods, their method needs auxiliary information to compensate for the lack of the annotated data. However, this model has a limitation in cases when we have no additional domain knowledge or we need to perform the model adaptation using only a few data examples.
Different from the approaches mentioned above, this paper investigates the fast model adaptation where the main assumption is that only a few labeled data is available for the target task. Here, a new AU as well as a new subject are regarded as a new task.
2.2 A Few-Shot Learning
Few-shot learning is a general modeling framework for fast learning from rarely labeled data. Considering the model is expected to learn and re as fast as possible, designing a model that can be rapidly updated with only few labeled data is essential. However, it is not easy to update the deep neural network with just few labeled samples for a new task since the number of labeled data is insufficient to fine-tune it, which makes the model still over-fitted to training tasks. To address this problem, many few-shot learning and even zero-shot learning studies such as[Lee2017MultilabelZL, Rios2018FewShotAZ, Arora:cvpr] have been introduced. Zero-shot learning does not use any labeled data for a new task but they requires side information such as relationship between seen and unseen task or attribute of each task. Thus, it is also challenging to make such a semantic knowledge as much as to label few samples.
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks (MAML) [Finn2017ICML] introduced a model which is ready to go for fast adaptation with just few labeled data based on gradient descent optimizer. MAML has the meta-learner who learns the differences across training tasks as well as the learner who learns and optimize each of tasks itself. Comparing other few-shot learning methods such as [Ravi2017OptimizationAA]
which needs additional network as LSTM to train a classifier or[Koch2015Siamese] which obtains feature embedding with Siamese network and add non-parametric method for a new task, MAML only need only one target network to train meta-learner and the learner as described in Figure 2. Any model network can be used the one and only backbone network, which makes it called model-agnostic.
on their Reinforcement Learning model in order to decide whether keeping estimation or asking new personalized labels from human annotator given a new subject. This paper improves the efficiency for the use of labeled data considering labeling cost.
As a meta-learning approach for the AU detection model, we adopt MAML [Finn2017ICML]. The main idea of MAML is to initialize the weights of deep networks so that it can be updated rapidly for a new task with just a few labeled samples. By adopting MAML, the goal is to find a model that can be adapted quickly to a new task which can be a new subject, a new AU, or both. The Sec. 3.1 describes the network architecture, and the Sec. 3.2 details how we apply the MAML to the AU detection model. Lastly, the Sec. 3.3 describes the baseline approach, i.e., when no benefit of meta-learning is made for adaptation.
3.1 Model Network
Before passing through our own network, input images are pre-processed with Deepfakes [deepfake] to extract and crop the face region. The proposed deep network applied to the pre-processed face images is illustrated in Figure 2
(a). The encoder consists of 4 modules with 64, 48, 32, and 16 filters of 5 convolutions, respectively, followed by the batch normalization, ReLU, and max-pooling layers. This is further followed by a fully-connected (FC) layer and a sigmoid function, used to train the detectors for the target AU. Note that the proposed detector is designed for detecting only one AU at the time, which is consequently adapted for the detection of a new target AU using the meta-learning as explained below.
3.2 Meta-Learned Facial AU Detection Model
Model-Agnostic Meta-Learning(MAML) [Finn2017ICML] is gradient-based meta-learning for multiple different tasks with few-shot learning. Figure 2 (b) illustrates the overall sequence of training our model based on MAML. Each task-specific model (light yellow network) is trained for each of training tasks, which corresponds to Alg. 1 (lines 7–11). Those per-task trained parameters are aggregated to train the meta-learned model which is the red network. This whole meta-learning procedure is from line 4–12 in Alg. 1. After having the optimal meta-learned model (red network), by adapting it to a new task, the new task-specific model (dark yellow network) is obtained. More detailed training and adaptation architecture can be found in Figure 3. Though we used a simple network depicted in Figure 2 (a), any model can be assembled in Figure 2 (b) sequence which is model-agnostic. In the following, we explain in more detail how the per-task learning and meta-learning are implemented.
3.2.1 Per-task Learning
Per-task learning can be seen as the traditional learning approach: choosing a backbone model for the target dataset, and training the model to be best fitted for each training task of the dataset. The difference with other methods is that we divide our training set into tasks according to a subject and AU, and train each of them separately as shown in Figure 3 (a) whereas other methods use the whole training set to train their model. Alg. 1 describes per-task learning in line 7 to 11. Given the objective function , the per-task loss is computed using , which denotes a batch of training data for task . Based on the obtained loss, the initial weight is updated into , which is the optimal learned weight for the target task .
Our goal is to learn the optimal meta-weight that can quickly be adapted to a new task in test time. To do so, in meta-learning phase, the model learns the discrepancy across all learned per-task models. Based on every optimal from per-task learning, the loss is re-computed. This is shown on line 10 of Alg. 1 and illustrated in Meta-update part of Figure 3 (a). To achieve this, we need another set of training data of each task, which is a disjoint set so that this another set can play a role of validation set for the new loss. It should be noted that this validation set is still from the same training task. We denote as training-validation set in each training task . The re-computed loss across all tasks is summed up and based on this total loss, we obtain the meta-updated .
Note that the goal of the training phase is to output that can be fast adapted to a new task, not to output for each of training tasks . In adaptation phase, initialized by the trained , the model can reach to the optimal quickly for a new task .
In summary, the model minimizes the discrepancy across different tasks with meta-learning as well as the individual loss for each task with per-task learning. Our model defines each AU and subject as a task. Thus, in training phase, it learns how to adapt fast across the different subjects and AUs. After then, given a new task with few labeled data, it can be rapidly customized to the new task. One notable part is that we have only one classifier for any AU as well as any subject. By having this architecture, 1) we can increase the number of tasks to learn the discrepancy, 2) the task distribution can have higher variance which makes the model learn meaningful diversity in terms of meta-learning, and 3) our model can be adapted fast both to new AU and new subject. The objective functionin Eq. 1 and 2 is cross-entropy loss for binary classification in our model.
To verify that the rapid and effective adaptation to a new task comes from the meta-learned knowledge, we need a baseline which has no ability of meta-perception. To make such a model, multi-tasks concept should be excluded in meta-update phase. In other words, the same network as ours but standard deep learning process with only one task. More importantly, since our model has only one classifier which can be adapted to any AU as well as any subject, the baseline should be also a model with just one classifier for all available tasks. However, existing approaches use a customized classifier for each AU, which makes them improper as the baseline for our adaptation setting. Thus, we build our own baseline model with one classifier for the whole training set without the task separation. We set a label as negative if none of training AUs is detected in the given sample, and positive otherwise. In other words, a sample is labeled as positive as long as at least one of AU is detected. After training, the same adaptation methodology as in our model is applied to the baseline for comparison.
4.1 Datasets and Tasks
We have evaluated our model on two benchmark facial AU datasets - DISFA [Mavadati2013IEEE] and BP4D [Mavadati2013IEEE].
This dataset consists of data of 41 subjects (23 females and 18 males). For each subject, there are 2-D and 3-D videos (we use only the former) of 8 sessions, where some of frames are positive or negative annotation per AU. The total number of valid frames with label is 140K. As in [Zhiwen2018eccv], [Li2017ActionUD], [Li2017EACNetAR], we also limited the number of AUs to 12 AUs consisting of AU1, AU2, AU4, AU6, AU7, AU10, AU12, AU14, AU15, AU17, AU23 and AU24.
This dataset consists of data of 27 subjects (12 females and 15 males). Each subject has a video of 4,845 frames where each of the frames has 0–5 intensity per AU. As in [Zhiwen2018eccv], [Li2017ActionUD], [Li2017EACNetAR], we also limited the number of AUs as 8 AUs consisting of AU1, AU2, AU4, AU6, AU9, AU12, AU25 and AU26. Since our model needs the balanced positive and negative sample ratio, in order to maximize positive labeled samples, any intensity larger than 0 is regarded as positive. We have conducted two experiments on DISFA. One is the standard setting as training with training set of DISFA followed by adapting and evaluating with test set of DISFA. Another is training with whole BP4D and then adapt and evaluate with DISFA in order to see how a new AU is rapidly learned in our model as well as to see more distinct subject-adaptation result.
In each dataset, combinations of the above elaborated subjects and AUs are regarded as a task in our model. For learning, it is crucial to have as many tasks as possible considering the meta-knowledge comes from learning discrepancy across different tasks. Thus, as in [Can2018ACM], by adopting leave-one-subject-out cross validation, we increased the number of tasks. Thus, in BP4D, we have 12 AUs 39 subjects = 468 different tasks in training. In DISFA, 8 AUs 26 = 208 tasks. And the last subject’s all AUs are adapted and evaluated per-task.
As described in Sec. 3.2, there are two learning stages: 1) training with sets and , and 2)adaptation with sets and , where denotes the labeled test data used to adapt to the test task, and denotes unlabeled data used for the model evaluation.
4.1.4 Per-task sampling
When sampling a set of batch data, it is crucial to keep balanced positive and negative pairs of samples in order to prevent biased learning, adaptation, and evaluation. However, as seen in Figure 1 (a), negative samples are dominant. To address this issue, we repeatedly used the positive samples with small batch size that comes from few-shot learning. During training, we need to select balanced N-positive and N-negative samples, denoted by (N+, N-). It is required to have one set of (N+, N-) for and another exclusive set of (N+, N-) for per one task, total 4N labeled samples. We set for training no matter how many few-shot learning we do during test phase since we can assume and indeed have enough labeled training data.
On the other hand, in adaptation phase, we only need one set of labeled samples (K+, K-) for since we do not have to do meta-update but only per-task update is required. Here, K varies depending on how many labeled data we can have for the given new task. Unlabeled test data is used to evaluate the performance after adaptation.
4.1.5 Balancing samples per-task
For some AUs, there are very few positive labels, which makes it difficult to create balanced pair when it is less than N or K. In such a case, we can think of two strategies - skip that task or replace the insufficient portion of positive samples with negative samples. For training phase, we adopt skipping the task. This is because 1) under the shot training, we miss only two tasks in BP4D and 13 tasks in DISFA from the total of 468 and 208 total tasks respectively, and 2) those skipped tasks can be learned and covered in some degree from another AU or subject. For instance, assume a task consisting of AU1 and subject 1 is omitted. Though AU1 is missed out of subject 1, our model can still exploit the data of other subjects’ AU1 properties. Also, the subject 1’s personalized features could be achieved from other tasks (subject 1 but other AUs combination). In test time, however, the lack of positive samples are filled with negative samples since there is no other task but the target task. For example, each of and have ((K-m)+, (K+m)-) pair when only K-m, which is less than K, positive samples are available.
4.2 Experimental Setting
4.2.1 Implementation Details
When we apply meta-update to compute , we need to aggregate all different tasks, where the number of tasks should be concerned. We chose 12 tasks for BP4D and 8 tasks for DISFA. This number is set according to the total number of AUs in each dataset, as described in Sec. 4.1. We implemented our experiments with , or shot learning. In other words, we adapt our trained model with 1-shot (1+, 1-) or 5-shot (5+,5-) samples of a new task in test time, as these are easy to obtain in the real-world settings. Adam optimizer was used with learning rate 0.03 for both and in Alg. 1
4.2.2 Evaluation Method
As described in Sec. 4.2, a set of few-shot samples is used for adaptation. After that, we evaluate the adapted model with another balanced set , which consists of 10 positive and 10 negative samples (used only for the model evaluation). We repeat this K-shot adaptation and 10-shot evaluation for 500 times and average all results. If
cannot be formulated in completely balanced way because of lack of positive samples, we replace the deficient positive samples with negative samples as described in Sec. 4.2. Since we use a balanced set for evaluation, we report accuracy as our evaluation metric.
4.3 Adaptation to New Subjects - Personalisation
For a new subject as a new task, while all AUs are used during training, we can regard our model as a personalized model since it is adapted and optimized for the newly given subject. The performance on BP4D dataset is shown in Table 1. During training, all BP4D subjects except for one subject is trained. And then in adaptation, the one left BP4D subject is tested. After this leave-one-subject-out experiment is done for every subject, results are averaged across all the subjects per each AU. Table 2 shows the result of DISFA dataset with the same protocol as in BP4D. The corresponding graph of each dataset can be checked in Figure 4 (a). On average, our model outperforms the baseline in both 1-shot and 5-shot learning for each of two datasets, as expected. One notable part is that by increasing the number of test samples from 1-shot to 5-shot, the gap between ours and baseline becomes more significant. In other words, as more samples are given, the more boosted meta-learned effects we can have. It can be interpreted as our model does know better than baseline on how well utilizing given labeled samples of a new task through the meta-learning knowledge. The same experiments but the result averaged across all AUs are shown in Figure 4 (b). For majority of subjects, our model achieves higher accuracy on averaged AU detection performance.
4.4 Adaptation to New AUs - Domain Adaptation
Even a completely new AU can quickly be learned with our meta-trained classifier since we treat an AU as a task in the training. We verified this by training the model with BP4D and adapting it with DISFA. AU9, 25, and 26, which exist only in DISFA not in BP4D, are used as a new AU in test time. As well as the performance of adaptation on new AU, this experiment can show how well our model can work for domain adaptation since we transfer our dataset from BP4D in training time into DISFA during test time. Both baseline and ours are trained with BP4D and then, 1 or 5-shot DISFA data is injected for adaptation. Since the whole DISFA dataset can be seen as a new task, all tasks from BP4D can be used during training. In other words, no leave-one-subject-out cross validation is needed as in Adaptation to New Subjects. Table 3 reports that ours outperforms baseline with the same pattern as in Adaptation to New Subjects where 5-shot shows more substantial difference with baseline than 1-shot.
To check the effects of domain adaptation (in our case, the cross-dataset adaptation), Figure 5 (a) illustrates comparison with DISFA-trained model of which training and test subject is from DISFA under leave-one-subject-out cross validation. For AU1, 2, and 4 which are co-existing AUs in both of datasets, our BP4D-trained model shows better accuracy than our DISFA-trained model. This is because BP4D has more training tasks than DISFA, from which our model can learn more meta-information in order to adapt well. For AU9, 25, and 26, which are new AUs to BP4D, our BP4D-trained model can achieve almost the same performance as our DISFA-trained model. In conclusion, considering average accuracy of our BP4D is same as that of our DISFA, our model outperforms in few-shot domain transfer learning. For some common AUs (AU1, 2, and 4), our BP4D can almost beat our DISFA for completely previously unseen labels of AUs (AU9, AU25, and AU26), which is an evidence of creating one powerful base classifier to make a baseline prediction for any AU.
Figure 5 (b) shows the BP4D-trained model and BP4D-trained baseline’s improvements in relation to the number of gradient step for each of 1 and 5 shot adaptation. Our approach accomplishes larger improvement than the baseline with both few-shot adaptations. Also, our model shows better accuracy overall in 5 shot rather than in 1 shot whereas baseline has almost no difference between 1 shot and 5-shot. This implies that our meta-learning knowledge makes it possible to leverage few-shot samples more efficiently for adaptation than the baseline. In addition, with just one gradient step, our model shows steep increase in accuracy though it can keep improving with more steps. This evidences that our model is trained in a way that enables to adapt very fast to a new task.
In this paper, we introduced a meta-learning approach for facial AU detection that can quickly adapt to new subjects or AUs. The main idea of this approach is that by optimizing the model prepared for adaptation rather than optimizing it fitted on specific task. We showed that this approach can fully utilize a few labeled data of a new task to learn the new task as well as largely improve the performance by just one gradient update. In the future work, we will devise appropriate evaluation way to make comparison with other related works on domain adaptation and transfer learning, applicable to the task of AU detection.
The work of O. Rudovic was funded by EC H2020 no. 701236 Marie Curie Action – Individual Fellowship (EngageMe).