summaryrefslogtreecommitdiff
path: root/background/conf.tex
blob: a3f7e830fda7b0acae7ff33fabaaa34f49a89978 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91

%Attacks which violate privacy and confidentiality in ML infer potentially sensitive unobservable information from observable information (e.g., model predictions). 
\label{sec:bck_aia}
Dans ce manuscrit nous considérons deux types de risques pour la confidentialité.
Le premier concerne les données qui on servi à l'entraînement du modèle, le second concerne les donnée qui son utilisé lors de l'évaluation.
Dans le cadre d'attaques nous parlerons de \emph{modèle cible} pour désigner le modèle utilisé par un adversaire pour apprendre des informations confidentielles.

\FloatBarrier
\subsubsection{Risque sur les données d'entraînement}
L'attaque d'inférence d'appartenance (MIA) consiste à inférer si une donnée a servi à l'entraînement du modèle cible. 
Cette attaque utilise le fait que les modèles d'apprentissage automatique ont en générale une moins bonne performance sur les donnée qui n'ont pas été utilisés à l'entraînement, c'est le sur-ajustement\footnote{\textit{Overfitting}}~\cite{hawkins2004problem,ying2019overview}.
Ce problème peut survenir principalement quand le modèle cible est trop complexe par rapport à la tâche qui lui est demandé.
Pour reprendre les mots de Hawkisn et al. : \textquote{Le sur-ajustement est l'utilisation de modèles ou de procédures qui vont à l'encontre de la parcimonie, c'est-à-dire qui utilisent plus de termes ou qui utilisent des approches plus complexe que ce qui est nécessaire}
\footnote{\textit{Overfitting is the use of models or procedures that violate
parsimony, that is, that include more terms than are neces-
sary or use more complicated approaches than are necessary.}}
Nous voyons sur la Figure~\ref{fig:background-conf-mia} l'écart entre la valeur de la fonction de coût évalué sur les données d'entraînement et d'évaluation.
Le lien est assez claire, un écart significatif indique qu'un classifieur va être capable d'apprendre quelles données ont été utilisées pour l'entraînement.
Pour vérifier cela, la Sous-figure~\ref{sfig:background-conf-mia-ba} montre comment une forêt aléatoire a put apprendre cette distinction.
On observe une exactitude équilibrée autour de 0,625 indiquant une fuite du confidentialité.

\begin{figure}
    \centering
    \begin{subfigure}{0.3\linewidth}
        \centering
        \includegraphics[width=\linewidth]{background/figure/conf/mia_ba.pdf}
        \caption{Résultat de l'attaque MIA.}
        \label{sfig:background-conf-mia-ba}
    \end{subfigure}
    \begin{subfigure}{0.65\linewidth}
        \centering
        \includegraphics[width=\linewidth]{background/figure/conf/mia.pdf}
        \caption{Écart entre le coût calculé sur les données d'entraînements et sur les données d'évaluation.}
    \end{subfigure}
    \caption{Lien entre sur-ajustement et succès de l'attaque MIA.}
    \label{fig:background-conf-mia}
\end{figure}

L'étude de la fonction de coût est possible quand l'adversaire possède des donnée pour lesquelles il sait qu'elles ont appartenues à l'entraînement.
Grâce à cela il peut construire un classifieur en utilisant cette connaissance comme étiquette.
Si ce n'est pas le cas, l'adversaire utilise des modèles miroirs\footnote{\textit{Shadow models}} qui simulent le modèle cible est permettent d'apprendre à différencier le coût d'une donnée ayant servit à l'entraînement d'une donnée jamais observé~\cite{shokri2017membership}.

Un modèle d'attaque de MIA peut ensuite être utilisé comme base pour d'autre type d'attaque comme par exemple reconstruire un attribut sensible de données ayant servit à l'entraînement~\cite{yeom}.

La confidentialité différentielle\footnote{\textit{Differential privacy}} permet d'empêcher les attaques MIA~\cite{chen2020differential,rahman2018membership}.
\begin{definition}{Confidentialité différentielle}
    Soit $(\Omega,\mathcal{T},P)$ un espace probabilisé.
    Soit $(S,\mathcal{S})$ un espace mesurable et $\mathcal{V}$ l'ensemble des fonctions mesurables de $\Omega$ dans $S$.
    Soient $E$ un ensemble et $M$ une fonction de $E$ dans $\mathcal{V}$.
    Soit $R\subset E^2$.
    Soient $(\varepsilon,\delta)\in {\mathbb{R}^+}^2$
    Alors $M$ satisfait la $(\varepsilon,\delta)$ confidentialité différentielle si et seulement si 
    \begin{equation*}
        \forall (e_1,e_2,s)\in E\times E\times \mathcal{S}\quad
        (e_1,e_2)\in R\implies
        P(M(e_1)\in s)\leq e^{\varepsilon}P(M(e_2)\in s)+\delta
    \end{equation*}
\end{definition}
En pratique $E$ représente l'ensemble de toutes les bases de données possibles.
$R$ est une relation telle que $(e_1,e_2)\in R$ si et seulement si $e_1$ et $e_2$ différent d'une donnée.
$S$ est l'ensemble des modèles possibles.
$M$ est l'algorithme d'apprentissage qui prend en entrée une basse de donnée et renvoie une variable aléatoire à valeur dans l'espace des modèles $S$.
Cette définition signifie donc que pour des bases de données de données différentes d'une ligne, l'algorithme d'apprentissage aura des sorties presque indistinguables l'une de l'autre.
Le presque étant paramétré par $\varepsilon$ et $\delta$.

\FloatBarrier
\subsubsection{Risque sur les données d'évaluation}
Le second risque pour la confidentialité que nous allons évoquer concerne les données des utilisateurs de modèles d'apprentissage et non plus les données d'entraînement.
Dans ce cas un utilisateur souhaite évaluer une donnée sur le modèle cible et la question que l'on se pose est : 
Que se passe t'il si la prédiction fuite à un adversaire ?

Song et al.~\cite{Song2020Overlearning} introduisent le concept de \emph{sur-apprentissage}\footnote{\textit{Overlearning}}.
Ce terme désigne un modèle cible qui apprend plus que sa tâche principale.
Par exemple un modèle servant à inférer si une personne souris dans une image vas aussi apprendre la couleur de peau~\cite{malekzadeh2021honestbutcurious}.
Ou encore, utiliser un modèle qui prédise l'admission dans une école ou l'obtention d'un prêt pour inférer le genre~\cite{Song2020Overlearning}.
Il s'agit donc d'inférer un attribut sensible en utilisant la prédiction d'un modèle cible qui n'a pas été entraîné pour inférer cet attribut sensible.
Nous appellerons ce type d'attaque : inférence d'attribut sensible (AIA).

Nous considérerons pour la suite que l'adversaire a uniquement accès à la prédiction du modèle cible et non pas à la donnée d'entrée.
En effet le modèle cible n'ajoute pas plus d'information concernant l'attribut sensible que n'en n'est contenus dans la donnée d'entrée~\cite{jayaraman2022attribute}.

Une AIA qui cherche à inférer un attribut sensible présent dans le données d'entrée est appelé \emph{inversion de modèle}\footnote{\textit{modèle inversion}}.
En effet comme l'adversaire cherche à inférer une entrée d'un modèle cible à partir de sa sortie, cette attaque est similaire à l'inversion d'une fonction.
Fredrikson et al.~\cite{fredrikson2} donnent un exemple marquant en pharmacogénétique :
La molécule Warfarin entre dans le traitement préventif des crises cardiaques, cependant son dosage est complexe car il dépend de chaque patient.
Ainsi des modèles ont été créés pour prédire le dosage à partir des données médicales du patient comme son génotype.
Fredrikson et al. ont réussi à utiliser la prédiction de ces modèles pour retrouver les donnés médicales démontrant ainsi le risque de perte de confidentialité inhérent aux sorties des modèles.

Les développements nouveaux que proposent ce manuscrit se concentrerons sur les risques d'inférences liés à des attributs sensibles qui ne sont pas utilisés lors de l'entraînement.