Polynomial Regression on Riemannian Manifolds
Polynomial Regression on Riemannian Manifolds
Polynomial Regression on Riemannian Manifolds
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong><br />
<strong>Riemannian</strong> <strong>Manifolds</strong><br />
Jacob Hinkle, Tom Fletcher, Sarang Joshi<br />
May 11, 2012<br />
arxiv:1201.2395
N<strong>on</strong>parametric <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g><br />
Number of parameters tied to amount of data present<br />
Example: kernel regressi<strong>on</strong> <strong>on</strong> images using diffeomorphisms<br />
(Davis2007)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 2
Parametric <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g><br />
Small number of parameters can be estimated more efficiently<br />
Fletcher 2011<br />
Geodesic regressi<strong>on</strong> (Niethammer2011, Fletcher2011) has<br />
recently received attenti<strong>on</strong>.<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 3
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g><br />
0.04<br />
0.035<br />
0.03<br />
0.025<br />
Dependent Variable<br />
0.02<br />
0.015<br />
0.01<br />
0.005<br />
0<br />
−0.005<br />
−0.01<br />
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1<br />
Independent Variable<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s provide a more flexible framework for parametric<br />
regressi<strong>on</strong> <strong>on</strong> <strong>Riemannian</strong> manifolds<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 4
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
∫ T<br />
Variati<strong>on</strong>al: γ = argmin ϕ 0 | ( ) k+1<br />
d 2<br />
dt<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
Geodesic (k = 1) has both forms<br />
γ = argmin ϕ<br />
∫ T<br />
0 | ˙ϕ(t)|2 dt<br />
∇ ˙γ ˙γ = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s γ(0), ˙γ(0)<br />
Well-studied (Fletcher, Younes, Trouve, …)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
Cubic spline satisfies (Noakes1989, Leite, Machado,…)<br />
∫ T<br />
γ = argmin ϕ 0 |∇ ˙ϕ ˙ϕ(t)| 2 dt<br />
Euler-Lagrange equati<strong>on</strong>: (∇ ˙γ ) 3 ˙γ = R( ˙γ, ∇ ˙γ ˙γ) ˙γ<br />
Shape splines (Trouve-Vialard)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
k-order polynomial satisfies<br />
(∇ ˙γ ) k ˙γ = 0<br />
subject to initial c<strong>on</strong>diti<strong>on</strong>s γ(0), (∇ ˙γ ) i ˙γ(0), i = 0, . . . , k − 1<br />
Introduced via rolling maps by Jupp&Kent1987<br />
Studied by Leite (2008), in rolling map setting<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
k-order polynomial satisfies<br />
(∇ ˙γ ) k ˙γ = 0<br />
subject to initial c<strong>on</strong>diti<strong>on</strong>s γ(0), (∇ ˙γ ) i ˙γ(0), i = 0, . . . , k − 1<br />
Introduced via rolling maps by Jupp&Kent1987<br />
Studied by Leite (2008), in rolling map setting<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
At least three ways to define polynomial in R d<br />
Algebraic: γ(t) = c 0 + 1 1! c 1t + 1 2! c 2t 2 + · · · + 1 k! c kt k<br />
Variati<strong>on</strong>al: γ = argmin ϕ<br />
∫ T<br />
0 | ( d<br />
dt<br />
) k+1<br />
2<br />
ϕ(t)| 2 dt s.t. BC/ICs<br />
Differential:<br />
( d<br />
) k+1 (<br />
dt γ(t) = 0 s.t. initial c<strong>on</strong>diti<strong>on</strong>s d<br />
) i<br />
dt γ(0) = ci<br />
Covariant derivative: replace d dt of vectors with ∇ ˙γ<br />
k-order polynomial satisfies<br />
(∇ ˙γ ) k ˙γ = 0<br />
subject to initial c<strong>on</strong>diti<strong>on</strong>s γ(0), (∇ ˙γ ) i ˙γ(0), i = 0, . . . , k − 1<br />
Introduced via rolling maps by Jupp&Kent1987<br />
Studied by Leite (2008), in rolling map setting<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 5
Rolling maps<br />
Leite 2008<br />
Unroll curve α <strong>on</strong> manifold to curve α dev <strong>on</strong> R d without twisting<br />
or slipping. Then<br />
(∇ ˙α ) k ˙α = 0 ⇐⇒<br />
( d<br />
dt<br />
) k<br />
˙α dev = 0<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 6
Rolling maps<br />
Leite 2008<br />
Unroll curve α <strong>on</strong> manifold to curve α dev <strong>on</strong> R d without twisting<br />
or slipping. Then<br />
(∇ ˙α ) k ˙α = 0 ⇐⇒<br />
( d<br />
dt<br />
) k<br />
˙α dev = 0<br />
Unknown whether this satisfies a variati<strong>on</strong>al principle<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 6
<strong>Riemannian</strong> <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g>s<br />
Generate via forward evoluti<strong>on</strong> of linearized<br />
system of first-order covariant ODEs<br />
Forward <str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> Evoluti<strong>on</strong><br />
repeat<br />
w ← v 1<br />
for i = 1, . . . , k − 1 do<br />
v i ← ParallelTransport γ (∆tw, v i + ∆tv i+1 )<br />
end for<br />
v k ← ParallelTransport γ (∆tw, v k )<br />
γ ← Exp γ (∆tw)<br />
t ← t + ∆t<br />
until t = T<br />
Parametrized by ICs:<br />
γ(0) positi<strong>on</strong><br />
v 1 (0) velocity<br />
v 2 (0) accelerati<strong>on</strong><br />
v 3 (0) jerk<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 7
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g><br />
(∇ ˙γ ) k ˙γ = 0 becomes linearized system<br />
˙γ = v 1<br />
∇ ˙γ v i = v i+1 i = 1, . . . , k − 1<br />
∇ ˙γ v k = 0.<br />
Want to find initial c<strong>on</strong>diti<strong>on</strong>s for this ODE that minimize<br />
E(γ) =<br />
N∑<br />
g i (γ(t i ))<br />
i=1<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 8
Lagrange multiplier (adjoint) vector fields λ i al<strong>on</strong>g γ:<br />
E ∗ (γ, {v i }, {λ i }) =<br />
N∑<br />
g i (γ(t i )) +<br />
i=1<br />
∑k−1<br />
+<br />
i=1<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈λ 0 , ˙γ − v 1 〉dt<br />
〈λ i , ∇ ˙γ v i − v i+1 〉dt +<br />
Euler-Lagrange for {λ i } gives forward system.<br />
Vector field integrati<strong>on</strong> by parts:<br />
∫ T<br />
0<br />
〈λ i , ∇ ˙γ v i 〉dt = [〈λ i , v i 〉] T 0 −<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈∇ ˙γ λ i , v i 〉dt<br />
〈λ k , ∇ ˙γ v k 〉dt<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 9
Lagrange multiplier (adjoint) vector fields λ i al<strong>on</strong>g γ:<br />
E ∗ (γ, {v i }, {λ i }) =<br />
N∑<br />
g i (γ(t i )) +<br />
i=1<br />
∑k−1<br />
+<br />
i=1<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈λ 0 , ˙γ − v 1 〉dt<br />
〈λ i , ∇ ˙γ v i − v i+1 〉dt +<br />
Euler-Lagrange for {λ i } gives forward system.<br />
Vector field integrati<strong>on</strong> by parts:<br />
∫ T<br />
0<br />
〈λ i , ∇ ˙γ v i 〉dt = [〈λ i , v i 〉] T 0 −<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈∇ ˙γ λ i , v i 〉dt<br />
〈λ k , ∇ ˙γ v k 〉dt<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 9
Rewrite using integrati<strong>on</strong> by parts<br />
E ∗ (γ, {v i }, {λ i }) =<br />
N∑<br />
g i (γ(t i )) +<br />
i=1<br />
∫ T<br />
∑k−1<br />
∑k−1<br />
+ [〈λ i , v i 〉] T 0 −<br />
i=1<br />
k−1 ∫ T<br />
∑<br />
−<br />
i=1<br />
0<br />
+ [〈λ k , v k 〉] T 0 −<br />
0<br />
〈λ 0 , ˙γ − v 1 〉dt<br />
i=1<br />
〈λ i , v i+1 〉dt<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈∇ ˙γ λ i , v i 〉dt<br />
〈∇ ˙γ λ k , v k 〉dt<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 10
Rewrite using integrati<strong>on</strong> by parts<br />
E ∗ (γ, {v i }, {λ i }) =<br />
N∑<br />
g i (γ(t i )) +<br />
i=1<br />
∫ T<br />
∑k−1<br />
∑k−1<br />
+ [〈λ i , v i 〉] T 0 −<br />
i=1<br />
k−1 ∫ T<br />
∑<br />
−<br />
i=1<br />
+ [〈λ k , v k 〉] T 0 −<br />
So variati<strong>on</strong> w.r.t. {v i } gives<br />
0<br />
0<br />
〈λ 0 , ˙γ − v 1 〉dt<br />
i=1<br />
〈λ i , v i+1 〉dt<br />
∫ T<br />
0<br />
∫ T<br />
δ vi E ∗ = 0 = −∇ ˙γ λ i − λ i−1<br />
δ vi (T )E ∗ = 0 = λ i (T )<br />
δ vi (0)E ∗ = −λ i (0)<br />
0<br />
〈∇ ˙γ λ i , v i 〉dt<br />
〈∇ ˙γ λ k , v k 〉dt<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 10
Variati<strong>on</strong> with respect to the curve γ:<br />
Let {γ s : s ∈ (−ɛ, ɛ)} a smooth family of curves, with:<br />
γ 0 = γ<br />
W (t) := d ds γ s(t)| s=0<br />
Extend v i , λ i away from curve via parallel transport:<br />
Then<br />
∫ T<br />
∇ W v i = 0<br />
∇ W λ i = 0<br />
0<br />
〈δ γ E ∗ (γ, {v i }, {λ i }), W 〉dt = d ds E∗ (γ s , {v i }, {λ i })| s=0<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 11
For any smooth family of curves γ s (t), we have<br />
[ d<br />
ds γ s(t), d dt γ s(t)]<br />
= [W, ˙γ s ] = 0<br />
so<br />
We also need the Leibniz rule<br />
∇ W ˙γ = ∇ ˙γ W.<br />
d<br />
ds 〈X, Y 〉| s=0 = 〈∇ W X, Y 〉 + 〈X, ∇ W Y 〉,<br />
And the Riemann curvature tensor<br />
R(X, Y )Z = ∇ X ∇ Y Z − ∇ Y ∇ X Z − ∇ [X,Y ] Z<br />
∇ W ∇ ˙γ Z = ∇ ˙γ ∇ W Z + R(W, ˙γ)Z<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 12
For first term, T 1 = ∫ T<br />
0 〈λ 0, γ˙<br />
s 〉dt<br />
d<br />
ds T 1(γ s )| s=0 = d ds<br />
=<br />
=<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈λ 0 , γ˙<br />
s 〉dt| s=0<br />
〈∇ W λ 0 , γ˙<br />
s 〉 + 〈λ 0 , ∇ W γ˙<br />
s 〉dt| s=0<br />
〈0, γ˙<br />
s 〉 + 〈λ 0 , ∇ ˙γ W 〉dt| s=0<br />
= [〈λ 0 , W 〉] T 0 −<br />
∫ T<br />
Variati<strong>on</strong> of this term with respect to γ is<br />
0<br />
δ γ(t) T 1 = −∇ ˙γ λ 0<br />
δ γ(T ) T 1 = 0 = λ 0 (T )<br />
δ γ(0) T 1 = −λ 0 (0)<br />
〈∇ ˙γ λ 0 , W 〉dt<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 13
Now do the same with another term T i<br />
d<br />
ds T i(γ s )| s=0 = d ds<br />
=<br />
∫ T<br />
0<br />
= 0 +<br />
= 0 +<br />
∫ T<br />
0<br />
〈λ i , ∇ ˙γ v i 〉dt<br />
〈∇ W λ i , ∇ ˙γ v i 〉 + 〈λ i , ∇ W ∇ ˙γ v i 〉dt<br />
∫ T<br />
0<br />
∫ T<br />
0<br />
〈λ i , ∇ ˙γ ∇ W v i + R(W, ˙γ)v i 〉dt<br />
〈R(λ i , v i ) ˙γ, W 〉dt<br />
where we used Bianchi identities to rearrange the curvature<br />
term. So<br />
δ γ(t) T i = R(λ i , v i ) ˙γ<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 14
Combine all terms to get adjoint equati<strong>on</strong>s<br />
N∑<br />
k∑<br />
∇ ˙γ λ 0 = δ(t − t i )(grad g i (γ(t))) + R(λ i , v i )v 1<br />
i=1<br />
i=1<br />
∇ ˙γ λ i = −λ i−1<br />
Initializati<strong>on</strong> for λ i at t = T is<br />
λ i (T ) = 0,<br />
Parameter gradients are<br />
δ γ(0) E = −λ 0 (0)<br />
δ vi (0)E = −λ i (0)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 15
Combine all terms to get adjoint equati<strong>on</strong>s<br />
N∑<br />
k∑<br />
∇ ˙γ λ 0 = δ(t − t i )(grad g i (γ(t))) + R(λ i , v i )v 1<br />
i=1<br />
i=1<br />
∇ ˙γ λ i = −λ i−1<br />
Initializati<strong>on</strong> for λ i at t = T is<br />
λ i (T ) = 0,<br />
Parameter gradients are<br />
δ γ(0) E = −λ 0 (0)<br />
δ vi (0)E = −λ i (0)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 15
Combine all terms to get adjoint equati<strong>on</strong>s<br />
N∑<br />
k∑<br />
∇ ˙γ λ 0 = δ(t − t i )(grad g i (γ(t))) + R(λ i , v i )v 1<br />
i=1<br />
i=1<br />
∇ ˙γ λ i = −λ i−1<br />
Initializati<strong>on</strong> for λ i at t = T is<br />
λ i (T ) = 0,<br />
Parameter gradients are<br />
δ γ(0) E = −λ 0 (0)<br />
δ vi (0)E = −λ i (0)<br />
Typically, g i (γ) = d(γ, y i ) 2 , so that<br />
(grad g i (γ)) = − Log γ y i<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 15
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g><br />
Algorithm<br />
repeat<br />
Integrate γ, {v i } forward to t = T<br />
Initialize λ i (T ) = 0, i = 0, . . . , k<br />
Integrate {λ i } via adjoint equati<strong>on</strong>s back to t = 0<br />
Gradient descent step:<br />
γ(0) n+1 = Exp γ(0) n(ɛλ 0 (0))<br />
v i (0) n+1 = ParTrans γ(0) n(ɛλ 0 (0), v i (0) n + ɛλ i (0))<br />
until c<strong>on</strong>vergence<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 16
Special Case: Geodesic (k = 1)<br />
Adjoint system is<br />
N∑<br />
∇ ˙γ λ 0 = δ(t − t i )(grad g i (γ(t))) + R(λ 1 , v 1 )v 1<br />
i=1<br />
∇ ˙γ λ 1 = −λ 0<br />
Between data points this is<br />
(∇ ˙γ ) 2 λ 1 = −R(λ 1 , ˙γ) ˙γ<br />
This is the Jacobi equati<strong>on</strong>, λ 1 is a Jacobi field.<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 17
Kendall Shape Space<br />
Space of N landmarks in d dimensi<strong>on</strong>s,<br />
R Nd , modulo translati<strong>on</strong>, scale, rotati<strong>on</strong><br />
Prevents skewed statistics due to<br />
similarity transformed data<br />
d = 2, complex projective space C P N−2<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 18
Kendall Shape Space Geometry<br />
(d = 2)<br />
Center point-set and scale so that ∑ N<br />
i=1 |x i| 2 = 1 (resulting<br />
object is called a preshape)<br />
Preshapes lie <strong>on</strong> sphere S 2N−1 , represented as vectors in<br />
(R 2 ) N = C N<br />
<strong>Riemannian</strong> submersi<strong>on</strong> from preshape to shape space:<br />
vertical directi<strong>on</strong> holds rotati<strong>on</strong>s of R 2<br />
Exp<strong>on</strong>ential and log map available in closed form (for d = 2)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 19
Covariant derivative in shape space in terms of preshape<br />
(O’Neill1966):<br />
∇ ∗ X ∗<br />
Y ∗ = H∇ X Y<br />
Vertical directi<strong>on</strong> is JN, where N is outward unit normal at the<br />
preshape, J is almost complex structure <strong>on</strong> C N .<br />
So parallel transport in small steps in upstairs space then do<br />
horiz<strong>on</strong>tal projecti<strong>on</strong>.<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 20
Curvature <strong>on</strong> preshape sphere S 2N−1 , R(X, Y )Z is:<br />
R(X, Y )Z = 〈X, Z〉Y − 〈Y, Z〉X<br />
For curvature, need first fundamental form A. For horiz<strong>on</strong>tal vf’s<br />
X, Y ,<br />
Curvature downstairs is<br />
A X Y = 1 2 V[X, Y ]<br />
〈R ∗ (X ∗ , Y ∗ )Z ∗ , H〉 = 〈R(X, Y )Z, H〉<br />
+ 2〈A X Y, A Z H〉 − 〈A Y Z, A X H〉 − 〈A Z X, A Y H〉<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 21
First fundamental form is (O’Neill)<br />
A X Y = 〈X, JY 〉JN<br />
Adjoint of A Z :<br />
〈A X Y, A Z H〉 = 〈−J〈X, JY 〉Z, H〉<br />
Curvature then is<br />
R ∗ (X ∗ , Y ∗ )Z ∗ = R(X, Y )Z − 2J〈X, JY 〉Z + J〈Y, JZ〉X + J〈Z, JX〉Y<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 22
−0.14<br />
−0.16<br />
−0.18<br />
−0.2<br />
−0.22<br />
−0.24<br />
−0.26<br />
−0.32 −0.3 −0.28 −0.26 −0.24 −0.22 −0.2<br />
0.32<br />
0.3<br />
0.28<br />
0.26<br />
0.24<br />
0.22<br />
0.2<br />
0.18<br />
−0.15 −0.1 −0.05<br />
−0.1<br />
−0.12<br />
−0.14<br />
−0.16<br />
−0.18<br />
−0.2<br />
−0.22<br />
0.22 0.24 0.26 0.28 0.3 0.32<br />
−0.06<br />
−0.08<br />
−0.1<br />
−0.12<br />
−0.14<br />
−0.16<br />
−0.18<br />
−0.2<br />
0.44 0.46 0.48 0.5 0.52 0.54 0.56<br />
Bookstein Rat Calivarium Growth<br />
0.3<br />
B<br />
0.2<br />
0.1<br />
0<br />
8 landmark points<br />
18 subjects<br />
8 ages<br />
D<br />
−0.1<br />
C<br />
A<br />
−0.2<br />
−0.4 −0.3 −0.2 −0.1 0 0.1 0.2 0.3 0.4 0.5 0.6<br />
A<br />
B<br />
C<br />
D<br />
k R 2<br />
1 0.79<br />
2 0.85<br />
3 0.87<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 23
Corpus Collosum Aging (www.oasis-brains.org)<br />
Geodesic<br />
0.04<br />
0.02<br />
0<br />
−0.02<br />
−0.04<br />
−0.06<br />
Fletcher 2011<br />
N = 32 patients<br />
Age range 18–90<br />
64 landmarks using<br />
ShapeWorks sci.utah.edu<br />
k R 2<br />
1 0.12<br />
2 0.13<br />
3 0.21<br />
Quadratic<br />
Cubic<br />
−0.08<br />
0.04<br />
0.02<br />
0<br />
−0.02<br />
−0.04<br />
−0.06<br />
−0.08<br />
0.06<br />
0.04<br />
0.02<br />
0<br />
−0.02<br />
−0.04<br />
−0.06<br />
−0.08<br />
−0.15 −0.1 −0.05 0 0.05 0.1 0.15<br />
−0.15 −0.1 −0.05 0 0.05 0.1 0.15<br />
−0.15 −0.1 −0.05 0 0.05 0.1 0.15<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 24
Corpus Collosum Aging<br />
0.08<br />
0.06<br />
0.04<br />
0.02<br />
0<br />
−0.02<br />
−0.04<br />
˙γ(0)<br />
∇ ˙γ ˙γ(0)<br />
(∇ ˙γ ) 2 ˙γ(0)<br />
−0.06<br />
−0.08<br />
−0.15 −0.1 −0.05 0 0.05 0.1 0.15 0.2<br />
Initial c<strong>on</strong>diti<strong>on</strong>s are collinear, implying time reparametrizati<strong>on</strong><br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 25
Landmark Space<br />
Space L of N points in R d . Geodesic equati<strong>on</strong>s:<br />
d<br />
dt x i =<br />
N∑<br />
γ(|x i − x j | 2 )α j<br />
j=1<br />
d<br />
dt α i = −2<br />
N∑<br />
(x i − x j )γ ′ (|x i − x j |) 2 αi T α j<br />
j=1<br />
Usually use Gaussian kernel<br />
γ(r) = e −r/(2σ2 )<br />
x ∈ L and α ∈ T ∗ x L is a covector (momentum)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 26
Landmark Space<br />
Space L of N points in R d . Geodesic equati<strong>on</strong>s:<br />
d<br />
dt x i =<br />
N∑<br />
γ(|x i − x j | 2 )α j<br />
j=1<br />
d<br />
dt α i = −2<br />
N∑<br />
(x i − x j )γ ′ (|x i − x j |) 2 αi T α j<br />
j=1<br />
Usually use Gaussian kernel<br />
γ(r) = e −r/(2σ2 )<br />
x ∈ L and α ∈ T ∗ x L is a covector (momentum)<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 26
Have simple formula for cometric g ij (the kernel)<br />
Parallel transport in terms of covectors, cometric:<br />
d<br />
dt β l = 1 2 g ilg in<br />
,j g jm (α m β n − α n β m ) − 1 2 gmn ,l α m β n<br />
Curvature more complicated (Mario’s Formula):<br />
2R ursv = −g ur,sv − g rv,us + g rs,uv + g uv,rs + 2Γ rv<br />
ρ Γ us<br />
σ g ρσ − 2Γ rs<br />
ρ Γ uv<br />
σ g ρσ<br />
+ g rλ,u g λµ g µv,s − g rλ,u g λµ g µs,v + g uλ,r g λµ g µs,v − g uλ,r g λµ g µv,s<br />
+ g rλ,s g λµ g µv,u + g uλ,v g λµ g µs,r − g rλ,v g λµ g µs,u − g uλ,s g λµ g µv,r .<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 27
Landmark parallel transport in momenta (Younes2008):<br />
d<br />
dt β i = K −1( ∑<br />
N (x i − x j ) T ((Kβ) i − (Kβ) j )γ ′ (|x i − x j | 2 )α j<br />
j=1<br />
N∑<br />
)<br />
− (x i − x j ) T ((Kα) i − (Kα) j )γ ′ (|x i − x j | 2 )β j<br />
j=1<br />
N∑<br />
− (x i − x j )γ ′ (|x i − x j | 2 )(αj T β i + αi T β j )<br />
j=1<br />
This is enough to integrate polynomials<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 28
For curvature, need Christoffel symbols and their derivatives:<br />
N∑<br />
(Γ(u, v)) i = − (x i − x j) T (v i − v j)γ ′ (|x i − x j| 2 )(K −1 u) j<br />
j=1<br />
N∑<br />
− (x i − x j) T (u i − u j)γ ′ (|x i − x j| 2 )(K −1 v) j<br />
j=1<br />
N∑<br />
N∑<br />
+ γ(|x i − x j| 2 ) (x j − x k )γ ′ (|x j − x k | 2 )((K −1 u) T k (K −1 v) j + (K −1<br />
j=1<br />
k=1<br />
Take derivative with respect to x, and combine using<br />
R l ijk = Γl ki,j − Γl ji,k + Γl jmΓ m ki − Γl km Γm ji<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 29
N∑<br />
((DΓ(u, v))w)i = (wi − wj) T (ui − uj)γ ′ (|xi − xj| 2 )(K −1 v)j<br />
j=1<br />
N∑<br />
+ 2 (xi − xj) T (ui − uj)(xi − xj) T (wi − wj)γ ′′ (|xi − xj| 2 )(K −1 v)j<br />
j=1<br />
N∑<br />
+ (xi − xj) T (ui − uj)γ ′ (|xi − xj| 2 )(( d dɛ K−1 )v)j<br />
j=1<br />
N∑<br />
+ (wi − wj) T (vi − vj)γ ′ (|xi − xj| 2 )(K −1 u)j<br />
j=1<br />
N∑<br />
+ 2 (xi − xj) T (vi − vj)(xi − xj) T (wi − wj)γ ′′ (|xi − xj| 2 )(K −1 u)j<br />
j=1<br />
N∑<br />
+ (xi − xj) T (vi − vj)γ ′ (|xi − xj| 2 )(( d dɛ K−1 )u)j<br />
j=1<br />
N∑<br />
N∑<br />
− 2 (xi − xj) T (wi − wj)γ ′ (|xi − xj| 2 ) (xj − xk)γ ′ (|xj − xk| 2 )((K −1 u) T k (K−1 v)j + (K −1 u) T j (K −1 v)k)<br />
j=1<br />
k=1<br />
N∑<br />
N∑<br />
− γ(|xi − xj| 2 ) (wj − wk)γ ′ (|xj − xk| 2 )((K −1 u) T k (K−1 v)j + (K −1 u) T j (K −1 v)k)<br />
j=1<br />
k=1<br />
N∑<br />
N∑<br />
− 2 γ(|xi − xj| 2 ) (xj − xk)(xj − xk) T (wj − wk)γ ′′ (|xj − xk| 2 )((K −1 u) T k (K−1 v)j + (K −1 u) T j (K −1 v)k)<br />
j=1<br />
k=1<br />
N∑<br />
N∑<br />
− γ(|xi − xj| 2 ) (xj − xk)γ ′ (|xj − xk| 2 )<br />
j=1<br />
k=1<br />
× (( d dɛ K−1 u) T k (K−1 v)j + (K −1 u) T k ( d dɛ K−1 v)j + ( d dɛ K−1 u) T j (K −1 v)k + (K −1 u) T j ( d dɛ K−1 v)k)<br />
(<br />
( d )<br />
dɛ K−1 )v = −(K −1 d<br />
i dɛ KK−1 v)i<br />
∑ N<br />
= −2(K −1 (xk − xj) T (wk − wj)γ ′ (|xk − xj| 2 )(K −1 v)j<br />
j=1<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 30
Landmark <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> Results<br />
Same Bookstein rat data. Procrustes alignment, no scaling.<br />
0.3<br />
0.2<br />
0.1<br />
0<br />
−0.1<br />
−0.2<br />
−0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8<br />
0.36<br />
0.34<br />
0.32<br />
0.34<br />
0.32<br />
0.3<br />
0.3<br />
0.28<br />
0.28<br />
0.26<br />
0.26<br />
0.24<br />
0.24<br />
0.2 0.25 0.3 0.35 0.4 0.45<br />
0.22<br />
−0.2 −0.18 −0.16 −0.14 −0.12 −0.1 −0.08 −0.06 −0.04 −0.02 0<br />
R 2 = 0.92 geodesic, 0.94 quadratic<br />
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 31
<str<strong>on</strong>g>Polynomial</str<strong>on</strong>g> <str<strong>on</strong>g>Regressi<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>Riemannian</strong> <strong>Manifolds</strong> 32
Thank You!