MVA Approximation CybenkoThm Slides PDF

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 25

Fondements théoriques du deep learning

Expressivité des réseaux de neurones

Sébastien Gerchinovitz1,2 , François Malgouyres2 , Edouard Pauwels3 et Nicolas


Thome4

1 IRT Saint-Exupéry (projet DEEL), Toulouse

2 Institut de Mathématiques de Toulouse, Université Paul Sabatier

3 Institut de Recherche en Informatique de Toulouse, Université Paul Sabatier

4 Centre D’Étude et de Recherche en Informatique et Communications, Conservatoire

National des Arts et Métiers

2020

S. Gerchinovitz Fondements théoriques du deep learning 2020 1 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 2 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 3 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 4 / 25


Compromis approximation-estimation-optimisation
i .i .d .
Pour un échantillon (X1 , Y1 ), . . . , (Xn , Yn ) ∼ PX ,Y et une fonction g mesurable, le
risque et le risque empirique de g relativement à une perte positive L sont :
n
1X
R (g ) = E (L(g (X ), Y )) et b (g ) =
R L(g (Xi ), Yi )
n i =1
R ∗ = inf g R (g ) le risque de Bayes sur l’ensemble des fonctions mesurables
Paramètres quasi-optimaux du réseau : w∗ pour le risque R, w b pour le risque
empirique R b:

R (fw∗ ) É inf R (fw ) + ε et b (fw


R b (fw ) + ε
b ) É inf R
w w

Si notre algorithme d’optimisation retourne w, l’excès de risque se décompose en :


R (fw ) − R ∗ = R (fw∗ ) − R ∗ (erreur d’approximation)
b (fw∗ ) − R (fw∗ ) (erreur de généralisation 1)
+R
b (fw
+R b)−R
b (fw∗ ) Éε
b (fw ) − R
+R b (fw
b) (erreur d’optimisation)
+ R (fw ) − R
b (fw ) (erreur de généralisation 2)

S. Gerchinovitz Fondements théoriques du deep learning 2020 5 / 25


Focus sur l’erreur d’approximation

R (fw ) − R ∗ = R (fw∗ ) − R ∗ (erreur d’approximation)


b (fw∗ ) − R (fw∗ ) (erreur de généralisation 1)
+R
b (fw
+R b)−R
b (fw∗ ) Éε
b (fw ) − R
+R b (fw
b) (erreur d’optimisation)
+ R (fw ) − R
b (fw ) (erreur de généralisation 2)

Erreur d’approximation : Quelles fonctions peut-on approximer avec quels


réseaux ? ("expressive power", "expressivité", etc)
Erreur de généralisation/estimation : Quelles conditions sur le réseau pour
que R b (fw ) ' R (fw ) pour tout w ? Comment contrôler les fluctuations ?
(cf. dimension de Vapnik-Chervonenkis, complexité de Rademacher, etc)
Erreur d’optimisation : Quand est-ce que l’optimisation fonctionne ?
(optimisation non-convexe, paysage de la fonction objectif, etc)

S. Gerchinovitz Fondements théoriques du deep learning 2020 6 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 7 / 25


Expressivité des réseaux de neurones ?

Nous allons étudier les capacités d’approximation des réseaux de neurones


feedforward.

Questions naturelles :
Quelles fonctions peut-on approcher avec un réseau à k couches cachées ?
Une seule couche cachée est-elle suffisante ?
L’expressivité augmente-t-elle avec la profondeur ?
Pour un nombre de neurones donné, vaut-il mieux un réseau peu profond et large
ou un réseau profond et étroit ?

Nous allons répondre partiellement à ces questions.

S. Gerchinovitz Fondements théoriques du deep learning 2020 8 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 9 / 25


Warm-up : approximation par des fonctions en escalier

Soit f : [a, b]d → R continue et ε > 0. Par uniforme continuité de f , il existe δ > 0 tel que
kx − y k∞ É δ ⇒ |f (x ) − f (y )| É ε.
On découpe [a, b]d en N d cubes Ai de largeur (b − a)/N ≈ δ avec N = d(b − a)/δe.
Sur chaque cube Ai , on approche f par la valeur f (ci ) en son centre ci . On a alors :
¯
Nd
¯
¯ ¯
sup ¯f (x ) − f (ci )1Ai (x )¯ É ε .
¯ X ¯
x ∈[a,b] d ¯ i =1
¯

Théorème
Toute fonction réelle continue sur [a, b]d peut-être arbitrairement bien approchée (au
sens de la norme infinie) par une fonction constante par morceaux.

S. Gerchinovitz Fondements théoriques du deep learning 2020 10 / 25


Décomposition en série de Fourier
Soit f : [0, 2π] → R de carré intégrable. Considérons ses coefficients de Fourier

1
Z 2π
bf (n) = f (x )e−inx dx (n ∈ Z)
2π 0

et les sommes partielles SN : [0, 2π] → R de sa série de Fourier

N
bf (n)einx
X
SN (x ) =
n=−N

