presentation-colbisbm/principal.tex
2025-05-16 11:04:57 +02:00

383 lines
No EOL
16 KiB
TeX

\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 from
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}
TODO (Supprimable) 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 different BiSBM}
\[
\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{Several joint 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}
And intermediate models freeing $\pi$ or $\rho$.
}
\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}{Parameter estimation}
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}
\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. \uncover<2->{$\rightarrow$ \textbf{Greedy
approach} and \textbf{sliding window}}
\item Sensitivity to initializations. \uncover<3->{$\rightarrow$ \textbf{Spectral
clustering} and \textbf{reuse of previous inits}}
\end{itemize}
\end{alertblock}
\end{frame}
\section{Application}
\label{sec:application}
\begin{frame}
\frametitle{Results~\cite{baldockSystemsApproachReveals2019}}
\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}
TODO Interesting structures detected, functional roles in the british networks.
\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.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}{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}.
\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 submission
\item Integrate the possibility of an additional criterion for clustering (e.g.
urbanization gradient~\cite{fisogniSeasonalTrajectoriesPlantpollinator2022})
\item Apply clustering to data from
\cite{pichonTellingMutualisticAntagonistic2024,doreRelativeEffectsAnthropogenic2021}
\end{itemize}
\end{block}
\bigskip
\centering
Thank you for your attention~!
\end{frame}