\section{Model Context} \label{sec:context-of-the-model} \begin{frame} \frametitle{Why a network?} \begin{columns} \begin{column}{0.5\textwidth} \begin{columns} \begin{column}{0.5\textwidth} \begin{figure}[ht] \centering \begin{tikzpicture}[scale=.6,rotate=270] \input{tikz/plantpollinatornetwork.tex} \end{tikzpicture} \caption{Example of a network} \label{fig:plants-pollin} \end{figure} \end{column} \begin{column}{0.3\textwidth} \centering \begin{align*} \begin{pmatrix} 1 & 0 & 1 \\ 1 & 0 & 0 \\ 1 & 0 & 0 \\ 1 & 1 & 0 \end{pmatrix} \end{align*} \footnotesize Associated adjacency matrix \end{column} \end{columns} \begin{figure}[ht] \centering \includegraphics[width=0.7\textwidth]{tikz/applications/baldock/graph-Baldock2019_Bristol.pdf} \caption{Plant-pollinator network of Bristol\newline\cite{baldockSystemsApproachReveals2019}} \label{fig:label} \end{figure} \end{column} \begin{column}{0.5\textwidth} \begin{itemize} \item Modeling of various interactions, here ecosystems \item Structure necessary for: biodiversity monitoring, robustness, risk of collapse \item Increasingly available \end{itemize} \end{column} \end{columns} \end{frame} \begin{frame}{Analysis methods for a network} Several methods~: \begin{itemize} \item Metrics~: degree, centrality, nesting \dots \item Network embedding with GNN \item \textbf<2>{\emph{Clustering} of nodes with latent variable models} \end{itemize} \end{frame} \begin{frame} \addtocounter{footnote}{1} \frametitle{Latent Block Model (LBM\footnotemark[\thefootnote])} %DONE remplacer i \in bullet par Zi = \bullet \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{Example of LBM\footnotemark[\thefootnote]} \label{fig:LBMvisu} \end{figure} \end{column} \only<1>{ \begin{column}{0.51\linewidth} \begin{block}{Hierarchical model} \vspace{-\baselineskip} \begin{align*} \forall q\in[\![ 1, Q_1]\!],~ & \mathbb{P}(Z_i = q) = \pi_q \\ \forall r\in[\![ 1, Q_2]\!],~ & \mathbb{P}(W_j = r) = \rho_r \\ & Y_{ij} | Z_i, W_j \sim \mathcal{F}(\alpha_{Z_i,W_j}) \end{align*} where $|\pi| = Q_1, |\rho| = Q_2, |\alpha| = Q_1 \times Q_2$ \end{block} \begin{block}{Concise LBM formula} $Y \sim \mathcal{F}\text{-BiSBM}_{n_1,n_2}(Q_1, Q_2, \pi, \rho, \alpha)$ \end{block} \end{column}} \only<2>{ \begin{column}{0.51\linewidth} With \begin{itemize} \item $Q_1 = |\{{\color{blueind}\bullet},{\color{cyanind}\bullet},{\color{electricblue}\bullet}\}|$ fixed row blocks \item $Q_2 = |\{{\color{burntorange}\bullet},{\color{goldenyellow}\bullet},{\color{peach}\bullet}\}|$ fixed column blocks \end{itemize} \begin{block}{Parameters} \begin{itemize} \item $\pi_{{\color{blueind}\bullet}} = \mathbb{P}(Z_i = {\color{blueind}\bullet})$ \item $\rho_{{\color{burntorange}\bullet}} = \mathbb{P}(W_j = {\color{burntorange}\bullet})$ \item $\alpha_{{\color{blueind}\bullet}{\color{burntorange}\bullet}} = \mathbb{P}(Y_{ij} = 1 | Z_i = {\color{blueind}\bullet}, W_j = {\color{burntorange}\bullet})$ \end{itemize} \end{block} \end{column}} \end{columns} \footnotetext[\thefootnote]{Which I will henceforth call BiSBM} \end{frame} \begin{frame} \frametitle{Multiple networks} \begin{figure}[ht] \centering \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/mat-Baldock2019_Bristol.pdf} \caption{Bristol} \end{subfigure} \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/mat-Baldock2019_Edinburgh.pdf} \caption{Edinburgh} \end{subfigure} \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/mat-Baldock2019_Leeds.pdf} \caption{Leeds} \end{subfigure} \caption{Adjacency matrices,~\cite{baldockSystemsApproachReveals2019}} \label{fig:adj} \end{figure} \end{frame} \section[Bipartite collection models]{Bipartite network collection models} \label{sec:extension-of-colsbm-to-bipartite-networks} \begin{frame} \frametitle{Bipartite collections} \[ \forall m \in \{1\dots M\}, Y^m \overset{ind}{\sim} \mathcal{F}\text{-BiSBM}_{n_1^m,n_2^m}(Q_1^m, Q_2^m, \pi^m, \rho^m, \alpha^m) \] \onslide<2>{ \begin{figure}[ht] \centering \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/bisbm-mat-Baldock2019_Bristol.pdf} \caption{Bristol} \end{subfigure} \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/bisbm-mat-Baldock2019_Edinburgh.pdf} \caption{Edinburgh} \end{subfigure} \begin{subfigure}[ht]{0.3\textwidth} \includegraphics[width=1.1\textwidth]{tikz/applications/baldock/bisbm-mat-Baldock2019_Leeds.pdf} \caption{Leeds} \end{subfigure} \caption{Reordered adjacency matrices, thanks to LBM} \label{fig:adj-reord} \end{figure} } \end{frame} \begin{frame} \frametitle{Different models} \onslide<1->{ \begin{block}{\emph{iid}-colBiSBM} \[ \forall m \in \{1\dots M\}, Y^m \overset{iid}{\sim} \mathcal{F}\text{-BiSBM}_{n_1^m,n_2^m}(Q_1, Q_2, \pi, \rho, \alpha) \] with $\theta = (\pi, \rho, \alpha)$. \end{block}} \onslide<2>{ \begin{block}{$\pi\rho$-colBiSBM} \[ \forall m \in \{1\dots M\}, Y^m \overset{ind}{\sim} \mathcal{F}\text{-BiSBM}_{n_1^m,n_2^m}(Q_1, Q_2, \pi^m, \rho^m, \alpha) \] with $\theta = ((\pi^m)_{m=1,\dots, M}, (\rho^m)_{m=1,\dots, M}, \alpha)$. \end{block} } \end{frame} \begin{frame} \frametitle{Parameter estimation} % DONE say that tau i q m c' is the probability that Zim = q, approximation of the variational probability. Because we impose independence % By maximizing a variational lower bound of the % log-likelihood of the observed data. Maximizing the log-likelihood? \begin{block}{log-likelihood and complete log-likelihood} \[ \ell(\bm{Y};\theta) = \sum_{\bm{Z,W}\in \bm{\mathcal{Z}\times\mathcal{W}}} \ell_c(\bm{Y}, \bm{Z}, \bm{W};\theta) \] with $\bm{\mathcal{Z}} = \{1,\dots,\alert<2>{Q_1}\}^{\alert<2>{n}}, \bm{\mathcal{W}} = \{1,\dots,\alert<2>{Q_2}\}^{\alert<2>{n}}$ \end{block} \uncover<3>{So, classic algorithm $\Rightarrow$ \emph{Expectation-Maximization} (EM).} \end{frame} \begin{frame} \frametitle{By classic EM} At iteration $(t)$: \begin{itemize} \item[$\bullet$]\textbf{E Step}: calculate $$ \mathcal{Q}(\theta | \theta^{(t-1)}) = \mathbb E_{\alert<2>{\bm Z, \bm W | \bm Y, \theta^{(t-1)}} } \left[\ell_c(\bm Y, \bm W, \bm Z; \theta) \right] $$ \item[$\bullet$]\textbf{M Step}: $$ \theta^{(t)} = \arg \max_{\theta} \mathcal{Q}(\theta | \theta^{(t-1)})$$ \end{itemize} \uncover<2>{ \begin{alertblock}{Problem for classic EM} Law of $\bm{Z,W|Y},\theta^{(t-1)}$ inaccessible \end{alertblock}} \end{frame} \begin{frame} By \emph{Variational EM}, as proposed by~\cite{daudinMixtureModelRandom2008, chabert-liddellLearningCommonStructures2024}. \begin{block}{Variational approximation of $\bm{Z,W|Y},\theta^{(t-1)}$} $\mathcal{R}_{Y^m,\tau}(\mathbf{Z}^m, \mathbf{W}^m) = \mathcal{R}^1_{Y^m,\tau}(\mathbf{Z}^m) {\color{red}\times} \mathcal{R}^2_{Y^m,\tau}(\mathbf{W}^m) \Rightarrow$ independence rows, columns. \end{block} \begin{multline*} \ell (\bm{Y};\theta) \geq \color{red}\sum_{m=1}^{M} \bigg( \color{black} \mathcal{Q}^m(\theta\mid\theta^{(t)}) + \mathcal{H}(\mathcal{R}_{Y^m,\theta^{(t)}} (\mathbf{Z}^m, \mathbf{W}^m)) \color{red}\bigg) \color{black} \eqcolon \mathcal{J}(\tau;\theta) \end{multline*} where $\mathcal{Q}^m(\theta\mid\theta^{(t)}) = \mathbb{E}_{\mathbf{Z}^m,\mathbf{W}^m \sim \mathcal{R}_{Y^m,\tau}(.)} \left[ \ell_c(Y^m,\mathbf{Z}^m,\mathbf{W}^m | \theta) \right] \,$ \end{frame} \begin{frame}{Developed formula of variational EM} \begin{multline*} \ell (\bm{Y};\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(Y^{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} \eqcolon \mathcal{J}(\tau;\theta), \end{multline*} \begin{block}{Variational approximation} $\tau_{iq}^{1,m} = \mathcal{R}^1_{Y^m,\tau}(Z_{iq}^m = 1)$ and $\tau_{jr}^{2,m} = \mathcal{R}^2_{Y^m,\tau}(W_{jr}^m = 1)$ \end{block} \end{frame} \begin{frame}{\emph{Variational Expectation} Step} \[ \widehat{\tau}^{(t+1)} = \arg \max_{\tau} \mathcal{J}(\mathcal{\tau},\bm{\widehat{\theta}}^{(t)}) \Leftrightarrow \arg\min_{\tau\in\mathcal{T}} \mathbf{KL}[\mathcal{R}_{\mathbf{Y},\tau}, \mathbb{P}(.|\mathbf{Y})] \] \begin{equation*} \begin{cases} \widehat{\tau}_{iq}^{1,m} \propto \widehat{\pi}_{q}^{m(t)} \prod_{j=1}^{n_2^m}\prod_{r\in\mathcal{Q}_2^m} f(Y_{ij}^m;\widehat{\alpha}_{qr}^{(t)})^{\widehat{\tau}_{jr}^{2,m(t+1)}} & \forall i = 1, \dots , n_1^m, q \in \mathcal{Q}_1^m \\ \widehat{\tau}_{jr}^{2,m} \propto \widehat{\rho}_{r}^{m(t)} \prod_{i=1}^{n_1^m}\prod_{q\in\mathcal{Q}_1^m} f(Y_{ij}^m;\widehat{\alpha}_{qr}^{(t)})^{\widehat{\tau}_{iq}^{1,m(t+1)}} & \forall j = 1, \dots , n_2^m, r \in \mathcal{Q}_2^m \end{cases} \end{equation*} \footnotetext[2]{Initialization of $\widehat{\tau}$ with a \emph{spectral clustering} on the networks.} \end{frame} \begin{frame}{\emph{Maximization} Step} \[ \widehat{\theta}^{(t+1)} = \arg \max_{\theta} \mathcal{J}(\mathcal{\bm{\widehat{\tau}}}^{(t+1)},\theta) \] \begin{block}{Connectivity parameters} \begin{align*} \widehat{\alpha}_{qr} = \frac{\sum_{m=1}^{M} \sum_{i=1}^{n_1^m} \sum_{j=1}^{n_2^m} \tau_{iq}^{1,m} \tau_{jr}^{2,m} \alert<2>{Y_{ij}^m}}{\sum_{m=1}^{M} \sum_{i=1}^{n_1^m} \sum_{j=1}^{n_2^m} \tau_{iq}^{1,m} \tau_{jr}^{2,m}} \end{align*} \end{block} \only<1>{ \begin{block}{Proportions for \emph{iid}} \begin{align*} \widehat{\pi}_q = \frac{\sum_{m=1}^{M} \sum_{i=1}^{n_1^m} \tau_{iq}^{1,m}}{\sum_{m=1}^{M} n_1^m} & & \widehat{\rho}_r = \frac{\sum_{m=1}^{M} \sum_{j=1}^{n_2^m} \tau_{jr}^{2,m}}{\sum_{m=1}^{M} n_2^m} \end{align*} \end{block} } \only<2>{ \begin{block}{Proportions for $\pi\rho$} \begin{align*} \widehat{\pi}^{\color{red}m}_q = \frac{\sum_{i=1}^{n_1^m} \tau_{iq}^{1,m}}{n_1^m} & & \widehat{\rho}^{\color{red}m}_r = \frac{\sum_{j=1}^{n_2^m} \tau_{jr}^{2,m}}{n_2^m} \end{align*} \end{block} } \end{frame} \section{Model selection} \begin{frame} \frametitle{Problem of choosing $(Q_1, Q_2)$} Need to select $Q_1$ and $Q_2$. BIC-Like criterion\footnote{ICL + Entropy + penalty} \begin{align*} \text{BIC-L}(\bm{Y}, Q_1, Q_2) & = \max_{\theta} \mathbb{E}_{\mathcal{R}_{\mathbf{Y},\hat{\tau}}} [\ell_c(\bm{Y,Z,W};\theta)] + \mathcal{H(\mathcal{R}_{\mathbf{Y},\hat{\tau}})} - \frac{1}{2}\text{pen}(\theta, Q_1, Q_2) \\ & = \max_{\theta} \mathcal{J(\mathcal{R}_{\mathbf{Y},\hat{\tau}}, \theta)} - \frac{1}{2}\text{pen}(\theta, Q_1, Q_2) \end{align*} \begin{alertblock}{Exploration problems} \begin{itemize} \item Exploration of $\mathbb{N}^2$ costly. \item Sensitivity to initializations. \end{itemize} \end{alertblock} \end{frame} \begin{frame} \frametitle{Choice of $(Q_1,Q_2)$ - Greedy approach} \begin{columns} \begin{column}{0.5\linewidth} \begin{tikzpicture} \input{tikz/greedy-exploration.tex} \end{tikzpicture} \end{column} \begin{column}{0.35\linewidth} \begin{itemize} \item Initial model~:\\ \begin{tikzpicture} \draw[fill=gray, draw=gray] circle [radius=0.225cm]; \end{tikzpicture} \onslide<2->{ \item Model after \emph{split}~: \begin{tikzpicture} \draw[fill=blueind, draw=blueind] circle [radius=0.225cm]; \end{tikzpicture} \item Model maximizing the criterion~:\\ \begin{tikzpicture} \draw[fill=white, draw=green, very thick] circle [radius=0.225cm]; \end{tikzpicture} } \onslide<3->{ \item Model after \emph{merge}~: \begin{tikzpicture} \draw[fill=red, draw=red] circle [radius=0.225cm]; \end{tikzpicture} } \end{itemize} \end{column} \end{columns} \end{frame} \begin{frame} \frametitle{Choice of $(Q_1,Q_2)$ - Sliding window} \begin{columns} \begin{column}{0.6\textwidth} \begin{figure} \input{tikz/moving-window} \caption{Sliding window} \end{figure} \end{column} \begin{column}{0.4\textwidth} \only<3>{\begin{block}{} Initialization of the model if necessary \end{block}} \only<9>{\begin{block}{} Localization of the new mode \end{block}} \only<10>{\begin{block}{} Move to the new mode then iterate \end{block}} \end{column} \end{columns} \end{frame} \section{Application} \label{sec:application} \begin{frame} \frametitle{Results~\cite{baldockSystemsApproachReveals2019}} \only<1>{ \begin{figure}[ht] \centering \begin{subfigure}[t]{0.5\textwidth} \centering \includegraphics[width=0.45\textwidth]{tikz/applications/baldock/mat-Baldock2019_Bristol.pdf} \caption{Bristol} \end{subfigure}\hfil \begin{subfigure}[t]{0.5\textwidth} \centering \includegraphics[width=0.45\textwidth]{tikz/applications/baldock/mat-Baldock2019_Edinburgh.pdf} \caption{Edinburgh} \end{subfigure} \newline \begin{subfigure}[ht]{0.5\textwidth} \centering \includegraphics[width=0.5\textwidth]{tikz/applications/baldock/mat-Baldock2019_Leeds.pdf} \caption{Leeds} \end{subfigure}\hfil \begin{subfigure}[ht]{0.5\textwidth} \centering \includegraphics[width=0.5\textwidth]{tikz/applications/baldock/mat-Baldock2019_Reading.pdf} \caption{Reading} \end{subfigure} \caption{Adjacency matrices,~\cite{baldockSystemsApproachReveals2019}} \end{figure} } \only<2>{ \begin{figure}[ht] \centering \begin{subfigure}[t]{0.5\textwidth} \centering \includegraphics[width=0.45\textwidth]{tikz/applications/baldock/colbisbm-mat-Baldock2019_Bristol.pdf} \caption{Bristol} \end{subfigure}\hfil \begin{subfigure}[t]{0.5\textwidth} \centering \includegraphics[width=0.45\textwidth]{tikz/applications/baldock/colbisbm-mat-Baldock2019_Edinburgh.pdf} \caption{Edinburgh} \end{subfigure} \newline \begin{subfigure}[ht]{0.5\textwidth} \centering \includegraphics[width=0.5\textwidth]{tikz/applications/baldock/colbisbm-mat-Baldock2019_Leeds.pdf} \caption{Leeds} \end{subfigure}\hfil \begin{subfigure}[ht]{0.5\textwidth} \centering \includegraphics[width=0.5\textwidth]{tikz/applications/baldock/colbisbm-mat-Baldock2019_Reading.pdf} \caption{Reading} \end{subfigure} \caption{Reordered adjacency matrices by \emph{iid}-colBiSBM,~\cite{baldockSystemsApproachReveals2019}} \end{figure} } \end{frame} \begin{frame} \frametitle{Network clustering} \begin{figure}[ht] \includegraphics[width=0.45\textwidth]{tikz/applications/baldock/mat-Baldock2011_TB+Baldock2011_JN.pdf} \caption{Adjacency matrix,~\cite{baldockDailyTemporalStructure2011}} \end{figure} \end{frame} \begin{frame}[allowframebreaks] \frametitle{Application to~\cite{baldockDailyTemporalStructure2011, baldockSystemsApproachReveals2019}} \begin{figure}[t] \centering \begin{subfigure}{0.5\textwidth} \centering \includegraphics[scale=0.2,angle=-90]{backup-app-iid.png} \caption{Model $iid$} \end{subfigure}% ~ \begin{subfigure}{0.5\textwidth} \centering \includegraphics[scale=0.2,angle=-90]{backup-app-pirho.png} \caption{Model $\pi\rho$} \end{subfigure}% \caption{Partitioning of networks of~\cite{baldockDailyTemporalStructure2011, baldockSystemsApproachReveals2019}} \end{figure} \begin{figure}[t] \centering \begin{subfigure}{0.5\textwidth} \centering \includegraphics[scale=0.1]{backup-app-iid-struct1.png} \includegraphics[scale=0.2]{backup-app-iid-struct2.png} \caption{Model $iid$,\\ separate African network and English networks} \end{subfigure}% ~ \begin{subfigure}{0.5\textwidth} \centering \includegraphics[scale=0.2]{backup-app-pirho-struct.png} \caption{Model $\pi\rho$,\\ merge African and English networks} \end{subfigure}% \caption{Structures detected for networks of~\cite{baldockDailyTemporalStructure2011, baldockSystemsApproachReveals2019}} \end{figure} \end{frame} \begin{frame}{Clustering algorithm} \centering \vspace{0.25\baselineskip} \begin{tikzpicture}[scale=0.85] \input{tikz/clustering.tex} \end{tikzpicture} \[ D_{\mathcal{M}}(m,m') = \sum_{q = 1}^{Q_1} \sum_{r = 1}^{Q_2} \max(\widetilde{\pi}_{q}^{m}, \widetilde{\pi}_{q}^{m'}) \left( \widetilde{\alpha}_{qr}^{m} - \widetilde{\alpha}_{qr}^{m'}\right)^{2} \max(\widetilde{\rho}_{r}^{m}, \widetilde{\rho}_{r}^{m'}) \] \end{frame} \begin{frame}{Results} \begin{figure}[ht] \centering \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=1\textwidth]{tikz/applications/baldock/bisbm-mat-Baldock2011_TB+Baldock2011_JN.pdf} \caption{Reordered by LBM} \end{subfigure}\hfil \begin{subfigure}{0.5\textwidth} \centering \includegraphics[width=1\textwidth]{tikz/applications/baldock/pirho-colbisbm-mat-Baldock2011_TB+Baldock2011_JN.pdf} \caption{Reordered by $\pi\rho$-colBiSBM} \end{subfigure} \caption{Reordered adjacency matrix by $\pi\rho$-colBiSBM,~\cite{baldockDailyTemporalStructure2011}} \end{figure} \end{frame} \section{Conclusion} \label{sec:conclusion} \begin{frame} \frametitle{Conclusion and perspectives} % DONE Add a conclusion perspective slide % Recall models with clustering % Mention analysis of corrected networks for sampling % Link to the package \begin{block}{Capabilities} \begin{itemize} \item 4 models including 3 with flexibility on at least one of the dimensions (adaptability to data). \item Detect classic and less classic structures in an agnostic way. \item Partition a set of networks according to their structures. \end{itemize} \end{block} \end{frame} \begin{frame}{Perspectives} \begin{itemize} \item Investigate stability against randomness and local \emph{optima}. \item Proof of identifiability of the $\pi\rho$ model. \end{itemize} \begin{block}{Package and applications} \begin{itemize} \item Integration into the \texttt{colSBM} package, improvement of user interface and addition of ecologists' feedback \item CRAN publication \item Integrate the possibility of an additional criterion for clustering \item Apply clustering to data from \cite{pichonTellingMutualisticAntagonistic2024,doreRelativeEffectsAnthropogenic2021} \end{itemize} \end{block} \bigskip \centering Thank you for your attention~! \end{frame}