summaryrefslogtreecommitdiff
path: root/aia
diff options
context:
space:
mode:
Diffstat (limited to 'aia')
-rw-r--r--aia/exp.tex106
-rw-r--r--aia/intro.tex26
-rw-r--r--aia/prediction.tex182
-rw-r--r--aia/protection.tex106
4 files changed, 420 insertions, 0 deletions
diff --git a/aia/exp.tex b/aia/exp.tex
new file mode 100644
index 0000000..6651744
--- /dev/null
+++ b/aia/exp.tex
@@ -0,0 +1,106 @@
+{
+ \usebackgroundtemplate{\includegraphics[width=\paperwidth]{images/background/card/background.pdf}}
+\begin{frame}
+ %\vspace{70px}
+ \hspace{70px}
+ \begin{minipage}{250px}
+ \Large
+ \textcolor{accent}{
+ Evaluation expérimentale de l'utilisation de l'équitée comme mécanisme de protéction de l'attribut sensible.
+ }
+ \end{minipage}
+\end{frame}
+}
+\begin{frame}
+ \begin{figure}
+ \centering
+ \input{tikz/data}
+ \label{fig:aia-data}
+ \end{figure}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Experimental validation on prediction: results}
+ \begin{figure}
+ \captionsetup{singlelinecheck=off}
+ \centering
+ \begin{subfigure}{0.4\textwidth}
+ \centering
+ \scriptsize
+ \begin{itemize}
+ \item \emph{Labeled Faces in the Wild (images)}
+ \item ML = Convolutional Neural Network
+ \end{itemize}
+ \includegraphics[width=150px]{images/figures/advdebias/lfw/lfw_advdeb_attack_hard_sex.pdf}
+ \end{subfigure}
+ \hspace{0.1\textwidth}
+ \begin{subfigure}{0.4\textwidth}
+ \centering
+ \scriptsize
+ \begin{itemize}
+ \item \emph{COMPAS recidivism dataset (tabular)}
+ \item ML = Random Forest
+ \end{itemize}
+ \includegraphics[width=150px]{images/figures/advdebias/compas/compas_advdeb_attack_hard_sex.pdf}
+ \end{subfigure}
+ \end{figure}
+ \vspace{10px}
+
+ \scriptsize
+ \begin{tabular}{lll}
+ &\emph{Regularization}&\emph{Value}\\
+ \emph{Baseline}&None&Attack result\\
+ \emph{Theoretical}&Adversarial debiasing&$\frac{1}{2}(1+DemParLvl)$\\
+ \emph{Empirical}&Adversarial debiasing&Attack result\\
+ \end{tabular}
+\normalsize
+ \hspace{10px}
+Attack surface = $1_{[\tau,1]}\circ f\circ X$.
+\end{frame}
+
+\begin{frame}
+ \frametitle{Experimental validation on logit: building an attack}
+ \begin{enumerate}
+ \item On part.
+ \item Build a random forest on this dataset.
+ \item Ajust the threshold to take into account class imbalance.
+ \end{enumerate}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Experimental validation on logit: results}
+ \begin{figure}
+ \captionsetup{singlelinecheck=off}
+ \centering
+ \begin{subfigure}{0.4\textwidth}
+ \centering
+ \scriptsize
+ \begin{itemize}
+ \item \emph{Labeled Faces in the Wild (images)}
+ \item ML = Convolutional Neural Network
+ \end{itemize}
+ \includegraphics[width=150px]{images/figures/advdebias/lfw/lfw_advdeb_attack_soft_experimental_sex.pdf}
+ \end{subfigure}
+ \hspace{0.1\textwidth}
+ \begin{subfigure}{0.4\textwidth}
+ \centering
+ \scriptsize
+ \begin{itemize}
+ \item \emph{COMPAS recidivism dataset (tabular)}
+ \item ML = Random Forest
+ \end{itemize}
+ \includegraphics[width=150px]{images/figures/advdebias/compas/compas_advdeb_attack_soft_experimental_sex.pdf}
+ \end{subfigure}
+ \end{figure}
+ \vspace{10px}
+
+ \scriptsize
+ \begin{tabular}{lll}
+ &\emph{Regularization}&\emph{Value}\\
+ \emph{Baseline}&None&Attack result\\
+ \emph{AdvDebias}&Adversarial debiasing&Attack result\\
+ \end{tabular}
+\normalsize
+ \hspace{10px}
+Attack surface = $f\circ X$.
+\end{frame}
diff --git a/aia/intro.tex b/aia/intro.tex
new file mode 100644
index 0000000..a8cc780
--- /dev/null
+++ b/aia/intro.tex
@@ -0,0 +1,26 @@
+\begin{frame}
+ \frametitle{Deux surface d'attaque pour réaliser l'AIA}
+ \emph{$X$} les données d'entrée.
+ \begin{itemize}
+ \item \textcolor{accent}{Logit}
+ \begin{equation*}
+ l\circ X
+ \end{equation*}
+ A valeurs dans $[0,1]^m$.
+ \vspace{20px}
+
+ \item \textcolor{accent}{Prédiction}
+ \begin{align*}
+ \text{argmax}\circ l\circ X
+ \end{align*}
+ A valeurs dans $\{0,1,\cdots,m\}$.
+ \end{itemize}
+ \vspace{10px}
+
+ En fonction du contexte on notera le modèle cible $f=l$ ou $f=\text{argmax}\circ l$.
+\end{frame}
+
+
+
+
+
diff --git a/aia/prediction.tex b/aia/prediction.tex
new file mode 100644
index 0000000..b302f4f
--- /dev/null
+++ b/aia/prediction.tex
@@ -0,0 +1,182 @@
+
+{
+ \usebackgroundtemplate{\includegraphics[width=\paperwidth]{images/background/card/background.pdf}}
+\begin{frame}
+ %\vspace{70px}
+ \hspace{70px}
+ \begin{minipage}{250px}
+ \Large
+ \textcolor{accent}{
+ Un nouvel algorithme d'apprentissage ensembliste pour l'AIA.
+ }
+ \end{minipage}
+\end{frame}
+}
+\begin{frame}
+ \frametitle{AIA pour la prédiction}
+ \input{tikz/ef}
+ \pause
+ \vspace{10px}
+
+ \emph{$n^m$ applications à essayer !}
+ \vspace{10px}
+
+ Question de recherche :
+ \emph{Comment choisir la meilleur application sans les assayer toutes ?}
+ \vspace{10px}
+
+ On cherche $a:F\rightarrow G$ telle que
+ $P_{a\circ f\circ X}$ approche $P_{S}$.
+\end{frame}
+
+\begin{frame}
+ \frametitle{Classification finie}
+ \begin{minipage}[t]{0.2\linewidth}
+ \begin{tabular}{cc}
+ \textbf{Y}&\textbf{S}\\
+ 0&$\bigcirc$\\
+ 2&$\times$\\
+ 1&$\bigcirc$\\
+ 0&$\bigcirc$\\
+ 2&$\times$\\
+ 0&$\bigcirc$\\
+ 1&$\bigcirc$\\
+ 1&$\bigtriangleup$\\
+ 0&$\bigcirc$\\
+ 2&$\bigcirc$\\
+ 1&$\bigcirc$\\
+ 1&$\bigtriangleup$\\
+ 2&$\bigcirc$\\
+ 2&$\bigcirc$\\
+ \end{tabular}
+ \end{minipage}
+ \begin{minipage}[t]{0.75\linewidth}
+ On cherche une fonction $a$ de $F = \{0,1,2\}$ dans $G = \{\bigcirc,\bigtriangleup,\times\}$.
+ \\\vspace{0.5cm}\\
+ Nous n'allons pas essayer les \emph{$3^3=27$ fonctions}.
+ \\\vspace{0.5cm}\\
+ A la place, étudions deux manières de \emph{ranger le jeu de données}.
+ \end{minipage}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Premier rangement}
+ \input{tikz/chaussette/a}
+\end{frame}
+
+\begin{frame}
+ \begin{definition}[Exactitude\footnote{\textit{Accuracy}}]
+ L'exactitude de $a$ pour prédire $S$ est
+ \begin{equation*}
+ P(a\circ f\circ X=S)
+ \end{equation*}
+ \end{definition}
+ \pause
+ \frametitle{Maximisation de l'exactitude}
+ \begin{theorem}
+ L'application qui maximise l'éxactitude est
+ \begin{equation*}
+ a: \left\{
+ \begin{matrix}
+ F\rightarrow G\\
+ e\mapsto \text{argmax}_{i\in G} P(S=i|f\circ X=e)
+ \end{matrix}
+ \right.
+ \end{equation*}
+ \end{theorem}
+ \vspace{10px}
+
+ \footnotesize
+ \textit{The behavior-knowledge space method for combination of multiple classifiers}, Huang, YS et Suen, C.Y. 1993
+\end{frame}
+
+\begin{frame}
+ \frametitle{Problème avec la maxamisation de l'exactitude}
+ \begin{minipage}{0.4\linewidth}
+ \begin{tabular}{cccc}
+ &\textcolor{principale}{Faux Positifs}&\textcolor{principale}{Faux Négatif}&\textcolor{principale}{Exactitude}\\
+ \textcolor{principale}{$\bigcirc$}&100\%&0\%&100\%\\
+ \textcolor{principale}{$\bigtriangleup$}&0\%&100\%&0\%\\
+ \textcolor{principale}{$\times$}&0\%&100\%&0\%\\ 
+ \end{tabular}
+ \vspace{20px}
+
+ \pause
+ Désequilibre dans les classes\footnote{\textit{Class imbalance}} :
+ \begin{itemize}
+ \item $P(S=\bigcirc)=\frac{10}{14}\simeq 71\%$
+ \item $P(S=\bigtriangleup)=\frac{2}{14}\simeq 14\%$
+ \item $P(S=\times)=\frac{2}{14}\simeq 14\%$
+ \end{itemize}
+ \end{minipage}
+ \pause
+ \hspace{50px}
+ \begin{minipage}{0.4\linewidth}
+ \vspace{70px}
+ \begin{figure}
+ \includegraphics[width=1.2\linewidth]{images/race_split.pdf}
+ \caption{Ethnies\footnote{\textit{Races}} en Alabama}
+ \end{figure}
+ \end{minipage}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Deuxième rangement}
+ \vspace{5px}
+
+ \input{tikz/chaussette/ba}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Maximisation de l'exactitude équilibrée}
+ \begin{definition}[Exactitude équilibrée\footnote{\textit{Balanced accuracy}}]
+ \begin{equation*}
+ \frac{1}{\#F}\sum_{i\in F}P(a\circ f\circ X=i\mid S=i)
+ \end{equation*}
+ \end{definition}
+ \pause
+ \begin{theorem}
+ L'application qui maximise l'exactitude équilibrée est
+ \begin{equation*}
+ a:\left\{
+ \begin{matrix}
+ F \rightarrow G\\
+ e\mapsto \text{argmax}_{i\in G}P(f\circ X=e|S=i)
+ \end{matrix}
+ \right.
+ \end{equation*}
+ \end{theorem}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Problème avec la maxamisation de l'exactitude}
+ \emph{Maximisation de l'exactitude}
+ \vspace{5px}
+
+ \begin{tabular}{cccc}
+ &\textcolor{principale}{Faux Positifs}&\textcolor{principale}{Faux Négatif}&\textcolor{principale}{Exactitude}\\
+ \textcolor{principale}{$\bigcirc$}&100\%&0\%&1\\
+ \textcolor{principale}{$\bigtriangleup$}&0\%&100\%&0\\
+ \textcolor{principale}{$\times$}&0\%&100\%&0\\ 
+ \end{tabular}
+ \vspace{10px}
+
+ \emph{Maximisation de l'exactitude équilibré}
+ \vspace{5px}
+
+ \begin{tabular}{cccc}
+ &\textcolor{principale}{Faux Positifs}&\textcolor{principale}{Faux Négatif}&\textcolor{principale}{Exactitude}\\
+ \textcolor{principale}{$\bigcirc$}&0\%&60\%&40\%\\
+ \textcolor{principale}{$\bigtriangleup$}&25\%&0\%&100\%\\
+ \textcolor{principale}{$\times$}&25\%&0\%&100\%\\ 
+ \end{tabular}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Conclusion sur l'AIA de la prédiction}
+ \begin{itemize}
+ \item Nous avons construit une \emph{fonction d'attaque $a$} de $F$, l'ensemble des \emph{prédictions possibles du modèle cible} vers $G$, l'ensemble des \emph{attributs sensibles}.
+ \pause
+ \item Cette fonction \emph{maximise l'exactitude équilibrée}.
+ \end{itemize}
+\end{frame}
diff --git a/aia/protection.tex b/aia/protection.tex
new file mode 100644
index 0000000..8332c35
--- /dev/null
+++ b/aia/protection.tex
@@ -0,0 +1,106 @@
+{
+ \usebackgroundtemplate{\includegraphics[width=\paperwidth]{images/background/card/background.pdf}}
+\begin{frame}
+ %\vspace{70px}
+ \hspace{70px}
+ \begin{minipage}{250px}
+ \Large
+ \textcolor{accent}{
+ Comment proteger l'attribut sensible contre l'AIA ?
+ }
+ \end{minipage}
+\end{frame}
+}
+\begin{frame}
+ \frametitle{Protection de l'attribut sensible}
+ On cherche une notion qui définisse :
+
+ \emph{L'attribut sensible des utilisateur est protégé.}
+ \pause
+ \begin{definition}
+ Un CCA est un classifieur ayant une \emph{prédiction indépendante de l'étiquette}.
+ C'est-à-dire que pour un classifieur $f: E\rightarrow F$.
+ Avec une étiquette $Y:\Omega\rightarrow F$
+ et une entrée $X:\Omega\rightarrow E$.
+ Alors pour $\hat{Y}=f\circ X$, nous avons
+ \emph{$P_{(Y,\hat{Y})} = P_Y\otimes P_{\hat{Y}}$}
+ \end{definition}
+
+ \pause
+ Nous allons voir que CCA et exactitude équilibré sont liées.
+\end{frame}
+
+\begin{frame}
+ \frametitle{Etude de l'exactitude équilibré}
+ \begin{propriete}
+ \label{th:aia-bluey}
+ Soit $(\Omega,\mathcal{T},P)$ un espace probabilisé.
+ Soient $(E,\mathcal{E})$ et $(F,\mathcal{P}(F))$ des espaces mesurables avec $F$ un ensemble fini.
+ Soient les variables aléatoires suivantes :
+ $X:\Omega\rightarrow E$ et
+ $Y:\Omega\rightarrow F$
+ Soit $A$ l'ensemble des fonctions mesurables de $(E,\mathcal{E})$ dans $(F,\mathcal{P}(F))$.
+
+ Nous appelons $BA$ la fonction qui à toutes les fonctions $f$ de $A$ associe l'exactitude équilibrée de $f \circ X$ pour l'étiquette $Y$.
+ \begin{equation*}
+ \exists f\in A~BA(f)< \frac{1}{\#F}
+ \implies
+ \exists f\in A~BA(f)>\frac{1}{\#F}
+ \end{equation*}
+ \end{propriete}
+
+ \pause
+ \begin{propriete}
+ \begin{equation*}
+ \text{max}_fBA(f)=\frac{1}{\#F}\iff
+ \forall f~BA(f)=\frac{1}{\#F}
+ \end{equation*}
+ \end{propriete}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Etude de l'exactitude équilibré}
+ \begin{theorem}
+ \label{th:fini-bacca}
+ En notant $BA(f)$ l'exactitude équilibrée de $f$.
+ \begin{equation*}
+ \forall f~BA(f)=\frac{1}{\#F} \iff
+ \forall f~\text{$f$ est un CCA}
+ \end{equation*}
+ \end{theorem}
+ \pause
+
+ \vspace{10px}
+ Ainsi, si $\text{max}_fBA(f)=\frac{1}{\#F}$ alors
+ aucun classifieur ne pourra prédire l'étiquette.
+
+ \pause
+ \vspace{10px}
+ \emph{Pour savoir si $X$ permet d'inférer $Y$ il suffit de calculer $\text{max}_fBA(f)$.}
+
+ \pause
+ \vspace{10px}
+ L'algorithme classification finie permet de claculer $\text{max}_fBA(f)$.
+\end{frame}
+
+\begin{frame}
+ \frametitle{Lien entre exactitude équilibré et protection contre l'AIA}
+ L'attribut sensible est protégé quand
+ \begin{equation*}
+ P_{(f\circ X,S)}=
+ P_{f\circ X}\otimes P_S
+ \end{equation*}
+
+ \pause
+ \begin{equation*}
+ \iff
+ \forall a~\text{$a$ est un CCA pour prédire $S$ à parire de $f\circ X$}
+ \end{equation*}
+
+ \pause
+ \begin{equation*}
+ \iff
+ \text{max}_aBA(a)=\frac{1}{\#G}
+ \end{equation*}
+
+\end{frame}