Un réseau de neurones pour l’adaptation de domaine
Pascal Germain
Travail conjoint avec
Hana Ajakan, Hugo Larochelle, François Laviolette et Mario MarchandGroupe de recherche en apprentissage automatique de l’Université Laval (GRAAL)

23 janvier 2014
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

1 / 24Plan

1Mise en contexte
Apprentissage automatique et classification
Adaptation de domaine

2Talk : NIPS 2014 Workshop on Transfer and Multi-task learningDomain Adaptation Setting
Theoretical Foundations
Neural Network for Domain Adaptation
Empirical Results3Conclusion
Travaux futurs

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 20142 / 24

Une définition de l’apprentissage automatique”Field of study that gives computers the ability to learn without
being explicitly programmed”– Arthur Samuel, 1959

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

3 / 24

Exemplecritiques de films-1+1+1

Algorithmed'apprentissage-1???

Classificateur

Pascal Germain (GRAAL)

Réseau de neurones adaptatif+1+1

23 janvier 2014

4 / 24

Définitions de baseÉchantillon de donnéesdef

S = { (x1 , y 1 ), (x2 , y 2 ), . . . , (xm , y m ) } ∈ (X × Y)mPour cette présentation,
Espace d’entré :x ∈ X ⊆ Rd
Espace de sortie :y∈ Y = {−1, 1}(Attributs à valeurs réelles)(Classification binaire)

Algorithme d’apprentissage
A(S) −→ ηClassificateur
Cas général :η:X →Y

Pour cette présentation :η : Rd → {−1, 1}

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

5 / 24

Apprentissage inductif
HypothèseLes exemples sont générées i.i.d. par une distribution D sur X × Y.
S ∼ DmPascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

6 / 24

Apprentissage inductif
Hypothèse (classification binaire)
Les exemples sont générées i.i.d. par une distribution D sur Rd × {−1, 1}.
S ∼ DmUn algorithme d’apprentissage reçoit unéchantillon d’entraı̂nement

et retourne unclassificateurm
S = {(xi , y i )}m
i=1 ∼ D ,η : Rd → {−1, 1}.
21012432

10

123

4

On veut un classificateur avec un faible risquedefRD (η) =Pr
η(x) 6= y .
(x,y )∼D

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

7 / 24

Exemplecritiques de livres

critiques de films
-1???

+1???

???

Algorithmed'apprentissage+1-1???

???

Classificateur

Pascal Germain (GRAAL)

Réseau de neurones adaptatif-1+1

23 janvier 20148 / 24

Définitions
Deux distributions de données
Distribution source DS ;Distribution cible DT .

Deux chantillons d’entraı̂nementdefÉchantillon source : S = { (xs1 , y s1 ), (xs2 , y s2 ), . . . , (xsm , y sm ) } ∼ (DS )mdef

Échantillon cible : T = { xt1 , xt2 , , . . . , xtm } ∼ (DT )m (non étiqueté !)Algorithme d’apprentissage
A(S, T ) −→ ηClassificateur
η:X →YPascal Germain (GRAAL)

doit classifier des exemples cibles (xt ∼ DT ) .
Réseau de neurones adaptatif

23 janvier 2014

9 / 24

Adaptation de domaineHypothèseLes exemples sont générées i.i.d. par les distributions DS et DT sur X × Y.
S ∼ (DS )mPascal Germain (GRAAL)

etT ∼ (DT )mRéseau de neurones adaptatif

23 janvier 2014

10 / 24

Adaptation de domaine (deux approches)
Question
Dans quelle(s) situation(s) l’adaptation est-elle possible de DS vers DT ?

Réponse (partielle)
Lorsque les domaines DS et DT sont semblables.

Un outil
Notion de distance dη (DS , DT ) entre les distributions.

Deux approches pour la conception d’algorithmes
1. Trouver un classificateur η ∈ H tel que dη (DS , DT ) est faible.
2. Modifier la représentation des exemples :⇒ Trouver une fonction h telle que dη (h(DS ), h(DT )) est faible.
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 201411 / 24

Our Domain Adaptation Setting
Binary classification tasks

Two different data distributions

Input space : Rd

Source domain : DS

Labels : {−1, 1}

