summaryrefslogtreecommitdiff
path: root/background
diff options
context:
space:
mode:
authorJan Aalmoes <jan.aalmoes@inria.fr>2024-09-21 16:27:27 +0200
committerJan Aalmoes <jan.aalmoes@inria.fr>2024-09-21 16:27:27 +0200
commit4aae3ea0427a6c9e9a8519a38d9d9d0ac5f0ec9c (patch)
tree9c7a60521e542fae4742f2504f8397fd047ce51f /background
parent391e6017f893d22b0c1c6394d8f77c03701c8a69 (diff)
fin introbrouillon
Diffstat (limited to 'background')
-rw-r--r--background/alg.tex99
-rw-r--r--background/dif.tex95
-rw-r--r--background/eq0
-rw-r--r--background/eq.tex99
-rw-r--r--background/figure/eq/reg_unfair.pdfbin0 -> 17023 bytes
-rw-r--r--background/main.tex21
-rw-r--r--background/ml.tex63
-rw-r--r--background/opti.tex59
-rw-r--r--background/proba.tex22
-rw-r--r--background/set.tex17
10 files changed, 403 insertions, 72 deletions
diff --git a/background/alg.tex b/background/alg.tex
new file mode 100644
index 0000000..b2f6418
--- /dev/null
+++ b/background/alg.tex
@@ -0,0 +1,99 @@
+\subsubsection{Espace vecotriel}
+Les espaces vectoriels sont des structure fondamentales qui vont nous servir à comprendre comment fonctionne l'entraînement des réseaux de neurones.
+\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}
+ \item $\forall (e,f)\in E^2~e+f\in E$ (loi interne)
+ \item $\forall (e,f,g)\in E^2~(e+f)+g=e+(f+g)$
+ \item $\exists 0\in E~\forall e\in E~e+0=e\wedge0+e=e$
+ \item $\forall a\in E\exists b\in E~a+b=e\wedge b+e=e$
+ \end{enumerate}
+ Dans le cas où en plus de ces trois points
+ $\forall (e,f)\in E^2~e+f=f+e$
+ Nous dirons que le groupe $(E,+)$ est abélien.
+\end{definition}
+
+\begin{definition}{Espace vectoriel}
+ Soit $E$ un ensemble munit d'une loi interne $+$ et d'une loi externe $\cdot:\mathbb{R}\times E\rightarrow E$.
+ Sout les conditions suivantes, nous dirons que $(E,+,\cdot)$ est un espace vectoriel.
+ \begin{enumerate}
+ \item $(E,+)$ est un groupe abélien.
+ \item $\forall (r,e,f)\in\mathbb{R}\times E\times E~r(e+f)=re+rf$
+ \item $\forall (r,s,e)\in\mathbb{R}\times\mathbb{R}\times E~(r+s)e=re+se$
+ \item $\forall (r,s,e)\in\mathbb{R}\times\mathbb{R}\times E~(rs)e=r(se)$
+ \item $\forall e\in E~1e=e$
+ \end{enumerate}
+\end{definition}
+
+Alors $\forall n\in\mathbb{N}~\mathbb{R}^n$ est un espace vectoriel.
+
+\subsubsection{Application linéaire}
+\label{sec:background-alg-L}
+Soit $E$ et $F$ deux espaces vectoriels.
+Une application linéaire $h:E\rightarrow F$ est telle que
+$\forall (r,e,f)\in \mathbb{R}\times E\times E~h(re+f)=rh(e)+h(f)$
+Et on note $\mathcal{L}(E,F)$ l'ensemble des applications linéaire de $E$ dans $F$.
+Si $E=\mathbb{R}^m$ et $F=\mathbb{R}^n$ alors
+la matrice de $f$ est
+\begin{equation*}
+ M_f=
+ \left(
+ \begin{matrix}
+ f(e_0)_0&\cdots&f(e_{m-1})_0\\
+ \vdots&\vdots&\vdots\\
+ f(e_{0})_{n-1}&\cdots&f(e_{m-1})_{n-1}\\
+ \end{matrix}
+ \right)
+\end{equation*}
+Où
+\begin{equation*}
+ \forall i\in m~e_i=\left(
+ \begin{matrix}
+ 0\\
+ \vdots\\
+ 0\\
+ 1\\
+ 0\\
+ \vdots\\
+ 0
+ \end{matrix}
+ \right)
+ \begin{matrix}
+ \\
+ \\
+ \\
+ i\\
+ \\
+ \\
+ \\
+ \end{matrix}
+\end{equation*}
+On appelera par la suite $(e_0,\cdots,e_{m-1})$ \emph{base canonique} de $\mathbb{R}^m$.
+On note $f(e_j)_i = M_f(i,j)$, c'est l'entré de $M_f$ se situant à la ligne $i$ et colone $j$.
+
+\begin{propriete}
+ La fonction $M_\square$ est une bijection.
+\end{propriete}
+
+Nous définisson la mutliplication matricielle de la manière suiavante :
+Soient $f\in\mathcal{L}(\mathbb{R}^m,\mathbb{R}^n)$ et $g\in\mathcal{L}(\mathbb{R}^n,\mathbb{R}^o)$.
+Alors
+\begin{equation*}
+ M_gM_f=M{g\circ f}
+\end{equation*}
+\begin{propriete}
+\begin{equation*}
+ M_gM_f(i,j)=\sum_{k=0}^n M_g(i,k)M_f(k,j)
+\end{equation*}
+\end{propriete}
+
+\begin{definition}
+ \label{def:background-alg-tr}
+ Soit $M$ une matrice à $n$ lignes et colonnes.
+ Alors nous définisson la trace de $M$ de la manière suivante.
+ \begin{equation*}
+ \text{Tr}(M)=\sum_{i=0}^{n-1}M(i,i)
+ \end{equation*}
+\end{definition}
+
diff --git a/background/dif.tex b/background/dif.tex
new file mode 100644
index 0000000..2ba01f1
--- /dev/null
+++ b/background/dif.tex
@@ -0,0 +1,95 @@
+Le but du calcul diférentiel est l'étude des variation infinitésimale des fonctions.
+Nous allons nous contenter ici d'étudier les fonctionelles, c'est à dire des fonction de $\mathbb{R}^n$ dans $\mathbb{R}$ car c'est ce dont nous allons avoir besoin en aprentissage automatique.
+\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}
+ \label{def:background-dif-eucl}
+ Soit $x\in\mathbb{R}^n$, nous definisson le norme euclidienne de $x$ par l'expression suivante
+ \begin{equation*}
+ ||x||={\langle x,x\rangle}^{\frac{1}{2}}
+ \end{equation*}
+\end{definition} 
+
+\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$.
+ Nous dirons que $f$ admet une limite en $x$ si il existe $y\in\mathbb{R}^n$ tel que
+ \begin{equation*}
+ \forall\varepsilon>0\exists\delta>0\forall a\in\mathbb{R}^m~||a-x||<\delta\implies||f(a)-y||<\varepsilon
+ \end{equation*}
+ Nouse ecrivons alors $lim_{a\rightarrow x}f(a)=y$ car $y$ est alors unique~\cite{Bourrigan2021-dd}.
+\end{definition}
+
+\begin{definition}{Differentielle}
+ \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
+ $df(a)\in\mathbb{L}(\mathbb{R}^n,\mathbb{R})$
+ telle que il existe $\varepsilon:\mathbb{R}\rightarrow \mathbb{R}$ telle que pour tout $h\in\mathbb{R}^n$
+ \begin{equation*}
+ f(a+h) = f(a)+df(a)h+||h||\varepsilon(h)
+ \end{equation*}
+ avec
+ $lim_{h\rightarrow 0}\varepsilon(h)=0$.
+ $df(a)$ s'apelle la \emph{diférentielle} de $f$ en $a$.
+\end{definition}
+Dans le cas où $f$ est différentiable en tout point de $\mathbb{R}^n$ alors
+la fonction $f$ peut être vu comme $n$ fonction $f_0\cdots f_{n-1}$ de $\mathbb{R}$ dans $\mathbb{R}$ avec
+\begin{equation*}
+ f(x)=\left(
+ \begin{matrix}
+ f_0(x_0)
+ \cdots
+ f_{n-1}(x_{n-1})
+ \end{matrix}
+ \right)
+\end{equation*}
+Toutes les fonctions de $f_i$ sont différentiables.
+\begin{definition}
+ \label{def:background-math-grad}
+ Pour tout $x\in\mathbb{R}$ nous définison la $i$ème dérivée partielle de $f$ par
+ \begin{equation*}
+ \partial_i f :\left\{
+ \begin{matrix}
+ \mathbb{R}\rightarrow \mathbb{R}\\
+ x\mapsto df(x)e_i
+ \end{matrix}
+ \right.
+ \end{equation*}
+ Où $e_i$ est le $i$ème vecteur de la base canonique de $\mathbb{R}^n$.
+ Et nous définissons le gradient de $f$ par la formule suivante :
+ \begin{equation*}
+ \nabla f:\left\{
+ \begin{matrix}
+ \mathbb{R}^n\rightarrow \mathbb{R}^n\\
+ x\mapsto\left(
+ \begin{matrix}
+ \partial_0 f(x)\\
+ \vdots\\
+ \partial_{n-1} f(x)\\
+ \end{matrix}
+ \right)
+ \end{matrix}
+ \right.
+ \end{equation*}
+\end{definition}
+Pour le.a lecteur.ice familier avec la dériviabilité notons que
+\begin{equation*}
+ lim_{h\rightarrow 0}\frac{f(x+he_i)-f(x)}{h} = \partial_i f(x)
+\end{equation*}
+
+
+\begin{propriete}
+ Soit $f:\mathbb{R}^n\rightarrow \mathbb{R}$ différentiable.
+ \begin{equation*}
+ \forall (x+h)\in{\mathbb{R}^n}^2~df(x)h =
+ \langle \nabla f(x),h\rangle
+ \end{equation*}
+\end{propriete}
+
diff --git a/background/eq b/background/eq
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/background/eq
diff --git a/background/eq.tex b/background/eq.tex
index 446ad95..b756361 100644
--- a/background/eq.tex
+++ b/background/eq.tex
@@ -1,12 +1,43 @@
-
\label{sec:bck_fair}
L'équitée algorithmique à pour but de réduire les bias dans le modèle prédictif.
-En effet, le fait qu'une donnée d'entraînement appratienne à certainne minorité peut avoir un impacte sur la qualitée de la prédiction.
+C'est-à dire, comment peut on faire en sorte que le modèle ne désavantage pas ou n'avantge pas certain sous-groupes ?
+En effet, le fait qu'une donnée appratienne à certainne minorité peut avoir un impacte sur la qualitée de la prédiction.
Par exemple en justice prédictie, la couleur de peau d'un peau d'un coupable jou un rôle qui n'est pas négligable dans la prédiction du récidivisme au Etats Unis~\cite{fairjustice}.
-Les minoritée sont identifié par un attribut sensible comme la couleur de peau, le genre ou l'orientation sexuelle.
-Pour savoir si un attribut est sensible ou non, nous pouvons nous référer à l'observatoire de inégalités.
+Pour savoir si un attribut est sensible ou non, non pouvon non referer à la liste des vignt-cinq critère de disrimination présenté à la Section~\ref{sec:contexte-legal-discrimination}.
Ces bias sont appris par le modèle car ils sont présent dans les donnés d'entraînement qui reflète la population dans laquelle ces donnée ont été prélevés.
+Nous représentons sur la Figure~\ref{fig:background-eq-logi} comment une regression logistique peut présenter une différence de traitement entre deux sous groupe de la population.
+Nous observons que comme il y a moins de donnée de femmes, le modèle à appris une courbe qui se rapproche plus des données hommes.
+Comme le seuil de ce modèle est situé à $0,5$, nous voyons que tous le points rouges qui correspondent au femmes passent au dessus du seuil représenté par la ligne horizontale grise.
+Ainsi, bien que les étiquettes soient répartis équitablement chez les hommes et ches les femmes, le modèle classife toutes les femme dans la classe 1.
+Il sagit ici d'un cas scolaire sur des données générés mais supposons que la classe 1 soit désavantageuse.
+Par exemple, imaginons que ce modèle soit utilisé dans un programme de rectruement automatique.
+La classe 0 implique que le candidat est séléctioné, classe 1 implique que le candidat est réjété.
+Alors ce programme serait discriminatoire car bien que 50\% des femme et 50\% des homme ont une étiquette qui les rendent adminssibles, le programme ne sélectione que des candidats hommes.
+
+\begin{figure}
+ \centering
+ \includegraphics[width=0.5\linewidth]{background/figure/eq/reg_unfair.pdf}
+ \begin{tabular}{|c|c|c|c|}
+ \hline
+ &\textbf{Homme}&\textbf{Femme}&\textbf{Total}\\
+ \hline
+ \textbf{Effectif}&100&20&120\\
+ \hline
+ \makecell{
+ \textbf{Répartition}\\
+ $\#\{Y=0\}/\#\{Y=1\}$}
+ &10/10&50/50&60/60\\
+ \hline
+ \textbf{Exactitude}&1&0,5&0,92\\
+ \hline
+ \end{tabular}
+ \caption{Exemple d'un regression logistique qui a une meilleur performance pour le homme que pour les femmes.
+ Les donnée provienne d'une génération et servent uniquement à titre d'illustration.
+ La regression logisitque à bien été optimisé sur les donnée générés en utilise l'algorithme de scikit learn~\cite{scikit-learn}}
+ \label{fig:background-eq-logi}
+\end{figure}
+\subsubsection{Définitions de l'équitée}
L'équitée en apprantissag automatique se présente sous deux aspect qui mettent lumière deux visions différentes :
\textbf{L'équitée individuelle}\footnote{Individual fairness}
@@ -15,30 +46,58 @@ cherche à faire en sorte que deux donnée, à toutes choses égale exepté l'at
\textbf{L'équitée de groupe}\footnote{Group fairness}
Vient de l'idée que different sous groupes défini par un critère de discrimination devrait être traite de manière similaire.
Il y a différentes définitions mathématiques de l'équite de groupe.
-Nous allons en regarder deux qui sont bien établis dans la litérature et souvant utilisé : la paritée demographique\footnote{Demographic parity} et l'équitée de chances\footnote{Equality of odds}.
+Nous allons en regarder trois qui sont bien établis dans la litérature et souvant utilisé : l'effet différencié\footnote{disparate impact} la paritée demographique\footnote{Demographic parity} et l'équitée de chances\footnote{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 essai d'inférer l'étiquette $Y$.
+Ces deux variables prennent leurs valeurs dans un ensemble $F$.
+De plus, nous avons l'attribut sensible modélisé par $S$ qui prend ses valeurs dans $G$.
+
+\begin{definition}
+\label{def:background-eq-di}
+ L'\emph{effet différencié} de $\hat{Y}$ est
+ \begin{equation*}
+ \frac{P(\hat{Y}=Y\mid S=0)}{P(\hat{Y}=Y\mid S=1)}
+ \end{equation*}
+ Cette notion ne fonctionne que pour $F=G=\{0,1\}$.
+\end{definition}
+
+Cette définition est utilisé au Etats Unis pour montrer qu'une structure a une politique de discrimination à l'encontre d'une minorité comme nous l'avons vus à la Section~\ref{sec:contexte-legal}.
+
\begin{definition}
\label{def:background-eq-dp}
- $\hat{Y}$ satisfies demparity for $S$ if and only if: $P(\hat{Y}=0 | S=0) = P(\hat{Y}=0 | S=1)$.
- From that, we will call $|P(\hat{Y}=0 | S=0) - P(\hat{Y}=0 | S=1)|$ the demPar-level of $\hat{Y}$.
+ $\hat{Y}$ satisfait la \emph{parité démographique} pour $S$ si et seulement si : $\forall (y,s_1,s_2)\in F\times G\times G~P(\hat{Y}=y | S=s_1) = P(\hat{Y}=y | S=s_2)$.
\end{definition}
-demparity is the historical definition of fairness.
-Legally, disparate impact is the fairness definition recognized by law, where 80\% disparity is an agreed upon tolerance decided in the legal arena.
-demparity ensures that the number of correct prediction is the same for each population.
-However, this may result in different false positive and true positive rates if the true outcome does actually vary with $S$~\cite{dpbad}.
-Hardt et al.~\cite{fairmetric2} proposed eo as a modification of demparity to ensure that both the true positive rate and false positive rate will be the same for each population.
+La parité démographique ne prend pas en compte l'étiquette, cette définition est equivalante à dire que l'attribut sensbile est indépendante de la prédiction (même si l'étiquette ne l'est pas).
+Cela peut créer de cas où en cherchant à imposer cette metrique, nous obtenons des taux de vrais et de faux positif différents pour les sous groupes~\cite{dpbad}.
+Ainsi, la parité demographique peut être repsécté tout en dégradant l'effet différencié.
+Il n'est pas nécéssaire que si $\hat{Y}=Y$ (le classifieur infère parfaitement l'étiquette) alors la parite démographique soit respécté.
+Chercher à imposer cette définition revient à faire de la discrimination positive.
+Pour certaines applications cette effet n'est pas souaitable.
+Ainsi Hardt et al.~\cite{fairmetric2} propose 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}$, classifier of $Y$, satisfies equality of odds for $S$ if and only if: $\forall (\hat{y},y)\in\{0,1\}^2 \quad
- P(\hat{Y}=\hat{y} | S=0,Y=y) = P(\hat{Y}=\hat{y} | S=1,Y=y)$.
+ $\hat{Y}$ satisfait l'équitée 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}
-The above fairness definitions can be achieved using three main fairness mechanisms: (a) pre-processing, (b) in-processing and (c) post-processing. \textit{Pre-processing} algorithms such as reweighing requires access to the training data and assigns weights to the data records to remove discrimination~\cite{preprocessing}.
-\textit{In-processing} algorithms such as advdebias~\cite{debiase} and egd~\cite{reductions} add constraint during $targetmodel$'s training to ensure fairness. %reductions
-\textit{Post-processing} techniques, in turn, hide the bias in output predictions to satisfy the above fairness constraints but the underlying model is still biased.
-Similar to previous work~\cite{chang2021privacy}, we focus on in-processing algorithms.
+\subsubsection{Imposer l'équitée comme contrainte d'optimisation}
+Ces définitions peuvent être imposé au modèle de trois manières:
+\begin{enumerate}
+ \item Prétraitement\footnote{Preprocessing} :
+ Le prétraitement consiste à modifier les données avant l'entraînement pour en retirer les bias.
+ Pour cela le rééquilibrage des poids\footnote{Reweighing} s'attaque au problème des biais en attribuant un poid à chaque donnée pour corrigier le déséquilibre dans un attribut sensible~\cite{preprocessing}.
+ \item Entraitement\footnote{Inprocessing} :
+ Ces algorithmes, comme le rééquilibrage adversariel\footnote{Adversarial debiasing}~\cite{debiase} ou la descente de gradient exponentiée\footnote{Exponentiated gradient descent}~\cite{reductions}, modifient l'algorithme d'optimisation du modèle pour impose les définitions équité sous forme d'optimisation sous contrainte.
+ \item Postraitement\footnote{Postprocessing} :
+ Cette methode consiste à cacher les biais dans la sortie du modèle.
+ Le modèle est biaisé mais sa sortie est filtrée.
+\end{enumerate}
+Comme nous nous intéressons au interaction entre équitée et confidentialité, le Chapitre~\ref{sec:aia} s'inscrit dans la lignée de travaux précédent qui se concentrent sur les méchanismes entraitements~\cite{chang2021privacy}.
+
+\paragraph{Déscente de gradient exponentiée}
-Our work focuses on the theoretical guaranties on attribute inference attacks given by the different fairness notions and not so much on how to implement in-processing fairness mechanism.
-Nevertheless in the experiment section we try production ready state of the art implementations of those fairness constraints along unconstrained ML algorithm.
+\paragraph{Rééquilibrage adversariel}
diff --git a/background/figure/eq/reg_unfair.pdf b/background/figure/eq/reg_unfair.pdf
new file mode 100644
index 0000000..f177bc6
--- /dev/null
+++ b/background/figure/eq/reg_unfair.pdf
Binary files differ
diff --git a/background/main.tex b/background/main.tex
index 76c5a6f..e386396 100644
--- a/background/main.tex
+++ b/background/main.tex
@@ -1,5 +1,6 @@
Nous présentons dans ce chapitre les différentes théories et concepts sur les quelles se basent nos développements.
\section{Mathématiques}
+\label{sec:background-math}
L'originie de l'IA est mathématique~\cite{dartmouth,lecun2019quand}.
Nous utilisons dans ce manuscrit principalement deux théories : l'optimisation pour entraîner les modèles et les probabilitées pour les évaluer.
Ainsi nous présentons dans cette section les prérequi necessaire pour comprendre les prochains dévelopements.
@@ -17,13 +18,12 @@ a & b & a\iff b & a\implies b & a\wedge b & a\vee b & \neg a\\
\end{matrix}
\end{equation}
\subsection{Ensembles et fonctions}
-\label{sec:background-set}
+ \label{sec:background-set}
\input{background/set}
\subsection{Algèbre linéaire}
- \subsubsection{Espace vectoriel}
- \subsubsection{Application linéaires}
- \subsubsection{Matrices}
+ \label{sec:background-evr}
+ \input{background/alg}
\subsection{Mesurer le hasard pour prédire et inférer}
\label{sec:background-proba}
@@ -32,14 +32,9 @@ a & b & a\iff b & a\implies b & a\wedge b & a\vee b & \neg a\\
%\subsection{Probabilitées}
%\subsection{Statistiques}
-\subsection{Topologie}
- \subsubsection{Distances et normes}
- \subsubsection{Espaces topologiques}
- \subsubsection{Application aux fonctions}
-
\subsection{Calcul différentiel}
- \subsubsection{Différentiel}
- \subsubsection{Gradient}
+ \label{sec:background-dif}
+ \input{background/dif}
\subsection{Optimisation}
\label{sec:background-opti}
@@ -49,12 +44,12 @@ a & b & a\iff b & a\implies b & a\wedge b & a\vee b & \neg a\\
\label{sec:background-ml}
\input{background/ml}
-\section{Equité}
+\subsection{Equité}
\label{sec:background-eq}
\input{background/eq}
%\subsection{Différentes notions d'équité}
-\section{Confidentialité}
+\subsection{Confidentialité}
\label{sec:background-conf}
\input{background/conf}
%\subsection{Mitiger l'inéquitée}
diff --git a/background/ml.tex b/background/ml.tex
index d1f95b0..7372508 100644
--- a/background/ml.tex
+++ b/background/ml.tex
@@ -1,8 +1,8 @@
L'aprantissiage automatique\footnote{\textit{Machine learning}} est le fondement de l'IA moderne.
-
+Les réseaux de neuronnes profonds notament ont révolutioné ce domaines notament grâce à l'augmentation de la puissance de calcul et des cartes graphiques~\cite{lecun2019quand}.
\subsection{Principe}
-Repprenosn la définition de L'IA donnée dans le reglement UE 2024/1689 pour une harmonisation des regulations relatives a l'IA~\cite{aiact} et notamant la Figure~\ref{fig:contexte-IAUE}.
+Repprenons la définition de L'IA donnée dans le reglement UE 2024/1689 pour une harmonisation des regulations relatives a l'IA~\cite{aiact} et notamant la Figure~\ref{fig:contexte-IAUE}.
Cette definition exprime bien le fonctionement d'un modèle d'apprantissage automatique.
Le modèle est un fonctione qui prend en entrée une donnée d'entrée et des parametre et qui renvoi un prédiction.
Le vie d'un modèle se passe en deux étape.
@@ -18,7 +18,7 @@ Nous allons présenter ces deux aspects entraîenemnt et évaluation dans les Se
\label{sec:background-ml-train}
Les données qui servent à l'entraînement du modèle doivent posséder une étiquette : c'est-à dire le résultat atendu qui est consédéré comme vraie.
Dans la justice prédictive il s'agit de savoir si le coupabe à été récidiviste après avoir été libéré.
-Pour prendre un exemple plus scolaire, sur le jeu de donnée Iris~\cite{iris}, on cherche à classifier l'éspèce d'Iris à partir de la longeur et de la largeur des sépales et des pétales.
+Pour prendre un exemple plus scolaire, sur le jeu de donnée Iris~\cite{iris_53}, on cherche à classifier l'éspèce d'Iris à partir de la longeur et de la largeur des sépales et des pétales.
Nous utilisons, pour l'entraînement, des données de taille de sépale et pétale pour lesquelles nous conaissons l'espèce d'Iris.
En utilisant ces données nous ajustons les paramètres pour que le prédiction soit la plus précise possible.
@@ -57,15 +57,36 @@ Nous pouvons ainsi définir le coût induit par un choix de paramètres par la f
\right.
\end{equation*}
Ainsi nous avons une fonctionelle $c:\theta\mapsto E(C(\theta))$ en prenant l'espérence de coût.
-Nous pouvons donc appliquer un des algorithmes de minimisation vu à la Section~\ref{sec:background-opti-sgd} pour résoudre le probleme suivant :
+Nous pouvons donc appliquer une descente de gradient comme vu à la Section~\ref{sec:background-opti-sgd} pour résoudre le probleme suivant :
\begin{equation*}
\text{min}_{\theta\in\Theta}c(\theta)
\end{equation*}
En pratique la quantité $c(\theta)$ est évalué avec la loi des grands nombres~\cite{proba}.
+$c$ n'étant pas forcément convexe, un fonction du point de départ ($x_0$) l'algorithme de descente de gradient peut converger ver un minimum locale qui donnera un modèle finale avec de piètre qualités.
+C'est ce que nous réprésentons dans la Figure~\ref{fig:background-opti-cvx} ou nous voyons un convergence ver un minimum local alors que le point rechercher étant au fond d'une vallée plus profonde.
Très souvent l'algorithme d'optimisation utilisé est la déscente de gradient stochastique (SGD)\footnote{\textit{Stochastic gradient descent}}~\cite{amari1993back}, c'est une vérsion modifié de la descente de gradient adapté au réseaux de neurones qui permet d'accelerer la convergence~\cite{bottou2012stochastic} et d'éviter les minima locaux~\cite{bottou1991stochastic}.
Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élément, appelé \textit{mini batch}, d'une partition des données d'entrainement.
+La recherche des paramètre d'entraînement comme la finesse de la partition ou le pas et en prétique réalisé par des algorithme qui parcours un espace de recherche et regarde l'entraînement pour quelques itérations~\cite{bergstra2015hyperopt}.
+
+\begin{figure}
+ \begin{subfigure}{0.3\linewidth}
+ \includegraphics[width=\linewidth]{background/figure/ml/convex/f_local3.1.pdf}
+ \caption{L'algorithme tombe dans un minimum locale ($u_0=3,1$).}
+ \end{subfigure}
+ \begin{subfigure}{0.3\linewidth}
+ \includegraphics[width=\linewidth]{background/figure/ml/convex/f_local8.28.pdf}
+ \caption{L'algorithme tombe dans un minimum globale ($u_0=8,28$).}
+ \end{subfigure}
+ \begin{subfigure}{0.3\linewidth}
+ \includegraphics[width=\linewidth]{background/figure/ml/convex/conv_local.pdf}
+ \caption{Convergence vers un minimum locale et globale.}
+ \end{subfigure}
+ \caption{Impacte de la convexité sur la convergence.}
+ \label{fig:background-opti-cvx}
+\end{figure}
+
\subsection{Evaluer un modèle}
Nous appelerons ici évaluation d'un modèle le calcule des metriques qui permettent de juger de son utilité.
Ces métrique varient en fonction du type de modèle et du contexte dans lequel il est utilisé.
@@ -73,7 +94,7 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
Cela permet d'éviter de penser à tords qu'une patient n'est pas malade ce qui pourrai entraîner un retard dans sa prise en charge.
\subsubsection{Classification}
- \label{sec:backgroung-ml-classif}
+ \label{sec:background-ml-classif}
Les modèles de classification visent à attribuer à chaque point des données ébalué une classe parmis un ensemble fini.
Par exemple, dans le cadre de la justice prédictive, inférer pour chaque coupable si il sera recidivise ou non~\cite{zhiyuan2020limits}.
Quand il y a deux classes, comme dans l'exemple précédent avec \emph{récidivisite} ou \emph{non-récidiviste}, nous dirons que le modèle effectue un classification binaire.
@@ -95,10 +116,10 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
Grace à ces objets, nous allons définir des qunatités qui décrivent l'utilitée du modèle.
La première est
- l'\textit{accuracy}, c'est la prababilté que le classifieur prédise la bonne classe. Nous la définissons par $P(\hat{Y}=Y)$.
+ l'\emph{exactitude}\footnote{\textit{Accuracy}}, c'est la prababilté que le classifieur prédise la bonne classe. Nous la définissons par $P(\hat{Y}=Y)$.
Cette définission, bien que très intuitive, souffre qu'elle est sensible au désequillibre de classe~\footnote{\textit{Class imablance}}.
Considérons l'exemple suivant : imaginons un modèle depployé en 1982 qui chercheraià prédire si un employé cadre est une femme ou un homme.
- Supposons que ce modèle ai une \textit{accuracy} de $79\%$, c'est-à-dire que le modèle prédit justement le genre huit fois sur dix, nous dirons certainement que ce modèle est performant ?
+ Supposons que ce modèle ai une exactitude de $79\%$, c'est-à-dire que le modèle prédit justement le genre huit fois sur dix, nous dirons certainement que ce modèle est performant ?
Voici donc un modèle qui atteint cette performance :
\begin{equation}
f:
@@ -111,7 +132,7 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
\end{equation}
C'est-à-dire un modèle qui prédise toujours homme.
- Calculons son \textit{accuracy}, pour plus lisibilité nons encodons homme par $0$ et femme par $1$.
+ Calculons son exactitude, pour plus lisibilité nons encodons homme par $0$ et femme par $1$.
Comme le modèle prédit toujours homme, $P(\hat{Y}=0)=1$ et $P(\hat{Y}=1)=0$.
\begin{align}
&P(\hat{Y}=Y)\nonumber\\
@@ -121,14 +142,14 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
\end{align}
Or, en 1982 il y avait uniquement $21\%$ des cadres qui était des femmes~\cite{insee1982parite}, ansi $P(Y=0)=0,79$ et $P(Y=1)=0,21$.
- Nous avons donc bien une accuracy de $79\%$ bien que le modèle n'ai aucune utilité pratique !
+ Nous avons donc bien une exactitude de $79\%$ bien que le modèle n'ai aucune utilité pratique !
- Ainsi l'accuracy est significative uniquement quand $Y$ suit une loi uniforme.
- Nous définisson donc une autre métrique : la \textit{balanced accuracy}.
+ Ainsi l'exactitude est significative uniquement quand $Y$ suit une loi uniforme.
+ Nous définisson donc une autre métrique : l'\emph{exactitude équillibrée}\footnote{\textit{balanced accuracy}}.
Pour cela nous repartons de l'Equation~\ref{eq:background-ml-ac} et remplacons $P(Y=0)$ et $P(Y=1)$ par $\frac{1}{2}$.
- Ainsi la \textit{balanced accuracy} est la moyenne et $P(\hat{Y}=0|Y=0)$ et de $P(\hat{Y}=1|Y=1)$.
+ Ainsi l'exactitude équilibrée est la moyenne et $P(\hat{Y}=0|Y=0)$ et de $P(\hat{Y}=1|Y=1)$.
C'est-à-dire que nous regardons pour chaque classes séparément (homme ou femme notre exemple) la probabilité qu'on point soit bien classifié.
- Ainsi, en calculant la \textit{balanced accuracy} avec l'exemple précedent nous obtenons $\frac{1+0}{2}=0,5$.
+ Ainsi, en calculant l'exactitude equilibrée avec l'exemple précedent nous obtenons $\frac{1+0}{2}=0,5$.
Ce résultat montre bien que le modèle n'a pas d'utilité.
\paragraph{La courbe \textit{Receiver Operating Characteristic} (ROC)}
@@ -138,7 +159,7 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
La classification ce fait grace un seuil sur ce logit.
C'est à dire que si on apelle $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'\textit{accuracy}, la \textit{balance accuracy} ou tout autre metrique que nous avons présenté précédament elle dépendra du seuil ($\uptau$).
+ Ainsi si nous calculons l'exactitude, l'éxactitude équilibrée ou tout autre metrique que nous avons présenté précédament elle dépendra du seuil ($\uptau$).
Pour palier cela nous regarons la ROC : une courbe parametrique qui au seuil associe le tau de faux positif (FPR)\footnote{\textit{False positive rate}} et le tau de vrai positif (TPR)\footnote{\textit{True positive rate}}.
Nous definisson ces quantité comme suit :
\begin{itemize}
@@ -226,7 +247,7 @@ Cette algorithmes évalue l'espérence empirique de $C(\theta)$ sur chaque élé
Comme nous pouvons de le voir sur la Sous-figure~\ref{subfig:background-ml-logit-d}, seuil proche de $1$ permet de grandement réduire le FPR mais réduit les autres métriques.
Le choix d'un seuil est aussi particulièrement important quand les données présentent un désequilibre, c'est-à-dire qu'une classe et majoritaire par rapport à une autre~\cite{zou2016finding}.
Dans la Figure~\ref{fig:background-ml-logit} il y $28\%$ de points positif représenté en rouge.
- Cela explique la différence entre \textit{accuracy} et \textit{balanced accuracy} à seuil égale.
+ Cela explique la différence entre exactitude et exactitude équilibrée à seuil égale.
\subsection{Apprentissage profond}
@@ -292,16 +313,22 @@ Ainsi la $i$-ième couche s'écrit :
\end{equation*}
Regardon maintenant les couches de convolutions.
-L'idée de la convolution est d'extraire des représentations\footnote{\textit{Features extraction}}.
+L'idée de la convolution est d'extraire des représentations\footnote{\textit{Features extraction}} à partir d'un signal qui est généralement une image, un son ou la sortie d'un capteur analogique comme un gyroscope.
+Une architactre classque utilise les couches de convolution à l'entrée du réseau avant les couches linéaires.
+L'idée étant que le modèle comence par extraire de représntation pui les analysent.
+Dans ce type de couche le paramètre $\theta_i$ est le noyeau de convolution.
+C'est la fonction par laquelle on mutlilpe le signal sous l'intégrale.
+Pour un noyeau de convolution de taille $c$
\begin{equation}
f_i(x,\theta_i) = \left\{
\begin{matrix}
- \mathbb{N}^\mathbb{}\rightarrow\mathbb{N}^\mathbb{N}\\
- u\mapsto\int_{\mathbb{N}}x(u\bowtie t)\theta(\#J\bowtie t)d\sum_{j\in\mathbb{N}}\delta_j(t)
+ \mathbb{R}^o\rightarrow\mathbb{R}^\mathbb{N}\\
+ u\mapsto\int_{c}x'(u-t)\theta_i(t)d\sum_{j=0}^{c-1}\delta_j(t)
\end{matrix}
\right.
\end{equation}
+Où $x'$ est telque $x'(u-t)$ soit toujours bien défini par rembourrage\footnote{\textit{padding}}.
diff --git a/background/opti.tex b/background/opti.tex
index 9d346d6..03d01a6 100644
--- a/background/opti.tex
+++ b/background/opti.tex
@@ -1,4 +1,4 @@
-L'optimisation est une branche est des mathématiques appliquées qui cherche à trouver les points pour lequels une fonctions réalise un certain nombre d'exigence.
+L'optimisation est une branche des mathématiques appliquées qui cherche à trouver les points pour lequels une fonctions réalise un certain nombre d'exigences.
Le lecteur pourra se reférer par exemple au libre de Phillipe G. Ciarlet \textit{Introduction à l'analyse numérique matricielle et à l'optimisation}~\cite{ciarlet} pour une présentation très complète d'un grand nombre de techniques.
Dans ce manuscrit nous ne nous interesseront qu'a deux type de problèmes liées à l'apprantissange automatique et surtout au réseaux de neuronnes.
Le premier de ces problèmes est la minimisation sans contrainte d'une fonctionelle convexe.
@@ -6,11 +6,34 @@ Cela permet l'entraînement de modèle d'apprantissage automatique à l'aide d'u
Le second problème reprend le premier mais y ajoute des contraintes.
C'est à dire, comme minimise-t'on le coût tout en garantissant certaines conditions ?
-\subsubsection{Descente de gradient}
+\subsubsection{Optimisation sant contrainte : Descente de gradient}
\label{sec:background-opti-sgd}
Nous appellons fonctionelles les fonctions $\mathbb{R}^n$ dans $\mathbb{R}$.
Soit $J$ une fonctionelle convexe, nous cherchons à trouver $x\in\mathbb{R}$ tel que $J(x) = \text{inf}\{J(t)\mid t\in\mathbb{R}\}$.
+Pour simplifier cette rapide présentation, nous supposerons que $J$ à toujours les conditions de régularité (diférentiabilié) suffisante pour les opérations que nous appliquerons.
+Pour trouver $x$ qui minimise $J$ une des méthode les plus utilisé en apprentissage automatique est la descente de gradient.
+Il s'agit de construire une suite $(x_k)_{k\in\mathbb{N}}$ telle que $J(x_k)$ soit strictement décroissante ($\forall k\in\mathbb{N}~J(x_{k+1})<J(x_k)$).
+Pour cela, nous remarquons
+\begin{align*}
+ J(x_k+h) = J(x_k)+\langle \nabla J(x_k),h\rangle + ||h||\varepsilon(h)\\
+ \iff J(x_k+h) - J(x_k) = \langle \nabla J(x_k),h\rangle + ||h||\varepsilon(h)
+\end{align*}
+Et donc un considérant la partie principale
+\begin{equation*}
+ |J(x_k+h) - J(x_k)|\leq ||\nabla J(x_k)||||h||
+\end{equation*}
+D'éprès l'inégalitée de Cauchy-Schwartz.
+L'égalité est obtenu si et seulment si il existe $l_k$ tel que
+$h=l_k\nabla J(x_k)$.
+Ainsi la méthode de déscente de gradient est définit par la suite
+$x_{k+1}=x_k-l_k\nabla J(x_k)$.
+$l_k$ est appelé le pas.
+En théorie nous pouvons lire dans le libre de Ciarlet qu'il existe de multiple manière de trouver un pas optimale ou approprié à la fonctionelle $J$.
+Cependant, en apprantissage automatique le hypothèse necessaire pour obtenir l'optimalité sont souvent absentes, en pratique le pas est souvant choisit constant $\exists c\forall k~l_k=c$.
+
+Nous montrons dans la Figure~\ref{fig:background-opti-gd} le fonctionement de la méthode de gradient à pas fixe en dimension un pour une fonctionelle convexe.
+Avec une illustration de la convergence de l'écart entre $J(x_k)$ et le minimum.
\begin{figure}
\centering
\begin{subfigure}{0.45\linewidth}
@@ -23,27 +46,21 @@ Soit $J$ une fonctionelle convexe, nous cherchons à trouver $x\in\mathbb{R}$ te
\centering
\includegraphics[width=0.66\linewidth]{background/figure/opti/conv.pdf}
\caption{Convergence des l'écart entre $u$ et le minimum vers $0$ en fonction des itérations.}
- \label{fig:background-opti-gd}
\end{subfigure}
+ \caption{Convergence de la méthode de gradient.}
+ \label{fig:background-opti-gd}
\end{figure}
-\begin{figure}
- \begin{subfigure}{0.3\linewidth}
- \includegraphics[width=\linewidth]{background/figure/ml/convex/f_local3.1.pdf}
- \caption{L'algorithme tombe dans un minimum locale ($u_0=3,1$).}
- \end{subfigure}
- \begin{subfigure}{0.3\linewidth}
- \includegraphics[width=\linewidth]{background/figure/ml/convex/f_local8.28.pdf}
- \caption{L'algorithme tombe dans un minimum globale ($u_0=8,28$).}
- \end{subfigure}
- \begin{subfigure}{0.3\linewidth}
- \includegraphics[width=\linewidth]{background/figure/ml/convex/conv_local.pdf}
- \caption{Convergence vers un minimum locale et globale.}
- \end{subfigure}
- \caption{Impacte de la convexité sur la convergence.}
- \label{fig:background-opti-cvx}
-\end{figure}
-\subsubsection{Multiplicateurs de Lagrange}
-\paragraph{Descente de gradient exponentiée}
+\subsubsection{Optimisation sous contraintes : multiplicateurs de Lagrange}
+Pour expliquer ce qu'est l'optimisation sous contraintes, represnons les mots de Philipe G. Ciarlet :
+\textquote{On s'interesse au problème suivant : trouver des conditions \emph{nécessaires}, et des conditions \emph{suffisantes}, pour qu'un point d'un ensemble $U$ soit un extremum relatif de la restriction à l'ensemble $U$ d'une fonction $J$ définie sur un ensemble "plus grands". [...]
+Un premier exemple est celui des \emph{extremums relatifs liés}, où l'ensemble $U$ est de la forme
+\begin{equation*}
+ U=\{v\in Q \mid \forall i\in m-1~\psi_i(v)=0\}
+\end{equation*}
+}
+Pour une présentation plus complète des multiplicateurs de Lagrange voir la Section 7.2 de~\cite{ciarlet}
+
+
diff --git a/background/proba.tex b/background/proba.tex
index 5bce111..1cfe29e 100644
--- a/background/proba.tex
+++ b/background/proba.tex
@@ -56,6 +56,21 @@ Nous definisson la mesure image de $f$ par $d$, que nous notons $d_f$, par l'exp
\right.
\end{equation}
+\begin{definition}{Intégrale}
+ Soient $(E,\mathcal{E},\mu)$ et $(F,\mathcal{F},\nu)$ un espace mesuré.
+ Pour une fonction $f=\sum_{i\in I}\alpha_i 1_{A_i}$, nous dirons étagé,
+ Avec $\{A_i\mid i\in I\} \subset \mathcal{F}$.
+ Alors $\int_E f d\nu= \sum_{i\in I}\alpha_i \nu(A_i)$.
+
+ Soit $g$ un fonction mesurable.
+ Alors il existe une suite $\{(f_n)\}_{n\in\mathbb{N}}$ de fonctions étagés telle que $lim_{n\rightarrow +\infty} f_n = g$.
+ Voir la Définition~\ref{def:background-dif-lim} pour une définition de la limite.
+ On définit alors
+ \begin{equation*}
+ \int_{E}gd\nu = lim_{n\rightarrow +\infty}\int_{E}f_n d\nu
+ \end{equation*}
+\end{definition}
+
Dans le cas particulier où $d(A) = 1$, nous appelons $d$ une mesure de probabilité.
$(A,\mathcal{A},d)$ est alors un espace probailisé et les fonctions mesurables sur cet espace sont appelés variables aléatoires.
Le loi de probabilité d'une variable aléatoire $f$ sur $(X,\mathcal{X})$ est la mesure image de $f$ sur $d$.
@@ -63,6 +78,13 @@ Nous dirons que deux variables aléatoire $f$ et $g$ sont indépendantes si et s
De plus, dans le cas des variables aléatoires, il est courant de d'écrir $\{f\in A\}$ pour $f^{-1}(A)$ et $\{f=a\}$ pour $f^{-1}(\{a\})$.
+\begin{definition}{Esperence}
+ Pour une variable aléatoire $X$, on définit l'espérence de $X$ par la formule suivante.
+ \begin{equation*}
+ E(X) = \int_{\Omega}X(\omega)dP(\omega)
+ \end{equation*}
+\end{definition}
+
%Having introduced probability theory, we explicit the relation with the ML theory described previously.
%Let $I$ a finite set, $\mathcal{X}$, $\mathcal{S}$ and $\mathcal{Y}$ the sets of features, sensitive attribute and label.
diff --git a/background/set.tex b/background/set.tex
index e011510..5aaffdd 100644
--- a/background/set.tex
+++ b/background/set.tex
@@ -6,6 +6,7 @@ Nous allons présenter ZF de manière assez succinte, juste suffisante pour réa
Si le lecteur souhaite plus de détail sur ces théories nous le renvoyons à \textit{Elements of set thoery} de Herbert B. Enderton~\cite{enderton1977elements}.
\subsubsection{Axiomes de la théroie ZF}
+\label{sec:background-math-zf}
Nous présentons dans cette section les axiomes de la théorie ZF.
Ces axiomes sont la pierre angulaire des tous les dévleppoements mathématiques que nous ferons dans ce manuscrit.
Pour un lecteur qui ne serai pas familier de cette théorie, disons qu'il s'agit de modéliser formellement le principe d'ensemble.
@@ -43,6 +44,7 @@ Pour toute formule $F$ (au sens du clacul des prédicats et du vocabulaire $\in$
$\forall b\in B (b\in A \wedge F)$
\begin{definition}[Intersection]
+ \label{def:background-math-int}
Pour des ensembles $A$ et $B$,
\begin{equation*}
A\cap B=\{a\in A\mid a\in B\}
@@ -54,6 +56,7 @@ $\forall b\in B (b\in A \wedge F)$
\end{definition}
\begin{definition}[Fonctions]
+ \label{def:background-fct}
\textbf{2-uplet.}
Nous définissons pour tout ensemble $A$ et $B$ le \emph{2-uplet} $(A,B)$ par $\{\{A\},\{A,B\}\}$.
@@ -96,6 +99,16 @@ $\forall b\in B (b\in A \wedge F)$
\right.
\end{equation*}
+ Pour deux fonctions $f:E\rightarrow F$ et $g:F\rightarrow G$ nous notons
+ \begin{equation*}
+ g\circ f:\left\{
+ \begin{matrix}
+ E\rightarrow G\\
+ x\mapsto g(f(x))
+ \end{matrix}
+ \right.
+ \end{equation*}
+
Pour une expression $f(x)$, quand cela est pertinant nous noterons $f(\square)$ la fonction $f:x\mapsto f(x)$ quand il n'y a pas d'ambiguitée sur le domaine et codomaine.
\textbf{Produit cartésien.}
@@ -139,6 +152,7 @@ Où $a^+ = a\cup \{a\}$.
Nous appelons un tel $A$, un ensemble récursif.
\begin{definition}[Ensemble usuels]
+ \label{def:background-set-usu}
\textbf{Entiers.}
Soit $C$ la classe des ensembles récursif.
@@ -221,6 +235,7 @@ Soit $F(a,b)$ un formule qui ne dépend pas de $B$.
\end{equation}
\subsubsection{Arithmétique}
+\label{sec:background-set-ari}
Avec un niveau d'abstraction supplémentaire, nous considérons désormais que $\mathbb{N}\subset\mathbb{Z}\subset\mathbb{Q}\subset\mathbb{R}$.
Cela est possible grace aux injéctions canoniques suivantes :
\begin{equation}
@@ -272,10 +287,12 @@ Outre les opératiosn usuelles, nous allons avoir aussi besoin de quelques fonct
\end{itemize}
\subsubsection{Intervalle}
+\label{sec:background-math-int}
Pour $(a,b)\in\mathbb{R}^2$ avec $a\leq b$ nous définissone l'intervalle $[a,b]$ de la manière suivant : $\{x\in\mathbb{R}\mid a\leq x\wedge x\leq b\}$.
Et aussi sa contrepartie entière : $[|a,b|] = [a,b]\cap\mathbb{N}$.
\subsubsection{Cardinal}
+\label{sec:background-math-card}
La notion de cardinal cherche à comparer la taille d'ensembles arbitraires.
Nous n'allons pas ici considérer la théorie de ordinaux de Van Neumann qui compléte notre simplification.
Le lecteur souhaitant aller plus loin et apprendre cette théorie peut se référer aux chapitres 6,7,8 et 9 de \textit{Elements of set thoery} de Herbert B. Enderton~\cite{enderton1977elements}.