Bulk tex and prez
This commit is contained in:
parent
753179f341
commit
f66c92f74f
22 changed files with 6593 additions and 843 deletions
BIN
img/animation.gif
Normal file
BIN
img/animation.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 158 KiB |
BIN
img/bee.png
Normal file
BIN
img/bee.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.4 KiB |
BIN
img/pollen.png
Normal file
BIN
img/pollen.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
BIN
presentation.pdf
BIN
presentation.pdf
Binary file not shown.
842
presentation.tex
842
presentation.tex
|
|
@ -1,842 +0,0 @@
|
||||||
\documentclass{beamer}
|
|
||||||
\usetheme{Boadilla}
|
|
||||||
|
|
||||||
% importations
|
|
||||||
\usepackage[french]{babel} % pour dire que le texte est en francais
|
|
||||||
\usepackage{csquotes}
|
|
||||||
\usepackage[T1]{fontenc} % pour les font postscript
|
|
||||||
\usepackage[cyr]{aeguill} % Police vectorielle TrueType, guillemets francais
|
|
||||||
\usepackage{epsfig} % pour gérer les images
|
|
||||||
\usepackage{amsmath,amsthm, stmaryrd} % très bon mode mathématique
|
|
||||||
\usepackage{amsfonts,amssymb,bm, bbold}% permet la definition des ensembles
|
|
||||||
\usepackage{algorithm2e} % pour les algorithmes
|
|
||||||
\usepackage{algpseudocode} % pour les algorithmes
|
|
||||||
\usepackage{graphicx}
|
|
||||||
\usepackage{float} % pour le placement des figure
|
|
||||||
\usepackage{url} % pour une gestion efficace des url
|
|
||||||
\usepackage{hyperref} % pour les hyperliens dans le document
|
|
||||||
\usepackage{tikz} % For graph plots
|
|
||||||
\usepackage{adjustbox} % To resize tikzpictures
|
|
||||||
\usepackage{fontawesome5}
|
|
||||||
\usepackage{makecell}
|
|
||||||
|
|
||||||
% Beamer
|
|
||||||
\setbeamertemplate{headline}{%
|
|
||||||
\begin{beamercolorbox}[ht=2.25ex,dp=3.75ex]{section in head/foot}
|
|
||||||
\insertnavigation{\paperwidth}
|
|
||||||
\end{beamercolorbox}%
|
|
||||||
}%
|
|
||||||
\beamertemplatenavigationsymbolsempty % Pas de bar de navigation
|
|
||||||
\setbeamerfont{caption}{size=\scriptsize} % Petit titre de figures
|
|
||||||
|
|
||||||
% bibliographie
|
|
||||||
\usepackage[style=apa,sorting=none]{biblatex}
|
|
||||||
\addbibresource{references.bib}
|
|
||||||
|
|
||||||
|
|
||||||
% Tikz
|
|
||||||
%% Tikz Related
|
|
||||||
\usetikzlibrary{calc,shapes,backgrounds,arrows,automata,shadows,positioning}
|
|
||||||
\usetikzlibrary{arrows,shapes,positioning,shadows,trees,calc,backgrounds,automata,positioning}
|
|
||||||
\usetikzlibrary{decorations.pathreplacing,calligraphy}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\tikzset{
|
|
||||||
basic/.style = {draw, text width=3cm, font=\sffamily, rectangle},
|
|
||||||
root/.style = {basic, rounded corners=2pt, thin, align=center,
|
|
||||||
fill=green!30},
|
|
||||||
level 2/.style = {basic, rounded corners=6pt, thin,align=center, fill=green!60,
|
|
||||||
text width=8em},
|
|
||||||
level 3/.style = {basic, thin, align=left, fill=pink!60, text width=3.5cm}
|
|
||||||
}
|
|
||||||
% Couleurs
|
|
||||||
% pour tickz multilevel
|
|
||||||
\definecolor{redorg}{RGB}{215,48,39}
|
|
||||||
\definecolor{orangeorg}{RGB}{253,174,97}
|
|
||||||
|
|
||||||
\definecolor{blueind}{RGB}{69,117,233}
|
|
||||||
\definecolor{cyanind}{RGB}{116,173,209}
|
|
||||||
\definecolor{electricblue}{RGB}{125, 249, 255}
|
|
||||||
|
|
||||||
\definecolor{greenind}{RGB}{112,130,56}
|
|
||||||
|
|
||||||
\definecolor{burntorange}{RGB}{204, 85, 0}
|
|
||||||
\definecolor{goldenyellow}{RGB}{255, 192, 0}
|
|
||||||
\definecolor{peach}{RGB}{255,255,0}
|
|
||||||
|
|
||||||
\definecolor{gray}{RGB}{128,128,128}
|
|
||||||
|
|
||||||
% Footnote
|
|
||||||
\makeatletter
|
|
||||||
\newcommand\blfootnote[1]{%
|
|
||||||
\begingroup
|
|
||||||
\renewcommand{\@makefntext}[1]{\noindent\makebox[1.8em][r]#1}
|
|
||||||
\renewcommand\thefootnote{}\footnote{#1}%
|
|
||||||
\addtocounter{footnote}{-1}%
|
|
||||||
\endgroup
|
|
||||||
}
|
|
||||||
\makeatother
|
|
||||||
|
|
||||||
|
|
||||||
\subtitle{Séminaire des stagiaires}
|
|
||||||
\title[Collections de réseaux bipartites]{Détection de structure dans des réseaux bipartites}
|
|
||||||
\author[L. Lacoste]{Louis \textsc{Lacoste}} % Sous la supervision de Pierre
|
|
||||||
\date{29 juin 2023}
|
|
||||||
|
|
||||||
\begin{document}
|
|
||||||
|
|
||||||
% titre
|
|
||||||
\begin{frame}[noframenumbering,plain]
|
|
||||||
\maketitle
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\section{Contexte du modèle}
|
|
||||||
\label{sec:contexte-du-modele}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Contexte écologique}
|
|
||||||
\begin{itemize}
|
|
||||||
\item Faire de la détection de structure sur un réseau (SBM, LBM) mais intérêt à le faire sur plusieurs
|
|
||||||
\item De nombreux réseaux disponibles \parencite{WebLifeEcological} et décrivant des interactions similaires
|
|
||||||
\item Re-grouper les réseaux selon leur similarité (\emph{clustering} de réseaux)
|
|
||||||
\item Transférer de l'information grâce à la collection (par exemple reconstitution de données manquantes)
|
|
||||||
\item Déterminer des structures d'interactions fines de manière agnostique % Pas d'idee preco
|
|
||||||
%\item Vérifier si le regroupement est lié à des co-variables
|
|
||||||
\end{itemize}
|
|
||||||
\end{frame}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Réseaux bipartites\footnote{Ou \emph{bipartis}. Voir~\cite{larousseDefinitionsBipartiBipartite}.}}
|
|
||||||
\begin{columns}[c]
|
|
||||||
\begin{column}{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
Réseau bipartite\\
|
|
||||||
\begin{tikzpicture}[scale=.6]
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=1.5pt]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.95, transform shape]
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape]
|
|
||||||
\tikzstyle{every node}=[fill=blueind]
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (A1) at (0,5) {\textbf{R1}};
|
|
||||||
\node[state, draw=black!50] (A2) at (2.5,5) {\textbf{R2}};
|
|
||||||
\node[state, draw=black!50] (A3) at (5,5) {\textbf{R3}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=greenind, shape=rectangle]
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
|
||||||
\node[state, draw=black!50] (B1) at (0,0) {\textbf{C1}};
|
|
||||||
\node[state, draw=black!50] (B2) at (1.25,0) {\textbf{C2}};
|
|
||||||
\node[state, draw=black!50] (B3) at (2.5,0) {\textbf{C3}};
|
|
||||||
\node[state, draw=black!50] (B4) at (3.75,0) {\textbf{C4}};
|
|
||||||
\node[state, draw=black!50] (B5) at (5,0) {\textbf{C5}};
|
|
||||||
\path (A1) edge [] (B1);
|
|
||||||
\path (A1) edge (B2);
|
|
||||||
\path (A1) edge (B3);
|
|
||||||
\path (A1) edge (B4);
|
|
||||||
\path (A2) edge (B3);
|
|
||||||
\path (A2) edge (B4);
|
|
||||||
\path (A3) edge (B5);
|
|
||||||
\path (A2) edge (B5);
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{column}
|
|
||||||
\hfill
|
|
||||||
\begin{column}{0.48\linewidth}
|
|
||||||
Matrice d'incidence
|
|
||||||
\smallskip
|
|
||||||
$X=\left(
|
|
||||||
\begin{array}{rrrrr}
|
|
||||||
1 & 1 & 1 & 1 & 0 \\
|
|
||||||
0 & 0 & 1 & 1 & 1 \\
|
|
||||||
0 & 0 & 0 & 0 & 1 \\
|
|
||||||
\end{array}\right)
|
|
||||||
$\\
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
\smallskip
|
|
||||||
Permet de décrire des interactions impliquant deux agents dont les rôles
|
|
||||||
sont de natures différentes.\\
|
|
||||||
Par exemple : hôtes-parasites, plantes-pollinisateurs, graines-disperseurs \dots
|
|
||||||
\end{frame}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Latent Block Model (LBM\footnotemark[2])}
|
|
||||||
%DONE remplacer i \in bullet par Zi = \bullet
|
|
||||||
Proposé par~\cite{govaertEMAlgorithmBlock2005}.
|
|
||||||
\begin{columns}
|
|
||||||
\begin{column}{0.40\linewidth}
|
|
||||||
\begin{figure}[H]
|
|
||||||
\center
|
|
||||||
\begin{tikzpicture}[scale=0.35]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.95, transform shape]
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape]
|
|
||||||
\tikzset{edge_proba/.style={draw=white, fill=none, text=black}}
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=blueind]
|
|
||||||
\node[edge_proba] (pi1) at (1,5.7) {\textbf{$\pi_{{\color{blueind}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R11) at (0,5) {\textbf{R11}};
|
|
||||||
\node[state, draw=black!50] (R12) at (1,5) {\textbf{R12}};
|
|
||||||
\node[state, draw=black!50] (R13) at (2,5) {\textbf{R13}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=cyanind]
|
|
||||||
\node[edge_proba] (pi2) at (6.75,5.7) {\textbf{$\pi_{{\color{cyanind}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R21) at (6.25,5) {\textbf{R21}};
|
|
||||||
\node[state, draw=black!50] (R22) at (7.25,5) {\textbf{R22}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=electricblue]
|
|
||||||
\node[edge_proba] (pi3) at (10,5.7) {\textbf{$\pi_{{\color{electricblue}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R31) at (10,5) {\textbf{R31}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=burntorange, shape=rectangle]
|
|
||||||
\node[edge_proba] (pi3) at (0.5,-0.7) {\textbf{$\rho_{{\color{burntorange}\bullet}}$}};
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
|
||||||
\node[state, draw=black!50] (B1) at (0,0) {\textbf{C11}};
|
|
||||||
\node[state, draw=black!50] (B2) at (1,0) {\textbf{C12}};
|
|
||||||
\tikzstyle{every node}=[fill=goldenyellow, shape=rectangle]
|
|
||||||
\node[edge_proba] (pi3) at (4,-0.7) {\textbf{$\rho_{{\color{goldenyellow}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (B3) at (3.5,0) {\textbf{C21}};
|
|
||||||
\node[state, draw=black!50] (B4) at (4.5,0) {\textbf{C22}};
|
|
||||||
\tikzstyle{every node}=[fill=peach, shape=rectangle]
|
|
||||||
\node[edge_proba] (pi3) at (10,-0.7) {\textbf{$\rho_{{\color{peach}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (B5) at (10,0) {\textbf{C31}};
|
|
||||||
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=1.5pt,draw opacity=0.2]
|
|
||||||
|
|
||||||
\path (R11) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[left, fill=none] {$\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}}$} (B1);
|
|
||||||
\path (R11) edge (B2);
|
|
||||||
\path (R11) edge (B3);
|
|
||||||
\path (R11) edge (B4);
|
|
||||||
|
|
||||||
\path (R12) edge [] (B1);
|
|
||||||
\path (R12) edge (B2);
|
|
||||||
\path (R12) edge (B3);
|
|
||||||
\path (R12) edge (B4);
|
|
||||||
|
|
||||||
\path (R13) edge [] (B1);
|
|
||||||
\path (R13) edge (B2);
|
|
||||||
\path (R13) edge (B3);
|
|
||||||
\path (R13) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left, fill=none] {$\alpha_{{\color{blueind}\bullet}{\color{goldenyellow}\bullet}}$} (B4);
|
|
||||||
|
|
||||||
\path (R21) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right, fill=none] {$\alpha_{{\color{cyanind}\bullet}{\color{goldenyellow}\bullet}}$} (B3);
|
|
||||||
\path (R21) edge (B4);
|
|
||||||
\path (R21) edge (B5);
|
|
||||||
|
|
||||||
\path (R22) edge (B3);
|
|
||||||
\path (R22) edge (B4);
|
|
||||||
\path (R22) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left, fill=none] {$\alpha_{{\color{cyanind}\bullet}{\color{peach}\bullet}}$} (B5);
|
|
||||||
|
|
||||||
\path (R31) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right, fill=none] {$\alpha_{{\color{electricblue}\bullet}{\color{peach}\bullet}}$} (B5);
|
|
||||||
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{Exemple de LBM\footnotemark}
|
|
||||||
\label{fig:LBMvisu}
|
|
||||||
\end{figure}
|
|
||||||
\end{column}
|
|
||||||
\begin{column}{0.51\linewidth}
|
|
||||||
Pour \begin{itemize}
|
|
||||||
\item $Q_1 = |\{{\color{blueind}\bullet},{\color{cyanind}\bullet},{\color{electricblue}\bullet}\}|$ blocs fixés en ligne
|
|
||||||
\item $Q_2 = |\{{\color{burntorange}\bullet},{\color{goldenyellow}\bullet},{\color{peach}\bullet}\}|$ blocs fixés en colonne
|
|
||||||
\end{itemize}
|
|
||||||
\begin{block}{Paramètres}
|
|
||||||
\begin{itemize}
|
|
||||||
\item $\pi_{\bullet} = \mathbb{P}(Z_i = \bullet)$ en ligne et $\rho_{\bullet} = \mathbb{P}(W_j = \bullet)$ en colonne
|
|
||||||
\item $\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}} = \mathbb{P}(X_{ij} = 1 | Z_i = {\color{blueind}\bullet}, W_j = {\color{burntorange}\bullet})$
|
|
||||||
\end{itemize}
|
|
||||||
\end{block}
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
|
|
||||||
\footnotetext{Que j'appellerai par la suite BiSBM}
|
|
||||||
|
|
||||||
\end{frame}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{\emph{colSBM}}
|
|
||||||
Le modèle \emph{colSBM} \parencite{chabert-liddellLearningCommonStructures2023}.\\
|
|
||||||
% Difficulté estimer les parametres
|
|
||||||
|
|
||||||
% DONE Modifier les realisations pour variabilite, mettre iid au dessus du sim et inverser modele et realisations
|
|
||||||
\smallskip
|
|
||||||
\definecolor{yellow}{RGB}{255,190,60}
|
|
||||||
\begin{center}
|
|
||||||
\begin{adjustbox}{trim=0 0 0 1cm}
|
|
||||||
\begin{tikzpicture}[scale=.32]
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=.5pt, bend left]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.95, transform shape]
|
|
||||||
\tikzset{edge_proba/.style={draw=white, fill=none, text=black}}
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=yellow]
|
|
||||||
\node[state, draw=black!50] (A1) at (0,2) {\textbf{A1}};
|
|
||||||
\node[state, draw=black!50] (A2) at (1.5, 2) {\textbf{A2}};
|
|
||||||
\node[state, draw=black!50] (A3) at (0.75,3.25) {\textbf{A3}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=blueind]
|
|
||||||
\node[state, draw=black!50] (B1) at (4.5,3) {\textbf{B1}};
|
|
||||||
\node[state, draw=black!50] (B2) at (4,4.75) {\textbf{B2}};
|
|
||||||
\node[state, draw=black!50] (B3) at (5.5,6) {\textbf{B3}};
|
|
||||||
\node[state, draw=black!50] (B4) at (7,4.75) {\textbf{B4}};
|
|
||||||
\node[state, draw=black!50] (B5) at (6.5,3) {\textbf{B5}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=greenind]
|
|
||||||
\node[state, draw=black!50] (C1) at (5,0) {\textbf{C1}};
|
|
||||||
\node[state, draw=black!50] (C2) at (7,1) {\textbf{C2}};
|
|
||||||
|
|
||||||
|
|
||||||
\path (A1) edge[bend right] (A2);
|
|
||||||
\path (A1) edge node[midway, left, fill=none] {$\alpha_{{\color{yellow}\bullet}{\color{yellow}\bullet}}$} (A3);
|
|
||||||
\path (A3) edge (A2);
|
|
||||||
|
|
||||||
\path (A3) edge node[midway, above, fill=none] {$\alpha_{{\color{yellow}\bullet}{\color{blueind}\bullet}}$} (B3);
|
|
||||||
|
|
||||||
\path (B1) edge (B2);
|
|
||||||
\path (B2) edge (B3);
|
|
||||||
\path (B3) edge (B4);
|
|
||||||
\path (B4) edge (B5);
|
|
||||||
\path (B5) edge (B1);
|
|
||||||
|
|
||||||
\path (B1) edge[bend left=0] (B4);
|
|
||||||
\path (B5) edge[bend left=0] (B2);
|
|
||||||
|
|
||||||
\path (A2) edge[bend right] node[midway, below, fill=none] {$\alpha_{{\color{yellow}\bullet}{\color{greenind}\bullet}}$} (C1);
|
|
||||||
\path (C1) edge[bend right] node[midway, below, fill=none] {$\alpha_{{\color{greenind}\bullet}{\color{greenind}\bullet}}$} (C2);
|
|
||||||
\path (C2) edge[bend right] node[midway, right, fill=none] {$\alpha_{{\color{greenind}\bullet}{\color{blueind}\bullet}}$} (B4);
|
|
||||||
|
|
||||||
\node[font=\small, text justified,draw=none, fill=none] at (4.5,-1.5) {SBM};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
% Sampled network
|
|
||||||
\begin{scope}[xshift=-16cm,yshift=4cm]
|
|
||||||
\node[font=\small, text justified, fill=none] at (10, -2.5) {$\overset{iid}{\sim}$};
|
|
||||||
\tikzstyle{every node}=[fill=gray, scale=0.95]
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=.5pt, bend left]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.95, transform shape]
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (A1) at (0,0) {\textbf{10}};
|
|
||||||
\node[state, draw=black!50] (A2) at (1, 0) {\textbf{2}};
|
|
||||||
\node[state, draw=black!50] (A3) at (0.5,1) {\textbf{5}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B2) at (2,2.75) {\textbf{9}};
|
|
||||||
\node[state, draw=black!50] (B3) at (3.5,4) {\textbf{6}};
|
|
||||||
\node[state, draw=black!50] (B4) at (5,2.75) {\textbf{3}};
|
|
||||||
\node[state, draw=black!50] (B5) at (4.5,1) {\textbf{7}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (C1) at (3,-0.5) {\textbf{4}};
|
|
||||||
|
|
||||||
\path (A1) edge[bend right] (A2);
|
|
||||||
\path (A1) edge (A3);
|
|
||||||
\path (A3) edge (A2);
|
|
||||||
|
|
||||||
\path (A3) edge (B3);
|
|
||||||
|
|
||||||
\path (B2) edge (B3);
|
|
||||||
\path (B3) edge (B4);
|
|
||||||
\path (B4) edge (B5);
|
|
||||||
|
|
||||||
\path (B5) edge[bend left=0] (B2);
|
|
||||||
|
|
||||||
\path (A2) edge[bend right] (C1);
|
|
||||||
|
|
||||||
\node[text width=3cm,font=\small, text justified, rotate=90, fill=none, below = -0.8cm of C1] (dots) {\dots};
|
|
||||||
|
|
||||||
\end{scope}
|
|
||||||
\begin{scope}[xshift=-16cm,yshift=-4cm]
|
|
||||||
\tikzstyle{every node}=[fill=gray, scale=0.95]
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=.5pt, bend left]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.95, transform shape]
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (A2) at (1, 0) {\textbf{2}};
|
|
||||||
\node[state, draw=black!50] (A3) at (0.5,1) {\textbf{1}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B1) at (2.5,1) {\textbf{5}};
|
|
||||||
\node[state, draw=black!50] (B2) at (2,2.75) {\textbf{10}};
|
|
||||||
\node[state, draw=black!50] (B4) at (5,2.75) {\textbf{8}};
|
|
||||||
\node[state, draw=black!50] (B5) at (4.5,1) {\textbf{7}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (C2) at (5,0) {\textbf{3}};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\path (A3) edge (A2);
|
|
||||||
|
|
||||||
|
|
||||||
\path (B1) edge (B2);
|
|
||||||
\path (B4) edge (B5);
|
|
||||||
\path (B5) edge (B1);
|
|
||||||
|
|
||||||
\path (B1) edge[bend left=0] (B4);
|
|
||||||
\path (B5) edge[bend left=0] (B2);
|
|
||||||
|
|
||||||
\path (C2) edge[bend right] (B4);
|
|
||||||
\end{scope}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{adjustbox}
|
|
||||||
\end{center}
|
|
||||||
Pour $Q = |\{{\color{yellow}\bullet},{\color{blueind}\bullet},{\color{greenind}\bullet}\}|$ blocs fixés :
|
|
||||||
\begin{block}{Paramètres}
|
|
||||||
\begin{itemize}
|
|
||||||
\item $\pi_{\bullet} = \mathbb{P}(Z_i =\bullet)$
|
|
||||||
\item $\alpha_{{\color{greenind}\bullet}{\color{blueind}\bullet}} = \mathbb{P}(X_{ij} = 1 | Z_i = {\color{greenind}\bullet}, Z_j = {\color{blueind}\bullet})$
|
|
||||||
\end{itemize}
|
|
||||||
\end{block}
|
|
||||||
\end{frame}
|
|
||||||
\section{Extension de \emph{colSBM} aux réseaux bipartites}
|
|
||||||
\label{sec:extension-de-colsbm-aux-reseaux-bipartites}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Collections bipartites}
|
|
||||||
\begin{center}
|
|
||||||
\begin{adjustbox}{trim=0 0 1 1.5cm}
|
|
||||||
\begin{tikzpicture}[scale=.33]
|
|
||||||
\begin{scope}[xshift=18cm, yshift=2cm]
|
|
||||||
\tikzstyle{every state}=[draw=none, text=black,scale=0.75, transform shape]
|
|
||||||
\tikzset{edge_proba/.style={draw=white, fill=none, text=black}}
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=blueind]
|
|
||||||
\node[edge_proba] (pi1) at (1,5.7) {\textbf{$\pi_{{\color{blueind}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R11) at (0,5) {\textbf{R11}};
|
|
||||||
\node[state, draw=black!50] (R12) at (1,5) {\textbf{R12}};
|
|
||||||
\node[state, draw=black!50] (R13) at (2,5) {\textbf{R13}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=cyanind]
|
|
||||||
\node[edge_proba] (pi2) at (6.75,5.7) {\textbf{$\pi_{{\color{cyanind}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R21) at (6.25,5) {\textbf{R21}};
|
|
||||||
\node[state, draw=black!50] (R22) at (7.25,5) {\textbf{R22}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=electricblue]
|
|
||||||
\node[edge_proba] (pi3) at (10,5.7) {\textbf{$\pi_{{\color{electricblue}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (R31) at (10,5) {\textbf{R31}};
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=burntorange, shape=rectangle]
|
|
||||||
\node[edge_proba] (rho1) at (0.5,-1) {\textbf{$\rho_{{\color{burntorange}\bullet}}$}};
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
|
||||||
\node[state, draw=black!50] (B1) at (0,0) {\textbf{C11}};
|
|
||||||
\node[state, draw=black!50] (B2) at (1,0) {\textbf{C12}};
|
|
||||||
\tikzstyle{every node}=[fill=goldenyellow, shape=rectangle]
|
|
||||||
\node[edge_proba] (rho2) at (4,-1) {\textbf{$\rho_{{\color{goldenyellow}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (B3) at (3.5,0) {\textbf{C21}};
|
|
||||||
\node[state, draw=black!50] (B4) at (4.5,0) {\textbf{C22}};
|
|
||||||
\tikzstyle{every node}=[fill=peach, shape=rectangle]
|
|
||||||
\node[edge_proba] (rho3) at (10,-1) {\textbf{$\rho_{{\color{peach}\bullet}}$}};
|
|
||||||
\node[state, draw=black!50] (B5) at (10,0) {\textbf{C31}};
|
|
||||||
|
|
||||||
\node[font=\small, text justified,draw=none, fill=none, below = 0.05cm of rho2] {BiSBM};
|
|
||||||
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=1.5pt,draw opacity=0.2]
|
|
||||||
|
|
||||||
\path (R11) edge (B2);
|
|
||||||
\path (R11) edge (B3);
|
|
||||||
\path (R11) edge (B4);
|
|
||||||
|
|
||||||
\path (R12) edge [] (B1);
|
|
||||||
\path (R12) edge (B2);
|
|
||||||
\path (R12) edge (B3);
|
|
||||||
\path (R12) edge (B4);
|
|
||||||
|
|
||||||
\path (R13) edge [] (B1);
|
|
||||||
\path (R13) edge (B2);
|
|
||||||
\path (R13) edge (B3);
|
|
||||||
|
|
||||||
\path (R21) edge (B4);
|
|
||||||
\path (R21) edge (B5);
|
|
||||||
|
|
||||||
\path (R22) edge (B3);
|
|
||||||
\path (R22) edge (B4);
|
|
||||||
|
|
||||||
\path (R11) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[left, fill=none] {$\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}}$} (B1);
|
|
||||||
\path (R13) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left, fill=none] {$\alpha_{{\color{blueind}\bullet}{\color{goldenyellow}\bullet}}$} (B4);
|
|
||||||
\path (R21) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, anchor=center, fill=none] {$\alpha_{{\color{cyanind}\bullet}{\color{goldenyellow}\bullet}}$} (B3);
|
|
||||||
\path (R22) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left, fill=none] {$\alpha_{{\color{cyanind}\bullet}{\color{peach}\bullet}}$} (B5);
|
|
||||||
\path (R31) edge[-,>=stealth',shorten >=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right, fill=none] {$\alpha_{{\color{electricblue}\bullet}{\color{peach}\bullet}}$} (B5);
|
|
||||||
\end{scope}
|
|
||||||
|
|
||||||
\begin{scope}[xshift=3cm, yshift = 1cm]
|
|
||||||
\node[text justified, fill=none] at (10, 3.5) {$\overset{iid}{\sim}$};
|
|
||||||
\begin{scope}[yshift = 6cm]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.75, transform shape]
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=gray]
|
|
||||||
\node[state, draw=black!50] (R11) at (0,1.25) {\textbf{1}};
|
|
||||||
\node[state, draw=black!50] (R12) at (1,1.25) {\textbf{2}};
|
|
||||||
\node[state, draw=black!50] (R13) at (2,1.25) {\textbf{3}};
|
|
||||||
\node[state, draw=black!50] (R21) at (3,1.25) {\textbf{4}};
|
|
||||||
\node[state, draw=black!50] (R31) at (5,1.25) {\textbf{6}};
|
|
||||||
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
|
||||||
\node[state, draw=black!50] (B1) at (0.5,-1) {\textbf{1}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B31) at (2.5,-1) {\textbf{3}};
|
|
||||||
\node[state, draw=black!50] (B4) at (3.5,-1) {\textbf{4}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B5) at (4.5,-1) {\textbf{5}};
|
|
||||||
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
|
||||||
\path (R11) edge (B1);
|
|
||||||
\path (R11) edge (B31);
|
|
||||||
\path (R11) edge (B4);
|
|
||||||
|
|
||||||
\path (R12) edge [] (B1);
|
|
||||||
\path (R12) edge (B31);
|
|
||||||
\path (R12) edge (B4);
|
|
||||||
|
|
||||||
\path (R13) edge [] (B1);
|
|
||||||
\path (R13) edge (B31);
|
|
||||||
\path (R13) edge (B4);
|
|
||||||
|
|
||||||
\path (R21) edge (B31);
|
|
||||||
\path (R21) edge (B4);
|
|
||||||
\path (R21) edge (B5);
|
|
||||||
|
|
||||||
|
|
||||||
\path (R31) edge (B5);
|
|
||||||
\end{scope}
|
|
||||||
\node[text width=3cm,font=\small, text justified, rotate=90, fill=none] (dots) at (2.5, 7.5){\dots};
|
|
||||||
|
|
||||||
\begin{scope}[yshift = 0cm]
|
|
||||||
\tikzstyle{every state}=[draw, text=black,scale=0.75, transform shape]
|
|
||||||
|
|
||||||
\tikzstyle{every node}=[fill=gray]
|
|
||||||
\node[state, draw=black!50] (R11) at (0,2.25) {\textbf{4}};
|
|
||||||
\node[state, draw=black!50] (R13) at (2,2.25) {\textbf{6}};
|
|
||||||
\node[state, draw=black!50] (R21) at (3,2.25) {\textbf{3}};
|
|
||||||
\node[state, draw=black!50] (R22) at (4,2.25) {\textbf{5}};
|
|
||||||
\node[state, draw=black!50] (R31) at (5,2.25) {\textbf{2}};
|
|
||||||
|
|
||||||
\tikzstyle{every state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
|
||||||
\node[state, draw=black!50] (B1) at (0.5,0) {\textbf{5}};
|
|
||||||
\node[state, draw=black!50] (B2) at (1.5,0) {\textbf{1}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B4) at (3.5,0) {\textbf{2}};
|
|
||||||
|
|
||||||
\node[state, draw=black!50] (B5) at (4.5,0) {\textbf{4}};
|
|
||||||
|
|
||||||
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
|
||||||
\path (R11) edge (B1);
|
|
||||||
\path (R11) edge (B2);
|
|
||||||
\path (R11) edge (B4);
|
|
||||||
|
|
||||||
\path (R13) edge [] (B1);
|
|
||||||
\path (R13) edge (B2);
|
|
||||||
\path (R13) edge (B4);
|
|
||||||
|
|
||||||
\path (R21) edge (B4);
|
|
||||||
\path (R21) edge (B5);
|
|
||||||
|
|
||||||
\path (R22) edge (B4);
|
|
||||||
\path (R22) edge (B5);
|
|
||||||
|
|
||||||
\path (R31) edge (B5);
|
|
||||||
\end{scope}
|
|
||||||
\end{scope}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{adjustbox}
|
|
||||||
\end{center}
|
|
||||||
|
|
||||||
Pour
|
|
||||||
\begin{itemize}
|
|
||||||
\item $Q_1 = |\{{\color{blueind}\bullet},{\color{cyanind}\bullet},{\color{electricblue}\bullet}\}|$ blocs fixés en ligne
|
|
||||||
\item $Q_2 = |\{{\color{burntorange}\bullet},{\color{goldenyellow}\bullet},{\color{peach}\bullet}\}|$ blocs fixés en colonne
|
|
||||||
\end{itemize}
|
|
||||||
\begin{block}{Paramètres}
|
|
||||||
\begin{itemize}
|
|
||||||
\item $\pi_{\bullet} = \mathbb{P}(Z_i =\bullet)$ en ligne et $\rho_{\bullet} = \mathbb{P}(W_j = \bullet)$ en colonne
|
|
||||||
\item $\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}} = \mathbb{P}(X_{ij} = 1 | Z_i = {\color{blueind}\bullet}, W_j = {\color{burntorange}\bullet})$
|
|
||||||
\end{itemize}
|
|
||||||
\end{block}
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Différents modèles}
|
|
||||||
\begin{block}{\emph{iid-colBiSBM}}
|
|
||||||
$\bm{\pi} = (\pi_1, \dots \pi_{Q_1})$ et $\bm{\rho} = (\rho_1, \dots \rho_{Q_2})$ %{$\forall q \in \llbracket 1, Q_1 - 1\rrbracket, \pi_q > 0$ et $\forall r \in \llbracket 1, Q_2 - 1\rrbracket, \rho_r > 0$}
|
|
||||||
, tous les réseaux partagent les mêmes paramètres\footnotemark
|
|
||||||
\end{block}
|
|
||||||
|
|
||||||
\begin{block}{\emph{$\pi\rho$-colBiSBM}}
|
|
||||||
$\bm{\pi} = ((\pi_{\color{black}1}^{\color{red}m}, \dots \pi_{\color{black}Q_1}^{\color{red}m}))_{m=1,\dots M}$ et $\bm{\rho} = ((\rho_{\color{black}1}^{\color{red}m}, \dots \rho_{\color{black}Q_2}^{\color{red}m}))_{m=1,\dots M}$ %{$\forall q \in \llbracket 1, Q_1 - 1\rrbracket, \pi_q > 0$ et $\forall r \in \llbracket 1, Q_2 - 1\rrbracket, \rho_r > 0$}
|
|
||||||
\small \\
|
|
||||||
avec $\forall q,m \in \llbracket 1, Q_1 \rrbracket \times \llbracket 1, M \rrbracket, \pi_q^m \in \left[ 0,1 \right]$
|
|
||||||
et $\forall r,m \in \llbracket 1, Q_2 \rrbracket \times \llbracket 1, M \rrbracket, \rho_r^m \in \left[ 0,1 \right]$
|
|
||||||
\end{block}
|
|
||||||
Et également deux autres modèles ($\pi$-colBiSBM et $\rho$-colBiSBM) où seulement une des deux dimensions est libre.
|
|
||||||
\footnotetext{Dans tous les modèles la structure de connectivité est supposée identique au sein de la collection.}
|
|
||||||
\end{frame}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Estimation des paramètres}
|
|
||||||
% DONE dire que tau i q m c' est la proba que Zim = q, approximation de la proba variationnelle. Parce qu on impose lindependance
|
|
||||||
Maximisation d'une borne inférieure de la log-vraisemblance des données observées.
|
|
||||||
\begin{multline*}
|
|
||||||
\ell (\bm{X};\bm{\theta}) \geq \color{red}\sum_{m=1}^{M} \bigg( \color{black} \sum_{i = 1}^{n_1^m}\sum_{j=1}^{n_2^m}\sum_{q \in \mathcal{Q}_{1,m}} \sum_{r \in \mathcal{Q}_{2,m}} \tau^{1,m}_{i,q} \tau^{2,m}_{j,r} \log f(X^{m}_{ij}; \alpha_{qr}) \\
|
|
||||||
+ \sum_{i=1}^{n_1^m} \sum_{q \in \mathcal{Q}_{1,m}} \tau^{1,m}_{i,q} \log \pi_{\color{black}q}^{\color{gray}m} + \sum_{j=1}^{n_2^m} \sum_{r \in \mathcal{Q}_{2,m}} \tau^{2,m}_{j,r} \log \rho_{\color{black}r}^{\color{gray}m} \\
|
|
||||||
- \sum_{i=1}^{n_1} \tau^{1,m}_{i,q} \log \tau^{1,m}_{i,q} - \sum_{j=1}^{n_2} \tau^{2,m}_{j,r} \log \tau^{2,m}_{j,r} \color{red}\bigg) \color{black} =: J(\bm{\tau};\bm{\theta}) $$
|
|
||||||
\end{multline*}
|
|
||||||
|
|
||||||
\begin{block}{Approximation variationnelle}
|
|
||||||
$\tau_{i,q}^{1,m} = P(Z_i = q | X^m_{ij})$ et $\tau_{j,r}^{2,m} = P(W_j = r | X^m_{ij})$ tels que $P(Z_i = q, W_j = r | X^m_{ij}) = \tau_{i,q}^{1,m}\times\tau_{j,r}^{2,m}$
|
|
||||||
\end{block}
|
|
||||||
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Sélection de modèle : choix de $(Q_1,Q_2)$ - Approche gloutonne}
|
|
||||||
% DONE But maximiser un critere le BICL, deplacer voir St Clair dans la note
|
|
||||||
% VEM a Q1 Q2 fixer
|
|
||||||
% Choix de Q1 Q2 par maximisation du BICL
|
|
||||||
% Itemize dans la box : init, explo voisin, arrets
|
|
||||||
\underline{Le VEM se fait à $Q_1, Q_2$ fixés}, il faut donc déterminer les \enquote*{meilleures} coordonnées.
|
|
||||||
Nous maximisons un BIC-L\footnote{\emph{Bayesian Information Criterion - Like}, en adaptant les formules de~\cite{chabert-liddellLearningCommonStructures2023}}.
|
|
||||||
|
|
||||||
Détermination d'un premier mode par approche \emph{gloutonne} \smallskip
|
|
||||||
\begin{columns}
|
|
||||||
\begin{column}{0.5\linewidth}
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\draw[step=1cm, help lines] (-2,-2) grid (2,2);
|
|
||||||
\draw[fill=gray, draw=gray] (0,0) circle [radius=0.225cm];
|
|
||||||
\draw[fill=blueind, draw=blueind] (1,0) circle [radius=0.225cm];
|
|
||||||
\draw[fill=blueind, draw=blueind] (0,1) circle [radius=0.225cm];
|
|
||||||
\draw[fill=red, draw=red] (-1,0) circle [radius=0.225cm];
|
|
||||||
\draw[fill=red, draw=red] (0,-1) circle [radius=0.225cm];
|
|
||||||
|
|
||||||
% Légende
|
|
||||||
\node[font=\tiny, text justified,fill=none, rotate=-45] (Splits) at (0.5,0.5){{\color{blueind} Splits}};
|
|
||||||
\node[font=\tiny, text justified,fill=none, rotate=-45] (Merges) at (-0.5,-0.5){{\color{red} Merges}};
|
|
||||||
|
|
||||||
% Splitting
|
|
||||||
\draw[>=stealth,->,thick, draw=blueind] (0.225,0) -- +(0.55,0);
|
|
||||||
\draw[>=stealth,->,thick, draw=blueind] (0,0.225) -- +(0,0.55);
|
|
||||||
|
|
||||||
% Merging
|
|
||||||
\draw[>=stealth,->,thick, draw=red] (-0.225,0) -- +(-0.55,0);
|
|
||||||
\draw[>=stealth,->,thick, draw=red] (0,-0.225) -- +(0,-0.55);
|
|
||||||
|
|
||||||
% Axes
|
|
||||||
\draw[>=to,->,thick] (-2,-2) -- +(1,0);
|
|
||||||
\node[font=\small, fill=none] (Q_1) at (-0.75,-2) {$Q_1$};
|
|
||||||
\draw[>=to,->,thick] (-2,-2) -- +(0,1);
|
|
||||||
\node[font=\small, fill=none] (Q_2) at (-2,-0.75) {$Q_2$};
|
|
||||||
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{column}
|
|
||||||
\begin{column}{0.5\linewidth}
|
|
||||||
\begin{block}{Exploration gloutonne}
|
|
||||||
\begin{itemize}
|
|
||||||
\item Initialisation sur $(1,2)$ et $(2,1)$
|
|
||||||
\item Exploration des 4 voisins et déplacement sur le meilleur des 4
|
|
||||||
\item Arrêt après 2 étapes successives sans augmentation du BIC-L
|
|
||||||
\end{itemize}
|
|
||||||
\end{block}
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
\end{frame}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Sélection de modèle : choix de $(Q_1,Q_2)$ - Fenêtre glissante}
|
|
||||||
\begin{columns}
|
|
||||||
\begin{column}{0.60\linewidth}
|
|
||||||
\begin{figure}
|
|
||||||
\includegraphics[scale=0.22]{img/moving_window.png}
|
|
||||||
\caption{Exemple de parcours de fenêtre glissante}
|
|
||||||
\end{figure}
|
|
||||||
\end{column}
|
|
||||||
\begin{column}{0.4\linewidth}
|
|
||||||
\definecolor{mypurple}{RGB}{128,0,128}
|
|
||||||
\begin{tikzpicture}
|
|
||||||
|
|
||||||
\tikzstyle{model}=[circle,draw=none,fill=gray]
|
|
||||||
\tikzstyle{split}=[>=stealth,->,thick, draw=blueind]
|
|
||||||
\tikzstyle{merge}=[>=stealth,->,thick, draw=red]
|
|
||||||
\draw[step=1cm, help lines] (-2,-2) grid (2,2);
|
|
||||||
\node[model] (mode) at (0,0) {{\color{red}X}};
|
|
||||||
|
|
||||||
\onslide<2->{
|
|
||||||
\draw[color=red, line width=1pt] (-1.5,-1.5) rectangle ++(3,3);
|
|
||||||
}
|
|
||||||
\onslide<3-3>{
|
|
||||||
\node[model] (bottom_left) at (-1,-1) {};
|
|
||||||
\node[model, opacity=0.6] (row_1) at (0,-1) {};
|
|
||||||
\node[model, opacity=0.6] (col_1) at (-1,0) {};
|
|
||||||
|
|
||||||
\draw[split] (bottom_left) -- (col_1);
|
|
||||||
\draw[split] (-1.75,0) -- (col_1);
|
|
||||||
\draw[split] (bottom_left) -- (row_1);
|
|
||||||
\draw[split] (0,-1.75) -- (row_1);
|
|
||||||
}
|
|
||||||
\onslide<4->{
|
|
||||||
\node[model] (bottom_left) at (-1,-1) {};
|
|
||||||
\node[model, draw=blue] (row_1) at (0,-1) {};
|
|
||||||
\node[model, draw=blue] (col_1) at (-1,0) {};
|
|
||||||
}
|
|
||||||
\onslide<4-4>{
|
|
||||||
\node[model, opacity=0.6] (row_2) at (1,-1) {};
|
|
||||||
\node[model, opacity=0.6] (col_2) at (-1,1) {};
|
|
||||||
|
|
||||||
\draw[split] (col_1) -- (col_2);
|
|
||||||
\draw[split] (-1.75,1) -- (col_2);
|
|
||||||
\draw[split] (row_1) -- (row_2);
|
|
||||||
\draw[split] (1,-1.75) -- (row_2);
|
|
||||||
\draw[split] (row_1) -- (mode);
|
|
||||||
\draw[split] (col_1) -- (mode);
|
|
||||||
}
|
|
||||||
\onslide<5->{
|
|
||||||
\node[model, draw=blue] (row_2) at (1,-1) {};
|
|
||||||
\node[model, draw=blue] (col_2) at (-1,1) {};
|
|
||||||
\node[model, draw=blue] (mode) at (0,0) {{\color{red}X}};
|
|
||||||
}
|
|
||||||
\onslide<5-5>{
|
|
||||||
\node[model, opacity=0.6] (row_3) at (1,0) {};
|
|
||||||
\node[model, opacity=0.6] (col_3) at (0,1) {};
|
|
||||||
|
|
||||||
\draw[split] (col_2) -- (col_3);
|
|
||||||
\draw[split] (row_2) -- (row_3);
|
|
||||||
\draw[split] (mode) -- (row_3);
|
|
||||||
\draw[split] (mode) -- (col_3);
|
|
||||||
}
|
|
||||||
\onslide<6->{
|
|
||||||
\node[model, draw=blue] (row_3) at (1,0) {};
|
|
||||||
\node[model, draw=blue] (col_3) at (0,1) {};
|
|
||||||
}
|
|
||||||
\onslide<6-6>{
|
|
||||||
\node[model, opacity=0.6] (top_right) at (1,1) {};
|
|
||||||
\draw[split] (col_3) -- (top_right);
|
|
||||||
\draw[split] (row_3) -- (top_right);
|
|
||||||
}
|
|
||||||
\onslide<7->{
|
|
||||||
\node[model, draw=blue] (top_right) at (1,1) {};
|
|
||||||
}
|
|
||||||
\onslide<8->{
|
|
||||||
\node[model, draw=mypurple] (top_right) at (1,1) {};
|
|
||||||
\node[model, draw=mypurple] (row_3) at (1,0) {};
|
|
||||||
\node[model, draw=mypurple] (col_3) at (0,1) {};
|
|
||||||
\node[model, draw=mypurple] (row_2) at (1,-1) {};
|
|
||||||
\node[model, draw=mypurple] (col_2) at (-1,1) {};
|
|
||||||
\node[model, draw=mypurple] (mode) at (0,0) {{\color{red}X}};
|
|
||||||
\node[model, draw=red] (bottom_left) at (-1,-1) {};
|
|
||||||
\node[model, draw=mypurple] (row_1) at (0,-1) {};
|
|
||||||
\node[model, draw=mypurple] (col_1) at (-1,0) {};
|
|
||||||
|
|
||||||
\draw[merge] (1,1.75) -- (top_right);
|
|
||||||
\draw[merge] (1.75,1) -- (top_right);
|
|
||||||
\draw[merge] (0,1.75) -- (col_3);
|
|
||||||
\draw[merge] (1.75,0) -- (row_3);
|
|
||||||
\draw[merge] (1.75,-1) -- (row_2);
|
|
||||||
\draw[merge] (-1,1.75) -- (col_2);
|
|
||||||
|
|
||||||
\draw[merge] (top_right) -- (col_3);
|
|
||||||
\draw[merge] (top_right) -- (row_3);
|
|
||||||
\draw[merge] (col_3) -- (col_2);
|
|
||||||
\draw[merge] (row_3) -- (row_2) ;
|
|
||||||
\draw[merge] (row_3) -- (mode);
|
|
||||||
\draw[merge] (col_3) -- (mode);
|
|
||||||
\draw[merge] (col_2) --(col_1);
|
|
||||||
\draw[merge] (row_2) -- (row_1);
|
|
||||||
\draw[merge] (mode) -- (row_1);
|
|
||||||
\draw[merge] (mode) -- (col_1);
|
|
||||||
\draw[merge] (col_1) -- (bottom_left);
|
|
||||||
\draw[merge] (row_1) -- (bottom_left);
|
|
||||||
}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Clustering de réseaux}
|
|
||||||
\begin{columns}
|
|
||||||
\begin{column}{0.2\linewidth}
|
|
||||||
\begin{block}{Objectif}
|
|
||||||
Déterminer une partition qui maximise la somme du BICL de ses sous-collections.
|
|
||||||
\end{block}
|
|
||||||
\end{column}
|
|
||||||
\begin{column}{0.78\linewidth}
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\tikzstyle{instruct}=[font=\small, text justified, rectangle,draw,fill=yellow!50]
|
|
||||||
\tikzstyle{first_col}=[rectangle, text justified, draw,fill=gray!50]
|
|
||||||
\tikzstyle{second_col}=[scale=0.55, circle, draw,fill=red!50]
|
|
||||||
\tikzstyle{test}=[font=\small, text justified, diamond, aspect=2.5,thick,
|
|
||||||
draw=blue,fill=yellow!50,text=blue]
|
|
||||||
\tikzstyle{es}=[font=\small, text justified, rectangle,draw,rounded corners=4pt,fill=cyanind!25]
|
|
||||||
|
|
||||||
\node[es] (liste) at (0,4) {Donner une collection à partitionner};
|
|
||||||
\node[instruct, text width=5cm, below = 0.45cm of liste] (1-collection) {Ajuster \emph{colBiSBM}};
|
|
||||||
\node[first_col, right = 0.5cm of 1-collection] (1-col-obj) {};
|
|
||||||
\node[instruct, text width=5cm, below = 0.45cm of 1-collection] (dissimi) {Calculer une matrice de dissimilarité de la collection};
|
|
||||||
\node[instruct, text width=5cm, below = 0.45cm of dissimi] (2-sous-collection) {Séparer la \emph{collection en 2 sous-collections} et ajuster les \emph{colBiSBM}};
|
|
||||||
\node[second_col, right = 0.25cm of 2-sous-collection] (1-sec-col-obj) {1};
|
|
||||||
\node[second_col, right = 0.25cm of 1-sec-col-obj] (1-sec-col-obj) {2};
|
|
||||||
\node[test,below = 0.45cm of 2-sous-collection, scale=0.5] (BICL-test) {$\sum_{i=1}^{2} (\text{BIC-L}(\tikz[baseline=-0.25cm]{\node[second_col] {i};} )) > \text{BIC-L}(\tikz[baseline=-0.25cm]{\node[first_col] {};})$?};
|
|
||||||
\node[es, right = 0.55cm of BICL-test] (sortie) {Renvoyer \tikz{\node[rectangle, draw, fill=gray!50, rounded corners=0pt] {};}};
|
|
||||||
\node[es, left = 0.45cm of dissimi, text width = 2cm] (recursion) {Recommencer sur \tikz{\node[second_col] {1};} et \tikz{\node[second_col] {2};} };
|
|
||||||
|
|
||||||
\tikzstyle{suite}=[->,>=stealth,thick,rounded corners=4pt]
|
|
||||||
\draw[suite] (liste) -- (1-collection);
|
|
||||||
\draw[suite] (1-collection) -- (dissimi);
|
|
||||||
\draw[suite] (dissimi) -- (2-sous-collection);
|
|
||||||
\draw[suite] (2-sous-collection) -- (BICL-test);
|
|
||||||
\draw[suite] (BICL-test) -| node[near start, above, fill=none] {Oui} (recursion);
|
|
||||||
\draw[suite] (recursion.north) |- (1-collection.west);
|
|
||||||
\draw[suite] (BICL-test) -- node[near start, above, fill=none] {Non} (sortie);
|
|
||||||
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
\blfootnote{Même approche que~\cite{chabert-liddellLearningCommonStructures2023}}
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\section{Application}
|
|
||||||
\label{sec:application}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Application, données plantes pollinisateurs}
|
|
||||||
\small
|
|
||||||
Voici des résultats du modèle \emph{iid-colBiSBM} sur des données
|
|
||||||
plantes-pollinisateurs (~\cite{doreRelativeEffectsAnthropogenic2021}
|
|
||||||
et~\cite{thebaultDatabasePlantpollinatorNetworks2020})
|
|
||||||
% DONE Ajouter un tableau avec le nombre de réseaux dans chaque sous-collection
|
|
||||||
\begin{columns}
|
|
||||||
\begin{column}{0.48\linewidth}
|
|
||||||
\includegraphics[scale=0.32]{img/annual_time_span_vs_iid.png}
|
|
||||||
\begin{center}
|
|
||||||
\begin{tabular}{ |c|c|c|c|c|c| }
|
|
||||||
\hline
|
|
||||||
\thead{N° de \\collection} & 1 & 2 & 3 & 4 & 5 \\
|
|
||||||
\hline
|
|
||||||
\thead{Nombre de \\réseaux} & 38 & 45 & 1 & 20 & 19 \\
|
|
||||||
\hline
|
|
||||||
\end{tabular}
|
|
||||||
\end{center}
|
|
||||||
\end{column}
|
|
||||||
\begin{column}{0.48\linewidth}
|
|
||||||
\begin{figure}[H]
|
|
||||||
\includegraphics[width=0.45\textwidth]{img/iid-meso-1.png}
|
|
||||||
\includegraphics[width=0.45\textwidth]{img/iid-meso-2.png}
|
|
||||||
\includegraphics[width=0.45\textwidth]{img/iid-meso-3.png}
|
|
||||||
\includegraphics[width=0.45\textwidth]{img/iid-meso-4.png}
|
|
||||||
\includegraphics[width=0.45\textwidth]{img/iid-meso-5.png}
|
|
||||||
\caption{Connectivités de la partition}
|
|
||||||
\end{figure}
|
|
||||||
\end{column}
|
|
||||||
\end{columns}
|
|
||||||
\end{frame}
|
|
||||||
\section{Conclusion}
|
|
||||||
\label{sec:conclusion}
|
|
||||||
\begin{frame}
|
|
||||||
\frametitle{Conclusion et perspectives}
|
|
||||||
% DONE Ajouter une slide conclusion perspective
|
|
||||||
% Rappeler les modeles avec clustering
|
|
||||||
% Evoquer l'analyse de reseaux corrigés pour l'échantillonnage
|
|
||||||
% Lien vers le package
|
|
||||||
|
|
||||||
\begin{itemize}
|
|
||||||
\item 4 modèles dont 3 qui ont une flexibilité sur au moins une des dimensions (adaptabilité aux données)
|
|
||||||
\item Partitionner un ensemble de réseaux selon leurs structures
|
|
||||||
\item Comparer les \emph{clusterings} de réseaux obtenus entre données brutes et données corrigées (par exemple par la méthode \emph{CoOPLBM}\footnote{~\cite{anakokDisentanglingStructureEcological2022}})
|
|
||||||
\end{itemize}
|
|
||||||
|
|
||||||
\bigskip
|
|
||||||
\centering
|
|
||||||
Le package est disponible sur GitHub : \faGithub \url{https://github.com/Chabert-Liddell/colSBM}
|
|
||||||
|
|
||||||
\bigskip
|
|
||||||
\huge
|
|
||||||
Merci pour votre attention !
|
|
||||||
|
|
||||||
\end{frame}
|
|
||||||
\renewcommand{\pgfuseimage}[1]{\scalebox{.75}{\includegraphics{#1}}}
|
|
||||||
\begin{frame}[noframenumbering,plain,allowframebreaks]
|
|
||||||
\frametitle{Bibliographie}
|
|
||||||
\printbibliography
|
|
||||||
\end{frame}
|
|
||||||
|
|
||||||
\end{document}
|
|
||||||
BIN
presentation/animation.gif
Normal file
BIN
presentation/animation.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 275 KiB |
521
presentation/presentation.bbl-SAVE-ERROR
Normal file
521
presentation/presentation.bbl-SAVE-ERROR
Normal file
|
|
@ -0,0 +1,521 @@
|
||||||
|
% $ biblatex auxiliary file $
|
||||||
|
% $ biblatex bbl format version 3.3 $
|
||||||
|
% Do not modify the above lines!
|
||||||
|
%
|
||||||
|
% This is an auxiliary file used by the 'biblatex' package.
|
||||||
|
% This file may safely be deleted. It will be recreated by
|
||||||
|
% biber as required.
|
||||||
|
%
|
||||||
|
\begingroup
|
||||||
|
\makeatletter
|
||||||
|
\@ifundefined{ver@biblatex.sty}
|
||||||
|
{\@latex@error
|
||||||
|
{Missing 'biblatex' package}
|
||||||
|
{The bibliography requires the 'biblatex' package.}
|
||||||
|
\aftergroup\endinput}
|
||||||
|
{}
|
||||||
|
\endgroup
|
||||||
|
|
||||||
|
|
||||||
|
\refsection{0}
|
||||||
|
\datalist[entry]{none/apasortcite//global/global/global}
|
||||||
|
\entry{WebLifeEcological}{online}{}{}
|
||||||
|
\field{sortinit}{1}
|
||||||
|
\field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
|
||||||
|
\field{labeldatesource}{nodate}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{title}{Web of {{Life}}: Ecological Networks Database}
|
||||||
|
\field{urlday}{17}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/9WZE8QLQ/map.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb https://www.web-of-life.es/map.php
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb https://www.web-of-life.es/map.php
|
||||||
|
\endverb
|
||||||
|
\keyw{networks,site}
|
||||||
|
\endentry
|
||||||
|
\entry{larousseDefinitionsBipartiBipartite}{online}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=d7507e4ee9a344124ebcf84871b83290}{%
|
||||||
|
family={Larousse},
|
||||||
|
familyi={L\bibinitperiod},
|
||||||
|
given={Éditions},
|
||||||
|
giveni={É\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{fullhash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{fullhashraw}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{bibnamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorbibnamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authornamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorfullhash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorfullhashraw}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labeldatesource}{nodate}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{shorttitle}
|
||||||
|
\field{abstract}{biparti, bipartite - Définitions Français : Retrouvez la définition de biparti, bipartite, ainsi que les difficultés... - synonymes, homonymes, difficultés, citations.}
|
||||||
|
\field{langid}{french}
|
||||||
|
\field{shorttitle}{Définitions}
|
||||||
|
\field{title}{Définitions : biparti, bipartite - Dictionnaire de français Larousse}
|
||||||
|
\field{urlday}{17}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/MA2VH6NX/9503.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb https://www.larousse.fr/dictionnaires/francais/biparti/9503
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb https://www.larousse.fr/dictionnaires/francais/biparti/9503
|
||||||
|
\endverb
|
||||||
|
\endentry
|
||||||
|
\entry{govaertEMAlgorithmBlock2005}{article}{}{}
|
||||||
|
\name{author}{2}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=e362e82efc56e96877c249de27098dd7}{%
|
||||||
|
family={Govaert},
|
||||||
|
familyi={G\bibinitperiod},
|
||||||
|
given={G.},
|
||||||
|
giveni={G\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=5554bf45de9d6150691084d7cde5594c}{%
|
||||||
|
family={Nadif},
|
||||||
|
familyi={N\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{fullhash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{fullhashraw}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{bibnamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorbibnamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authornamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorfullhash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorfullhashraw}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\field{sortinit}{3}
|
||||||
|
\field{sortinithash}{ad6fe7482ffbd7b9f99c9e8b5dccd3d7}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{Although many clustering procedures aim to construct an optimal partition of objects or, sometimes, of variables, there are other methods, called block clustering methods, which consider simultaneously the two sets and organize the data into homogeneous blocks. Recently, we have proposed a new mixture model called block mixture model which takes into account this situation. This model allows one to embed simultaneous clustering of objects and variables in a mixture approach. We have studied this probabilistic model under the classification likelihood approach and developed a new algorithm for simultaneous partitioning based on the classification EM algorithm. In this paper, we consider the block clustering problem under the maximum likelihood approach and the goal of our contribution is to estimate the parameters of this model. Unfortunately, the application of the EM algorithm for the block mixture model cannot be made directly; difficulties arise due to the dependence structure in the model and approximations are required. Using a variational approximation, we propose a generalized EM algorithm to estimate the parameters of the block mixture model and, to illustrate our approach, we study the case of binary data by using a Bernoulli block mixture.}
|
||||||
|
\field{eventtitle}{{{IEEE Transactions}} on {{Pattern Analysis}} and {{Machine Intelligence}}}
|
||||||
|
\field{issn}{1939-3539}
|
||||||
|
\field{journaltitle}{IEEE Transactions on Pattern Analysis and Machine Intelligence}
|
||||||
|
\field{month}{4}
|
||||||
|
\field{number}{4}
|
||||||
|
\field{title}{An {{EM}} Algorithm for the Block Mixture Model}
|
||||||
|
\field{volume}{27}
|
||||||
|
\field{year}{2005}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{pages}{643\bibrangedash 647}
|
||||||
|
\range{pages}{5}
|
||||||
|
\verb{doi}
|
||||||
|
\verb 10.1109/TPAMI.2005.69
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/6IG45HH2/govaert2005.pdf.pdf;/home/polarolouis/Zotero/storage/TL8M3XRF/Govaert et Nadif - 2005 - An EM algorithm for the block mixture model.pdf;/home/polarolouis/Zotero/storage/2Y48IB26/1401917.html
|
||||||
|
\endverb
|
||||||
|
\keyw{Approximation algorithms,Classification algorithms,Clustering algorithms,Clustering methods,Data mining,EM algorithm,Index Terms- Block mixture model,Maximum likelihood estimation,Parameter estimation,Partitioning algorithms,Self organizing feature maps,Sparse matrices,variational approximation.}
|
||||||
|
\endentry
|
||||||
|
\entry{chabert-liddellLearningCommonStructures2023}{online}{}{}
|
||||||
|
\name{author}{3}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=b2590d483a7fe284c2cdda3920206a4e}{%
|
||||||
|
family={Chabert-Liddell},
|
||||||
|
familyi={C\bibinithyphendelim L\bibinitperiod},
|
||||||
|
given={Saint-Clair},
|
||||||
|
giveni={S\bibinithyphendelim C\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=7fecb6ce38c5ec9d4555962d959d2379}{%
|
||||||
|
family={Barbillon},
|
||||||
|
familyi={B\bibinitperiod},
|
||||||
|
given={Pierre},
|
||||||
|
giveni={P\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=06c8f96f3a1aba5140a38275380f781f}{%
|
||||||
|
family={Donnet},
|
||||||
|
familyi={D\bibinitperiod},
|
||||||
|
given={Sophie},
|
||||||
|
giveni={S\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3101a173d5bb9ee9e4417e1b9abc0d4b}
|
||||||
|
\strng{fullhash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{fullhashraw}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{bibnamehash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authorbibnamehash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authornamehash}{3101a173d5bb9ee9e4417e1b9abc0d4b}
|
||||||
|
\strng{authorfullhash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authorfullhashraw}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\field{sortinit}{4}
|
||||||
|
\field{sortinithash}{9381316451d1b9788675a07e972a12a7}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{Let a collection of networks represent interactions within several (social or ecological) systems. We pursue two objectives: identifying similarities in the topological structures that are held in common between the networks and clustering the collection into sub-collections of structurally homogeneous networks. We tackle these two questions with a probabilistic model based approach. We propose an extension of the Stochastic Block Model (SBM) adapted to the joint modeling of a collection of networks. The networks in the collection are assumed to be independent realizations of SBMs. The common connectivity structure is imposed through the equality of some parameters. The model parameters are estimated with a variational Expectation-Maximization (EM) algorithm. We derive an ad-hoc penalized likelihood criterion to select the number of blocks and to assess the adequacy of the consensus found between the structures of the different networks. This same criterion can also be used to cluster networks on the basis of their connectivity structure. It thus provides a partition of the collection into subsets of structurally homogeneous networks. The relevance of our proposition is assessed on two collections of ecological networks. First, an application to three stream food webs reveals the homogeneity of their structures and the correspondence between groups of species in different ecosystems playing equivalent ecological roles. Moreover, the joint analysis allows a finer analysis of the structure of smaller networks. Second, we cluster 67 food webs according to their connectivity structures and demonstrate that five mesoscale structures are sufficient to describe this collection.}
|
||||||
|
\field{day}{27}
|
||||||
|
\field{eprintclass}{stat}
|
||||||
|
\field{eprinttype}{arxiv}
|
||||||
|
\field{month}{3}
|
||||||
|
\field{title}{Learning Common Structures in a Collection of Networks. {{An}} Application to Food Webs}
|
||||||
|
\field{type}{article}
|
||||||
|
\field{urlday}{22}
|
||||||
|
\field{urlmonth}{5}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{year}{2023}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{doi}
|
||||||
|
\verb 10.48550/arXiv.2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{eprint}
|
||||||
|
\verb 2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/M74TXGCF/Chabert-Liddell et al. - 2023 - Learning common structures in a collection of netw.pdf;/home/polarolouis/Zotero/storage/A35M8KNP/2206.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb http://arxiv.org/abs/2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb http://arxiv.org/abs/2206.00560
|
||||||
|
\endverb
|
||||||
|
\keyw{Statistics - Applications,Statistics - Methodology}
|
||||||
|
\endentry
|
||||||
|
\entry{anakokDisentanglingStructureEcological2022}{online}{}{}
|
||||||
|
\name{author}{4}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=fe9e51991c906363fdb9789340eb02b8}{%
|
||||||
|
family={Anakok},
|
||||||
|
familyi={A\bibinitperiod},
|
||||||
|
given={Emre},
|
||||||
|
giveni={E\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=7fecb6ce38c5ec9d4555962d959d2379}{%
|
||||||
|
family={Barbillon},
|
||||||
|
familyi={B\bibinitperiod},
|
||||||
|
given={Pierre},
|
||||||
|
giveni={P\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=0e7741d31a239c4be11fc31138a136c1}{%
|
||||||
|
family={Fontaine},
|
||||||
|
familyi={F\bibinitperiod},
|
||||||
|
given={Colin},
|
||||||
|
giveni={C\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=f23dbf986aa073f9022baede42ef0479}{%
|
||||||
|
family={Thebault},
|
||||||
|
familyi={T\bibinitperiod},
|
||||||
|
given={Elisa},
|
||||||
|
giveni={E\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{91ac6a753125108a3ce0782cad59a3d8}
|
||||||
|
\strng{fullhash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{fullhashraw}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{bibnamehash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authorbibnamehash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authornamehash}{91ac6a753125108a3ce0782cad59a3d8}
|
||||||
|
\strng{authorfullhash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authorfullhashraw}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\field{sortinit}{6}
|
||||||
|
\field{sortinithash}{b33bc299efb3c36abec520a4c896a66d}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{The structure of a bipartite interaction network can be described by providing a clustering for each of the two types of nodes. Such clusterings are outputted by fitting a Latent Block Model (LBM) on an observed network that comes from a sampling of species interactions in the field. However, the sampling is limited and possibly uneven. This may jeopardize the fit of the LBM and then the description of the structure of the network by detecting structures which result from the sampling and not from actual underlying ecological phenomena. If the observed interaction network consists of a weighted bipartite network where the number of observed interactions between two species is available, the sampling efforts for all species can be estimated and used to correct the LBM fit. We propose to combine an observation model that accounts for sampling and an LBM for describing the structure of underlying possible ecological interactions. We develop an original inference procedure for this model, the efficiency of which is demonstrated in simulation studies. The practical interest in ecology of our model is highlighted on a large dataset of plant-pollinator network.}
|
||||||
|
\field{day}{29}
|
||||||
|
\field{eprintclass}{stat}
|
||||||
|
\field{eprinttype}{arxiv}
|
||||||
|
\field{langid}{english}
|
||||||
|
\field{month}{11}
|
||||||
|
\field{title}{Disentangling the Structure of Ecological Bipartite Networks from Observation Processes}
|
||||||
|
\field{urlday}{14}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{year}{2022}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{eprint}
|
||||||
|
\verb 2211.16364
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/LQ3FINZG/Anakok et al. - 2022 - Disentangling the structure of ecological bipartit.pdf
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb http://arxiv.org/abs/2211.16364
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb http://arxiv.org/abs/2211.16364
|
||||||
|
\endverb
|
||||||
|
\keyw{Statistics - Methodology}
|
||||||
|
\endentry
|
||||||
|
\enddatalist
|
||||||
|
\datalist[entry]{none/global//global/global/global}
|
||||||
|
\entry{WebLifeEcological}{online}{}{}
|
||||||
|
\field{sortinit}{1}
|
||||||
|
\field{sortinithash}{4f6aaa89bab872aa0999fec09ff8e98a}
|
||||||
|
\field{labeldatesource}{nodate}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{title}{Web of {{Life}}: Ecological Networks Database}
|
||||||
|
\field{urlday}{17}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/9WZE8QLQ/map.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb https://www.web-of-life.es/map.php
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb https://www.web-of-life.es/map.php
|
||||||
|
\endverb
|
||||||
|
\keyw{networks,site}
|
||||||
|
\endentry
|
||||||
|
\entry{larousseDefinitionsBipartiBipartite}{online}{}{}
|
||||||
|
\name{author}{1}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=d7507e4ee9a344124ebcf84871b83290}{%
|
||||||
|
family={Larousse},
|
||||||
|
familyi={L\bibinitperiod},
|
||||||
|
given={Éditions},
|
||||||
|
giveni={É\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{fullhash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{fullhashraw}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{bibnamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorbibnamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authornamehash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorfullhash}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\strng{authorfullhashraw}{d7507e4ee9a344124ebcf84871b83290}
|
||||||
|
\field{sortinit}{2}
|
||||||
|
\field{sortinithash}{8b555b3791beccb63322c22f3320aa9a}
|
||||||
|
\field{labeldatesource}{nodate}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{shorttitle}
|
||||||
|
\field{abstract}{biparti, bipartite - Définitions Français : Retrouvez la définition de biparti, bipartite, ainsi que les difficultés... - synonymes, homonymes, difficultés, citations.}
|
||||||
|
\field{langid}{french}
|
||||||
|
\field{shorttitle}{Définitions}
|
||||||
|
\field{title}{Définitions : biparti, bipartite - Dictionnaire de français Larousse}
|
||||||
|
\field{urlday}{17}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/MA2VH6NX/9503.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb https://www.larousse.fr/dictionnaires/francais/biparti/9503
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb https://www.larousse.fr/dictionnaires/francais/biparti/9503
|
||||||
|
\endverb
|
||||||
|
\endentry
|
||||||
|
\entry{govaertEMAlgorithmBlock2005}{article}{}{}
|
||||||
|
\name{author}{2}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=e362e82efc56e96877c249de27098dd7}{%
|
||||||
|
family={Govaert},
|
||||||
|
familyi={G\bibinitperiod},
|
||||||
|
given={G.},
|
||||||
|
giveni={G\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=5554bf45de9d6150691084d7cde5594c}{%
|
||||||
|
family={Nadif},
|
||||||
|
familyi={N\bibinitperiod},
|
||||||
|
given={M.},
|
||||||
|
giveni={M\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{fullhash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{fullhashraw}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{bibnamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorbibnamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authornamehash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorfullhash}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\strng{authorfullhashraw}{cf148152bf4f33b329bfd7d07cf74c02}
|
||||||
|
\field{sortinit}{3}
|
||||||
|
\field{sortinithash}{ad6fe7482ffbd7b9f99c9e8b5dccd3d7}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{Although many clustering procedures aim to construct an optimal partition of objects or, sometimes, of variables, there are other methods, called block clustering methods, which consider simultaneously the two sets and organize the data into homogeneous blocks. Recently, we have proposed a new mixture model called block mixture model which takes into account this situation. This model allows one to embed simultaneous clustering of objects and variables in a mixture approach. We have studied this probabilistic model under the classification likelihood approach and developed a new algorithm for simultaneous partitioning based on the classification EM algorithm. In this paper, we consider the block clustering problem under the maximum likelihood approach and the goal of our contribution is to estimate the parameters of this model. Unfortunately, the application of the EM algorithm for the block mixture model cannot be made directly; difficulties arise due to the dependence structure in the model and approximations are required. Using a variational approximation, we propose a generalized EM algorithm to estimate the parameters of the block mixture model and, to illustrate our approach, we study the case of binary data by using a Bernoulli block mixture.}
|
||||||
|
\field{eventtitle}{{{IEEE Transactions}} on {{Pattern Analysis}} and {{Machine Intelligence}}}
|
||||||
|
\field{issn}{1939-3539}
|
||||||
|
\field{journaltitle}{IEEE Transactions on Pattern Analysis and Machine Intelligence}
|
||||||
|
\field{month}{4}
|
||||||
|
\field{number}{4}
|
||||||
|
\field{title}{An {{EM}} Algorithm for the Block Mixture Model}
|
||||||
|
\field{volume}{27}
|
||||||
|
\field{year}{2005}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{pages}{643\bibrangedash 647}
|
||||||
|
\range{pages}{5}
|
||||||
|
\verb{doi}
|
||||||
|
\verb 10.1109/TPAMI.2005.69
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/6IG45HH2/govaert2005.pdf.pdf;/home/polarolouis/Zotero/storage/TL8M3XRF/Govaert et Nadif - 2005 - An EM algorithm for the block mixture model.pdf;/home/polarolouis/Zotero/storage/2Y48IB26/1401917.html
|
||||||
|
\endverb
|
||||||
|
\keyw{Approximation algorithms,Classification algorithms,Clustering algorithms,Clustering methods,Data mining,EM algorithm,Index Terms- Block mixture model,Maximum likelihood estimation,Parameter estimation,Partitioning algorithms,Self organizing feature maps,Sparse matrices,variational approximation.}
|
||||||
|
\endentry
|
||||||
|
\entry{chabert-liddellLearningCommonStructures2023}{online}{}{}
|
||||||
|
\name{author}{3}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=b2590d483a7fe284c2cdda3920206a4e}{%
|
||||||
|
family={Chabert-Liddell},
|
||||||
|
familyi={C\bibinithyphendelim L\bibinitperiod},
|
||||||
|
given={Saint-Clair},
|
||||||
|
giveni={S\bibinithyphendelim C\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=7fecb6ce38c5ec9d4555962d959d2379}{%
|
||||||
|
family={Barbillon},
|
||||||
|
familyi={B\bibinitperiod},
|
||||||
|
given={Pierre},
|
||||||
|
giveni={P\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=06c8f96f3a1aba5140a38275380f781f}{%
|
||||||
|
family={Donnet},
|
||||||
|
familyi={D\bibinitperiod},
|
||||||
|
given={Sophie},
|
||||||
|
giveni={S\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{3101a173d5bb9ee9e4417e1b9abc0d4b}
|
||||||
|
\strng{fullhash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{fullhashraw}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{bibnamehash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authorbibnamehash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authornamehash}{3101a173d5bb9ee9e4417e1b9abc0d4b}
|
||||||
|
\strng{authorfullhash}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\strng{authorfullhashraw}{8aa3fbe7fb498627f8f349ffc9943f6f}
|
||||||
|
\field{sortinit}{4}
|
||||||
|
\field{sortinithash}{9381316451d1b9788675a07e972a12a7}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{Let a collection of networks represent interactions within several (social or ecological) systems. We pursue two objectives: identifying similarities in the topological structures that are held in common between the networks and clustering the collection into sub-collections of structurally homogeneous networks. We tackle these two questions with a probabilistic model based approach. We propose an extension of the Stochastic Block Model (SBM) adapted to the joint modeling of a collection of networks. The networks in the collection are assumed to be independent realizations of SBMs. The common connectivity structure is imposed through the equality of some parameters. The model parameters are estimated with a variational Expectation-Maximization (EM) algorithm. We derive an ad-hoc penalized likelihood criterion to select the number of blocks and to assess the adequacy of the consensus found between the structures of the different networks. This same criterion can also be used to cluster networks on the basis of their connectivity structure. It thus provides a partition of the collection into subsets of structurally homogeneous networks. The relevance of our proposition is assessed on two collections of ecological networks. First, an application to three stream food webs reveals the homogeneity of their structures and the correspondence between groups of species in different ecosystems playing equivalent ecological roles. Moreover, the joint analysis allows a finer analysis of the structure of smaller networks. Second, we cluster 67 food webs according to their connectivity structures and demonstrate that five mesoscale structures are sufficient to describe this collection.}
|
||||||
|
\field{day}{27}
|
||||||
|
\field{eprintclass}{stat}
|
||||||
|
\field{eprinttype}{arxiv}
|
||||||
|
\field{month}{3}
|
||||||
|
\field{title}{Learning Common Structures in a Collection of Networks. {{An}} Application to Food Webs}
|
||||||
|
\field{type}{article}
|
||||||
|
\field{urlday}{22}
|
||||||
|
\field{urlmonth}{5}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{year}{2023}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{doi}
|
||||||
|
\verb 10.48550/arXiv.2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{eprint}
|
||||||
|
\verb 2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/M74TXGCF/Chabert-Liddell et al. - 2023 - Learning common structures in a collection of netw.pdf;/home/polarolouis/Zotero/storage/A35M8KNP/2206.html
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb http://arxiv.org/abs/2206.00560
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb http://arxiv.org/abs/2206.00560
|
||||||
|
\endverb
|
||||||
|
\keyw{Statistics - Applications,Statistics - Methodology}
|
||||||
|
\endentry
|
||||||
|
\entry{anakokDisentanglingStructureEcological2022}{online}{}{}
|
||||||
|
\name{author}{4}{}{%
|
||||||
|
{{un=0,uniquepart=base,hash=fe9e51991c906363fdb9789340eb02b8}{%
|
||||||
|
family={Anakok},
|
||||||
|
familyi={A\bibinitperiod},
|
||||||
|
given={Emre},
|
||||||
|
giveni={E\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=7fecb6ce38c5ec9d4555962d959d2379}{%
|
||||||
|
family={Barbillon},
|
||||||
|
familyi={B\bibinitperiod},
|
||||||
|
given={Pierre},
|
||||||
|
giveni={P\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=0e7741d31a239c4be11fc31138a136c1}{%
|
||||||
|
family={Fontaine},
|
||||||
|
familyi={F\bibinitperiod},
|
||||||
|
given={Colin},
|
||||||
|
giveni={C\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
{{un=0,uniquepart=base,hash=f23dbf986aa073f9022baede42ef0479}{%
|
||||||
|
family={Thebault},
|
||||||
|
familyi={T\bibinitperiod},
|
||||||
|
given={Elisa},
|
||||||
|
giveni={E\bibinitperiod},
|
||||||
|
givenun=0}}%
|
||||||
|
}
|
||||||
|
\strng{namehash}{91ac6a753125108a3ce0782cad59a3d8}
|
||||||
|
\strng{fullhash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{fullhashraw}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{bibnamehash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authorbibnamehash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authornamehash}{91ac6a753125108a3ce0782cad59a3d8}
|
||||||
|
\strng{authorfullhash}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\strng{authorfullhashraw}{1f785414b676cf3eff4e0a7230f1c933}
|
||||||
|
\field{sortinit}{6}
|
||||||
|
\field{sortinithash}{b33bc299efb3c36abec520a4c896a66d}
|
||||||
|
\field{extradatescope}{labelyear}
|
||||||
|
\field{labeldatesource}{}
|
||||||
|
\true{uniqueprimaryauthor}
|
||||||
|
\field{labelnamesource}{author}
|
||||||
|
\field{labeltitlesource}{title}
|
||||||
|
\field{abstract}{The structure of a bipartite interaction network can be described by providing a clustering for each of the two types of nodes. Such clusterings are outputted by fitting a Latent Block Model (LBM) on an observed network that comes from a sampling of species interactions in the field. However, the sampling is limited and possibly uneven. This may jeopardize the fit of the LBM and then the description of the structure of the network by detecting structures which result from the sampling and not from actual underlying ecological phenomena. If the observed interaction network consists of a weighted bipartite network where the number of observed interactions between two species is available, the sampling efforts for all species can be estimated and used to correct the LBM fit. We propose to combine an observation model that accounts for sampling and an LBM for describing the structure of underlying possible ecological interactions. We develop an original inference procedure for this model, the efficiency of which is demonstrated in simulation studies. The practical interest in ecology of our model is highlighted on a large dataset of plant-pollinator network.}
|
||||||
|
\field{day}{29}
|
||||||
|
\field{eprintclass}{stat}
|
||||||
|
\field{eprinttype}{arxiv}
|
||||||
|
\field{langid}{english}
|
||||||
|
\field{month}{11}
|
||||||
|
\field{title}{Disentangling the Structure of Ecological Bipartite Networks from Observation Processes}
|
||||||
|
\field{urlday}{14}
|
||||||
|
\field{urlmonth}{6}
|
||||||
|
\field{urlyear}{2023}
|
||||||
|
\field{year}{2022}
|
||||||
|
\field{dateera}{ce}
|
||||||
|
\field{urldateera}{ce}
|
||||||
|
\verb{eprint}
|
||||||
|
\verb 2211.16364
|
||||||
|
\endverb
|
||||||
|
\verb{file}
|
||||||
|
\verb /home/polarolouis/Zotero/storage/LQ3FINZG/Anakok et al. - 2022 - Disentangling the structure of ecological bipartit.pdf
|
||||||
|
\endverb
|
||||||
|
\verb{urlraw}
|
||||||
|
\verb http://arxiv.org/abs/2211.16364
|
||||||
|
\endverb
|
||||||
|
\verb{url}
|
||||||
|
\verb http://arxiv.org/abs/2211.16364
|
||||||
|
\endverb
|
||||||
|
\keyw{Statistics - Methodology}
|
||||||
|
\endentry
|
||||||
|
\enddatalist
|
||||||
|
\endrefsection
|
||||||
|
\endinput
|
||||||
|
|
||||||
BIN
presentation/presentation.pdf
Normal file
BIN
presentation/presentation.pdf
Normal file
Binary file not shown.
357
presentation/presentation.tex
Normal file
357
presentation/presentation.tex
Normal file
|
|
@ -0,0 +1,357 @@
|
||||||
|
\documentclass{beamer}
|
||||||
|
\usetheme{Boadilla}
|
||||||
|
|
||||||
|
% importations
|
||||||
|
\usepackage[french]{babel} % pour dire que le texte est en francais
|
||||||
|
\usepackage{csquotes}
|
||||||
|
\usepackage[T1]{fontenc} % pour les font postscript
|
||||||
|
\usepackage[cyr]{aeguill} % Police vectorielle TrueType, guillemets francais
|
||||||
|
\usepackage{epsfig} % pour gérer les images
|
||||||
|
\usepackage{amsmath,amsthm, stmaryrd} % très bon mode mathématique
|
||||||
|
\usepackage{amsfonts,amssymb,bm, bbold}% permet la definition des ensembles
|
||||||
|
\usepackage{algorithm2e} % pour les algorithmes
|
||||||
|
\usepackage{algpseudocode} % pour les algorithmes
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{float} % pour le placement des figure
|
||||||
|
\usepackage{url} % pour une gestion efficace des url
|
||||||
|
\usepackage{hyperref} % pour les hyperliens dans le document
|
||||||
|
\usepackage{tikz} % For graph plots
|
||||||
|
\usepackage[outline]{contour}
|
||||||
|
\usepackage{adjustbox} % To resize tikzpictures
|
||||||
|
\usepackage{fontawesome5}
|
||||||
|
\usepackage{makecell}
|
||||||
|
|
||||||
|
% Beamer
|
||||||
|
\setbeamertemplate{headline}{%
|
||||||
|
\begin{beamercolorbox}[ht=2.25ex,dp=3.75ex]{section in head/foot}
|
||||||
|
\insertnavigation{\paperwidth}
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}%
|
||||||
|
\beamertemplatenavigationsymbolsempty % Pas de bar de navigation
|
||||||
|
\setbeamerfont{caption}{size=\scriptsize} % Petit titre de figures
|
||||||
|
|
||||||
|
% bibliographie
|
||||||
|
\usepackage[style=apa,sorting=none]{biblatex}
|
||||||
|
\addbibresource{../references.bib}
|
||||||
|
|
||||||
|
% Images
|
||||||
|
\graphicspath{{../img/}{../figure/}}
|
||||||
|
|
||||||
|
% Tikz
|
||||||
|
%% Tikz Related
|
||||||
|
\usetikzlibrary{calc,shapes,backgrounds,arrows,automata,shadows,positioning}
|
||||||
|
\usetikzlibrary{arrows,shapes,positioning,shadows,trees,calc,backgrounds,automata,positioning}
|
||||||
|
\usetikzlibrary{decorations.pathreplacing,calligraphy,external,petri}
|
||||||
|
|
||||||
|
%% Tikz sets
|
||||||
|
\tikzset{
|
||||||
|
basic/.style = {draw, text width=3cm, font=\sffamily, rectangle},
|
||||||
|
root/.style = {basic, rounded corners=2pt, thin, align=center,
|
||||||
|
fill=green!30},
|
||||||
|
level 2/.style = {basic, rounded corners=6pt, thin,align=center, fill=green!60,
|
||||||
|
text width=8em},
|
||||||
|
level 3/.style = {basic, thin, align=left, fill=pink!60, text width=3.5cm}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Couleurs
|
||||||
|
% pour tickz multilevel
|
||||||
|
\definecolor{ao(english)}{rgb}{0.0, 0.5, 0.0}
|
||||||
|
\definecolor{redorg}{RGB}{215, 48, 39}
|
||||||
|
\definecolor{orangeorg}{RGB}{253, 174, 97}
|
||||||
|
|
||||||
|
\definecolor{blueind}{RGB}{016, 101, 171}
|
||||||
|
\definecolor{cyanind}{RGB}{058, 147, 195}
|
||||||
|
\definecolor{electricblue}{RGB}{142, 196, 222}
|
||||||
|
|
||||||
|
\definecolor{greenind}{RGB}{112, 130, 56}
|
||||||
|
|
||||||
|
\definecolor{burntorange}{RGB}{179, 021, 041}
|
||||||
|
\definecolor{goldenyellow}{RGB}{215, 095, 076}
|
||||||
|
\definecolor{peach}{RGB}{246, 164, 130}
|
||||||
|
|
||||||
|
\definecolor{gray}{RGB}{128, 128, 128}
|
||||||
|
|
||||||
|
% Footnote
|
||||||
|
\makeatletter
|
||||||
|
\newcommand\blfootnote[1]{%
|
||||||
|
\begingroup
|
||||||
|
\renewcommand{\@makefntext}[1]{\noindent\makebox[1.8em][r]#1}
|
||||||
|
\renewcommand\thefootnote{}\footnote{#1}%
|
||||||
|
\addtocounter{footnote}{-1}%
|
||||||
|
\endgroup
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
\subtitle{Séminaire des stagiaires}
|
||||||
|
\title[Collections de réseaux bipartites]{Détection de structure dans des réseaux bipartites}
|
||||||
|
\author[L. Lacoste]{Louis \textsc{Lacoste}} % Sous la supervision de Pierre
|
||||||
|
\date{4 juillet 2024}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
% titre
|
||||||
|
\begin{frame}[noframenumbering,plain]
|
||||||
|
\maketitle
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\section{Contexte du modèle}
|
||||||
|
\label{sec:contexte-du-modele}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Contexte écologique}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Faire de la détection de structure sur un réseau (SBM, LBM) mais intérêt à le faire sur plusieurs
|
||||||
|
\item De nombreux réseaux disponibles \parencite{WebLifeEcological} et décrivant des interactions similaires
|
||||||
|
\item Re-grouper les réseaux selon leur similarité (\emph{clustering} de réseaux)
|
||||||
|
\item Transférer de l'information grâce à la collection (par exemple reconstitution de données manquantes)
|
||||||
|
\item Déterminer des structures d'interactions fines de manière agnostique % Pas d'idee preco
|
||||||
|
%\item Vérifier si le regroupement est lié à des co-variables
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Réseaux bipartites\footnote{Ou \emph{bipartis}. Voir~\cite{larousseDefinitionsBipartiBipartite}.}}
|
||||||
|
\begin{columns}[c]
|
||||||
|
\begin{column}{0.65\textwidth}
|
||||||
|
\begin{figure}[ht]
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}[scale=.65]
|
||||||
|
\input{../tikz/plantpollinatornetwork.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Exemple d'un réseau plantes-pollinisateurs}
|
||||||
|
\label{fig:plantes-pollin}
|
||||||
|
|
||||||
|
\end{figure}
|
||||||
|
\end{column}
|
||||||
|
\hfill
|
||||||
|
\begin{column}{0.35\linewidth}
|
||||||
|
\centering
|
||||||
|
\begin{align*}
|
||||||
|
X = \begin{pmatrix}
|
||||||
|
1 & 1 & 1 & 1 & 0 & 0 \\
|
||||||
|
0 & 0 & 0 & 1 & 0 & 1 \\
|
||||||
|
1 & 0 & 0 & 0 & 1 & 0 \\
|
||||||
|
0 & 0 & 0 & 0 & 1 & 0
|
||||||
|
\end{pmatrix}
|
||||||
|
\end{align*}
|
||||||
|
\footnotesize
|
||||||
|
Matrice d'adjacence associée
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\smallskip
|
||||||
|
Permet de décrire des interactions impliquant deux agents dont les rôles
|
||||||
|
sont de natures différentes.\\
|
||||||
|
Par exemple : hôtes-parasites, plantes-pollinisateurs, graines-disperseurs \dots
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Latent Block Model (LBM\footnotemark[2])}
|
||||||
|
%DONE remplacer i \in bullet par Zi = \bullet
|
||||||
|
Proposé par~\cite{govaertEMAlgorithmBlock2005}.
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{0.40\linewidth}
|
||||||
|
\begin{figure}[H]
|
||||||
|
\center
|
||||||
|
\begin{tikzpicture}[scale=0.35]
|
||||||
|
\input{../tikz/lbm.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Exemple de LBM\footnotemark}
|
||||||
|
\label{fig:LBMvisu}
|
||||||
|
\end{figure}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.51\linewidth}
|
||||||
|
Pour \begin{itemize}
|
||||||
|
\item $Q_1 = |\{{\color{blueind}\bullet},{\color{cyanind}\bullet},{\color{electricblue}\bullet}\}|$ blocs fixés en ligne
|
||||||
|
\item $Q_2 = |\{{\color{burntorange}\bullet},{\color{goldenyellow}\bullet},{\color{peach}\bullet}\}|$ blocs fixés en colonne
|
||||||
|
\end{itemize}
|
||||||
|
\begin{block}{Paramètres}
|
||||||
|
\begin{itemize}
|
||||||
|
\item $\pi_{\bullet} = \mathbb{P}(Z_i = \bullet)$ en ligne et $\rho_{\bullet} = \mathbb{P}(W_j = \bullet)$ en colonne
|
||||||
|
\item $\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}} = \mathbb{P}(X_{ij} = 1 | Z_i = {\color{blueind}\bullet}, W_j = {\color{burntorange}\bullet})$
|
||||||
|
\end{itemize}
|
||||||
|
\end{block}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
|
||||||
|
\footnotetext{Que j'appellerai par la suite BiSBM}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\section{Extension de \emph{colSBM} aux réseaux bipartites}
|
||||||
|
\label{sec:extension-de-colsbm-aux-reseaux-bipartites}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Collections bipartites}
|
||||||
|
\begin{tikzpicture}[scale=0.33]
|
||||||
|
\input{../tikz/collbm-iid.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item $Q_1 = |\{{\color{blueind}\bullet},{\color{cyanind}\bullet},{\color{electricblue}\bullet}\}|$ blocs fixés en ligne
|
||||||
|
\item $Q_2 = |\{{\color{burntorange}\bullet},{\color{goldenyellow}\bullet},{\color{peach}\bullet}\}|$ blocs fixés en colonne
|
||||||
|
\end{itemize}
|
||||||
|
\begin{block}{Paramètres}
|
||||||
|
\begin{itemize}
|
||||||
|
\item $\pi_{\bullet} = \mathbb{P}(Z_i =\bullet)$ en ligne et $\rho_{\bullet} = \mathbb{P}(W_j = \bullet)$ en colonne
|
||||||
|
\item $\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}} = \mathbb{P}(X_{ij} = 1 | Z_i = {\color{blueind}\bullet}, W_j = {\color{burntorange}\bullet})$
|
||||||
|
\end{itemize}
|
||||||
|
\end{block}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Différents modèles}
|
||||||
|
\only<1>{
|
||||||
|
\begin{tikzpicture}[scale=0.33]
|
||||||
|
\input{../tikz/collbm-iid.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\begin{block}{\emph{iid-colBiSBM}}
|
||||||
|
$\bm{\pi} = (\pi_1, \dots \pi_{Q_1})$ et $\bm{\rho} = (\rho_1, \dots \rho_{Q_2})$
|
||||||
|
\end{block}
|
||||||
|
}
|
||||||
|
\only<2>{
|
||||||
|
\begin{tikzpicture}[scale=0.33]
|
||||||
|
\input{../tikz/collbm-pirho.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\begin{block}{\emph{$\pi\rho$-colBiSBM}}
|
||||||
|
$\bm{\pi} = ((\pi_{\color{black}1}^{\color{red}m}, \dots \pi_{\color{black}Q_1}^{\color{red}m}))_{m=1,\dots M}$ et $\bm{\rho} = ((\rho_{\color{black}1}^{\color{red}m}, \dots \rho_{\color{black}Q_2}^{\color{red}m}))_{m=1,\dots M}$ %{$\forall q \in \llbracket 1, Q_1 - 1\rrbracket, \pi_q > 0$ et $\forall r \in \llbracket 1, Q_2 - 1\rrbracket, \rho_r > 0$}
|
||||||
|
\small \\
|
||||||
|
avec $\forall q,m \in \llbracket 1, Q_1 \rrbracket \times \llbracket 1, M \rrbracket, \pi_q^m \in \left[ 0,1 \right]$
|
||||||
|
et $\forall r,m \in \llbracket 1, Q_2 \rrbracket \times \llbracket 1, M \rrbracket, \rho_r^m \in \left[ 0,1 \right]$
|
||||||
|
\end{block}
|
||||||
|
}
|
||||||
|
Dans tous les modèles la structure de connectivité ($\bm{\alpha}$) est supposée identique au sein de la collection.
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Estimation des paramètres}
|
||||||
|
% DONE dire que tau i q m c' est la proba que Zim = q, approximation de la proba variationnelle. Parce qu on impose lindependance
|
||||||
|
Maximisation d'une borne inférieure de la log-vraisemblance des données observées.
|
||||||
|
\begin{multline*}
|
||||||
|
\ell (\bm{X};\bm{\theta}) \geq \color{red}\sum_{m=1}^{M} \bigg( \color{black} \sum_{i = 1}^{n_1^m}\sum_{j=1}^{n_2^m}\sum_{q \in \mathcal{Q}_{1,m}} \sum_{r \in \mathcal{Q}_{2,m}} \tau^{1,m}_{i,q} \tau^{2,m}_{j,r} \log f(X^{m}_{ij}; \alpha_{qr}) \\
|
||||||
|
+ \sum_{i=1}^{n_1^m} \sum_{q \in \mathcal{Q}_{1,m}} \tau^{1,m}_{i,q} \log \pi_{\color{black}q}^{\color{gray}m} + \sum_{j=1}^{n_2^m} \sum_{r \in \mathcal{Q}_{2,m}} \tau^{2,m}_{j,r} \log \rho_{\color{black}r}^{\color{gray}m} \\
|
||||||
|
- \sum_{i=1}^{n_1} \tau^{1,m}_{i,q} \log \tau^{1,m}_{i,q} - \sum_{j=1}^{n_2} \tau^{2,m}_{j,r} \log \tau^{2,m}_{j,r} \color{red}\bigg) \color{black} =: J(\bm{\tau};\bm{\theta}) $$
|
||||||
|
\end{multline*}
|
||||||
|
|
||||||
|
\begin{block}{Approximation variationnelle}
|
||||||
|
$\tau_{i,q}^{1,m} = P(Z_i = q | X^m_{ij})$ et $\tau_{j,r}^{2,m} = P(W_j = r | X^m_{ij})$ tels que $P(Z_i = q, W_j = r | X^m_{ij}) = \tau_{i,q}^{1,m}\times\tau_{j,r}^{2,m}$
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Sélection de modèle : choix de $(Q_1,Q_2)$ - Approche gloutonne}
|
||||||
|
% DONE But maximiser un critere le BICL, deplacer voir St Clair dans la note
|
||||||
|
% VEM a Q1 Q2 fixer
|
||||||
|
% Choix de Q1 Q2 par maximisation du BICL
|
||||||
|
% Itemize dans la box : init, explo voisin, arrets
|
||||||
|
\underline{Le VEM se fait à $Q_1, Q_2$ fixés}, il faut donc déterminer les \enquote*{meilleures} coordonnées.
|
||||||
|
Nous maximisons un BIC-L\footnote{\emph{Bayesian Information Criterion - Like}, en adaptant les formules de~\cite{chabert-liddellLearningCommonStructures2023}}.
|
||||||
|
|
||||||
|
Détermination d'un premier mode par approche \emph{gloutonne} \smallskip
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{0.5\linewidth}
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\input{../tikz/greedy-exploration.tex}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.5\linewidth}
|
||||||
|
\begin{block}{Exploration gloutonne}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Initialisation sur $(1,2)$ et $(2,1)$
|
||||||
|
\item Exploration des 4 voisins et déplacement sur le meilleur des 4
|
||||||
|
\item Arrêt après 2 étapes successives sans augmentation du BIC-L
|
||||||
|
\end{itemize}
|
||||||
|
\end{block}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Sélection de modèle : choix de $(Q_1,Q_2)$ - Fenêtre glissante}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{0.6\textwidth}
|
||||||
|
\begin{figure}
|
||||||
|
\input{../tikz/moving-window.tex}
|
||||||
|
\caption{Fenêtre glissante}
|
||||||
|
\end{figure}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.4\textwidth}
|
||||||
|
\only<3>{\begin{block}{}
|
||||||
|
Initialisation du modèle si nécessaire
|
||||||
|
\end{block}}
|
||||||
|
\only<9>{\begin{block}{}
|
||||||
|
Localisation du nouveau mode
|
||||||
|
\end{block}}
|
||||||
|
\only<10>{\begin{block}{}
|
||||||
|
Déplacement sur le nouveau mode puis itération
|
||||||
|
\end{block}}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Clustering de réseaux}
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\tikzstyle{instruct}=[font=\small, text justified, rectangle,draw,fill=yellow!50]
|
||||||
|
\tikzstyle{first_col}=[rectangle, text justified, draw,fill=gray!50]
|
||||||
|
\tikzstyle{second_col}=[scale=0.55, circle, draw,fill=red!50]
|
||||||
|
\tikzstyle{test}=[font=\small, text justified, diamond, aspect=2.5,thick,
|
||||||
|
draw=blue,fill=yellow!50,text=blue]
|
||||||
|
\tikzstyle{es}=[font=\small, text justified, rectangle,draw,rounded corners=4pt,fill=cyanind!25]
|
||||||
|
|
||||||
|
\node[es] (liste) at (0,4) {Donner une collection à partitionner};
|
||||||
|
\node[instruct, text width=5cm, below = 0.45cm of liste] (1-collection) {Ajuster \emph{colBiSBM}};
|
||||||
|
\node[first_col, right = 0.5cm of 1-collection] (1-col-obj) {};
|
||||||
|
\node[instruct, text width=5cm, below = 0.45cm of 1-collection] (dissimi) {Calculer une matrice de dissimilarité de la collection};
|
||||||
|
\node[instruct, text width=5cm, below = 0.45cm of dissimi] (2-sous-collection) {Séparer la \emph{collection en 2 sous-collections} et ajuster les \emph{colBiSBM}};
|
||||||
|
\node[second_col, right = 0.25cm of 2-sous-collection] (1-sec-col-obj) {1};
|
||||||
|
\node[second_col, right = 0.25cm of 1-sec-col-obj] (1-sec-col-obj) {2};
|
||||||
|
\node[test,below = 0.45cm of 2-sous-collection, scale=0.5] (BICL-test) {$\sum_{i=1}^{2} (\text{BIC-L}(\tikz[baseline=-0.25cm]{\node[second_col] {i};} )) > \text{BIC-L}(\tikz[baseline=-0.25cm]{\node[first_col] {};})$?};
|
||||||
|
\node[es, right = 0.55cm of BICL-test] (sortie) {Renvoyer \tikz{\node[rectangle, draw, fill=gray!50, rounded corners=0pt] {};}};
|
||||||
|
\node[es, left = 0.45cm of dissimi, text width = 2cm] (recursion) {Recommencer sur \tikz{\node[second_col] {1};} et \tikz{\node[second_col] {2};} };
|
||||||
|
|
||||||
|
\tikzstyle{suite}=[->,>=stealth,thick,rounded corners=4pt]
|
||||||
|
\draw[suite] (liste) -- (1-collection);
|
||||||
|
\draw[suite] (1-collection) -- (dissimi);
|
||||||
|
\draw[suite] (dissimi) -- (2-sous-collection);
|
||||||
|
\draw[suite] (2-sous-collection) -- (BICL-test);
|
||||||
|
\draw[suite] (BICL-test) -| node[near start, above, fill=none] {Oui} (recursion);
|
||||||
|
\draw[suite] (recursion.north) |- (1-collection.west);
|
||||||
|
\draw[suite] (BICL-test) -- node[near start, above, fill=none] {Non} (sortie);
|
||||||
|
|
||||||
|
\end{tikzpicture}
|
||||||
|
\blfootnote{Même approche que~\cite{chabert-liddellLearningCommonStructures2023}}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\section{Application}
|
||||||
|
\label{sec:application}
|
||||||
|
|
||||||
|
\section{Conclusion}
|
||||||
|
\label{sec:conclusion}
|
||||||
|
\begin{frame}
|
||||||
|
\frametitle{Conclusion et perspectives}
|
||||||
|
% DONE Ajouter une slide conclusion perspective
|
||||||
|
% Rappeler les modeles avec clustering
|
||||||
|
% Evoquer l'analyse de reseaux corrigés pour l'échantillonnage
|
||||||
|
% Lien vers le package
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item 4 modèles dont 3 qui ont une flexibilité sur au moins une des dimensions (adaptabilité aux données)
|
||||||
|
\item Partitionner un ensemble de réseaux selon leurs structures
|
||||||
|
\item Comparer les \emph{clusterings} de réseaux obtenus entre données brutes et données corrigées (par exemple par la méthode \emph{CoOPLBM}\footnote{~\cite{anakokDisentanglingStructureEcological2022}})
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\bigskip
|
||||||
|
\centering
|
||||||
|
Le package est disponible sur GitHub : \faGithub \url{https://github.com/Chabert-Liddell/colSBM}
|
||||||
|
|
||||||
|
\bigskip
|
||||||
|
\huge
|
||||||
|
Merci pour votre attention !
|
||||||
|
|
||||||
|
\end{frame}
|
||||||
|
\renewcommand{\pgfuseimage}[1]{\scalebox{.75}{\includegraphics{#1}}}
|
||||||
|
\begin{frame}[noframenumbering,plain,allowframebreaks]
|
||||||
|
\frametitle{Bibliographie}
|
||||||
|
\printbibliography
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
BIN
rapport.pdf
BIN
rapport.pdf
Binary file not shown.
1977
rapport/rapport.bbl-SAVE-ERROR
Normal file
1977
rapport/rapport.bbl-SAVE-ERROR
Normal file
File diff suppressed because it is too large
Load diff
3089
rapport/rapport.bcf-SAVE-ERROR
Normal file
3089
rapport/rapport.bcf-SAVE-ERROR
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -26,13 +26,16 @@
|
||||||
|
|
||||||
%% Bibliography
|
%% Bibliography
|
||||||
\usepackage[style=apa,citestyle=authoryear-comp]{biblatex}
|
\usepackage[style=apa,citestyle=authoryear-comp]{biblatex}
|
||||||
\addbibresource{references.bib}
|
\addbibresource{../references.bib}
|
||||||
|
|
||||||
%% For good md to tex conversion
|
%% For good md to tex conversion
|
||||||
\providecommand{\tightlist}{%
|
\providecommand{\tightlist}{%
|
||||||
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
||||||
\usepackage{booktabs}
|
\usepackage{booktabs}
|
||||||
|
|
||||||
|
% Images
|
||||||
|
|
||||||
|
|
||||||
% Figure placement
|
% Figure placement
|
||||||
\floatplacement{figure}{H}
|
\floatplacement{figure}{H}
|
||||||
|
|
||||||
117
tikz/collbm-iid.tex
Normal file
117
tikz/collbm-iid.tex
Normal file
|
|
@ -0,0 +1,117 @@
|
||||||
|
\begin{scope}[xshift=18cm, yshift=2cm]
|
||||||
|
\input{../tikz/lbm.tex}
|
||||||
|
\end{scope}
|
||||||
|
|
||||||
|
\begin{scope}[xshift=3cm, yshift = 1cm]
|
||||||
|
\node[text justified, fill=none] at (10, 3.5)
|
||||||
|
{$\overset{iid}{\sim}$};
|
||||||
|
\begin{scope}[yshift = 6cm]
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=gray]
|
||||||
|
\node[state, draw=black!50] (R11) at (0,1.25)
|
||||||
|
{\textbf{1}};
|
||||||
|
\node[state, draw=black!50] (R12) at (1,1.25)
|
||||||
|
{\textbf{2}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,1.25)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (R21) at (3,1.25)
|
||||||
|
{\textbf{4}};
|
||||||
|
\node[state, draw=black!50] (R31) at (5,1.25)
|
||||||
|
{\textbf{6}};
|
||||||
|
|
||||||
|
\tikzstyle{every
|
||||||
|
state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
||||||
|
|
||||||
|
% Label réseau
|
||||||
|
\node[font=\small, text justified,draw=none, fill=none,
|
||||||
|
below left = 0.04cm of R11] {$Y^1 = $};
|
||||||
|
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C11) at (0.5,-1)
|
||||||
|
{\textbf{1}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C211) at (2.5,-1)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (C22) at (3.5,-1)
|
||||||
|
{\textbf{4}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C31) at (4.5,-1)
|
||||||
|
{\textbf{5}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
||||||
|
\path (R11) edge (C11);
|
||||||
|
\path (R11) edge (C211);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R12) edge [] (C11);
|
||||||
|
\path (R12) edge (C211);
|
||||||
|
\path (R12) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C211);
|
||||||
|
\path (R13) edge (C22);
|
||||||
|
|
||||||
|
\path (R21) edge (C211);
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R31) edge (C31);
|
||||||
|
\end{scope}
|
||||||
|
\node[text width=3cm,font=\small, text justified,
|
||||||
|
rotate=90, fill=none] (dots) at (2.5, 7.5){\dots};
|
||||||
|
|
||||||
|
\begin{scope}[yshift = 0cm]
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=gray]
|
||||||
|
\node[state, draw=black!50] (R11) at (0,2.25)
|
||||||
|
{\textbf{4}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,2.25)
|
||||||
|
{\textbf{6}};
|
||||||
|
\node[state, draw=black!50] (R21) at (3,2.25)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (R22) at (4,2.25)
|
||||||
|
{\textbf{5}};
|
||||||
|
\node[state, draw=black!50] (R31) at (5,2.25)
|
||||||
|
{\textbf{2}};
|
||||||
|
|
||||||
|
\tikzstyle{every
|
||||||
|
state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
||||||
|
% Label réseau
|
||||||
|
\node[font=\small, text justified,draw=none, fill=none,
|
||||||
|
below left = 0.04cm of R11] {$Y^M = $};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C11) at (0.5,0)
|
||||||
|
{\textbf{5}};
|
||||||
|
\node[state, draw=black!50] (C12) at (1.5,0)
|
||||||
|
{\textbf{1}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C22) at (3.5,0)
|
||||||
|
{\textbf{2}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C31) at (4.5,0)
|
||||||
|
{\textbf{4}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
||||||
|
\path (R11) edge (C11);
|
||||||
|
\path (R11) edge (C12);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C12);
|
||||||
|
\path (R13) edge (C22);
|
||||||
|
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R22) edge (C22);
|
||||||
|
\path (R22) edge (C31);
|
||||||
|
|
||||||
|
\path (R31) edge (C31);
|
||||||
|
\end{scope}
|
||||||
|
\end{scope}
|
||||||
117
tikz/collbm-pirho.tex
Normal file
117
tikz/collbm-pirho.tex
Normal file
|
|
@ -0,0 +1,117 @@
|
||||||
|
\begin{scope}[xshift=18cm, yshift=2cm]
|
||||||
|
\input{../tikz/lbm-pirho.tex}
|
||||||
|
\end{scope}
|
||||||
|
|
||||||
|
\begin{scope}[xshift=3cm, yshift = 1cm]
|
||||||
|
\node[text justified, fill=none] at (10, 3.5)
|
||||||
|
{$\sim$};
|
||||||
|
\begin{scope}[yshift = 6cm]
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=gray]
|
||||||
|
\node[state, draw=black!50] (R11) at (0,1.25)
|
||||||
|
{\textbf{1}};
|
||||||
|
\node[state, draw=black!50] (R12) at (1,1.25)
|
||||||
|
{\textbf{2}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,1.25)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (R21) at (3,1.25)
|
||||||
|
{\textbf{4}};
|
||||||
|
\node[state, draw=black!50] (R31) at (5,1.25)
|
||||||
|
{\textbf{6}};
|
||||||
|
|
||||||
|
\tikzstyle{every
|
||||||
|
state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
||||||
|
|
||||||
|
% Label réseau
|
||||||
|
\node[font=\small, text justified,draw=none, fill=none,
|
||||||
|
below left = 0.04cm of R11] {$Y^1 = $};
|
||||||
|
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C11) at (0.5,-1)
|
||||||
|
{\textbf{1}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C211) at (2.5,-1)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (C22) at (3.5,-1)
|
||||||
|
{\textbf{4}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C31) at (4.5,-1)
|
||||||
|
{\textbf{5}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
||||||
|
\path (R11) edge (C11);
|
||||||
|
\path (R11) edge (C211);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R12) edge [] (C11);
|
||||||
|
\path (R12) edge (C211);
|
||||||
|
\path (R12) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C211);
|
||||||
|
\path (R13) edge (C22);
|
||||||
|
|
||||||
|
\path (R21) edge (C211);
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R31) edge (C31);
|
||||||
|
\end{scope}
|
||||||
|
\node[text width=3cm,font=\small, text justified,
|
||||||
|
rotate=90, fill=none] (dots) at (2.5, 7.5){\dots};
|
||||||
|
|
||||||
|
\begin{scope}[yshift = 0cm]
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=gray]
|
||||||
|
\node[state, draw=black!50] (R11) at (0,2.25)
|
||||||
|
{\textbf{4}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,2.25)
|
||||||
|
{\textbf{6}};
|
||||||
|
\node[state, draw=black!50] (R21) at (3,2.25)
|
||||||
|
{\textbf{3}};
|
||||||
|
\node[state, draw=black!50] (R22) at (4,2.25)
|
||||||
|
{\textbf{5}};
|
||||||
|
\node[state, draw=black!50] (R31) at (5,2.25)
|
||||||
|
{\textbf{2}};
|
||||||
|
|
||||||
|
\tikzstyle{every
|
||||||
|
state}=[draw=none,text=black,scale=0.75, transform shape, shape=rectangle]
|
||||||
|
% Label réseau
|
||||||
|
\node[font=\small, text justified,draw=none, fill=none,
|
||||||
|
below left = 0.04cm of R11] {$Y^M = $};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C11) at (0.5,0)
|
||||||
|
{\textbf{5}};
|
||||||
|
\node[state, draw=black!50] (C12) at (1.5,0)
|
||||||
|
{\textbf{1}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C22) at (3.5,0)
|
||||||
|
{\textbf{2}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50] (C31) at (4.5,0)
|
||||||
|
{\textbf{4}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1pt, draw=gray, fill=gray]
|
||||||
|
\path (R11) edge (C11);
|
||||||
|
\path (R11) edge (C12);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C12);
|
||||||
|
\path (R13) edge (C22);
|
||||||
|
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R22) edge (C22);
|
||||||
|
\path (R22) edge (C31);
|
||||||
|
|
||||||
|
\path (R31) edge (C31);
|
||||||
|
\end{scope}
|
||||||
|
\end{scope}
|
||||||
26
tikz/greedy-exploration.tex
Normal file
26
tikz/greedy-exploration.tex
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
\draw[step=1cm, help lines] (-2,-2) grid (2,2);
|
||||||
|
\foreach \x in {1,...,5} \draw (\x-3,-2 + .1)--(\x-3,-2 -.3) node[below] {\footnotesize $\x$};
|
||||||
|
\foreach \y in {1,...,5} \draw (-2 + .1, \y-3)--(-2 -.3,\y-3) node[below] {\footnotesize $\y$};
|
||||||
|
\draw[fill=gray, draw=gray] (0,0) circle [radius=0.225cm];
|
||||||
|
\draw[fill=blueind, draw=blueind] (1,0) circle [radius=0.225cm];
|
||||||
|
\draw[fill=blueind, draw=blueind] (0,1) circle [radius=0.225cm];
|
||||||
|
\draw[fill=red, draw=red] (-1,0) circle [radius=0.225cm];
|
||||||
|
\draw[fill=red, draw=red] (0,-1) circle [radius=0.225cm];
|
||||||
|
|
||||||
|
% Légende
|
||||||
|
\node[font=\tiny, text justified,fill=none, rotate=-45] (Splits) at (0.5,0.5){{\color{blueind} Splits}};
|
||||||
|
\node[font=\tiny, text justified,fill=none, rotate=-45] (Merges) at (-0.5,-0.5){{\color{red} Merges}};
|
||||||
|
|
||||||
|
% Splitting
|
||||||
|
\draw[>=stealth,->,thick, draw=blueind] (0.225,0) -- +(0.55,0);
|
||||||
|
\draw[>=stealth,->,thick, draw=blueind] (0,0.225) -- +(0,0.55);
|
||||||
|
|
||||||
|
% Merging
|
||||||
|
\draw[>=stealth,->,thick, draw=red] (-0.225,0) -- +(-0.55,0);
|
||||||
|
\draw[>=stealth,->,thick, draw=red] (0,-0.225) -- +(0,-0.55);
|
||||||
|
|
||||||
|
% Axes
|
||||||
|
\draw[>=to,->,thick] (-2,-2) -- +(4.3,0);
|
||||||
|
\node[font=\small, fill=none] (Q_1) at (2.6,-2) {$Q_1$};
|
||||||
|
\draw[>=to,->,thick] (-2,-2) -- +(0,4.3);
|
||||||
|
\node[font=\small, fill=none] (Q_2) at (-2, 2.6) {$Q_2$};
|
||||||
106
tikz/lbm-pirho.tex
Normal file
106
tikz/lbm-pirho.tex
Normal file
|
|
@ -0,0 +1,106 @@
|
||||||
|
% Couleurs personnalisées
|
||||||
|
\definecolor{ao(english)}{rgb}{0.0, 0.5, 0.0}
|
||||||
|
\definecolor{redorg}{RGB}{215, 48, 39}
|
||||||
|
\definecolor{orangeorg}{RGB}{253, 174, 97}
|
||||||
|
|
||||||
|
\definecolor{blueind}{RGB}{016, 101, 171}
|
||||||
|
\definecolor{cyanind}{RGB}{058, 147, 195}
|
||||||
|
\definecolor{electricblue}{RGB}{142, 196, 222}
|
||||||
|
|
||||||
|
\definecolor{greenind}{RGB}{112, 130, 56}
|
||||||
|
|
||||||
|
\definecolor{burntorange}{RGB}{179, 021, 041}
|
||||||
|
\definecolor{goldenyellow}{RGB}{215, 095, 076}
|
||||||
|
\definecolor{peach}{RGB}{246, 164, 130}
|
||||||
|
|
||||||
|
\definecolor{gray}{RGB}{128, 128, 128}
|
||||||
|
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.95,
|
||||||
|
transform shape]
|
||||||
|
\tikzstyle{every state}=[draw=none,text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
\tikzset{edge_proba/.style={draw=none, fill=none,
|
||||||
|
text=black}}
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=blueind]
|
||||||
|
\node[state, draw=black!50] (R11) at (0,5) {\textbf{R11}};
|
||||||
|
\node[state, draw=black!50] (R12) at (1,5) {\textbf{R12}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,5) {\textbf{R13}};
|
||||||
|
\node[edge_proba] (pi1) at (1,5.7) {\contour{white}{\textbf{$\pi_{{\color{blueind}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=cyanind]
|
||||||
|
\node[state, draw=black!50] (R21) at (6.25,5)
|
||||||
|
{\textbf{R21}};
|
||||||
|
\node[state, draw=black!50] (R22) at (7.25,5)
|
||||||
|
{\textbf{R22}};
|
||||||
|
\node[edge_proba] (pi2) at (6.75,5.7) {\contour{white}{\textbf{$\pi_{{\color{cyanind}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
\node[state, draw=black!50, fill=electricblue] (R31) at (10,5) {\textbf{R31}};
|
||||||
|
\node[edge_proba] (pi3) at (10,5.7) {\contour{white}{\textbf{$\pi_{{\color{electricblue}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=burntorange, shape=rectangle]
|
||||||
|
\tikzstyle{every state}=[draw=none,text=black,scale=0.75,
|
||||||
|
transform shape, shape=rectangle]
|
||||||
|
\node[state, draw=black!50] (C11) at (0,0) {\textbf{C11}};
|
||||||
|
\node[state, draw=black!50] (C12) at (1,0) {\textbf{C12}};
|
||||||
|
\node[edge_proba] (rho1) at (0.5,-0.9)
|
||||||
|
{\contour{white}{\textbf{$\rho_{{\color{burntorange}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=goldenyellow, shape=rectangle]
|
||||||
|
\node[state, draw=black!50] (C21) at (3.5,0) {\textbf{C21}};
|
||||||
|
\node[state, draw=black!50] (C22) at (4.5,0) {\textbf{C22}};
|
||||||
|
\node[edge_proba] (rho2) at (4,-0.9)
|
||||||
|
{\contour{white}{\textbf{$\rho_{{\color{goldenyellow}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=peach, shape=rectangle]
|
||||||
|
\node[state, draw=black!50] (C31) at (10,0) {\textbf{C31}};
|
||||||
|
\node[edge_proba] (rho3) at (10,-0.9)
|
||||||
|
{\contour{white}{\textbf{$\rho_{{\color{peach}\bullet}}^{\color{red}m}$}}};
|
||||||
|
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1.5pt,draw opacity=0.2]
|
||||||
|
|
||||||
|
|
||||||
|
\path (R11) edge (C12);
|
||||||
|
\path (R11) edge (C21);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R12) edge [] (C11);
|
||||||
|
\path (R12) edge (C12);
|
||||||
|
\path (R12) edge (C21);
|
||||||
|
\path (R12) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C12);
|
||||||
|
\path (R13) edge (C21);
|
||||||
|
|
||||||
|
|
||||||
|
\path (R11) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left = -0.7cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}}$}}
|
||||||
|
(C11);
|
||||||
|
\path (R13) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right = -0.7cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{blueind}\bullet}{\color{goldenyellow}\bullet}}$}}
|
||||||
|
(C22);
|
||||||
|
|
||||||
|
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R22) edge (C21);
|
||||||
|
\path (R22) edge (C22);
|
||||||
|
\path (R21) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway,
|
||||||
|
right = -0.3cm, fill=none]
|
||||||
|
{\contour{white}{$\alpha_{{\color{cyanind}\bullet}{\color{goldenyellow}\bullet}}$}} (C21);
|
||||||
|
|
||||||
|
\path (R22) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right = -0.6cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{cyanind}\bullet}{\color{peach}\bullet}}$}} (C31);
|
||||||
|
|
||||||
|
\path (R31) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway,
|
||||||
|
right=-0.4cm, fill=none]
|
||||||
|
{\contour{white}{$\alpha_{{\color{electricblue}\bullet}{\color{peach}\bullet}}$}} (C31);
|
||||||
107
tikz/lbm.tex
Normal file
107
tikz/lbm.tex
Normal file
|
|
@ -0,0 +1,107 @@
|
||||||
|
% Couleurs personnalisées
|
||||||
|
\definecolor{ao(english)}{rgb}{0.0, 0.5, 0.0}
|
||||||
|
\definecolor{redorg}{RGB}{215, 48, 39}
|
||||||
|
\definecolor{orangeorg}{RGB}{253, 174, 97}
|
||||||
|
|
||||||
|
\definecolor{blueind}{RGB}{016, 101, 171}
|
||||||
|
\definecolor{cyanind}{RGB}{058, 147, 195}
|
||||||
|
\definecolor{electricblue}{RGB}{142, 196, 222}
|
||||||
|
|
||||||
|
\definecolor{greenind}{RGB}{112, 130, 56}
|
||||||
|
|
||||||
|
\definecolor{burntorange}{RGB}{179, 021, 041}
|
||||||
|
\definecolor{goldenyellow}{RGB}{215, 095, 076}
|
||||||
|
\definecolor{peach}{RGB}{246, 164, 130}
|
||||||
|
|
||||||
|
\definecolor{gray}{RGB}{128, 128, 128}
|
||||||
|
|
||||||
|
\tikzstyle{every state}=[draw, text=black,scale=0.95,
|
||||||
|
transform shape]
|
||||||
|
\tikzstyle{every state}=[draw=none,text=black,scale=0.75,
|
||||||
|
transform shape]
|
||||||
|
\tikzset{edge_proba/.style={draw=white, fill=none,
|
||||||
|
text=black}}
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=blueind]
|
||||||
|
\node[edge_proba] (pi1) at (1,5.7)
|
||||||
|
{\textbf{$\pi_{{\color{blueind}\bullet}}$}};
|
||||||
|
\node[state, draw=black!50] (R11) at (0,5) {\textbf{R11}};
|
||||||
|
\node[state, draw=black!50] (R12) at (1,5) {\textbf{R12}};
|
||||||
|
\node[state, draw=black!50] (R13) at (2,5) {\textbf{R13}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=cyanind]
|
||||||
|
\node[edge_proba] (pi2) at (6.75,5.7)
|
||||||
|
{\textbf{$\pi_{{\color{cyanind}\bullet}}$}};
|
||||||
|
\node[state, draw=black!50] (R21) at (6.25,5)
|
||||||
|
{\textbf{R21}};
|
||||||
|
\node[state, draw=black!50] (R22) at (7.25,5)
|
||||||
|
{\textbf{R22}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=electricblue]
|
||||||
|
\node[edge_proba] (pi3) at (10,5.7)
|
||||||
|
{\textbf{$\pi_{{\color{electricblue}\bullet}}$}};
|
||||||
|
\node[state, draw=black!50] (R31) at (10,5) {\textbf{R31}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[fill=burntorange, shape=rectangle]
|
||||||
|
\node[edge_proba] (rho1) at (0.5,-0.9)
|
||||||
|
{\textbf{$\rho_{{\color{burntorange}\bullet}}$}};
|
||||||
|
\tikzstyle{every state}=[draw=none,text=black,scale=0.75,
|
||||||
|
transform shape, shape=rectangle]
|
||||||
|
\node[state, draw=black!50] (C11) at (0,0) {\textbf{C11}};
|
||||||
|
\node[state, draw=black!50] (C12) at (1,0) {\textbf{C12}};
|
||||||
|
\tikzstyle{every node}=[fill=goldenyellow, shape=rectangle]
|
||||||
|
\node[edge_proba] (rho2) at (4,-0.9)
|
||||||
|
{\textbf{$\rho_{{\color{goldenyellow}\bullet}}$}};
|
||||||
|
\node[state, draw=black!50] (C21) at (3.5,0) {\textbf{C21}};
|
||||||
|
\node[state, draw=black!50] (C22) at (4.5,0) {\textbf{C22}};
|
||||||
|
\tikzstyle{every node}=[fill=peach, shape=rectangle]
|
||||||
|
\node[edge_proba] (rho3) at (10,-0.9)
|
||||||
|
{\textbf{$\rho_{{\color{peach}\bullet}}$}};
|
||||||
|
\node[state, draw=black!50] (C31) at (10,0) {\textbf{C31}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw,line width=1.5pt,draw opacity=0.2]
|
||||||
|
|
||||||
|
|
||||||
|
\path (R11) edge (C12);
|
||||||
|
\path (R11) edge (C21);
|
||||||
|
\path (R11) edge (C22);
|
||||||
|
|
||||||
|
\path (R12) edge [] (C11);
|
||||||
|
\path (R12) edge (C12);
|
||||||
|
\path (R12) edge (C21);
|
||||||
|
\path (R12) edge (C22);
|
||||||
|
|
||||||
|
\path (R13) edge [] (C11);
|
||||||
|
\path (R13) edge (C12);
|
||||||
|
\path (R13) edge (C21);
|
||||||
|
|
||||||
|
|
||||||
|
\path (R11) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, left = -0.7cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}}$}}
|
||||||
|
(C11);
|
||||||
|
\path (R13) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right = -0.7cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{blueind}\bullet}{\color{goldenyellow}\bullet}}$}}
|
||||||
|
(C22);
|
||||||
|
|
||||||
|
|
||||||
|
\path (R21) edge (C22);
|
||||||
|
\path (R21) edge (C31);
|
||||||
|
|
||||||
|
\path (R22) edge (C21);
|
||||||
|
\path (R22) edge (C22);
|
||||||
|
\path (R21) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway,
|
||||||
|
right = -0.3cm, fill=none]
|
||||||
|
{\contour{white}{$\alpha_{{\color{cyanind}\bullet}{\color{goldenyellow}\bullet}}$}} (C21);
|
||||||
|
|
||||||
|
\path (R22) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway, right = -0.6cm,
|
||||||
|
fill=none] {\contour{white}{$\alpha_{{\color{cyanind}\bullet}{\color{peach}\bullet}}$}} (C31);
|
||||||
|
|
||||||
|
\path (R31) edge[-,>=stealth',shorten
|
||||||
|
>=1pt,auto,draw=gray,line width=1.5pt, fill=gray, opacity=1] node[midway,
|
||||||
|
right=-0.4cm, fill=none]
|
||||||
|
{\contour{white}{$\alpha_{{\color{electricblue}\bullet}{\color{peach}\bullet}}$}} (C31);
|
||||||
127
tikz/moving-window.tex
Normal file
127
tikz/moving-window.tex
Normal file
|
|
@ -0,0 +1,127 @@
|
||||||
|
\definecolor{mypurple}{RGB}{128,0,128}
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\tikzstyle{model}=[circle,draw=none,fill=gray, thick]
|
||||||
|
\tikzstyle{split}=[>=stealth,->, thick, draw=blueind]
|
||||||
|
\tikzstyle{merge}=[>=stealth,->,thick, draw=red]
|
||||||
|
\draw[step=1cm, help lines] (-2,-2) grid (2,2);
|
||||||
|
\onslide<1-7>{
|
||||||
|
\node[model] (mode) at (0,0) {{\color{red}X}};
|
||||||
|
}
|
||||||
|
|
||||||
|
% Axes
|
||||||
|
\draw[>=to,->,thick] (-2,-2) -- +(1,0);
|
||||||
|
\node[font=\small, fill=none] (Q_1) at (-0.75,-2) {$Q_1$};
|
||||||
|
\draw[>=to,->,thick] (-2,-2) -- +(0,1);
|
||||||
|
\node[font=\small, fill=none] (Q_2) at (-2,-0.75) {$Q_2$};
|
||||||
|
|
||||||
|
\onslide<2-8>{
|
||||||
|
\draw[color=red, line width=1pt] (-1.5,-1.5) rectangle ++(3,3);
|
||||||
|
}
|
||||||
|
\onslide<3>{
|
||||||
|
\node[model] (bottom_left) at (-1,-1) {};
|
||||||
|
\node[model, opacity=0.6] (row_1) at (0,-1) {};
|
||||||
|
\node[model, opacity=0.6] (col_1) at (-1,0) {};
|
||||||
|
|
||||||
|
\draw[split] (bottom_left) -- (col_1);
|
||||||
|
\draw[split] (-1.75,0) -- (col_1);
|
||||||
|
\draw[split] (bottom_left) -- (row_1);
|
||||||
|
\draw[split] (0,-1.75) -- (row_1);
|
||||||
|
}
|
||||||
|
\onslide<4-7>{
|
||||||
|
\node[model] (bottom_left) at (-1,-1) {};
|
||||||
|
\node[model, draw=blueind] (row_1) at (0,-1) {};
|
||||||
|
\node[model, draw=blueind] (col_1) at (-1,0) {};
|
||||||
|
}
|
||||||
|
\onslide<4>{
|
||||||
|
\node[model, opacity=0.6] (row_2) at (1,-1) {};
|
||||||
|
\node[model, opacity=0.6] (col_2) at (-1,1) {};
|
||||||
|
|
||||||
|
\draw[split] (col_1) -- (col_2);
|
||||||
|
\draw[split] (-1.75,1) -- (col_2);
|
||||||
|
\draw[split] (row_1) -- (row_2);
|
||||||
|
\draw[split] (1,-1.75) -- (row_2);
|
||||||
|
\draw[split] (row_1) -- (mode);
|
||||||
|
\draw[split] (col_1) -- (mode);
|
||||||
|
}
|
||||||
|
\onslide<5-7>{
|
||||||
|
\node[model, draw=blueind] (row_2) at (1,-1) {};
|
||||||
|
\node[model, draw=blueind] (col_2) at (-1,1) {};
|
||||||
|
\node[model, draw=blueind] (mode) at (0,0) {{\color{red}X}};
|
||||||
|
}
|
||||||
|
\onslide<5>{
|
||||||
|
\node[model, opacity=0.6] (row_3) at (1,0) {};
|
||||||
|
\node[model, opacity=0.6] (col_3) at (0,1) {};
|
||||||
|
|
||||||
|
\draw[split] (col_2) -- (col_3);
|
||||||
|
\draw[split] (row_2) -- (row_3);
|
||||||
|
\draw[split] (mode) -- (row_3);
|
||||||
|
\draw[split] (mode) -- (col_3);
|
||||||
|
}
|
||||||
|
\onslide<6-7>{
|
||||||
|
\node[model, draw=blueind] (row_3) at (1,0) {};
|
||||||
|
\node[model, draw=blueind] (col_3) at (0,1) {};
|
||||||
|
}
|
||||||
|
\onslide<6>{
|
||||||
|
\node[model, opacity=0.6] (top_right) at (1,1) {};
|
||||||
|
\draw[split] (col_3) -- (top_right);
|
||||||
|
\draw[split] (row_3) -- (top_right);
|
||||||
|
}
|
||||||
|
\onslide<7>{
|
||||||
|
\node[model, draw=blueind] (top_right) at (1,1) {};
|
||||||
|
}
|
||||||
|
\onslide<8>{
|
||||||
|
\node[model, draw=mypurple] (top_right) at (1,1) {};
|
||||||
|
\node[model, draw=mypurple] (row_3) at (1,0) {};
|
||||||
|
\node[model, draw=mypurple] (col_3) at (0,1) {};
|
||||||
|
\node[model, draw=mypurple] (row_2) at (1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_2) at (-1,1) {};
|
||||||
|
\node[model, draw=mypurple] (mode) at (0,0) {{\color{red}X}};
|
||||||
|
\node[model, draw=red] (bottom_left) at (-1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (row_1) at (0,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_1) at (-1,0) {};
|
||||||
|
|
||||||
|
\draw[merge] (1,1.75) -- (top_right);
|
||||||
|
\draw[merge] (1.75,1) -- (top_right);
|
||||||
|
\draw[merge] (0,1.75) -- (col_3);
|
||||||
|
\draw[merge] (1.75,0) -- (row_3);
|
||||||
|
\draw[merge] (1.75,-1) -- (row_2);
|
||||||
|
\draw[merge] (-1,1.75) -- (col_2);
|
||||||
|
|
||||||
|
\draw[merge] (top_right) -- (col_3);
|
||||||
|
\draw[merge] (top_right) -- (row_3);
|
||||||
|
\draw[merge] (col_3) -- (col_2);
|
||||||
|
\draw[merge] (row_3) -- (row_2) ;
|
||||||
|
\draw[merge] (row_3) -- (mode);
|
||||||
|
\draw[merge] (col_3) -- (mode);
|
||||||
|
\draw[merge] (col_2) --(col_1);
|
||||||
|
\draw[merge] (row_2) -- (row_1);
|
||||||
|
\draw[merge] (mode) -- (row_1);
|
||||||
|
\draw[merge] (mode) -- (col_1);
|
||||||
|
\draw[merge] (col_1) -- (bottom_left);
|
||||||
|
\draw[merge] (row_1) -- (bottom_left);
|
||||||
|
}
|
||||||
|
\onslide<9>{
|
||||||
|
\node[model, draw=mypurple] (top_right) at (1,1) {};
|
||||||
|
\node[model, draw=mypurple] (new_mode) at (1,0) {{\color{red}X}};
|
||||||
|
\node[model, draw=mypurple] (col_3) at (0,1) {};
|
||||||
|
\node[model, draw=mypurple] (row_2) at (1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_2) at (-1,1) {};
|
||||||
|
\node[model, draw=mypurple] (old_mode) at (0,0) {};
|
||||||
|
\node[model, draw=red] (bottom_left) at (-1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (row_1) at (0,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_1) at (-1,0) {};
|
||||||
|
}
|
||||||
|
\onslide<10>{
|
||||||
|
\draw[color=red, line width=1pt] (-0.5,-1.5) rectangle ++(3,3);
|
||||||
|
|
||||||
|
\node[model, draw=mypurple] (top_right) at (1,1) {};
|
||||||
|
\node[model, draw=mypurple] (new_mode) at (1,0) {{\color{red}X}};
|
||||||
|
\node[model, draw=mypurple] (col_3) at (0,1) {};
|
||||||
|
\node[model, draw=mypurple] (row_2) at (1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_2) at (-1,1) {};
|
||||||
|
\node[model, draw=mypurple] (old_mode) at (0,0) {};
|
||||||
|
\node[model, draw=red] (bottom_left) at (-1,-1) {};
|
||||||
|
\node[model, draw=mypurple] (row_1) at (0,-1) {};
|
||||||
|
\node[model, draw=mypurple] (col_1) at (-1,0) {};
|
||||||
|
}
|
||||||
|
\end{tikzpicture}
|
||||||
7
tikz/network.tex
Normal file
7
tikz/network.tex
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
\draw[thick]
|
||||||
|
(-0.5,0) node[vertex] (n1^4) {}
|
||||||
|
-- (0.25,2.2) node[vertex] (n2^4) {}
|
||||||
|
-- (2,1.6) node[vertex] (n3^4) {}
|
||||||
|
-- (-0.7,1.4) node[vertex] (n4^4) {}
|
||||||
|
-- (-0.9,1.0) node[vertex] (n5^4) {}
|
||||||
|
-- (0.8,1.2) node[vertex] (n6^4) {} -- cycle;
|
||||||
38
tikz/plantpollinatornetwork.tex
Normal file
38
tikz/plantpollinatornetwork.tex
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
\tikzstyle{every edge}=[-,>=stealth',shorten >=1pt,auto,thin,draw]
|
||||||
|
\tikzstyle{every state}=[draw, text=white,scale=0.70, font=\scriptsize, transform shape]
|
||||||
|
|
||||||
|
% Upper level
|
||||||
|
\tikzstyle{every state}=[draw=none,text=white,scale=0.55, font=\scriptsize, transform shape]
|
||||||
|
% premier cluster
|
||||||
|
\tikzstyle{every node}=[fill=green!50!blue!20!white]
|
||||||
|
\node[state] (N1) at (1.1,3) {\includegraphics[width=.15\textwidth]{pollen.png}};
|
||||||
|
\node[state, right = of N1] (N2) {\includegraphics[width=.15\textwidth]{pollen.png}}; % at (.75,3)
|
||||||
|
\node[state, right = of N2] (N3) {\includegraphics[width=.15\textwidth]{pollen.png}}; % at (1.5,3)
|
||||||
|
\node[state, right = of N3] (N4) {\includegraphics[width=.15\textwidth]{pollen.png}}; % at (2.25,3)
|
||||||
|
% \node[state] (N5) at (3,3) {\includegraphics[width=.1\textwidth]{pollen.png}};
|
||||||
|
% \node[state] (N6) at (3.75,3) {\includegraphics[width=.1\textwidth]{pollen.png}};
|
||||||
|
|
||||||
|
\tikzstyle{every node}=[shape=rectangle,fill=red!50!blue!20!white]
|
||||||
|
% \node[state, fill = white] (P) at (-1.5, 0) {\includegraphics[width=.08\textwidth]{bee.png}};
|
||||||
|
\node[state, tokens=0] (P1) at (-1, 0) {\includegraphics[width=.1\textwidth]{bee.png}};
|
||||||
|
\node[state, tokens=0, right = of P1] (P2) {\includegraphics[width=.1\textwidth]{bee.png}}; % at (-.25, 0)
|
||||||
|
\node[state, tokens=0, right = of P2] (P3) {\includegraphics[width=.1\textwidth]{bee.png}}; %at (.5, 0)
|
||||||
|
\node[state, tokens=0, right = of P3] (P4) {\includegraphics[width=.1\textwidth]{bee.png}}; % at (1.25, 0)
|
||||||
|
\node[state, tokens=0, right = of P4] (P5) {\includegraphics[width=.1\textwidth]{bee.png}};% at (2,0)
|
||||||
|
\node[state, tokens=0, right = of P5] (P6) {\includegraphics[width=.1\textwidth]{bee.png}}; % at (2.75,0)
|
||||||
|
% \node[state, tokens=0] (P7) at (3.5,0) {\includegraphics[width=.1\textwidth]{bee.png}};
|
||||||
|
% \node[state, tokens=0] (P8) at (4.25,0) {\includegraphics[width=.1\textwidth]{bee.png}};
|
||||||
|
|
||||||
|
\tikzstyle{every edge}=[>=stealth,shorten >=1pt,auto,thin,draw]
|
||||||
|
\path (P1) edge (N1);
|
||||||
|
\path (P2) edge (N1);
|
||||||
|
\path (P3) edge (N1);
|
||||||
|
\path (P4) edge (N2);
|
||||||
|
\path (P4) edge (N1);
|
||||||
|
\path (P6) edge (N2);
|
||||||
|
\path (P1) edge (N3);
|
||||||
|
%\path (P7) edge (N4);
|
||||||
|
%\path (P8) edge (N5);
|
||||||
|
%\path (P4) edge (N6);
|
||||||
|
\path (P5) edge (N3);
|
||||||
|
\path (P5) edge (N4);
|
||||||
Loading…
Add table
Reference in a new issue