| 1 | \input{startdoc.tex} |
| 2 | |
| 3 | \usepackage{tikz} |
| 4 | \usepackage{array} |
| 5 | |
| 6 | \usepackage[utf8]{inputenc} |
| 7 | \usepackage{amsmath, amsfonts} |
| 8 | %\usepackage[francais]{babel} |
| 9 | \usepackage{hyperref, url, caption, tikz} |
| 10 | \usepackage{wrapfig} |
| 11 | %\usepackage{graphicx} |
| 12 | %\hypersetup{colorlinks,linkcolor=black,urlcolor=violet} |
| 13 | |
| 14 | \mode<presentation>{ |
| 15 | \setbeamertemplate{sections/subsections in toc}[square] |
| 16 | \beamertemplatenavigationsymbolsempty |
| 17 | } |
| 18 | |
| 19 | %\newcommand{\N}{\mathbb{N}} % naturals |
| 20 | \newcommand{\set}[1]{\lbrace#1\rbrace} % set |
| 21 | %\newcommand{\R}{\mathbb{R}} % real |
| 22 | |
| 23 | \colorlet{darkred}{red!80!black} |
| 24 | \colorlet{darkblue}{blue!80!black} |
| 25 | \colorlet{darkgreen}{green!60!black} |
| 26 | |
| 27 | \usetikzlibrary{calc,decorations.pathmorphing,patterns} |
| 28 | \pgfdeclaredecoration{penciline}{initial}{ |
| 29 | \state{initial}[width=+\pgfdecoratedinputsegmentremainingdistance, |
| 30 | auto corner on length=1mm,]{ |
| 31 | \pgfpathcurveto% |
| 32 | {% From |
| 33 | \pgfqpoint{\pgfdecoratedinputsegmentremainingdistance} |
| 34 | {\pgfdecorationsegmentamplitude} |
| 35 | } |
| 36 | {% Control 1 |
| 37 | \pgfmathrand |
| 38 | \pgfpointadd{\pgfqpoint{\pgfdecoratedinputsegmentremainingdistance}{0pt}} |
| 39 | {\pgfqpoint{-\pgfdecorationsegmentaspect |
| 40 | \pgfdecoratedinputsegmentremainingdistance}% |
| 41 | {\pgfmathresult\pgfdecorationsegmentamplitude} |
| 42 | } |
| 43 | } |
| 44 | {%TO |
| 45 | \pgfpointadd{\pgfpointdecoratedinputsegmentlast}{\pgfpoint{1pt}{1pt}} |
| 46 | } |
| 47 | } |
| 48 | \state{final}{} |
| 49 | } |
| 50 | % |
| 51 | \tikzstyle{block} = [draw,rectangle,thick,minimum height=2em,minimum width=2em] |
| 52 | |
| 53 | %~ \usetikzlibrary{calc,decorations.pathmorphing,patterns} |
| 54 | %~ \pgfdeclaredecoration{penciline}{initial}{ |
| 55 | %~ \state{initial}[width=+\pgfdecoratedinputsegmentremainingdistance, |
| 56 | %~ auto corner on length=1mm,]{ |
| 57 | %~ \pgfpathcurveto% |
| 58 | %~ {% From |
| 59 | %~ \pgfqpoint{\pgfdecoratedinputsegmentremainingdistance} |
| 60 | %~ {\pgfdecorationsegmentamplitude} |
| 61 | %~ } |
| 62 | %~ {% Control 1 |
| 63 | %~ \pgfmathrand |
| 64 | %~ \pgfpointadd{\pgfqpoint{\pgfdecoratedinputsegmentremainingdistance}{0pt}} |
| 65 | %~ {\pgfqpoint{-\pgfdecorationsegmentaspect |
| 66 | %~ \pgfdecoratedinputsegmentremainingdistance}% |
| 67 | %~ {\pgfmathresult\pgfdecorationsegmentamplitude} |
| 68 | %~ } |
| 69 | %~ } |
| 70 | %~ {%TO |
| 71 | %~ \pgfpointadd{\pgfpointdecoratedinputsegmentlast}{\pgfpoint{1pt}{1pt}} |
| 72 | %~ } |
| 73 | %~ } |
| 74 | %~ \state{final}{} |
| 75 | %~ } |
| 76 | %~ % |
| 77 | %~ \tikzstyle{block} = [draw,rectangle,thick,minimum height=2em,minimum width=2em] |
| 78 | %~ \colorlet{darkred}{red!80!black} |
| 79 | %~ \colorlet{darkblue}{blue!80!black} |
| 80 | %~ \colorlet{darkgreen}{green!60!black} |
| 81 | |
| 82 | %\newcommand*\mystrut[1]{\vrule width0pt height0pt depth#1\relax} |
| 83 | %http://tex.stackexchange.com/questions/13843/vertical-spacing-with-underbrace-command |
| 84 | |
| 85 | \title[Clustering de courbes de charge EDF] |
| 86 | {Clustering de courbes de charge EDF%\\ |
| 87 | %Application à la prévision de la qualité de l'air |
| 88 | \vspace*{0.5cm}} |
| 89 | \author[Benjamin Auder, Jairo Cugliari] |
| 90 | {Benjamin Auder \inst{1}\\[0.2cm]Jairo Cugliari \inst{2}\hspace*{0.6cm}\vspace*{1cm}} |
| 91 | \date[]{} |
| 92 | \institute[]{\inst{1} CNRS Orsay / Université Paris-Sud\hspace*{1.3cm} \and |
| 93 | \inst{2} Laboratoire ERIC / Université Lumière Lyon 2} |
| 94 | %~ \titlegraphic{ |
| 95 | %~ \includegraphics[width=2cm]{logo_eric.png}\hspace*{4.75cm}~% |
| 96 | %~ \includegraphics[width=2cm]{logo_lyon2.jpg} |
| 97 | %~ } |
| 98 | |
| 99 | \begin{document} |
| 100 | |
| 101 | \begin{frame} |
| 102 | \vspace*{0.5cm} |
| 103 | \titlepage |
| 104 | \end{frame} |
| 105 | |
| 106 | \begin{frame}{Contexte industriel} |
| 107 | |
| 108 | \begin{columns} |
| 109 | |
| 110 | \column{0.5\textwidth} |
| 111 | Smartgrid \& Smart meters : 35M compteurs individuels donnant de l'information en temps réel.\\[0.7cm] |
| 112 | $\Rightarrow$ \textbf{Beaucoup} de données.\\[1cm] |
| 113 | %\textcolor{white}{$\Rightarrow$} problèmes informatiques : protocoles de transfert, sécurité, \dots |
| 114 | Comment les traiter ? |
| 115 | |
| 116 | \column{0.5\textwidth} |
| 117 | \includegraphics[width = \textwidth]{smartgrid.jpg}\\ |
| 118 | \includegraphics[width = \textwidth]{linky.jpg} |
| 119 | |
| 120 | \end{columns} |
| 121 | |
| 122 | \end{frame} |
| 123 | |
| 124 | \begin{frame}{Des données variées, à différentes échelles} |
| 125 | |
| 126 | \begin{figure}[!ht] \centering |
| 127 | \begin{minipage}[c]{0.48\textwidth} |
| 128 | \includegraphics[width=\textwidth,height=3.45cm]{longtermload.png} |
| 129 | \vspace*{-0.35cm} |
| 130 | % \vspace*{-0.85cm} |
| 131 | \caption{Tendance à long terme} %\label{fig:gull} |
| 132 | \end{minipage}% |
| 133 | ~ %spacing between images |
| 134 | \begin{minipage}[c]{0.48\textwidth} |
| 135 | \includegraphics[width=\textwidth,height=3.45cm]{twoyearsload.png} |
| 136 | \vspace*{-0.35cm} |
| 137 | % \vspace*{-0.85cm} |
| 138 | \caption{Cyclicité semaine} % \label{fig:tiger} |
| 139 | \end{minipage} |
| 140 | ~\\[-0.05cm] |
| 141 | \begin{minipage}[c]{0.48\textwidth} |
| 142 | \includegraphics[width=\textwidth,height=3.45cm]{dailyloads.png} |
| 143 | \vspace*{-0.35cm} |
| 144 | % \vspace*{-0.85cm} |
| 145 | \caption{Moyenne journalière} % \label{fig:mouse} |
| 146 | \end{minipage} |
| 147 | ~ %spacing between images |
| 148 | \begin{minipage}[c]{0.48\textwidth} |
| 149 | \includegraphics[width=\textwidth,height=3.45cm]{consotemp.png} |
| 150 | \vspace*{-0.35cm} |
| 151 | % \vspace*{-0.85cm} |
| 152 | \caption{Conso. vs. température} |
| 153 | \end{minipage} |
| 154 | \end{figure} |
| 155 | |
| 156 | \end{frame} |
| 157 | |
| 158 | \begin{frame}{Découpage en tranches non stationnaires} |
| 159 | |
| 160 | Si $\exists \delta \ll D$, tel que les séries $\delta-$agrégées soient stationnaires,\\ |
| 161 | on les agrège et les traite comme des processus stationnaires.\\[0.3cm] |
| 162 | |
| 163 | \begin{columns} |
| 164 | \column{6cm} |
| 165 | \input{tikz/axis2} |
| 166 | ~ |
| 167 | \column{5cm} |
| 168 | \vspace*{-1cm} |
| 169 | \[ Z_k(t) = X(t + (k-1)\delta) \] |
| 170 | \[ k\in\N \;\;\; \forall t \in [0,\delta) \] |
| 171 | \end{columns} |
| 172 | |
| 173 | \textbf{\emph{Mais...}} |
| 174 | Une série temporelle représentant un phénomène complexe |
| 175 | \textcolor{white}{\textbf{\emph{Mais...}} }est en général clairement non stationnaire.\\[0.5cm] |
| 176 | |
| 177 | $\Rightarrow$ On décide de tenir compte de chaque point de discrétisation. |
| 178 | |
| 179 | %Par exemple, la consommation électrique moyenne sur une semaine varie |
| 180 | |
| 181 | %~ \vfill |
| 182 | %~ If $X$ contents a $\delta-$seasonal component, |
| 183 | %~ $Z$ is particularly fruitful. |
| 184 | |
| 185 | %~ C'est pas vraiment notre cas : saisonnier à plusieurs echelles |
| 186 | %~ ==> objectif : tout prendre en compte |
| 187 | |
| 188 | \end{frame} |
| 189 | |
| 190 | \begin{frame}{Réduction de dimension} |
| 191 | |
| 192 | Données enregistrées toutes les 30 minutes pendant un an :\\ |
| 193 | $48 \times 365 =$ \textbf{17520 points de discrétisation}.\\[0.3cm] |
| 194 | |
| 195 | \vspace*{-0.4cm} |
| 196 | \begin{figure}[!ht] |
| 197 | \centering |
| 198 | \includegraphics[width=\textwidth,height=5.5cm]{3centers.png} |
| 199 | \vspace*{-0.35cm} |
| 200 | %\vspace*{-0.95cm} |
| 201 | \caption{Trois types de courbes de charge \emph{(données irlandaises)}}% présentant différents régimes}%{[Spoiler] Cinq centres de clusters} |
| 202 | \end{figure} |
| 203 | |
| 204 | \vspace*{-0.3cm} |
| 205 | $\Rightarrow$ Il faut déterminer une représentation parcimonieuse, capturant\\ |
| 206 | \textcolor{white}{$\Rightarrow$ }bien les variations localisées. On choisit une base d'ondelettes.\\[0.5cm] |
| 207 | %TODO: placer l'equation puis sa version discrète. |
| 208 | |
| 209 | \end{frame} |
| 210 | |
| 211 | \begin{frame}{Wavelets to cope with \textsc{fd}} |
| 212 | |
| 213 | \begin{columns} |
| 214 | \column{.6\textwidth} |
| 215 | %\begin{figure} |
| 216 | \centering |
| 217 | \includegraphics[width = \textwidth]{./pics/weekly-5.png} |
| 218 | % * * * * * * * * * * * * * * * * * * * |
| 219 | \column{.4\textwidth} |
| 220 | \begin{footnotesize} |
| 221 | \begin{itemize} |
| 222 | \item domain-transform technique for hierarchical decomposing finite energy signals |
| 223 | \item description in terms of a broad trend (\textcolor{PineGreen}{approximation part}), plus a set of localized changes kept in the \textcolor{red}{details parts}. |
| 224 | \end{itemize} |
| 225 | \end{footnotesize} |
| 226 | \end{columns} |
| 227 | |
| 228 | \vspace*{-0.1cm} |
| 229 | \begin{block}{Discrete Wavelet Transform } |
| 230 | \begin{footnotesize} |
| 231 | If $z \in L_2([0, 1])$ we can write it as |
| 232 | \vspace*{-0.4cm} |
| 233 | \begin{equation*}\label{eq:zeta} |
| 234 | z(t) = \sum_{k=0}^{2^{j_0}-1} \textcolor{PineGreen}{c_{j_0, k}} \phi_{j_0,k} (t) + |
| 235 | \sum_{j={j_0}}^{\infty} |
| 236 | \sum_{k=0}^{2^j-1} \textcolor{red}{d_{j,k}} \psi_{j,k} (t) , |
| 237 | \end{equation*} |
| 238 | % |
| 239 | ~\\[-0.6cm] |
| 240 | where $ c_{j,k} = <g, \phi_{j,k} > $, $ d_{j,k} = <g, \varphi_{j,k}>$ are the |
| 241 | \textcolor{PineGreen}{scale coefficients} and \textcolor{red}{wavelet coefficients} respectively, and the functions $\phi$ et $\varphi$ are associated to a orthogonal \textsc{mra} of $L_2([0, 1])$. |
| 242 | \end{footnotesize} |
| 243 | \end{block} |
| 244 | \end{frame} |
| 245 | |
| 246 | %---------------------------------------- SLIDE --------------------- |
| 247 | |
| 248 | \begin{frame}{Energy decomposition of the DWT} |
| 249 | |
| 250 | \begin{block}{ } |
| 251 | \begin{itemize} |
| 252 | \item Energy conservation of the signal |
| 253 | \vspace*{-0.15cm} |
| 254 | \begin{equation*}\label{eq:energy} |
| 255 | \| z \|_H^2 \approx \| \widetilde{z_J} \|_2^2 |
| 256 | = c_{0,0}^2 + \sum_{j=0}^{J-1} \sum_{k=0}^{2^j-1} d_{j,k} ^2 = |
| 257 | c_{0,0}^2 + \sum_{j=0}^{J-1} \| \mathbf{d}_{j} \|_2^2. |
| 258 | \end{equation*} |
| 259 | % \item characterization by the set of channel variances estimated at the output of the corresponding filter bank |
| 260 | \item For each $j=0,1,\ldots,J-1$, we compute the absolute and |
| 261 | relative contribution representations by |
| 262 | \vspace*{-0.15cm} |
| 263 | \[ \underbrace{\hbox{cont}_j = ||\mathbf{d_j}||^2}_{\fbox{AC}} |
| 264 | \qquad \text{and} \qquad |
| 265 | \underbrace{\hbox{rel}_j = |
| 266 | \frac{||\mathbf{d_j}||^2} |
| 267 | {\sum_j ||\mathbf{d_j}||^2 }}_{\fbox{RC}} .\] |
| 268 | \item They quantify the relative importance of the scales to the global dynamic. |
| 269 | % \item Only the wavelet coefficients $\set{d_{j,k}}$ are used. |
| 270 | \item RC normalizes the energy of each signal to 1. |
| 271 | \end{itemize} |
| 272 | \end{block} |
| 273 | \end{frame} |
| 274 | |
| 275 | %=========================================================================================== |
| 276 | % fin de l'intro... |
| 277 | %=========================================================================================== |
| 278 | |
| 279 | \begin{frame}{Objectif} |
| 280 | |
| 281 | \begin{figure}[!ht]\centering |
| 282 | \includegraphics[width = \textwidth]{pics/schema.png} |
| 283 | %\caption{Hierarchical structure of $N$ individual clients among $K$ groups.}\label{fig:schema-hier} |
| 284 | \end{figure} |
| 285 | |
| 286 | Regroupement par tarifs, zones géographiques, types de clients \dots\\[0.3cm] |
| 287 | |
| 288 | $\Rightarrow$ \textbf{Idée} : clustering pour déterminer ces groupes.\\[0.3cm] |
| 289 | |
| 290 | \textcolor{white}{$\Rightarrow$ }\textbf{Méthode} : paralléliser un algorithme classique. |
| 291 | |
| 292 | %~ functional clustering |
| 293 | %~ wavelets to reduce dimension |
| 294 | %~ open MPI to cluster a bounded number of vectors at a time |
| 295 | |
| 296 | \end{frame} |
| 297 | |
| 298 | \begin{frame}{Fonction objectif} |
| 299 | |
| 300 | On cherche à minimiser la distorsion |
| 301 | $$\Delta = \sum_{i=1}^{n} \min_{k=1..K} \| x_i - c_k \|_2^{}$$ |
| 302 | avec pour variables les $\{c_1,\dots,c_K\} \subset \{x_1,\dots,x_n\}, c_i \neq c_j \, \forall i \neq j$.\\[0.3cm] |
| 303 | |
| 304 | C'est un problème NP-dur {\footnotesize (O. Kariv \& S. L. Hakimi, \emph{An Algorithmic Approach to Network Location Problems. II: The p-Medians})}.\\[0.1cm] |
| 305 | %SIAM J. Appl. Math., 37(3), 539–560. (22 pages) |
| 306 | %~ C'est-à-dire : |
| 307 | %~ \begin{itemize} |
| 308 | %~ \item Soit $P$ le problème de décision associé : $P(c_1,\dots,c_k) = 1$ si $(c_1,\dots,c_k)$ est optimal, 0 sinon. |
| 309 | %~ \item Soit $C$ un problème de décision bien connu comme étant NP-complet |
| 310 | %~ \item Il existe un algorithme ... |
| 311 | %~ \end{itemize} |
| 312 | |
| 313 | Pire : garantir un facteur $(1+\varepsilon)$ de l'optimum est NP-dur |
| 314 | {\footnotesize (J-H. Lin \& J. S. Vitter $\varepsilon$-Approximations with Minimum Packing Constraint Violation)}.\\[0.2cm]%(Extended Abstract) |
| 315 | |
| 316 | \begin{block}{NP : ``Non-deterministic Polynomial-time algorithms''} |
| 317 | {\footnotesize Exécution en temps polynomial sur une machine de Turing non déterministe.} |
| 318 | \end{block} |
| 319 | |
| 320 | \begin{block}{NP-dur} |
| 321 | ``Au moins aussi dur que le plus complexe des problèmes NP'' |
| 322 | \end{block} |
| 323 | |
| 324 | %~ Tous les algorithmes existants déterminant les $c_k$ sont donc des heuristiques d'approximation |
| 325 | %~ ...et parler de la parallélisation ??! donc 16 slides au total. |
| 326 | %NP-complet : c'est à dire... expliquer. |
| 327 | %Algos existants = heuristiques pr s'approcher de l'optimum (d'un...) |
| 328 | |
| 329 | \end{frame} |
| 330 | |
| 331 | \begin{frame}{Algorithme PAM} |
| 332 | |
| 333 | %PAM : montrer algo, dire comment on parallélise naïvement |
| 334 | |
| 335 | \begin{enumerate} |
| 336 | \setcounter{enumi}{-1} |
| 337 | \item Initialize: randomly select (without replacement) $K$ of the $n$ data points as the medoids. |
| 338 | \item Associate each data point to the closest medoid. (``closest'' here is defined using any valid distance metric, most commonly Euclidean distance, Manhattan distance or Minkowski distance). |
| 339 | \item For each medoid $m$\\ |
| 340 | \quad For each non-medoid data point $o$ \emph{in the same cluster}\\ |
| 341 | \quad\quad Swap $m$ and $o$ and compute the total cost. |
| 342 | \item Select the configuration with the lowest cost.\\ |
| 343 | If any change occurred in the medoids, go to step 1. |
| 344 | \end{enumerate} |
| 345 | |
| 346 | \begin{block}{Réduire le coût des étapes 2 et 3 ?} |
| 347 | \begin{itemize} |
| 348 | \item Dans R, pam(do.swap=FALSE) supprime les étapes 2 et 3. |
| 349 | \item A. P. Reynolds et al. (2006) : quelques astuces algorithmiques. |
| 350 | \end{itemize} |
| 351 | \end{block} |
| 352 | |
| 353 | \end{frame} |
| 354 | |
| 355 | \begin{frame}{Parallélisation} |
| 356 | |
| 357 | \begin{block}{Deux approches (entre autres)} |
| 358 | \begin{itemize} |
| 359 | \item Découpage de l'espace en $Z < K$ zones, et recherche de $K/Z$ clusters dans chaque zone. |
| 360 | \item Partition des données $P_1,\dots,P_Z$ puis clustering à $K$ groupes dans chaque $P_k$. |
| 361 | (Puis ``fusion'' des médoïdes). |
| 362 | \end{itemize} |
| 363 | \end{block} |
| 364 | |
| 365 | ~\\[-0.1cm] |
| 366 | {\footnotesize |
| 367 | Choix de la seconde alternative et implémentation avec OpenMPI : |
| 368 | \begin{enumerate} |
| 369 | \setcounter{enumi}{-1} |
| 370 | \item Le processus ``maître'' a pour numéro 0. Il divise les données en sous-ensembles de cardinal au plus |
| 371 | $C$ ($C = 5000$ par exemple). Il envoie ensuite une tâche de clustering par sous-ensemble, et attend les résultats. |
| 372 | \item Chaque processus ``esclave'' (numérotés de 1 à $p-1$) reçoit une liste de (références de) courbes, qu'il récupère |
| 373 | et classe via l'algorithme PAM. Il retourne les centres au processus 0. |
| 374 | \item Si on obtient plus de $C$ médoïdes, on recommence depuis l'étape 1. Sinon, on applique une dernière |
| 375 | fois l'algorithme PAM (sur les médoïdes). |
| 376 | \end{enumerate} |
| 377 | } |
| 378 | |
| 379 | \end{frame} |
| 380 | |
| 381 | \begin{frame}{Exécution du programme} |
| 382 | |
| 383 | \vspace*{-0.5cm} |
| 384 | \begin{figure} |
| 385 | \includegraphics[width=\linewidth,height=8cm]{pics/screen_demo.png} |
| 386 | %~ \vspace*{-0.35cm} |
| 387 | %~ \caption{Groupe 1} |
| 388 | \end{figure} |
| 389 | |
| 390 | \end{frame} |
| 391 | |
| 392 | \begin{frame}{Application I: Electricity Smart Meter CBT} |
| 393 | |
| 394 | %\footnotetext[1]{\textit{Irish Social Science Data Archive}, } |
| 395 | |
| 396 | \begin{itemize} |
| 397 | \item 4621 Irish households smart meter data |
| 398 | (\href{http://www.ucd.ie/issda/data/}{ISSDA}) |
| 399 | % eséries de consommation électrique de foyers irlandais |
| 400 | \item About 25K discretization points |
| 401 | \item We test with $K=$ 3 or 5 classes |
| 402 | \item We compare sequential and parallel versions |
| 403 | \end{itemize} |
| 404 | |
| 405 | \begin{table}[H] |
| 406 | \centering |
| 407 | \begin{tabular}{lcc} \hline |
| 408 | % & & \\ |
| 409 | & Distortion & (Internal) adequacy \\ \hline |
| 410 | 3 clusters sequential & 1.90e7 & 0.90 \\ |
| 411 | 3 clusters parallel & 2.15e7 & 0.90 \\ |
| 412 | 5 clusters sequential & 1.61e7 & 0.89 \\ |
| 413 | 5 clusters parallel & 1.84e7 & 0.89 \\ \hline |
| 414 | \end{tabular} |
| 415 | % \caption{Distorsions et indices d'adéquation des partitions} |
| 416 | \end{table} |
| 417 | |
| 418 | \textbf{Adequacy :} given $P_1 = (i_1,\dots,i_n)$ and $P_2 = (j_1,\dots,j_n)$,\\ |
| 419 | \textcolor{white}{\textbf{Adequacy :}} find a matching which maximize $S = \sum_{k=1}^{n} \mathbb{1}_{i_k = j_k}$\\ |
| 420 | \textcolor{white}{\textbf{Adequacy :}} (hungarian algorithm), and then return $S/n$. |
| 421 | |
| 422 | \end{frame} |
| 423 | |
| 424 | \begin{frame}{Application II: Starlight curves} |
| 425 | |
| 426 | \begin{itemize} |
| 427 | \item Data from \href{http://www.cs.ucr.edu/~eamonn/time_series_data/}{UCR Time Series Classification/Clustering} |
| 428 | %\url{http://www.cs.ucr.edu/~eamonn/time_series_data/}} |
| 429 | \item 1000 curves learning set + 8236 validation set ($d = 1024$)% discretization points |
| 430 | \end{itemize} |
| 431 | |
| 432 | \begin{figure}[H] |
| 433 | \begin{minipage}[c]{.32\linewidth} |
| 434 | \includegraphics[width=\linewidth,height=3.5cm]{pics/slgr1.png} |
| 435 | \vspace*{-0.35cm} |
| 436 | \caption{Groupe 1} |
| 437 | \end{minipage} |
| 438 | \begin{minipage}[c]{.32\linewidth} |
| 439 | \includegraphics[width=\linewidth,height=3.5cm]{pics/slgr2.png} |
| 440 | \vspace*{-0.35cm} |
| 441 | \caption{Groupe 2} |
| 442 | \end{minipage} |
| 443 | \begin{minipage}[c]{.32\linewidth} |
| 444 | \includegraphics[width=\linewidth,height=3.5cm]{pics/slgr3.png} |
| 445 | \vspace*{-0.35cm} |
| 446 | \caption{Groupe 3} |
| 447 | \end{minipage} |
| 448 | \end{figure} |
| 449 | |
| 450 | \begin{footnotesize} |
| 451 | \vspace*{-0.3cm} |
| 452 | \begin{table}[H] |
| 453 | \centering |
| 454 | \begin{tabular}{lccc} \hline |
| 455 | & & \multicolumn{2}{c}{Adequacy} \\ |
| 456 | & Distortion & Internal & External \\ \hline |
| 457 | Training (sequential) & 1.31e4 & 0.79 & 0.77 \\ |
| 458 | Training (parallel) & 1.40e4 & 0.79 & 0.68 \\ |
| 459 | Test (sequential) & 1.09e5 & 0.78 & 0.76 \\ |
| 460 | Test (parallel) & 1.15e5 & 0.78 & 0.69 \\ \hline |
| 461 | \end{tabular} |
| 462 | %\caption{Distorsions et indices d'adéquation des partitions} |
| 463 | \end{table} |
| 464 | \end{footnotesize} |
| 465 | |
| 466 | \end{frame} |
| 467 | |
| 468 | \begin{frame}{Conclusion} |
| 469 | |
| 470 | %~ On peut clusteriser |
| 471 | %~ Faudrait etre moins naif |
| 472 | %~ Faudrait aussi étendre/généraliser le code... |
| 473 | |
| 474 | \begin{block}{Résumé} |
| 475 | \begin{itemize} |
| 476 | \itemsep0.1em |
| 477 | \item Les smartmètres mesurent la charge électrique pour chaque client, en temps réel $\Rightarrow$ données fonctionnelles. |
| 478 | \item Les ondelettes fournissent des représentations parcimonieuses tout en préservant la nature fonctionnelle des données. |
| 479 | \item L'analyse de ces représentations à l'aide de l'algorithme PAM permet d'identifier des groupes de clients. |
| 480 | \item L'algorithme PAM est appliqué en parallèle sur des jeux de données de tailles raisonnables. |
| 481 | \end{itemize} |
| 482 | \end{block} |
| 483 | |
| 484 | % \item \textit{Divide-and-Conquer} approach thanks to MPI library %pour l'algorithme des $k$-médoïdes : d'abord sur des groupes de données courbes, puis des groupes de médoïdes jusqu'à obtenir un seul ensemble traité sur un processseur. |
| 485 | %\item %Les résultats obtenus sur les deux jeux de données présentés sont assez encourageants, et permettent d'envisager une utilisation à plus grande échelle. |
| 486 | %\end{itemize} |
| 487 | |
| 488 | \begin{exampleblock}{Perspectives} |
| 489 | \begin{itemize} |
| 490 | \itemsep0.1em |
| 491 | \item L'étude des groupes de clients peut donner lieu à l'élaboration de $K$ modèles prédictifs spécialisés. |
| 492 | \item La méthode de clustering parallèle proposée peut être adaptée pour traiter les 35M séries (sur un supercalculateur ?). |
| 493 | %\item Apply the algorithm over many hundreds of processors |
| 494 | \end{itemize} |
| 495 | \end{exampleblock} |
| 496 | |
| 497 | \end{frame} |
| 498 | |
| 499 | \begin{frame}{Références} |
| 500 | |
| 501 | \begin{thebibliography}{4} |
| 502 | \bibitem{1} \textcolor{black}{A. Antoniadis, X. Brossat, J. Cugliari, J.-M. Poggi} (2013), Clustering Functional Data Using Wavelets, \textcolor{black}{{\it Wavelets, Multiresolution and Information Processing}, 11(1), 35--64} |
| 503 | |
| 504 | \bibitem{2} \textcolor{black}{A. Arbelaez, L. Quesada} (2013), Parallelising the k-Medoids Clustering Problem Using Space-Partitioning, \textcolor{black}{{\it Symposium on Combinatorial Search}, AAAI Publications} |
| 505 | |
| 506 | \bibitem{3} \textcolor{black}{R. Bekkerman, M. Bilenko, J. Langford - éditeurs} (2011), |
| 507 | Scaling up Machine Learning: Parallel and Distributed Approaches, \textcolor{black}{Cambridge University Press} |
| 508 | |
| 509 | \bibitem{4} \textcolor{black}{A. P. Reynolds, G. Richards, B. de la Iglesia, V. J. Rayward-Smith} (2006), Clustering Rules: A Comparison of Partitioning and Hierarchical Clustering Algorithms, \textcolor{black}{{\it Mathematical Modelling and Algorithms}, 5(4), 475--504} |
| 510 | |
| 511 | %\bibitem{3} P. Berkhin (2006), A Survey of Clustering Data Mining Techniques, {\it Grouping Multidimensional Data, éditeurs : J. Kogan, C. Nicholas, M. Teboulle}. |
| 512 | |
| 513 | %\bibitem{6} J. Dean et S. Ghemawat (2004), MapReduce: Simplified Data Processing on Large Clusters, {\it Sixth Symposium on Operating System Design and Implementation}. |
| 514 | |
| 515 | %\bibitem{7} G. De Francisci Morales et A. Bifet (2013), G. De Francisci Morales SAMOA: A Platform for Mining Big Data Streams Keynote Talk at RAMSS ’13: 2nd International Workshop on Real-Time Analysis and Mining of Social Streams WWW, Rio De Janeiro |
| 516 | |
| 517 | %\bibitem{10} L. Kaufman et P.J. Rousseeuw (1987), Clustering by means of Medoids, {\it Statistical Data Analysis Based on the L\_1-Norm and Related Methods, éditeur : Y. Dodge}. |
| 518 | \end{thebibliography} |
| 519 | |
| 520 | %[2013] A. Antoniadis, X. Brossat, J. Cugliari & J.-M. Poggi. Clustering functional data using Wavelets Inter. J. of Wavelets, Multiresolution and Information Procesing. doi:10.1142/S0219691313500033 |
| 521 | |
| 522 | %~ Scaling up Machine Learning: Parallel and Distributed Approaches [Anglais] [Relié] |
| 523 | %~ Ron Bekkerman (Sous la direction de), Mikhail Bilenko (Sous la direction de), John Langford |
| 524 | |
| 525 | \end{frame} |
| 526 | |
| 527 | \begin{frame} |
| 528 | |
| 529 | \centering |
| 530 | \includegraphics[width=7cm,height=7cm]{Questions.jpg} |
| 531 | |
| 532 | \end{frame} |
| 533 | |
| 534 | \end{document} |