28.06.2014 Views

Polynomial Regression on Riemannian Manifolds

Polynomial Regression on Riemannian Manifolds

Polynomial Regression on Riemannian Manifolds

SHOW MORE
SHOW LESS

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!

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!