Stefan Sommer, University of Copenhagen
Faculty of Science, University of Copenhagen
Chalmers University, May, 2025
w/ Frank v.d. Meulen, Rasmus Nielsen, Christy Hipsley, Sofia Stoustrup, Libby Baker, Gefan Yang, Michael Severinsen
Villum foundation
Novo nordisk foundation
University of Copenhagen
Center for Computational Evolutionary Morphometrics
w/ Rasmus Nielsen
Brown. motion
Brown. motion
Brown. motion
Brown. motion
branch (independent children)
incorporate leaf observations \(x_{V_T}\) into probabilistic model:
\(p(X_t|x_{V_T})\)
Brown. motion
Brown. motion
Brown. motion
Brown. motion
1) What is a shape Brownian motion?
2) How do we condition the nonlinear process on shape observations?
3) How do we perform inference in the full model?
Stochastic processes that
shape \(s_0\)
shape \(s_1\)
stoch. evolution \(s_0\rightarrow s_1\)
Riemannian Brownian motion:
action: \(\phi.s=\phi\circ s\) (shapes)
\(\phi.s=s\circ\phi^{-1}\) (images)
\( \phi \)
\( \phi \) warp of domain \(\Omega\) (2D or 3D space)
landmarks: \(s=(x_1,\ldots,x_n)\)
curves: \(s: \mathbb S^1\to\mathbb R^2\)
surfaces: \(s: \mathbb S^2\to\mathbb R^3\)
\( \phi_t:[0,T]\to\mathrm{Diff}(\Omega) \) path of diffeomorphisms (parameter t)
LDDMM: Grenander, Miller, Trouve, Younes, Christensen, Joshi, et al.
Markussen,CVIU'07; Budhiraja,Dupuis,Maroulas,Bernoulli'10
Trouve,Vialard,QAM'12;Vialard,SPA'13;Marsland/Shardlow,SIIMS'17
Arnaudon,Holm,Sommer,IPMI'17; FoCM'18; JMIV'19
Arnaudon,v.d. Meulen,Schauer,Sommer'21
geodesic ODE
perturbed SDE
Shape process:
\[dX_t=K(X_t)\circ dW_t\]
Kernel matrix:
\[K(X_t)^i_j=k(x_i,x_j)\]
Infinite noise:
\[dX_t = Q^{1/2}(X_t) \circ dW_t\]
\(Q^{1/2}(X_t)v(x) =\\\qquad \int_{D} k^{Q^{1/2}}(X_t(x)+x,y) v(y) \, dy\)
\(X_t\) landmarks at time \(t\):
\[X_t=\begin{pmatrix}x_{1,t}\\y_{1,t}\\\vdots\\x_{n,t}\\y_{n,t}\end{pmatrix}\]
\(t=\frac12\)
\(t=3\)
\(X_t\) (no conditioning)
\(X_t|X_T=v\) (conditioned)
Delyon/Hu 2006:
\(\sigma\) invertible:
\(v\)
\(x_0\)
\(x_t\)
Jensen, Sommer 2021, 2022
Conditioning on hitting target \(v\) at time \(T>0\):
\[X_t|X_T=v\]
Ito stochastic process:
\[dx_t=b(t,x_t)dt\qquad\qquad\qquad\qquad\quad\\+\sigma(t,x_t)dW_t\]
True bridge:
\[dx^*_t=b(t,x^*_t)dt+a(t,x^*_t)\nabla_x\log \rho_t(x^*_t)dt\\+\sigma(t,x^*_t)dW_t\]
Score \(\nabla_x\log \rho_t\) intractable....
\[\rho_t(x)=p_{T-t}(v;x)\]
\[a(t,x)=\sigma(t,x)\sigma(t,x)^T\]
black: \(X_0\), red: \(v\)
Auxilary process:
\[d\tilde{x}_t=\tilde{b}(t,\tilde{x}_t)dt+\tilde{\sigma}(t,\tilde{x}_t)dW_t\]
Approximate bridge:
\[dx_t^\circ=b(t,x_t^\circ)dt+a(t,x_t^\circ)\nabla_x\log \tilde{\rho}_t(x_t^\circ)dt\\+\sigma(t,x_t^\circ)dW_t\]
E.g. linear process, score \(\nabla_x\log \tilde{\rho}_t\) is known in closed from
(almost) explicitly computable likelihood ratio:
\[\frac{d\mathbb P^*}{d\mathbb P^\circ}=\frac{\tilde{\rho}_T(v)}{\rho_T(v)}\Psi(x_t^\circ)\]
Backward filtering, forward guiding: van der Meulen, Schauer et al.
Ito stochastic process:
\[dx_t=b(t,x_t)dt+\sigma(t,x_t)dW_t\]
Bridge process:
\[dx^*_t=b(t,x^*_t)dt+a(t,x^*_t)\nabla_x\log \rho_t(x^*_t)dt\\+\sigma(t,x^*_t)dW_t\]
Score \(\nabla_x\log \rho_t\) intractable....
v.d. Meulen,Schauer,Arnaudon,Sommer,SIIMS'22
Bridge:
Leaf conditioning:
\(x_0\)
\(v\)
\(x_0\)
\(h\)
\(v_1\)
van der Meulen, Schauer'20; van der Meulen'22
Stoustrup, Nielsen, van der Meulen, Sommer
\(v_2\)
recursive,leaves to root
Backwards filter:
root to leaves
Forward guiding:
\(v\)
\(v_1\)
\(v_2\)
\(h\)
\(x_0\)
Brown. motion
Brown. motion
Brown. motion
Brown. motion
branch (independent children)
incorporate leaf observations \(x_{V_T}\) into probabilistic model:
\(p(X_t|x_{V_T})\)
Doob’s h-transform
\(h_s(x)=\prod_{t\in\mathrm{ch(s)}}h_{s\to t}(x)\)
conditioned process \(X^*_t\)
approximations \(\tilde{h}\)
guided process \(X^\circ_t\)
Messages:
Up:
Fuse:
v.d. Meulen,Schauer,Sommer,'25
sample parameters (e.g. kernel width, amplitude)
v.d. Meulen,Schauer,Arnaudon,Sommer,SIIMS'22
Severinsen, Hipsley, Nielsen, Sommer
Brown. motion
Brown. motion
Brown. motion
Brown. motion
1) What is a shape Brownian motion?
2) How do we condition the nonlinear process on shape observations?
3) How do we perform inference in the full model?
Severinsen, Hipsley, Nielsen, Sommer
Train a neural network to learn the score in the bridge SDE:
\[dx^*_t=b(t,x^*_t)dt+a(t,x^*_t)\nabla_x\log \rho_t(x^*_t)dt\\+\sigma(t,x^*_t)dW_t\]
Markussen,CVIU'07; Budhiraja,Dupuis,Maroulas,Bernoulli'10
Trouve,Vialard,QAM'12;Vialard,SPA'13;Marsland/Shardlow,SIIMS'17
Arnaudon,Holm,Sommer,IPMI'17; FoCM'18; JMIV'19
Arnaudon,v.d. Meulen,Schauer,Sommer'21
Diffusion mean
Most probable paths
Eltzner, Huckemann, Grong, Corstanje,van der Meulen,Schauer,Sommer et al.
Manifold bridges
Jax magic... in milliseconds:
JaxGeometry: https://github.com/computationalevolutionarymorphometry/jaxgeometry CCEM: http://www.ccem.dk
Hyperiax: https://github.com/computationalevolutionarymorphometry/hyperiax slides: https://slides.com/stefansommer
References: