diff options
Diffstat (limited to 'background')
-rw-r--r-- | background/alg.tex | 4 | ||||
-rw-r--r-- | background/conf.tex | 7 | ||||
-rw-r--r-- | background/dif.tex | 8 | ||||
-rw-r--r-- | background/eq.tex | 12 | ||||
-rw-r--r-- | background/ml.tex | 24 | ||||
-rw-r--r-- | background/proba.tex | 12 |
6 files changed, 33 insertions, 34 deletions
diff --git a/background/alg.tex b/background/alg.tex index 73a1d84..8484cfe 100644 --- a/background/alg.tex +++ b/background/alg.tex @@ -1,6 +1,6 @@ \subsubsection{Espace vectoriel} Les espaces vectoriels sont des structures fondamentales qui vont nous servir à comprendre comment fonctionne l'entraînement des réseaux de neurones. -\begin{definition}{Groupe} +\begin{definition}[Groupe] Soit $E$ un ensemble et $+$ une opération sur $E$. Nous dirons que $(E,+)$ est un groupe si et seulement si \begin{enumerate} @@ -14,7 +14,7 @@ Les espaces vectoriels sont des structures fondamentales qui vont nous servir à Nous dirons que le groupe $(E,+)$ est abélien. \end{definition} -\begin{definition}{Espace vectoriel} +\begin{definition}[Espace vectoriel] Soit $E$ un ensemble muni d'une loi interne $+$ et d'une loi externe $\cdot:\mathbb{R}\times E\rightarrow E$. Sous les conditions suivantes, nous dirons que $(E,+,\cdot)$ est un espace vectoriel. \begin{enumerate} diff --git a/background/conf.tex b/background/conf.tex index 4c22136..148615d 100644 --- a/background/conf.tex +++ b/background/conf.tex @@ -11,10 +11,9 @@ Dans le cadre d'attaques nous parlerons de \emph{modèle cible} pour désigner l 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éral une moins bonne performance sur les données qui n'ont pas été utilisées à 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ée. -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} +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 complexes 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.}} +parsimony, that is, that include more terms than are necessary 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 clair, 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 pu apprendre cette distinction. @@ -44,7 +43,7 @@ Si ce n'est pas le cas, l'adversaire utilise des modèles miroirs\footnote{\text Un modèle d'attaque de MIA peut ensuite être utilisé comme base pour d'autres types d'attaques, comme par exemple reconstruire un attribut sensible des données ayant servi à 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} +\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}$. diff --git a/background/dif.tex b/background/dif.tex index 0d1b106..6484923 100644 --- a/background/dif.tex +++ b/background/dif.tex @@ -1,13 +1,13 @@ Le but du calcul différentiel est l'étude des variations infinitésimales des fonctions. Nous allons nous contenter ici d'étudier les fonctionnelles, c'est-à -dire des fonctions de $\mathbb{R}^n$ dans $\mathbb{R}$ car c'est ce dont nous allons avoir besoin en apprentissage automatique. -\begin{definition}{Produit scalaire euclidien} +\begin{definition}[Produit scalaire euclidien] \label{def:background-dif-scal} Soit $(x,y){\in\mathbb{R}^n}^2$ alors le produit scalaire euclidien est \begin{equation*} \langle x,y \rangle = \sum_{i=0}^{n-1}x_iy_i \end{equation*} \end{definition} -\begin{definition}{Norme euclidienne} +\begin{definition}[Norme euclidienne] \label{def:background-dif-eucl} Soit $x\in\mathbb{R}^n$, nous définissons le norme euclidienne de $x$ par l'expression suivante \begin{equation*} @@ -15,7 +15,7 @@ Nous allons nous contenter ici d'étudier les fonctionnelles, c'est-à -dire des \end{equation*} \end{definition} -\begin{definition}{Limite} +\begin{definition}[Limite] \label{def:background-dif-lim} Soit $f$ une fonction de $\mathbb{R}^m$ dans $\mathbb{R}^n$. Soit $x\in\mathbb{R}^m$. @@ -26,7 +26,7 @@ Nous allons nous contenter ici d'étudier les fonctionnelles, c'est-à -dire des Nous écrivons $lim_{a\rightarrow x}f(a)=y$ car $y$ est alors unique~\cite{Bourrigan2021-dd}. \end{definition} -\begin{definition}{Différentielle} +\begin{definition}[Différentielle] \label{def:background-dif-dif} Soit $f$ une fonction de $\mathbb{R}^n$ dans $\mathbb{R}$. Nous dirons que $f$ est différentiable en $a\in\mathbb{R}^n$ si et seulement si il existe diff --git a/background/eq.tex b/background/eq.tex index b8e431f..64f3de3 100644 --- a/background/eq.tex +++ b/background/eq.tex @@ -8,7 +8,7 @@ Ces biais sont appris par le modèle car ils sont présents dans les données d' Nous représentons sur la Figure~\ref{fig:background-eq-logi} comment une régression logistique peut présenter une différence de traitement entre deux sous-groupes de la population. Nous observons que comme il y a moins de données de femmes, le modèle a appris une courbe qui se rapproche plus des données d'hommes. Comme le seuil de ce modèle est situé à $0,5$, nous voyons que tous les points rouges qui correspondent aux femmes passent au dessus du seuil représenté par la ligne horizontale grise. -Ainsi, bien que les étiquettes soient réparties équitablement chez les hommes et chez les femmes, le modèle classifie toutes les femme dans la classe 1. +Ainsi, bien que les étiquettes soient réparties équitablement chez les hommes et chez les femmes, le modèle classifie toutes les femmes dans la classe 1. Il s'agit ici d'un cas scolaire sur des données générées mais supposons que la classe 1 soit désavantageuse. Par exemple, imaginons que ce modèle soit utilisé dans un programme de recrutement automatique. La classe 0 implique que le candidat est sélectionné, la classe 1 implique que le candidat est rejeté. @@ -40,13 +40,13 @@ Alors ce programme serait discriminatoire car bien que 50\% des femmes et 50\% d \subsubsection{Définitions de l'équité} L'équité en apprentissage automatique se présente sous deux aspects qui mettent en lumière deux visions différentes : -\textbf{L'équité individuelle}\footnote{Individual fairness} +\textbf{L'équité individuelle}\footnote{\textit{Individual fairness}} cherche à faire en sorte que deux données, à toutes choses égales, excepté l'attribut sensible, produisent la même prédiction. -\textbf{L'équité de groupe}\footnote{Group fairness} +\textbf{L'équité de groupe}\footnote{\textit{Group fairness}} vient de l'idée que différents sous-groupes définis par un critère de discrimination devraient être traités de manière similaire. Il y a différentes définitions mathématiques de l'équité de groupe. -Nous allons en regarder trois qui sont bien établies dans la littérature et souvent utilisées : l'effet différencié\footnote{disparate impact} la parité démographique\footnote{Demographic parity} et l'équité des chances\footnote{Equality of odds}. +Nous allons en regarder trois qui sont bien établies dans la littérature et souvent utilisées : l'effet différencié\footnote{\textit{disparate impact}} la parité démographique\footnote{\textit{Demographic parity}} et l'équité des chances\footnote{\textit{Equality of odds}}. Pour cela nous allons considérer le cadre suivant : Nous avons un classifieur modélisé par une variable aléatoire $\hat{Y}$ qui essaie d'inférer l'étiquette $Y$. @@ -62,7 +62,7 @@ De plus, nous avons l'attribut sensible modélisé par $S$ qui prend ses valeurs Cette notion ne fonctionne que pour $F=G=\{0,1\}$. \end{definition} -Cette définition est utilisé aux États-Unis pour montrer qu'une structure a une politique discriminatoire à l'encontre d'une minorité, comme nous l'avons vu à la Section~\ref{sec:contexte-legal}. +Cette définition est utilisée aux États-Unis pour montrer qu'une structure a une politique discriminatoire à l'encontre d'une minorité, comme nous l'avons vu à la Section~\ref{sec:contexte-legal}. \begin{definition} \label{def:background-eq-dp} @@ -79,7 +79,7 @@ Pour certaines applications cet effet n'est pas souhaitable. Ainsi Hardt et al.~\cite{fairmetric2} proposent de modifier la parité démographique pour prendre en compte l'étiquette, ce qui donne la définition suivante : \begin{definition} \label{def:background-eq-eoo} - $\hat{Y}$ satisfait l'équité des chances pour $S$ si et seulement si : $\forall (\hat{y},y,s_1,s_2)\in E\times E\times G\times G \quad + $\hat{Y}$ satisfait l'\emph{équité des chances} pour $S$ si et seulement si : $\forall (\hat{y},y,s_1,s_2)\in E\times E\times G\times G \quad P(\hat{Y}=\hat{y} | S=s_1,Y=y) = P(\hat{Y}=\hat{y} | S=s_2,Y=y)$. \end{definition} diff --git a/background/ml.tex b/background/ml.tex index 55fce3c..9b9e665 100644 --- a/background/ml.tex +++ b/background/ml.tex @@ -2,7 +2,7 @@ L'apprentissage automatique\footnote{\textit{Machine learning}} est le fondement Les réseaux de neurones profonds ont révolutionné ce domaine notamment grâce à l'augmentation de la puissance de calcul des cartes graphiques~\cite{lecun2019quand}. \subsection{Principe} -Reprenons la définition de l'IA donnée dans le Règlement UE 2024/1689 pour une harmonisation des régulations relatives a l'IA~\cite{aiact} et notamment la Figure~\ref{fig:contexte-IAUE}. +Reprenons la définition de l'IA donnée dans le Règlement UE 2024/1689 pour une harmonisation des régulations relatives à l'IA~\cite{aiact} et notamment la Figure~\ref{fig:contexte-IAUE}. Cette définition exprime bien le fonctionnement d'un modèle d'apprentissage automatique. Le modèle est une fonction qui prend en entrée une donnée d'entrée et des paramètres et qui renvoie une prédiction. Le vie d'un modèle se passe en deux étapes. @@ -67,8 +67,8 @@ Nous pouvons donc appliquer une descente de gradient comme vu à la Section~\ref \begin{equation*} \text{min}_{\theta\in\Theta}c(\theta) \end{equation*} -En pratique la quantité $c(\theta)$ est évaluée en calculant la moyenne empirique sur un grande nombre de données, ce qui converge vers l'espérance d'après la loi des grands nombres~\cite{proba}. -$c$ n'étant pas forcément convexe, en fonction du point de départ ($x_0$) l'algorithme de descente de gradient peut converger vers un minimum local qui donnera un modèle finale avec de piètres qualités. +En pratique la quantité $c(\theta)$ est évaluée en calculant la moyenne empirique sur un grand nombre de données, ce qui converge vers l'espérance d'après la loi des grands nombres~\cite{proba}. +$c$ n'étant pas forcément convexe, en fonction du point de départ ($x_0$) l'algorithme de descente de gradient peut converger vers un minimum local qui donnera un modèle final avec de piètres qualités. C'est ce que nous représentons dans la Figure~\ref{fig:background-opti-cvx} où nous voyons une convergence vers un minimum local alors que le point recherché est au fond d'une vallée plus profonde. Très souvent l'algorithme d'optimisation utilisé est la descente de gradient stochastique (SGD)\footnote{\textit{Stochastic gradient descent}}~\cite{amari1993back}, c'est une version modifiée de la descente de gradient adaptée aux réseaux de neurones qui permet d'accélérer la convergence~\cite{bottou2012stochastic} et d'éviter les minima locaux~\cite{bottou1991stochastic}. @@ -156,7 +156,7 @@ Nous appelons cela l'\emph{optimisation des hyperparamètres}. Pour cela nous repartons de l'Equation~\ref{eq:background-ml-ac} et remplaçons $P(Y=0)$ et $P(Y=1)$ par $\frac{1}{2}$. Ainsi l'exactitude équilibrée est la moyenne de $P(\hat{Y}=0|Y=0)$ et de $P(\hat{Y}=1|Y=1)$. De manière plus générale, l'exactitude équilibrée est - $\frac{1}{\#F}\sum_{f\in F}P(\hat{Y}=F\mid Y=F)$. + $\frac{1}{\#F}\sum_{f\in F}P(\hat{Y}=f\mid Y=f)$. C'est-à -dire que nous regardons pour chaque classe séparément (homme ou femme dans notre exemple) la probabilité qu'un point soit bien classifié. Ainsi, en calculant l'exactitude équilibrée avec l'exemple précèdent nous obtenons $\frac{1+0}{2}=0,5$. Ce résultat montre bien que le modèle n'a pas d'utilité. @@ -165,11 +165,11 @@ Nous appelons cela l'\emph{optimisation des hyperparamètres}. Un grand nombre d'algorithmes d'apprentissage automatique pour la classification binaire optimise les paramètres d'une fonction à valeurs dans $[0,1]$ (ou dans un ensemble en bijection avec $[0,1]$). C'est le cas par exemple des réseaux de neurones avec un unique neurone dans la couche finale, de la régression logistique, de la forêt aléatoire, etc. Nous appelons cette étape intermédiaire dans la classification, logit ou \textit{soft label}. - La classification se fait grâce un seuil sur ce logit. + La classification se fait grâce à un seuil sur ce logit. C'est-à -dire que si on appelle $g(x)$ le logit de $x$, le modèle de classification peut se décomposer par : $f_\uptau = 1_{[\uptau,1]}\circ g$. Ainsi si nous calculons l'exactitude, l'exactitude équilibrée ou toute autre métrique que nous avons présentée précédemment, elle dépendra du seuil ($\uptau$). - Pour palier cela nous regardons la ROC : une courbe paramétrique qui, au seuil, associe le taux de faux positifs (FPR)\footnote{\textit{False positive rate}} et le taux de vrais positifs (TPR)\footnote{\textit{True positive rate}}. + Pour pallier cela nous regardons la ROC : une courbe paramétrique qui, au seuil, associe le taux de faux positifs (FPR)\footnote{\textit{False positive rate}} et le taux de vrais positifs (TPR)\footnote{\textit{True positive rate}}. Nous définissons ces quantités comme suit : \begin{itemize} \item Taux de faux positifs : $\text{fpr}(\uptau) = P(f_\uptau\circ X=1\mid Y=0)$ @@ -325,8 +325,8 @@ Une architecture classique utilise les couches de convolution à l'entrée du rà L'idée étant que le modèle commence par extraire des représentations puis les analyse. Dans ce type de couche, le paramètre $\theta_i$ est le noyau de convolution. -C'est la fonction par laquelle on multiple le signal sous l'intégrale. -Pour un noyau de convolution de taille $c$ +C'est la fonction par laquelle on multiplie le signal sous l'intégrale. +Pour un noyau de convolution de taille $c$. \begin{equation} f_i(x,\theta_i) = \left\{ \begin{matrix} @@ -340,7 +340,7 @@ Où $x'$ est tel que $x'(u-t)$ soit toujours bien défini par rembourrage\footno \subsubsection{Modèle génératif} \label{sec:background-generation} -Un générateur est une fonction qui prend en entrée un jeu de données réel et renvoie un jeu de données synthétique. +Un générateur est une fonction qui prend en entrée un jeu de données réel et renvoie un jeu de données synthétiques. Cette définition est suffisamment générale pour que l'identité soit un générateur. Nous dirons que la sortie du générateur identité sont des données réelles et nous appellerons données synthétiques la sortie de n'importe quel autre générateur. @@ -349,7 +349,7 @@ Le but d'un GAN est de générer des échantillons réalistes suivant une loi de Pour arriver à cela, un GAN utilise deux réseaux de neurones : un générateur et un discriminateur. Le domaine du générateur est de petite dimension comparativement à son codomaine. La dimension du codomaine est la même que celle des données que l'on souhaite générer. -Par exemple, pour générer de images de taille 64 par 64, le codomaine est $\mathbb{R}_{64,64}$. +Par exemple, pour générer des images de taille 64 par 64, le codomaine est $\mathbb{R}_{64,64}$. Pour générer une donnée, nous évaluons le générateur sur un point généré à partir d'une loi normale multidimensionnelle. La sortie de générateur est la nouvelle donnée générée. @@ -357,7 +357,7 @@ Le discriminateur est utilisé uniquement lors de l'entraînement du GAN et a po Pour cela, le discriminateur est un réseau de neurones ayant une tâche de classification : inférer si une donnée est synthétique ou réelle. Ainsi, dans la procédure d'entraînement, le discriminateur et le générateur sont en compétition : le but du générateur est de tromper le discriminateur à classifier une donnée synthétique comme réelle. -Les GAN ne sont pas la seule manière de créer des données synthétiques, il existe aussi les auto encodeurs qui peuvent se rapprocher de méthodes plus classiques de génération de à partir d'une loi de probabilité qui admet une densité. +Les GAN ne sont pas la seule manière de créer des données synthétiques, il existe aussi les auto encodeurs qui peuvent se rapprocher de méthodes plus classiques de génération à partir d'une loi de probabilité qui admet une densité. Pour une variable aléatoire $X$ qui admet une densité $f$, la méthode d'inversion permet de générer des points tels que la loi empirique de ces points converge vers la loi de $X$ quand le nombre de points tend vers l'infini. Pour cela on génère $n$ points $x$ suivant une loi uniforme sur $[0,1]$ et pour chacun de ces points on calcul $F^{-1}(x)$. Où $F$ est une primitive de $F$. @@ -378,7 +378,7 @@ L'apprentissage ensembliste\footnote{\textit{Ensemble learning}} vise à combine Cette procédure se passe en deux temps. Le premier consiste à créer un ensemble de classifieurs faibles. Le second consiste à combiner ces classifieurs pour en obtenir un nouveau efficace. -Bien sûr ces deux étapes sont liées et doivent être réfléchies ensembles. +Bien sûr ces deux étapes sont liées et doivent être réfléchies ensemble. L'apprentissage ensembliste intervient à deux niveaux dans ce manuscrit. Déjà nous utiliserons beaucoup la forêt aléatoire\footnote{\textit{Random forest}} qui est un algorithme particulièrement efficace pour les bases de données tabulaires~\cite{shwartz2022tabular,grinsztajn2022tree}. diff --git a/background/proba.tex b/background/proba.tex index ad43c11..42296ff 100644 --- a/background/proba.tex +++ b/background/proba.tex @@ -56,7 +56,7 @@ Nous définissons la mesure image de $f$ par $d$, que nous notons $d_f$, par l'e \right. \end{equation} -\begin{definition}{Intégrale} +\begin{definition}[Intégrale] Soit $(E,\mathcal{E},\mu)$ un espace mesuré. Pour une fonction $f=\sum_{i\in I}\alpha_i 1_{A_i}$, nous dirons étagée, avec $\{A_i\mid i\in I\} \subset \mathcal{E}$ et $\alpha_i\in\mathbb{R}^+$. @@ -74,8 +74,8 @@ Nous définissons la mesure image de $f$ par $d$, que nous notons $d_f$, par l'e \end{equation*} \end{definition} -\begin{definition}{Mesure à densité} - Soit $(E,\mathcal{E},\mu)$ un espace mesuré et $f$ une fonctione mesurbale positive et intégrable. +\begin{definition}[Mesure à densité] + Soit $(E,\mathcal{E},\mu)$ un espace mesuré et $f$ une fonction mesurable positive et intégrable. Nous définissons la mesure à densité de $f$ de la manière suivante : \begin{equation*} \mu.f:\left\{ @@ -101,13 +101,13 @@ Pour un évènement $a\in\mathcal{A}$ tel que $d(a)\neq 0$, la probabilité cond \end{equation*} La loi de probabilité d'une variable aléatoire $f$ sur $(X,\mathcal{X})$ est la mesure image de $f$ sur $d$. -S'il existe une fonction mesurable $g$ telle que $P_f = P.g$ nous dirons que $f$ admet $g$ comme densité. +Sb'il existe une fonction mesurable $g$ telle que $P_f = P.g$ nous dirons que $f$ admet $g$ comme densité. -Nous dirons que deux variables aléatoires $f$ et $g$ sont indépendantes si et seulement si la loi de la variables aléatoire $h:\omega\mapsto (f(\omega),g(\omega))$ est la mesure produit de la loi de $f$ et $g$. +Nous dirons que deux variables aléatoires $f$ et $g$ sont indépendantes si et seulement si la loi de la variable aléatoire $h:\omega\mapsto (f(\omega),g(\omega))$ est la mesure produit de la loi de $f$ et $g$. De plus, dans le cas des variables aléatoires, il est courant d'écrire $\{f\in A\}$ pour $f^{-1}(A)$ et $\{f=a\}$ pour $f^{-1}(\{a\})$. -\begin{definition}{Espérance} +\begin{definition}[Espérance] Pour une variable aléatoire $X$, on définit l'espérance de $X$ par la formule suivante. \begin{equation*} E(X) = \int_{\Omega}X(\omega)dP(\omega) |