these-recap-hebdo/suivi/2026-9/2026-9.qmd
Louis 49582515cd
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Adding notebook on benchmark for LBM sequential
2026-02-24 17:37:51 +01:00

133 lines
No EOL
5.4 KiB
Text

---
title: "Bilan semaine 9 2026 : 23 février - 27 février"
categories: [colBiSBM, inférence, GNN]
date: 2026 02 23
date-modified: last-modified
bibliography: references.bib
# from: markdown+latex_macros
---
{{< include /_macros.tex >}}
## TODO List
- Petites opérations sur les OTUs (regarder la matrice dans les yeux):
- Ranger les OTUs par variances (i.e. `sd(OTU_j)`)
- HMC sur-dispersés (au-dessus bissectrice)
- Enterotype phyloseq sous-disp
- Regarder la proportion de 1. taxon rares, 2. zeros.
- Faire des coupures selon niveaux taxonomiques et regarder si $\Var_{\text{intra}} \approx \Var_{\text{inter}}$
- *Bonus*: faire ça dans qmd et voir si forge permet gitlab pages
- ✅ Avec blockmodels, codé un LBM-Séquentiel. *Des différences contrastées...*
- [Lien vers l'application du LBM séquentiel sur les données de Chaillou](analysis_benchmark_lbm_seq.html)
- Relire @peixotoHierarchicalBlockStructures2014
- Regarder les gens qui citent les travaux de Peixoto
- Utiliser graphtools en initialisant la recherche Nested avec le partitionnement donné par l'arbre phylogénétique.
- ⌛ **En cours** Implémentation `blockmodels` LBM avec covariables sur proportions (voir @eq-modele-covar-prop)
:::{.callout-note title="Idées"}
- Trouver manière de faire un compromis : $\ell(Y,Z,W;\theta) - \lambda d(C(W),C_0)$ avec $C(W)$ le clustering seulement sur la base de la structure LBM et $C_0$ le clustering de l'arbre. Problème $d$ est une distance entre partition, comment optimiser dessus ?
- ⌛ Mise à jour partielle des $\tau$ : ce qui pose soucis c'est les gros calculs matriciels (c'est vraiment vrai?). Donc sorte de "stochastic" VEM où on update seulement une partie des $\tau$ à chaque itération. Et échantillonnage stratifié selon l'arbre ?
- ⌛ Simulations avec $n_2$ croissant lancée sur Migale
- Réimplementé VE Bernoulli dans colSBM pour Bipartite et début implémentation Stochastic VE. En fait le problème des calculs matriciels $Y\times(\tau^{(1)})^{\top}$ ($n_2^2$) donc besoin de sous-échantillonner les noeuds de l'autre dimension à mettre à jour.
:::
- Clustering unipartite j'ai cassé une fonction de distance à vérifier et réparer
- Codes pour le papier :
- Nettoyer les scripts
- Faire un joli README
- ❓Faire des notebooks
- Réussir à reproduire résultat de @abramovStructureKnowsBest
- Maitriser graphtools de Peixoto pour essayer d'utiliser l'arbre taxonomique sur graphe de cooccurence inférer par SparCC
- Maitriser SparCC
- 👶 (délégué à Mona) Clustering sur Doré :
- Ajouter Chao1 et 2, colonne par colonne (site par site), et faire indice moyen et la variance.
### Inférence et microbes
- ⌛ (En cours) Possible en modifiant lbm.h et sbm.h d'obtenir un modèle utilisant les covariables de groupes (de blocs ?).
Car besoin de changer `membership.m_step()` pour mettre à jour $\pmb\pi$ et $\pmb{\rho}$ en utilisant les $\pmb B^{\top}\pmb X$
et en renvoyant l'ELBO adaptée.
- 😄 Avantage s'inscrit directement dans blockmodels et permet d'avoir toutes les lois d'émissions déjà codées et compatibles !
- 😢 Besoin de réfléchir a une bonne implémentation.
J'ai codé l'optimisation et les transferts mais il faut que je vérifie que tout fonctionne
- ✅ Appliqué multipartite sur $\forall i, OTU_i \times Sample$:
![Le plot des groupes trouvés par le multipartite (2 pour tous les OTUs et 4 pour les échantillons.)](figs/Multipartite.svg)
#### Bibliographie: à lire, à faire
- Lire article multi-niveaux Saint-Clair
- 🆕 🔎 Trouver des papiers:
- LBM Negative Binomial
- Network inference through sample comparison
- Idée des groupes sur la base de distance phylogénétique:
- En train de comprendre les distances que phyloseq permet de calculer sur notre exemple
- En train de lire sur Principle coordinate analysis : https://openplantpathology.github.io/OPP_Workshop_Multivariate/2-MV_PCO.html
- Parametric t-SNE pour avoir une unique représentation latente (inconvénient utilise du Deep Learning)
- Lire Papier UniFrac
#### Écrire et faire tourner
- 🆕 SparCC à différent niveaux
- 🆕⌛ Tree-PLN à différents niveaux
#### Causalité
Plus sur le temps long, à regarder
- GT causalité
- Daria Bystrova lire présentation @bystrovaCausalDiscovery (Meek rules, V-structure)
## A discuter
- 🆕 Voir pour des Réseaux / GDR ou aller
- 🆕 Chercher des cours à suivre
## Biblio à faire
- Regarder Transport optimal graphes bipartite.
## Lectures en cours 📚
### HDR Vincent Brault
- ⌛ Chap 2 : Creuser l'idée de maximiser l'énergie libre, très intéressant regarder le critère CARI et lire Robert et al 2021. Actuellement p32 du manuscrit
- Chap 3
### OT
- ⌛ @mazeletUnsupervisedLearningOptimal Intéressant pour le transport optimal entre graphes de tailles différentes | Regarder si regularization entropique ne marche pas bien pour le graphe.
- ⌛ @nennaLecture2Entropic Pour comprendre le problème d'OT régularisé pour l'entropie.
- ⌛ @nennaLecture1Monge
### Inférence de graphes
- ⌛ @aitchisonStatisticalAnalysisCompositional1982a, en cours
- ❗📖 @payneFiniteMixturesMultivariate2023 sur MixMPLN
### Causalité
- ❗📖 @bystrovaCausalDiscovery
### Largest Gaps
- ❗📖 @braultFastConsistentAlgorithm2023
- ❗📖 @channarondClassificationEstimationStochastic2012 le papier qui introduit le *Largest Gaps*