• Aucun résultat trouvé

19Mai2016 MarcCHAUMONT ,DinoIENCO ,J´erˆomePASQUET ,LionelPIBRE ´Etudedesr´eseauxdeneuronessurlast´eganalyse

N/A
N/A
Protected

Academic year: 2022

Partager "19Mai2016 MarcCHAUMONT ,DinoIENCO ,J´erˆomePASQUET ,LionelPIBRE ´Etudedesr´eseauxdeneuronessurlast´eganalyse"

Copied!
24
0
0

Texte intégral

(1)

Etude des r´ ´ eseaux de neurones sur la st´ eganalyse

Marc CHAUMONT

1,2,3

, Dino IENCO

1,4

, J´ erˆ ome PASQUET

1,3

, Lionel PIBRE

1,3

1Universit´e de Montpellier

2Universit´e de Nˆımes

3CNRS

4IRSTEA

19 Mai 2016

1/24

(2)

Introduction

Un r´ eseau de neurones ? Pourquoi faire ?

Des r´ esultats impressionnants !

RM+EC CNN FNN

Max 24.93% 7.94% 8.92%

Min 24.21% 7.01% 8.44%

Variance 0.14 0.12 0.16 Average 24.67% 7.4% 8.66%

Table : R´ esultats de st´ eganalyse (P

E

) avec S-UNIWARD, 0.4 bpp, sc´ enario clairvoyant pour RM+EC, CNN et FNN.

L’insertion a ´ et´ e faite dans un sc´ enario artificiel !

2/24

(3)

1

Les r´ eseaux de neurones convolutionnels (CNNs)

2

L’histoire de cet article

3

Exp´ erimentations

4

Conclusion

3/24

(4)

Sommaire

1

Les r´ eseaux de neurones convolutionnels (CNNs)

2

L’histoire de cet article

3

Exp´ erimentations

4

Conclusion

4/24

(5)

Un exemple de r´ eseau

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

Inspir´ e du r´ eseau de Krizhevsky et al. 2012 Moins bon de 3% ` a 4% par rapport ` a RM+EC

A. Krizhevsky, I. Sutskever, and G. E. Hinton, ”ImageNet Classification with Deep Convolutional Neural Networks,” inAdvances in Neural Information Processing Systems 25, NIPS, 2012.

Y. Qian, J. Dong, W. Wang, and T. Tan, ”Deep Learning for Steganalysis via Convolutional Neural Networks,”

inProceedings of SPIE Media Watermarking, Security, and Forensics, 2015.

5/24

(6)

Le pr´ e-traitement sp´ ecifique ` a la st´ eganalyse

F

(0)

= 1 12

−1 2 −2 2 −1

2 −6 8 −6 2

−2 8 −12 8 −2

2 −6 8 −6 2

−1 2 −2 2 −1

Appliquer ce noyau sur les images d’entr´ ee permet au r´ eseau de converger plus rapidement.

6/24

(7)

Les r´ eseaux convolutionnels

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

Une couche est compos´ ee de plusieurs ´ el´ ements : La convolution,

L’application d’une fonction d’activation, Le pooling (sous-´ echantillonnage), La normalisation.

7/24

(8)

La convolution

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

La premi` ere couche :

˜ I

k(1)

= I

(0)

? F

k(1)

(1) Les autres couches :

I ˜

k(l)

=

i=K(l−1)

X

i=1

I

i(l−1)

? F

k(l),i

(2)

8/24

(9)

Les fonctions d’activation

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

Il existe de nombreuses fonctions d’activation : Valeur absolue : f (x) = |x|,

Tangente hyperbolique : f (x) = tanh(x),

ReLU (Rectified Linear Unit ) : f (x) = max(0, x), Gaussienne : f (x) =

ex

2

σ2

.

9/24

(10)

Le pooling

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

Op´ eration locale calcul´ ee sur un voisinage : Moyenne locale (conserve le signal),

