\documentclass{article}
\usepackage{amssymb, amsmath, geometry, multicol, cancel, stmaryrd}
\usepackage[table, svgnames, dvipsnames]{xcolor}
\usepackage{makecell, cellspace, caption}
\usepackage{empheq}
\usepackage{listings}
\usepackage[utf8]{inputenc}
\usepackage[a]{esvect} % voir la doc pour les différents styles
\let\overrightarrow\vv

\definecolor{red}{rgb}{0.8, 0.0, 0.0}
\definecolor{green}{rgb}{0.0, 0.8, 0.0}
\definecolor{blue}{rgb}{0.0, 0.0, 0.8}
\definecolor{orange}{rgb}{0.8, 0.5, 0.0}
\definecolor{lightgreen}{rgb}{0.6, 0.9, 0.6}

\lstdefinestyle{mystyle}{
    backgroundcolor=\color{white},
    commentstyle=\color{orange},
    keywordstyle=\color{blue},
    numberstyle=\tiny\color{blue},
    basicstyle=\footnotesize\ttfamily,             
    captionpos=b,
    numbers=none,
    numbersep=5pt,
    showspaces=false,
    showstringspaces=false,
    showtabs=false,
    tabsize=4
}
\lstset{style=mystyle,
        mathescape=true,
        frameround=fttt,
        frame=trBL, 
        linewidth=15cm,
        aboveskip=5pt,
        belowskip=15pt,
        morecomment=[l][\color{orange}]{\#},
        keywords={, Si, Sinon, Tant, que, Retourner, alors, faire, Pour, tout, allant, de}
}
\newcommand{\parspace}{\vspace{0.1cm}}
\linespread{1.25}
\geometry{tmargin=.7in, bmargin=.7in, lmargin=.7in, rmargin = .7in}

\begin{document}
\setlength{\parindent}{0mm}

\title{Apprentissage}
\author{Aubin SIONVILLE}
\date{MPI Clemenceau - 2021-2023}
\maketitle

\centering

\section*{Définitions}

\begin{multicols}{2}
    \subsection*{Signature de données}
    \[\boxed{\begin{array}{c}
        \text{Une donnée est un } n\text{-uplet de paires (nom, ensemble)} :\\
        (\text{nom}_1 : E_1, \text{nom}_2 : E_2, \dots, \text{nom}_n : E_n)
    \end{array}}\]
    
    \subsection*{Donnée}
    \[\boxed{\begin{array}{c}
        \text{Étant donné une signature } \mathbb{S} = (n_1 : S_1, \dots , n_n : S_n),\\
        \text{Une donnée est un vecteur } \overline{v} = (v_1, \dots, v_n) \in S_1 \times \dots \times S_n
    \end{array}}\]
\end{multicols}

\begin{multicols}{2}
    \subsection*{Jeu de données}
    \[\boxed{\begin{array}{c}
        \text{Étant donné une signature } \mathbb{S} \\
        \text{Un jeu de données est un ensemble fini }\\
        \text{de vecteurs de signature } \mathbb{S}
    \end{array}}\]

    \subsection*{Jeu de données classifié}
    \[\boxed{\begin{array}{c}
        \text{Étant donné une signature } \mathbb{S} \text{ et un ensemble fini de classes } \mathcal{C},\\
        \text{Un jeu de données classifié est la donnée}\\
        \,\,- \text{ d'un jeu de données } S\\
        \,\,- \text{ d'une fonction de classification } f : S \to \mathcal{C}
    \end{array}}\]

\end{multicols}

\vspace*{0.5cm}

\section*{Apprentissage supervisé}

\subsection*{k-plus proches voisins}

Entrée : Un jeu de données classifié $(S,c)$, un entier $k$ et un vecteur $\overline{v}$.
\[\boxed{\begin{array}{l}
    \text{On trie } S \text{ par distance croissante de } \overline{v} \text{ en } d_1, \dots, d_n\\
    \text{On crée et initialise à } 0 \text{ un dictionnaire } D : \mathcal{C} \to \mathbb{N}\\
    \text{Pour } i \text{ allant de } 1 \text{ à } k \text{ faire :}\\
    \quad \text{On incrémente } D[c(d_i)]\\
    \text{On retourne la classe } c \text{ qui maximise } D[c]
\end{array}}\]

\vspace*{0.3cm}

\subsection*{Matrice de confusion}

\[\boxed{\begin{array}{c}
    \text{Pour algorithme de prédiction } \mathcal{A} \text{ sur un jeu de données classifié } (S,c)\\
    \text{On appelle matrice de confusion de } \mathcal{A} \text{ la matrice } M \text{ telle que}\\
    \forall (i,j) \in \mathcal{C}^2, M_{i,j} = \text{nombre de vecteurs } \overline{v} \text{ de } S \text{ tels que }
    \begin{cases}
        \text{L'algorithme prédit que la classe de } \overline{v} \text{ est } i\\
        \text{La véritable classe de } \overline{v} \text{ est } j\\
    \end{cases}
\end{array}}\]

\subsection*{Notation : Composantes d'un jeu de données}

\[\boxed{\begin{array}{c}
    \text{Étant donné un jeu de données } S, \forall v \in S,\\
    S^{\leq_i v} = \{v' \in S \mid v'_i \leq v_i\}\\
    S^{>_i v} = \{v' \in S \mid v'_i > v_i\}
\end{array}}\]

\subsection*{Création d'un arbre k-dimensionnel ($\mathbb{F}$)}

Entrée : Un jeu de donnée $\mathcal{V}$ et $i \in \llbracket 0, n-1 \rrbracket$.
\[\boxed{\begin{array}{l}
    \text{Si } \mathcal{V} \text{ est vide,}\\
    \quad \text{Retouner Vide}\\
    \text{Sinon,}\\
    \quad \text{On cherche } v \in \mathcal{V} \text{ tel que } v_i \text{ est la médiane de } \{u_i|u \in \mathcal{V}\}\\
    \quad \text{Retourner un noeud}
    \begin{cases}
        \text{Fils gauche } : \mathbb{F}\big((\mathcal{V}\setminus\{u\})^{\leq_i v}, (i+1)\, \mathrm{mod}\, n\big)\\
        \text{Valeur } : (v,i)\\
        \text{Fils droit } : \mathbb{F}\big((\mathcal{V}\setminus\{u\})^{>_i v}, (i+1)\, \mathrm{mod}\, n\big)
    \end{cases}
\end{array}}\]

\vspace*{2cm}

TO BE CONTINUED


\end{document}