Target domain : DT

A domain adaptation learning algorithm is provided witha labeled source samplem
S = {(xsi , y si )}mi=1 ∼ (D S ) ,an unlabeled target samplemT = {xti }mi=1 ∼ (DT ) .

443322110011223344321012344432101234The goal is to build a classifier η : Rd → {−1, 1} with a low target riskdef

RDT (η) =Pascal Germain (GRAAL)

Pr(xt ,y t )∼DT

[η(xt ) 6= y t ] .

Réseau de neurones adaptatif

23 janvier 201412 / 24

Divergence between source and target domains
Definition (Ben David et al., 2006)
Given two domain distributions DS and DT , and a hypothesis class H,
the H-divergence between DS and DT isdH (DS , DT )def=2 supη∈HPrsx ∼DSη(xs ) = 1 + t Pr η(xt ) = −1 − 1 .
x ∼DT

4The H-divergence measures the abilityof an hypothesis class H to discriminate
between source DS and target DT distributions.

32
10
1
2
3
4

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

432

1012

323 janvier 2014

413 / 24

Bound on the target riskTheorem (Ben David et al., 2006)
Let H be a hypothesis class of VC-dimension d. With probability 1 − δover the choice of samples S ∼ (DS )m and T ∼ (DT )m , for every η ∈ H :RDT (η) ≤ RS (η)+

4mqq
4d log 2edm + log δ4 + d̂H (S, T )+ 2 d log 2dm + log δ4 +βm

with β ≥ ∗inf [RDS (η ∗ )+RDT (η ∗ )] .
η ∈HEmpirical risk on the source sample :m1X
def
RS (η) =I [η(xsi ) 6= y si ] .
mi=1

Empirical H-divergence :"d̂H (S, T )def=#mm1 X
1 Xst2 max
I [η(xi ) = 1] +I [η(xi ) = −1] − 1 .
η∈H mmi=1

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

i=123 janvier 201414 / 24

Bound on the target risk
Theorem (Ben David et al., 2006)
Let H be a hypothesis class of VC-dimension d. With probability 1 − δover the choice of samples S ∼ (DS )m and T ∼ (DT )m , for every η ∈ H :RDT (η) ≤ RS (η)+

4mqq
4d log 2edm + log δ4 + d̂H (S, T )+ 2 d log 2dm + log δ4 +βmwith β ≥ ∗inf [RDS (η ∗ )+RDT (η ∗ )] .
η ∈HTarget risk RDT (η) is low
if, given S and T ,RS (η) is small,i.e., η ∈ H is good on

and d̂H (S, T ) is small,i.e., all η 0 ∈ H are bad on

443332224

1

1

1000

1

1

12223344

3

2

10

12Pascal Germain (GRAAL)

3443
4

3

2

10

123Réseau de neurones adaptatif

44432101223 janvier 2014

3415 / 24

Standard Neural Network
Let consider a neural network architecture with one hidden layer
h(x) = sigm(b + Wx) ,and"#1mmin

W,V,b,cmX−log

fy si (xsi )f(h(x)) = softmax(c + Vh(x)) .
.

f(h(x))

i=1|{zsource loss}

where fy (x) denotes the conditional probability thatthe neural network assigns x to class y .

V...

h(x)1h(x)j...

h(x)nmGiven a source sample S = {(xsi , y si )}m
i=1 ∼ (D S ) ,s

1. Pick a x ∈ SW
x1

...

xj...

xd

2. Update V towards f(h(xs )) = y s
3. Update W towards f(h(xs )) = y s

The hidden layer learns a representation h(·) from which linear
hypothesis f(·) can classify source examples.
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 201416 / 24

Domain-Adversarial Neural Network (DANN)
Empirical H-divergence
#mm
1 X
1 Xst
I [η(xi ) = 1] +I [η(xi ) = −1] − 1 .
d̂H (S, T ) = 2 max
η∈H mm"defi=1i=1

We estimate the H-divergence by a logistic regressor that model theprobability that a given input (either xs or xt ) is from the source domain :defo(h(x)) = sigm(d + w> h(x)) .
Given a representation output by the hidden layer h(·) :d̂H h(S), h(T )

"#mm
 1X