Maximum local (invariance ` a la translation), Sous-´ echantillonnage.

10/24

(11)

La normalisation

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

Lorsque l’on normalise entre les feature maps : norm(u

x,yg

) = u

x,y

1 +

αN

min(F,g−bN/2c+N)

P

g0=max(0,g−bN/2c)

(u

x,yg0

)

2

!

β

(3)

11/24

(12)

Les couches fully connected

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

La partie fully connected est compos´ ee de plusieurs ´ el´ ements : Deux couches enti` erement connect´ ees,

Une fonction appel´ ee Softmax qui normalise les valeurs entre [0,1],

Le r´ eseau donne une valeur cover (resp. st´ ego).

12/24

(13)

Notre r´ eseau

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature map 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature map

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature map 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature map 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature map 4 x 4

Figure : Sch´ ema du r´ eseau de Qian et al.

image 256

256 F(0)

Kernel Filtered image 252

252

Layer 1 64 kernels

7x7 Label=0/1

64 feature map 127 x 127

ReLU ReLU

Layer 2 16 kernels 5x5

16 feature map 127 x 127 Fully connected

layers

ReLU ReLU

Softmax Convolutional layers Classification

1000 neurons

1000 neurons

stride 2

Figure : Sch´ ema de notre r´ eseau.

13/24

(14)

Sommaire

1

Les r´ eseaux de neurones convolutionnels (CNNs)

2

L’histoire de cet article

3

Exp´ erimentations

4

Conclusion

14/24

(15)

Toute une histoire

15/24

(16)

Sommaire

1

Les r´ eseaux de neurones convolutionnels (CNNs)

2

L’histoire de cet article

3

Exp´ erimentations

4

Conclusion

16/24

(17)

Exp´ erimentations

40 000 images cover de taille 256×256 provenant de BossBase,

S-UNIWARD avec 0.4 bits par pixel,

Utilisation du simulateur avec la mˆ eme cl´ e d’insertion, Apprentissage sur 60 000 images.

Pourquoi utiliser la mˆ eme cl´ e ? Ce n’´ etait pas volontaire...

Il y a une erreur de documentation dans la version C++ de S-UNIWARD,

Qian et al. ont fait la mˆ eme erreur.

17/24

(18)

Utilisation d’une seule cl´ e d’insertion

Lorsque l’on utilise qu’une seule cl´ e d’insertion...

La cl´ e d’insertion initialise le g´ en´ erateur de la s´ equence de nombres pseudo-al´ eatoires

⇒ la s´ equence de nombres pseudo-al´ eatoires ∈ [0,1]

n

est toujours la mˆ eme !

L’insertion va se faire toujours au mˆ eme endroit et avec la mˆ eme polarit´ e (-1 ou +1).

18/24

(19)

Impact sur l’insertion

Figure : Probabilit´ e de modification. En blanc les zones avec les plus fortes probabilit´ es et en noir celles avec les probablit´ es les plus faibles.

19/24

(20)

R´ esultats

40 000 images cover de taille 256×256 provenant de BossBase,

S-UNIWARD avec 0.4 bpp,

Simulateur avec la mˆ eme cl´ e d’insertion, Apprentissage sur 60 000 images.

RM+EC CNN FNN

Max 24.93% 7.94% 8.92%

Min 24.21% 7.01% 8.44%

Variance 0.14 0.12 0.16 Average 24.67% 7.4% 8.66%

Table : R´ esultats de st´ eganalyse (P

E

) avec S-UNIWARD, 0.4 bpp, sc´ enario clairvoyant pour RM+EC, CNN et FNN.

En utilisant des cl´ es d’insertion diff´ erentes, le mˆ eme r´ eseau avec plus de neurones obtient 38.1% de probabilit´ e d’erreur !

20/24

(21)

Sommaire

1

Les r´ eseaux de neurones convolutionnels (CNNs)

2

L’histoire de cet article

3

Exp´ erimentations

4

Conclusion

21/24

(22)

Conclusion de cette histoire

Faire attention ` a l’impl´ ementation et ` a la documentation des logiciels (peu importe leur provenance),

Toujours utiliser diff´ erentes cl´ es d’insertion ! Le Rich Models n’est pas efficace pour d´ etecter un ph´ enom` ene spatial.

Les CNNs ne sont pas morts... il y a toujours de l’espoir !

A. Xu, H. Z. Wu, and Y. Q. Shi, ”Structural Design of Convolutional Neural Networks for Steganalysis,” in IEEE Signal Processing Letters,vol. 23, no. 5, pp. 708-712, May 2016.

22/24

(23)

Fin

Merci de votre attention !

23/24

(24)

Cover-Source Mismatch

Pourquoi avoir fait des tests dans le sc´ enario avec Cover-Source Mismatch ?

Nous n’avions pas encore connaissance de cette erreur lors des tests !

24/24

Références

Documents relatifs

This thesis studies empirical properties of deep convolutional neural net- works, and in particular the Scattering Transform.. Indeed, the theoretical anal- ysis of the latter is

To tackle this problem, we utilize Dempster-Shafer evidence theory to measure the uncertainty of the prediction output by deep neural networks and thereby propose an uncertain

As deep learning models show an impressive ability to recognize patterns in images, many researchers propose deep learn- ing based steganalysis methods recently.. [11] reported

As seen in figure 6, we reduced the training time, and the difference of time reduced became higher when we increased the number of iteration for each ap- proach, in which we

This strategy is much harder and not feasible for common objects as they are a lot more diverse. As an illustration, the winner of the COCO challenge 2017 [274], which used many of

– Convolution layers & Pooling layers + global architecture – Training algorithm + Dropout Regularization.. • Useful

"Imagenet classification with deep convolutional neural networks".. In Advances in neural

 pushing forward to weakly supervised learning the problem Medical Image Segmentation of Thoracic Organs at Risk in CT-images..