D’après le théorème de Riesz-Fischer, SN → f dans L2 ([0, 2π], R) quand N → +∞.

Théorème
L’ensemble des fonctions de la forme
N
cn einx (avec cn ∈ C et c−n = cn∗ pour tout 0 É n É N )
X
x 7→
n=−N

est dense dans L2 ([0, 2π], R).

S. Gerchinovitz Fondements théoriques du deep learning 2020 11 / 25


Théorème de représentation de Kolmogorov-Arnold

Voici un exemple de représentation exacte avec un nombre fini de termes.

Théorème (Kolmogorov-Arnold’56-57 et travaux ultérieurs)


Toute fonction continue f : [0, 1]d → R de plusieurs variables peut être représentée
comme une superposition finie de fonctions continues d’une variable Φi , ψi ,j : R → R et
de l’opération somme :
à !
2d d
Φi ψi ,j (xj )
X X
f (x1 , . . . , xd ) =
i =0 j =1

Ressemble un peu à un réseau feedforward à 2 couches cachées.


Travaux de Lorentz’62 et Sprecher’96-97 (cf. aussi Braun et Griebel’2009) : pas
nécessaire de choisir des fonctions d’activation Φi et ψi ,j toutes différentes.
Mais, pour les réseaux feedforward, on impose une unique fonction d’activation
σ : R → R. On se contentera d’une représentation approximative.

S. Gerchinovitz Fondements théoriques du deep learning 2020 12 / 25


Lien avec le 13-ème problème de Hilbert

Le 13-ème problème de Hilbert, formulé dans une liste de 23 problèmes en 1900 par
David Hilbert, cherche à savoir si on peut exprimer une solution x (a, b, c ) de l’équation

x 7 + ax 3 + bx 2 + cx + 1 = 0

à l’aide d’une superposition finie de fonctions algébriques/continues de deux variables.

Il était conjecturé que cela n’était pas possible.


Kolmogorov et Arnold ont contredit cette conjecture en 1956-57 en montrant
qu’en fait, toute fonction continue de plusieurs variables pouvait s’exprimer
comme une superposition d’un nombre fini de fonctions continues de 2 variables.

S. Gerchinovitz Fondements théoriques du deep learning 2020 13 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 14 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 15 / 25


Le théorème d’approximation de Cybenko’89

On s’intéresse aux réseaux de neurones feedforward à 1 couche cachée, i.e., aux


fonctions f : Rd → R de la forme
N
vi σ 〈wi , x 〉 + bi (vi , bi ∈ R et wi ∈ Rd )
X ¡ ¢
f (x ) =
i =1

avec une fonction d’activation σ : R → R.

Théorème (Cybenko’89)
Soit σ : R → R continue et sigmoïdale (lim−∞ σ = 0 et lim+∞ σ = 1).

¡ N1 des
Alors, l’ensemble ¢ réseaux de neurones feedforward à 1 couche cachée est
dense dans C [0, 1]d , R .

S. Gerchinovitz Fondements théoriques du deep learning 2020 16 / 25


Warm-up en dimension d = 1

Pour commencer : fonctions f d’une seule variable (d = 1), et fonctions d’activation σ


très spécifiques (qui ne vérifient d’ailleurs pas les hypothèses du théorème !).

Soit f : [0, 1] → R une fonction L-Lipschitz et ε > 0. Il est facile de construire à la main
un réseau g : [0, 1] → R à 1 couche cachée tel que kg − f k∞ É ε.

Avec σ(x ) = 1x Ê0 (Heaviside) :


Il suffit d’approcher f par une fonction g constante par morceaux, puis de
remarquer que g est un réseau à 1 couche cachée avec la fonction de Heaviside.
Avec σ(x ) = max{x , 0} (ReLU) :
Il suffit d’approcher f par une fonction continue affine par morceaux (interpolation
linéaire), puis de remarquer que g est un réseau ReLU à 1 couche cachée.

S. Gerchinovitz Fondements théoriques du deep learning 2020 17 / 25


Cas général : schéma de preuve

Il s’agit de montrer que N1 = C [0, 1]d , R (au sens de la norme infinie).


¡ ¢

Preuve non-constructive, qui procède par contradiction (méthode classique pour


montrer un résultat de densité) :
On suppose qu’il existe f0 ∈ C [0, 1]d , R \ N1 .
¡ ¢

On invoque un théorème de
¢ Hahn-Banach qui fournit une forme linéaire
continue L sur C [0, 1]d , R telle que L(f0 ) = 1 mais L = 0 sur N1 .
¡

On utilise ensuite un théorème de représentation de Riesz, qui permet de


représenter L à l’aide d’une mesure de Borel signée sur [0, 1]d :
Z
∀f ∈ C [0, 1]d , R ,
¡ ¢
L(f ) = f dµ

En exploitant cette représentation intégrale pour f (·) = σ(〈w , ·〉 + b) ∈ N1 , on