1Xst
≈ 2 maxlog o(h(xi )) +log 1−o(h(xi )) − 1 .
w,d m
m
i=1

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

i=1

23 janvier 201417 / 24

Domain-Adversarial Neural Network (DANN)"min

W,V,b,cm
1X−log fyis (xsi ) + λ maxw,dm i=1{z}||source loss

1m!#mmXXs t 
1log o(h(xi )) + m
log 1−o(h(xi )) ,i=1

i=1{zadaptation regularizer}

where λ > 0 weights the domain adaptation regularization term.
mGiven a source sample S = {(xsi , y si )}m
i=1 ∼ (D S ) ,mt mand a target sample T = {(xi )}i=1 ∼ (DT ) ,sf(h(x))

o(h(x))Vwt

1. Pick a x ∈ S and x ∈ T...

h(x)1

2. Update V towards f(h(xs )) = y sh(x)j...

h(x)n3. Update W towards f(h(xs )) = y ssWt

4. Update w towards o(h(x )) = 1 and o(h(x )) = −1s

x1...

xj...

xdt

5. Update W towards o(h(x )) = −1 and o(h(x )) = 1

DANN finds a representation h(·) that are good on S ;but unable to discriminate between S and T .
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 201418 / 24

Toy Dataset
Standard Neural Network (NN)Trained to classify sourcef(h(x))

Trained to classify domains

22V
1...

h(x)1h(x)j...

h(x)n

W
...

x1xj

...

100

11xd

22432101234432101234

Domain-Adversarial Neural Networks (DANN)f(h(x))o(h(x))Classification output : f(h(x))

Domain output : o(h(x))

22w

V

1...

h(x)1h(x)j...

h(x)nW
x1...

xj

...

100

1

1xd

224

Pascal Germain (GRAAL)

32

10123Réseau de neurones adaptatif

4432101223 janvier 2014

3419 / 24

Amazon Reviews
Input : product review (bag of words) — Output : positive or negative rating.

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

20 / 24

Amazon Reviews
Input : product review (bag of words) — Output : positive or negative rating.

DatasetDANN

NN

books → dvd
books → electronics
books → kitchen
dvd → books
dvd → electronics
dvd → kitchenelectronics → books
electronics → dvd
electronics → kitchen
kitchen → books
kitchen → dvd
kitchen → electronics

0.201
0.246
0.230
0.247
0.247
0.227
0.280
0.273
0.148
0.2830.261
0.161

0.199
0.251
0.235
0.261
0.256
0.227
0.281
0.277
0.149
0.288
0.261
0.161

Note : We use a small labeled subset of 100 target examples to select the hyperparameters.
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

21 / 24

Marginalized Stacked Denoising Autoencoders (mSDA)
Question
Does DANN can be combined with other representation learningtechniques for domain adaptation ?
The autoencoders mSDA (Chen et al. 2012) provides a new common
representation for source and target (unsupervised)With mSDA+SVM, Chen et al. (2012) obtained state-of-the-art resultson Amazon Reviews :– Train a linear SVM on mSDA source representations.
We try mSDA+DANN :– Train DANN on source representations and target representations.

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 201422 / 24

Amazon Reviews
Input : product review (bag of words) — Output : positive or negative rating.

Datasetbooks → dvd
books → electronics
books → kitchen
dvd → books
dvd → electronics
dvd → kitchenelectronics → books
electronics → dvdelectronics → kitchen
kitchen → books
kitchen → dvd
kitchen → electronics

mSDA+DANNmSDA+SVM

0.176
0.197
0.169
0.176
0.181
0.151
0.237
0.216
0.118
0.222
0.208
0.141

0.175
0.244
0.172
0.176
0.220
0.178
0.229
0.261
0.137
0.234
0.209
0.138

Note : We use a small labeled subset of 100 target examples to select the hyperparameters.
The noise parameter of mSDA representations is fixed to 50%.
Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 2014

23 / 24

Travaux futurs

Quelques avenues à explorer :Réseau de neurones profonds (deep learning) .
Problèmes multi-classes et multi-étiquettes.
Adaptation avec plusieurs ensembles sources.

Merci !

Pascal Germain (GRAAL)

Réseau de neurones adaptatif

23 janvier 201424 / 24