Lightweight Unsupervised Domain Adaptation by Convolutional Filter Reconstruction
Rahaf Aljundi, Tinne Tuytelaars
Lightweight Unsupervised Domain Adaptation by Convolutional Filter - - PowerPoint PPT Presentation
Lightweight Unsupervised Domain Adaptation by Convolutional Filter Reconstruction Rahaf Aljundi, Tinne Tuytelaars Unsupervised Domain Adaptation When you expect the test data (Target) to be different from your training data (Source) DA in the
Rahaf Aljundi, Tinne Tuytelaars
Unsupervised Domain Adaptation
DA in the context of deep learning?
Motivation: limitations of Deep DA methods
What if we want to adapt “on-the-fly” ? -> Light-weight DA
Motivation: early or late layers ?
What happens e.g. in case of a “simple” domain shift like color vs. grayscale ?
We visualize the output of each filter in each convolutional layer
We visualize the output of each filter in each convolutional layer
The first layers are prone to domain shift The filters differ in their behavior
We compute the H-divergence of each filter in each convolutional layer
Convolutional Filter Reconstruction
measure for how “good” each filter is.
Convolutional Filter Reconstruction
B∗ = argminB{
n
X
i=1
(yi − β0 −
p
X
j=1
xijβj)2 + λ
p
X
j=1
|βj|} B∗ = argminB{
n
X
i=1
(yi − β0 −
p
X
j=1
xijβj)2 + λ
p
X
j=1
|∆KL
j
· βj|}
Experiments
Applying Convolutional Filter Reconstruction to the first convolutional layer systematically improves the network performance by 2%-5%.
Experiments
Table 1: Recognition accuracies on Office dataset
Method Amazon→Webcam Amazon→DSLR Amazon→Amazon-Gray CNN(NA) 60.5 65.8 94.8 DDC[22] 61.8 64.4
60.5 61.5 95.0 SA[3] 61.8 61.5 95.2 SA(First Convolutional) 61.5 65.8 95.1 Filter Reconstruction(Our) 62.0 67.2 97.0
Table 2: Recognition accuracies on variety of datasets
Method Mnist→MnistM Syn→Dark Photo→Art CNN(NA) 54.6 75.0 85.2 Filter Reconstruction 56.7 80.0 86.7
Let’s look closer
Conclusion (part I)
Light-weight method:
Patraucean et al. CoRR 16)
General architecture
In a traditional convolutional layer, the learned filters stay fixed after training. Model parameters: layer parameters that are initialized in advance and only updated during training Dynamically generated parameters: generated on-the-fly conditioned on the input
Filter generation network
Multilayer perceptron Convolutional neural network Any other differentiable architecture
Dynamic filtering layer
Filter-generating network Input A Output Input B Input Filter-generating network Input A Output Input B Input
Dynamic local filtering layer
filters conditioned on the input and also position transformation within the receptive field
Dynamic local filtering layer
filters conditioned on the input and also position transformation within the receptive field possiblity of adding dynamic bias
Dynamic local filtering layer
filters conditioned on the input and also position transformation within the receptive field possiblity of adding dyanmic bias possiblity of stacking several such modules (e.g. recurrent connection) need fewer model parameters than dynamic parameter layer and locally-connected layer
Learning steerable filter
Filter-generating network
θ = 45°
0° 90° 139.2° 180° 242.9°
Video prediction
t t - 1 t - 2
SOFTMAX
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t + 1 t t - 1
MovingMNIST
Input Sequence Ground Truth and Prediction
MovingMNIST
Model # Params Binary Cross Entropy FC-LSTM 142,667,776 341.2 Conv-LSTM 7,585,296 367.1 DFN (ours) 637,361 285.2
MovingMNIST (Out-of-domain examples)
Highway
Input Sequence Ground Truth and Prediction
Highway
Input filters Ground truth prediction
Highway
Stereo prediction
Input filters Ground truth prediction
https://youtu.be/fAX8ji04xEU
Left image Ground truth Predicted right image Predicted disparity map
Classification