montre que la transformée de Fourier de µ est nulle, et donc que µ = 0.
R
Dès lors, L(f0 ) = f0 dµ = 0, ce qui contredit L(f0 ) = 1 et prouve le théorème.

S. Gerchinovitz Fondements théoriques du deep learning 2020 18 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 19 / 25


L’extension de Hornik’91

Hornik a prouvé en 1991 le résultat plus général suivant.

Théorème (Hornik’91)
Soit K ⊂ Rd un compact. Supposons que σ : R → R est continue, bornée et
non-constante. Alors, l’ensemble des réseaux de neurones feedforward à 1 couche
cachée est dense dans C (K , R).

Il a aussi prouvé un résultat analogue en dehors du cas K compact.

Théorème (Hornik’91)
Soit µ une mesure de Borel positive sur Rd , de masse finie. Supposons que
σ : R → R est bornée et non-constante. Alors, l’ensemble des réseaux de neurones
feedforward à 1 couche cachée est dense dans Lp (Rd , R, µ) pour tout 1 É p < +∞.

S. Gerchinovitz Fondements théoriques du deep learning 2020 20 / 25


Une borne quantitative de Barron’93
Barron a majoré le nombre de neurones N d’un réseau à 1 couche cachée pour
approcher une fonction f : Rd → R admettant une représentation de Fourier de la forme
Z
f (x ) = bf (w )ei 〈w ,x 〉 dw
Rd
Z
avec bf : Rd → C telle que Cf :=
¯ ¯
kw k2 ¯bf (w )¯ dw est finie.
Rd

Théorème (Barron’93)
Soit σ : R → R une fonction sigmoïdale. Pour toute f : Rd → R comme ci-dessus, tout
r > 0 et toute mesure de probabilité µ sur Br = {x : kx k2 É r }, il existe un réseau gN à 1
N
vi σ 〈wi , x 〉 + bi + v0 tel que
X ¡ ¢
couche cachée gN (x ) =
i =1

(2rCf )2
Z
¡ ¢2
f − gN dµ É .
Br N

Attention : pour certaines fonctions f : Rd → R, la constante Cf est exponentiellement


grande en d, voire infinie (fonction triangle par ex).
S. Gerchinovitz Fondements théoriques du deep learning 2020 21 / 25
Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 22 / 25


Plan

1 Introduction
Compromis approximation-estimation-optimisation
Expressivité des réseaux de neurones ?
Autres exemples d’approximation

2 Universalité des réseaux feedforward à 1 couche cachée


Le théorème d’approximation de Cybenko’89
Extensions et raffinements

3 L’effet de la profondeur sur l’expressivité des réseaux


Transition de 1 à 2 couches cachées

S. Gerchinovitz Fondements théoriques du deep learning 2020 23 / 25


Effet de la profondeur sur l’expressivité des réseaux

Informellement, l’expressivité d’une architecture de réseau feedforward désigne sa


capacité à approcher correctement certains espaces de fonctions après calibration
des paramètres du réseau.

Questions naturelles :
Quelles fonctions peut-on approcher avec un réseau à k couches cachées ?
Une seule couche cachée est-elle suffisante ?
L’expressivité augmente-t-elle avec la profondeur ?
Pour un nombre de neurones donné, vaut-il mieux un réseau peu profond et large
ou un réseau profond et étroit ?

Plusieurs articles se sont penchés sur le phénomène de depth separation, dans ce


cadre mais aussi pour des problèmes connexes (e.g., circuits booléens). Nous allons
donner 2 exemples de résultats.

S. Gerchinovitz Fondements théoriques du deep learning 2020 24 / 25


Transition de 1 à 2 couches cachées
Travaux d’Eldan et Shamir (COLT 2016), cf. également Daniely (COLT 2017). Comparaison
entre réseaux feedforward à 1 ou 2 couches cachées :
à !
N N2 N1
vi σ 〈wi , x 〉 + bi ui σ vi ,j σ 〈wi ,j , x 〉 + bi ,j + ci
X ¡ ¢ X X ¡ ¢
x 7→ x 7→
i =1 i =1 j =1

Theorem
Si σ est "universelle" et au plus polynomiale, il existe c , C > 0 telles que : pour toute dimension
d > C, il existe une probabilité µ sur Rd et g : Rd → R vérifiant :
© p ª
1 g est à valeurs dans [−2, 2], supportée sur x : kx k É C d et implémentable par un
réseau à 2 couches cachées de largeur polynomiale en d ;
2 toute fonction f : Rd → R implémentable par un réseau à 1 couche cachée de largeur au
plus cecd vérifie h i
Ex ∼µ (f (x ) − g (x ))2 Ê c .

Preuve par transformée de Fourier (fonction g radiale et oscillante).

En clair : il existe des fonctions représentables aisément par un réseau à 2 couches cachées,
mais qu’on ne peut pas approcher par un réseau à 1 couche cachée, sauf à considérer une
couche cachée de taille exponentielle en la dimension d’entrée d.

S. Gerchinovitz Fondements théoriques du deep learning 2020 25 / 25

Vous aimerez peut-être aussi